[Lazarus] Win 7 issue / Re: -dWINDOWS_LIGATURE [[Re: Font ligatures support]]
Maxim Ganetsky
ganmax at narod.ru
Wed Oct 7 01:42:41 CEST 2020
06.10.2020 16:23, Martin Frb via lazarus пишет:
> On 06/10/2020 15:09, Maxim Ganetsky via lazarus wrote:
>>
>> ----
>> Can you try to catch it in the debugger, and see what params are given
>> to NewTextOut
>> in
>> #2 0x00ab95f6 in DRAWHILIGHTMARKUPTOKEN (ATOKENINFO=...,
>> parentfp=0x13abf6e8)
>> at lazsyntextarea.pp:1741
>>
>> fTextDrawer.NewTextOut(TxtLeft, rcToken.Top, TxtFlags, tok,
>> ATokenInfo.Tk.TokenStart, ATokenInfo.Tk.TokenLength, FEtoBuf);
>> Can you add some debugln in a format convenient to you? This will
>> simplify things, I think.
>>
> This is in the paint handler, and it is called for each token. So
> potentially very slow with debugln.
>
> But since it is in startup, hopefully you wont have to many.
>
> Apply this patch please
With this patch applied Lazarus seems to crash on debugln in
lazsyntextarea.pp. Just in case, I tried to remove this particular
debugln, then it printed 'BEFORE' and nothing more.
i:\FPC\lazarus>lazarus --debug-output=.\dbgoutput.txt
Hint: (lazarus) [TMainIDE.ParseCmdLineOptions]
PrimaryConfigPath="C:\Users\Maxim
\AppData\Local\lazarus"
Hint: (lazarus) [TMainIDE.ParseCmdLineOptions]
SecondaryConfigPath="i:\FPC\lazar
us"
Hint: (lazarus) [TMainIDE.LoadGlobalOptions]
Hint: (lazarus) LastCalled="I:\FPC\lazarus\lazarus.old.working.exe"
Hint: (lazarus) CurPrgName="i:\FPC\lazarus\lazarus.exe"
Hint: (lazarus)
AltPrgName="C:\Users\Maxim\AppData\Local\lazarus\bin\lazarus.exe
"
Hint: (lazarus) [TBuildManager.SetBuildTarget] Old=i386-win32-win32
New=i386-win
32-win32 Changed: OS/CPU=True LCL=False
TApplication.HandleException: EAccessViolation
Access violation
Stack trace:
$00C12B2D DRAWHILIGHTMARKUPTOKEN, line 1740 of lazsyntextarea.pp
$00C11C76 PAINTLINES, line 1799 of lazsyntextarea.pp
$00C11847 PAINTTEXTLINES, line 1871 of lazsyntextarea.pp
$00C113D8 DOPAINT, line 1489 of lazsyntextarea.pp
$00C07EA0 PAINT, line 1308 of syneditmiscclasses.pp
$00C0FDD2 DOPAINT, line 1134 of lazsyntextarea.pp
$00C07EA0 PAINT, line 1308 of syneditmiscclasses.pp
$00D9A022 DOPAINT, line 1353 of sourcesyneditor.pas
$00C07EA0 PAINT, line 1308 of syneditmiscclasses.pp
$0079ECCB PAINT, line 4221 of synedit.pp
$005B3471 PAINTWINDOW, line 123 of include/customcontrol.inc
$0059BB7B PAINTHANDLER, line 4857 of include/wincontrol.inc
$005A00A4 WMPAINT, line 6851 of include/wincontrol.inc
$005B3330 WMPAINT, line 103 of include/customcontrol.inc
$004103A1
$0059D0A7 WNDPROC, line 5429 of include/wincontrol.inc
$007A6B0F WNDPROC, line 6399 of synedit.pp
FreeFormEditor: FormEditor1=TFormEditor
Hint: (lazarus) [TMainIDE.Destroy] B -> inherited Destroy... TMainIDE
Hint: (lazarus) [TMainIDE.Destroy] END
Heap dump by heaptrc unit of i:\FPC\lazarus\lazarus.exe
6222427 memory blocks allocated : 556846869/572547168
6211889 memory blocks freed : 555436555/571105040
10538 unfreed memory blocks : 1410314
True heap size : 28114944 (128 used in System startup)
True free heap : 25543392
Should be : 25661040
Call trace for block $1CEE6DD0 size 64
$00418EBF
$770034A1
$77003473
$76FB0133
$00C11C76 PAINTLINES, line 1799 of lazsyntextarea.pp
$00C11847 PAINTTEXTLINES, line 1871 of lazsyntextarea.pp
$00C113D8 DOPAINT, line 1489 of lazsyntextarea.pp
$00C07EA0 PAINT, line 1308 of syneditmiscclasses.pp
$00C0FDD2 DOPAINT, line 1134 of lazsyntextarea.pp
$00C07EA0 PAINT, line 1308 of syneditmiscclasses.pp
$00D9A022 DOPAINT, line 1353 of sourcesyneditor.pas
$00C07EA0 PAINT, line 1308 of syneditmiscclasses.pp
$0079ECCB PAINT, line 4221 of synedit.pp
$005B3471 PAINTWINDOW, line 123 of include/customcontrol.inc
$0059BB7B PAINTHANDLER, line 4857 of include/wincontrol.inc
$005A00A4 WMPAINT, line 6851 of include/wincontrol.inc
Call trace for block $1C6FECD0 size 92
--
Best regards,
Maxim Ganetsky mailto:ganmax at narod.ru
More information about the lazarus
mailing list