Bug Report T128474
Visible to All Users

An AV occurs when switching tabs if the OnTabChanged event handler performs layout recalculation

created 11 years ago

Created from Q365294: An AV occurs when switching tabs, if the OnTabChanged event handler performs layout recalculation:

Hi,

I'm getting the same AV when going through tabs with Ctrl+Tab keys. I was able to create sample application using FastMM which catches that TcxTabViewInfo gots destroyed when layout is changed and reused again after object is already destroyed. Attached application.

Thanks,
Raimundas

Comments (1)
DevExpress Support Team 11 years ago

    Hello Raimundas,

    I've reproduced this behavior. I'm forwarding this issue to our developers for further processing.

    Answers approved by DevExpress Support

    created 11 years ago (modified 11 years ago)

    We have fixed the issue described in this ticket and will include the fix in our next maintenance update. To apply this solution before the official update, request a hotfix by clicking the corresponding link for product versions you require.

    Note: Hotfixes may be unavailable for beta versions and updates that are about to be released.

      Show previous comments (3)
      DevExpress Support Team 11 years ago

        Thank you for your update. Please try this patch instead:

        Delphi
        procedure TcxCustomTabControlController.TabClick(ATabVisibleIndex: Integer; AShift: TShiftState; AMouseEvent: Boolean); var ATabViewInfo: TcxTabViewInfo; ATab: TcxTab; AControl: IcxTabControl; begin if ViewInfo.IsTabAccessible(ATabVisibleIndex) then begin ATab := ViewInfo.TabsViewInfo[ATabVisibleIndex].Tab; AControl := IControl; if not AMouseEvent or IsTabPressable then ViewInfo.TabsViewInfo[ATabVisibleIndex].Select(ssCtrl in AShift); ATabViewInfo := AControl.ViewInfo.GetTabViewInfo(ATab); ATabViewInfo.SetFocus; ATabViewInfo.Click(AShift); end; end;

        It should work better in your scenario. I am looking forward to your feedback.

        RP RP
        Raimundas Packevicius 11 years ago

          Thanks! With this patch everything works as expected.

          DevExpress Support Team 11 years ago

            Thank you for your feedback. Happy to help! I have updated the hot fix accordingly.

            Disclaimer: The information provided on DevExpress.com and affiliated web properties (including the DevExpress Support Center) is provided "as is" without warranty of any kind. Developer Express Inc disclaims all warranties, either express or implied, including the warranties of merchantability and fitness for a particular purpose. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.

            Confidential Information: Developer Express Inc does not wish to receive, will not act to procure, nor will it solicit, confidential or proprietary materials and information from you through the DevExpress Support Center or its web properties. Any and all materials or information divulged during chats, email communications, online discussions, Support Center tickets, or made available to Developer Express Inc in any manner will be deemed NOT to be confidential by Developer Express Inc. Please refer to the DevExpress.com Website Terms of Use for more information in this regard.