|
@@ -46,6 +46,7 @@ type
|
|
|
private
|
|
|
FStream: TStream;
|
|
|
FInsideTextNode: Boolean;
|
|
|
+ FInsideScript: Boolean;
|
|
|
FBuffer: PChar;
|
|
|
FBufPos: PChar;
|
|
|
FCapacity: Integer;
|
|
@@ -324,6 +325,7 @@ begin
|
|
|
ElFlags := HTMLElementProps[j].Flags;
|
|
|
if j = etMeta then
|
|
|
meta := True;
|
|
|
+ FInsideScript := (j=etScript) or (j=etStyle);
|
|
|
break;
|
|
|
end;
|
|
|
|
|
@@ -371,7 +373,10 @@ end;
|
|
|
|
|
|
procedure THTMLWriter.VisitText(node: TDOMNode);
|
|
|
begin
|
|
|
- ConvWrite(TDOMCharacterData(node).Data, TextSpecialChars, {$IFDEF FPC}@{$ENDIF}TextnodeSpecialCharCallback);
|
|
|
+ if FInsideScript then
|
|
|
+ WrtStr(TDOMCharacterData(node).Data)
|
|
|
+ else
|
|
|
+ ConvWrite(TDOMCharacterData(node).Data, TextSpecialChars, {$IFDEF FPC}@{$ENDIF}TextnodeSpecialCharCallback);
|
|
|
end;
|
|
|
|
|
|
procedure THTMLWriter.VisitCDATA(node: TDOMNode);
|