Hallo,
so geht es natürlich noch besser. Vielen Dank für die schnelle Hilfe.
Gruß, C. Exner
Hallo,
so geht es natürlich noch besser. Vielen Dank für die schnelle Hilfe.
Gruß, C. Exner
Ah, danke.
Bitte aus dem CurrFontName ein string[128] machen.
Beste Grüsse,
Julian Ziersch
Hallo,
ich glaube, dass ich den Grund dafür schon gefunden habe. In Version 5.35.2 gab es CurrFontName in der Record-Deklaration von TWPPaintExtraParams noch nicht. Da dies ein TFontName also ein String ist fürt das FillChar in der Methode TWPRTFEnginePaint.SetCanvasAttr in Zeile 4202 letztendlich zu dem Fehler in der Zeile 4505. Beheben konnte ich den Fehler durch eine zusätzliche Zeile vor FillChar
CanvasExtraParams.CurrFontName := '';
Vielleicht hilft das weiter und wird ggf. in die nächste Version mit übernommen.
Gruß, C. Exner
Hallo,
ich habe die Version vom 16.12.2007 soeben runter geladen und installiert. Ich benutzte FastMM4 zur Speicherlochdetektion. Bei der oben genannten Version tritt ein Speicherloch auf. Dies wird je nach Größe der geladenen Datei mehrere MB groß!
Dies Stelle scheint immer die selbe zu sein. Wenn auch der Weg zum Speicherloch immer wieder unterschiedlich zu sein scheint. Die Dick ausgegebene Zeile taucht bei jeder Speicherlochdetektion auf.
Hier ein exemplarischer Stacktrace:
A memory block has been leaked. The size is: 20
Stack trace of when this block was allocated (return addresses):
402EFA [System][@GetMem]
404E01 [System][@NewAnsiString]
404E2C [System][@LStrFromPCharLen]
42E903 [Graphics][TFont.GetName]
504901 [WPRTEPaint.pas][WPRTEPaint][TWPRTFEnginePaint.SetCanvasAttr][4505]
42E614 [Graphics][TFont.SetData]
42E8E7 [Graphics][TFont.SetHeight]
512010 [WPRTEPaint.pas][WPRTEPaint][PaintLine][8759]
51B33F [WPRTEPaint.pas][WPRTEPaint][TWPRTFEnginePaint.PaintRTFPage][10867]
77EF6C02 [GdiDrawStream]
The block is currently used for an object of class: Unknown
The allocation number is: 24529
Current memory dump of 256 bytes starting at pointer address 19AA430:
01 00 00 00 05 00 00 00 41 72 69 61 6C 00 6E AD 03 81 80 80 80 80 80 80 00 00 00 00 E1 A4 9A 01
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ED 59 00 00 FA 2E 40 00 07 3E 40 00 CE 41 40 00
3C 3E 40 00 7A D0 4C 01 C8 42 43 00 B2 8F 40 00 CD 9F 40 00 16 2F 40 00 25 3E 40 00 16 2F 40 00
25 3E 40 00 19 42 40 00 ED 29 42 00 6B 3E 40 00 E1 3D 41 00 E0 35 43 00 6B 3E 40 00 9D 35 43 00
A6 40 43 00 14 00 00 00 D4 D2 41 00 47 AE FD 07 08 6E 62 00 80 80 80 80 80 80 80 80 80 80 80 80
80 80 80 80 B8 51 02 F8 00 00 00 00 71 A5 9A 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
C3 59 00 00 FA 2E 40 00 07 3E 40 00 CE 41 40 00 3C 3E 40 00 7A D0 4C 01 C8 42 43 00 B2 8F 40 00
CD 9F 40 00 16 2F 40 00 25 3E 40 00 16 2F 40 00 25 3E 40 00 19 42 40 00 ED 29 42 00 6B 3E 40 00
. . . . . . . . A r i a l . n . € € € € € € . . . . á ¤ š .
. . . . . . . . . . . . . . . . í Y . . ú . @ . . > @ . Î A @ .
<z> @ . . / @ .
% > @ . . B @ . í ) B . k > @ . á = A . à 5 C . k > @ . 5 C .
¦ @ C . . . . . Ô Ò A . G ® ý . . n b . € € € € € € € € € € € €
€ € € € ¸ Q . ø . . . . q ¥ š . . . . . . . . . . . . . . . . .
à Y . . ú . @ . . > @ . Î A @ . <z> @ . . / @ . % > @ . . B @ . í ) B . k > @ .
Gruß, C. Exner