Recent

Author Topic: LCL Exception at MaskBlt on Gtk2  (Read 5665 times)

Ocye

  • Hero Member
  • *****
  • Posts: 518
    • Scrabble3D
LCL Exception at MaskBlt on Gtk2
« on: February 19, 2012, 11:40:32 am »
I'm using this function for some time.
Quote
MaskBlt(Canvas.GetUpdatedHandle([csHandleValid]),10, 10, aBitmap.Width, aBitmap.Height,aBitmap.Canvas.GetUpdatedHandle([csHandleValid]),0, 0, UseMaskHandle, 0, 0);
I'm not sure if any recent update of fpc or lcl or a new libsomething is to blame but the function throws an exception now in

TGtk2WidgetSet.StretchCopyArea() at
if DstDevContext.Drawable = nil then RaiseDestDrawableNil;

This is followed by RaiseGDBException in lclproc which results in SIGFPE.

Quote
Invalid floating point operation.
In Datei 'lclproc.pas' in Zeile 815:
if (length(Msg) div (length(Msg) div 10000))=0 then ;

Lazarus 0.9.31 r35179 FPC 2.6.0 x86_64-linux-qt (LCLWidgetType gtk2)
Lazarus 1.7 (SVN) FPC 3.0.0

zeljko

  • Hero Member
  • *****
  • Posts: 1081
    • http://wiki.lazarus.freepascal.org/User:Zeljan
Re: LCL Exception at MaskBlt on Gtk2
« Reply #1 on: February 29, 2012, 02:34:59 pm »
You should open an issue about it and attach example which shows problem.

Ocye

  • Hero Member
  • *****
  • Posts: 518
    • Scrabble3D
Re: LCL Exception at MaskBlt on Gtk2
« Reply #2 on: March 01, 2012, 11:41:53 am »
Before fileing a bug report it would be interesting to see if others have same problem.
Lazarus 1.7 (SVN) FPC 3.0.0

zeljko

  • Hero Member
  • *****
  • Posts: 1081
    • http://wiki.lazarus.freepascal.org/User:Zeljan
Re: LCL Exception at MaskBlt on Gtk2
« Reply #3 on: March 03, 2012, 02:03:44 pm »
If it was ok with older lazarus trunk and now it isn't then something happened, and you should wait nobody but fill an issue (of course if it's issue at all, and that depends on your code).

zeljko

  • Hero Member
  • *****
  • Posts: 1081
    • http://wiki.lazarus.freepascal.org/User:Zeljan
Re: LCL Exception at MaskBlt on Gtk2
« Reply #4 on: April 06, 2015, 01:12:07 pm »
This problem is fixed with r48643.