FastMM Full Debug Crash on WIN64

Viewing 3 posts - 1 through 3 (of 3 total)
  • Author
    Posts
  • #55575
    drakorg
    Participant

      [attachment=7899:screenshot.1474840894.jpg]

      'drakorg' wrote:

      We are having trouble starting our application in Debug/WIN64 with FastMM4 FullDebugMode enabled, it raises an AV on this line of code:

      Code:
      function Ac_GetScrollWndFromHwnd(const AHandle: hwnd): TacScrollWnd;
      begin
      Result := TacScrollWnd(GetProp(AHandle, acPropStr));
      end;

      If we turn off FullDebugMode, it works.

      If we switch to WIN32, even keeping FullDebugMode, it works.

      AlphaControls is built from full sources packages, v11.16.

      Do you have any idea what might be going on? We've never had any trouble with FastMM before, although we've never used the 64 bit version of the FullDebugMode dll before also.

      Attached is a screenshot of the IDE, where you can see the call stack. That call is part of the creation of the main form, to give you some context, but please feel free to ask for more information if you need to.

      Thank you.

      Eduardo

      #55576
      drakorg
      Participant

        Looking deeper into it we've found that GetProp actually does return a value, and that it is casted to a TacScrollBar and returned successfully.

        The problem appears one level up when it tries to access a property of that TacScrollBar object:

        Code:
        function Ac_GetScrollBarFromHwnd(const Handle: hwnd; const nBar: word): TacScrollBar;
        var
        sw: TacScrollWnd;
        begin
        Result := nil;
        sw := Ac_GetScrollWndFromHwnd(Handle); // this one returns a value (apparently not a valid one)
        if Assigned(sw) then // it IS assigned
        case nBar of
        SB_HORZ: Result := sw.sbarHorz; // however, it crashes when trying to access the TacScrollWnd object.
        SB_VERT: Result := sw.sbarVert
        end;
        end;

        Again, this only happens with FastMM FullDebugMode enabled on WIN64 platform. All other cases it works fine.

        #55593
        Support
        Keymaster

          Hello and thank you for this information.

          I will research this issue very soon and hope to fix it in the nearest release.

        Viewing 3 posts - 1 through 3 (of 3 total)
        • You must be logged in to reply to this topic.