PageControl and LeakError

Tagged: 

Viewing 6 posts - 1 through 6 (of 6 total)
  • Author
    Posts
  • #68606
    Rafał Drzewiecki
    Participant

    I use AC15.03 and win64 app. Not all but very often i get error:

    FastMM wykrył błąd podczas operacji GetMem. FastMM wykrył że blok został zmodyfikowany po tym jak został zwolniony. 
    
    Modified byte offsets (and lengths): 216(1)
    
    Poprzedni rozmiar bloku był: 296
    
    This block was previously allocated by thread 0x1080, and the stack trace (return addresses) at the time was:
    000000000042A3C9 [FastMM4.pas][FastMM4][_ZN7Fastmm411DebugGetMemEx][9660]
    00000000004094D4 [System.pas][System][_ZN6System7_GetMemEx][4732]
    000000000040F371 [System.pas][System][_ZN6System7TObject11NewInstanceEv][16922]
    00000000004100D1 [System.pas][System][_ZN6System12_ClassCreateEPva][18242]
    00000000009CE5D2 [sCommondata.pas][sCommonData][_ZN11Scommondata12TsCommonDataC3EPN6System7TObjectEb][1458]
    000000000080E256 [sComboBox.pas][sComboBox][_ZN9Scombobox16TsCustomComboBoxC3EPN6System7Classes10TComponentE][353]
    000000000052771D [System.Classes.pas][System.Classes][CreateComponent][10470]
    0000000000527A75 [System.Classes.pas][System.Classes][_ZN6System7Classes7TReader13ReadComponentEPNS0_10TComponentE][10516]
    0000000000527F0A [System.Classes.pas][System.Classes][_ZN6System7Classes7TReader13ReadDataInnerEPNS0_10TComponentE][10582]
    0000000000527E35 [System.Classes.pas][System.Classes][_ZN6System7Classes7TReader8ReadDataEPNS0_10TComponentE][10567]
    0000000000537542 [System.Classes.pas][System.Classes][_ZN6System7Classes10TComponent9ReadStateEPNS0_7TReaderE][16323]
    
    Blok został poprzednio użyty w obiekcie klasy: sCommonData.TsCtrlSkinData
    
    Była ilość alokacji : 504160
    
    The block was previously freed by thread 0x1080, and the stack trace (return addresses) at the time was:
    000000000042A623 [FastMM4.pas][FastMM4][_ZN7Fastmm412DebugFreeMemEPv][9818]
    0000000000409504 [System.pas][System][_ZN6System8_FreeMemEPv][4780]
    000000000040F3A8 [System.pas][System][_ZN6System7TObject12FreeInstanceEv][16931]
    00000000004100F1 [System.pas][System][_ZN6System13_ClassDestroyEPNS_7TObjectE][18298]
    00000000009D7AC2 [sCommondata.pas][sCommonData][_ZN11Scommondata14TsCtrlSkinDataD0Ev][3802]
    000000000040F678 [System.pas][System][_ZN6System7TObject4FreeEv][16994]
    00000000009CE99A [sCommondata.pas][sCommonData][_ZN11Scommondata12TsCommonDataD0Ev][1528]
    00000000009D73AA [sCommondata.pas][sCommonData][_ZN11Scommondata15TsScrollWndDataD0Ev][3660]
    000000000040F678 [System.pas][System][_ZN6System7TObject4FreeEv][16994]
    0000000000912425 [acSBUtils.pas][acSBUtils][_ZN9Acsbutils10TacMainWndD0Ev][7826]
    00000000008FDE6D [acSBUtils.pas][acSBUtils][_ZN9Acsbutils12TacScrollWndD0Ev][3561]
    
    The current thread ID is 0x1080, and the stack trace (return addresses) leading to this error is:
    000000000042A322 [FastMM4.pas][FastMM4][_ZN7Fastmm424CheckFreeBlockUnmodifiedEPNS_21TFullDebugBlockHeaderEyNS_15TBlockOperationE][9629]
    000000000042A3A7 [FastMM4.pas][FastMM4][_ZN7Fastmm411DebugGetMemEx][9656]
    00000000004094D4 [System.pas][System][_ZN6System7_GetMemEx][4732]
    000000000040F371 [System.pas][System][_ZN6System7TObject11NewInstanceEv][16922]
    00000000004100D1 [System.pas][System][_ZN6System12_ClassCreateEPva][18242]
    00000000008EC0DC [acDials.pas][acDials][_ZN7Acdials13TacSystemMenuC3EPN6System7Classes10TComponentE][3044]
    00000000008EBEE6 [acDials.pas][acDials][_ZN7Acdials12TacDialogWnd13AfterCreationEv][3013]
    00000000009120BA [acSBUtils.pas][acSBUtils][_ZN9Acsbutils10TacMainWndC3EP6HWND__PN11Scommondata12TsCommonDataEPN12Sskinmanager13TsSkinManagerERKNS_13TacSkinParamsEb][7776]
    00000000008E24C1 [acDials.pas][acDials][_ZN7Acdials10InitDialogEyRPNS_12TacDialogWndE][943]
    00000000008E2643 [acDials.pas][acDials][_ZN7Acdials11TacProvider8InitSkinEP6HWND__][965]
    00000000008E0482 [acDials.pas][acDials][_ZN7Acdials16AddSupportedFormEyP16tagCREATESTRUCTW][583]

    I get error i this operation:

        TabSheet := TsTabSheet.Create(APageControl);
        try
          TabSheet.Name := NameTab;
          TabSheet.Caption := ATabName;
          TabSheet.UseCloseBtn := true;
          TabSheet.Tag := Tag;
          TabSheet.PageControl := APageControl;
          Frame := AFrame.Create(TabSheet);
         // FormData.SkinManager.UpdateScale(Frame);  
          Frame.Id := Id;
          Frame.AfterCreation;
          Frame.Parent := TabSheet;
          APageControl.ActivePage := TabSheet;   <- After this i get error
    function TsCommonData.Skinned(const CheckSkinActive: boolean = False): boolean;
    var
      SM: TsSkinManager;
    begin
      try
        SM := SkinManager;
        if (SM <> nil) and not (csDestroying in SM.ComponentState) and (SkinIndex >= 0) and (CommonSkinData.FOwner <> nil) {Skinned} and  IsValidIndex(SkinIndex, Length(CommonSkinData.gd)) then
          if (FOwnerObject = nil) or not (csDestroying in TComponent(FOwnerObject).ComponentState) then
            if CheckSkinActive then
              Result := SM.IsActive
            else
              Result := True
          else
            Result := False
        else
          Result := False;    <-  After break
      except
        Result := False;   <- next here
      end;
    end;
    #68615
    Support
    Keymaster

    Thank you for the info. Can this issue be repeated in the test-app?
    Or it happens in your application only?

    #68647
    Rafał Drzewiecki
    Participant

    Here is test app

    #68657
    HeDiBo
    Participant

    I think you forgot to attach the test application

    #68661
    Rafał Drzewiecki
    Participant

    I think you forgot to attach the test application

    No, the file was too large, I sent it directly to support

    #68675
    Support
    Keymaster

    The file is received via email. I will check this issue soon.

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