OSDN Git Service

refs #17840
authorh677 <h677>
Mon, 5 Oct 2009 14:23:13 +0000 (14:23 +0000)
committerh677 <h677>
Mon, 5 Oct 2009 14:23:13 +0000 (14:23 +0000)
HTML化した際に、レスアンカーのタグ内で、ダブルクォートが2つつながる不具合の修正

HTMLCreate.pas

index 6cb422b..ce950e1 100644 (file)
@@ -600,6 +600,7 @@ const
        _END: string = '&END=';
 var
        i, j, k: Integer;
+    hpos, qpos : Integer;
        tmp: string;
        res: string;
 begin
@@ -627,10 +628,21 @@ begin
                end else begin
                        k := LastDelimiter('/', tmp);
                        Delete(tmp, 1, k);
-                       if AnsiPos('-', tmp) < AnsiPos('"', tmp) then
-                               Delete(tmp, AnsiPos('-', tmp), Length(tmp))
-                       else
-                               Delete(tmp, AnsiPos('"', tmp), Length(tmp));
+            hpos := AnsiPos('-', tmp);
+            qpos := AnsiPos('"', tmp);
+            if ( (hpos > 0) and (qpos > 0) ) then begin
+                if ( qpos < hpos ) then begin
+                    Delete(tmp, qpos, Length(tmp));
+                end else begin
+                    Delete(tmp, hpos, Length(tmp));
+                end;
+            end else begin
+                if ( qpos > 0 ) then begin
+                    Delete(tmp, qpos, Length(tmp));
+                end else if ( qpos > 0 ) then begin
+                    Delete(tmp, hpos, Length(tmp));
+                end;
+            end;
 
                        PRes.FBody := PRes.FBody + '<a href="#' + tmp + '">';
                end;