Today I have been reported a crash in an application and they sent me the stack trace it captured:

11/04/2011 16:09:11  EAccessViolation Access violation
  Stack trace:
  $004EED89
  $004EF8BD
  $0040BF3B
  $004EEBDC
  $004ED988
  $004E532F
  $004E644E
  $00567767
  $0050D695
  $7E418734
  $7E418816
  $7E4189CD
  $7E418A10
  $00510E34
  $00421DB9
  $004221AF
  $0043B473


Address $004EED89 corresponds to this procedure in control.inc (I marked the line with "<----" but I'm not sure the access violation happens there or in the line before).

{------------------------------------------------------------------------------
       TControl DoMouseUp  "Event Handler"
------------------------------------------------------------------------------}
procedure TControl.DoMouseUp(var Message: TLMMouse; Button: TMouseButton);
var
  P: TPoint;
begin
  if not (csNoStdEvents in ControlStyle) then
    with Message do
    begin
      if (Button in [mbLeft, mbRight]) and DragManager.IsDragging then
      begin
        P := ClientToScreen(Point(XPos, YPos));
        DragManager.MouseUp(Button, KeysToShiftState(Keys), P.X, P.Y);
        Message.Result := 1;
      end;
      MouseUp(Button, KeysToShiftState(Keys), XPos, YPos); <----
    end;
end;

The rest of addresses are all in the LCL, leading to this call, starting from $0043B473 which is this procedure in interfacebase.inc:

procedure TWidgetSet.AppRun(const ALoop: TApplicationMainLoop);
begin
  if Assigned(ALoop) then ALoop;
end;

However I have no information for these strange addresses in the middle of the stack:

  $7E418734
  $7E418816
  $7E4189CD
  $7E418A10

Apart from these addresses, everything else doesn't touch my code, so I think that, maybe, it's a bug in the LCL (considering that's quite an old version, Lazarus 0.9.29 r22953 FPC 2.2.4 i386-win32-win32/win64, however it has served me fine in various other projects).
What do you think?
TIA

Bye
--
Luca Olivetti
Wetron Automation Technology http://www.wetron.es
Tel. +34 935883004 (Ext.133)  Fax +34 935883007

--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to