X-Git-Url: http://deadsoftware.ru/gitweb?p=d2df-sdl.git;a=blobdiff_plain;f=src%2Fshared%2Fxparser.pas;h=595d300f99f32291ae9af1da261b3a8907f95106;hp=de2dfb38a379ac52872a91caaffd71ac61a11db2;hb=05494fe1320ebc427c3b5c688c18669bf3abc260;hpb=1584838149790971c32aafc50a7e72506de814a1 diff --git a/src/shared/xparser.pas b/src/shared/xparser.pas index de2dfb3..595d300 100644 --- a/src/shared/xparser.pas +++ b/src/shared/xparser.pas @@ -306,6 +306,14 @@ begin mTokInt := 0; mOptions := aopts; skipToken(); + // fuck you, BOM! + { + if (mBufLen >= 3) and (mBuffer[0] = #$EF) and (mBuffer[1] = #$BB) and (mBuffer[2] = #$BF) then + begin + for f := 3 to mBufLen-1 do mBuffer[f-3] := mBuffer[f]; + Dec(mBufLen, 3); + end; + } end; @@ -426,6 +434,17 @@ function TTextParser.skipBlanks (): Boolean; var level: Integer; begin + //writeln('line=', mLine, '; col=', mCol, '; char0=', Integer(peekChar(0))); + if (mLine = 1) and (mCol = 1) and + (peekChar(0) = #$EF) and + (peekChar(1) = #$BB) and + (peekChar(2) = #$BF) then + begin + skipChar(); + skipChar(); + skipChar(); + end; + while (curChar <> #0) do begin if (curChar = '/') then