kicad-developers team mailing list archive
-
kicad-developers team
-
Mailing list archive
-
Message #17132
Re: [PATCH] Fix wxGTK assert in Layer Setup dialog
Patch committed in product branch r5460.
Thanks,
Wayne
On 2/25/2015 10:00 PM, Blair Bonnett wrote:
> Hi all,
>
> When I open the Design Rules -> Layer Setup dialog in PcbNew, I get an
> assert from wxWidgets:
>
> /src/gtk/scrolwin.cpp(205): assert "scrolled" failed in
> DoShowScrollbars(): window must be created
>
> This is using the wxGTK backend on Arch. Tracking back through the code,
> this is because a wxScrolledWindow is being created with the
> wxALWAYS_SHOW_SB flag. The DoShowScrollbars() is called by the
> constructor due to this flag, but this call is before a window exists to
> put the scrollbars in.
>
> I'm assuming this behaviour changed in wxWidgets 2.9.5 because
> common/draw_panel.cpp has a conditionally compiled workaround.
>
> The attached patch removes the wxALWAYS_SHOW_SB flag from the base fbp
> and cpp files, and replaces it with a call to ShowScrollbars() in the
> inherited dialog class; this now occurs after the window has been
> created. I have also removed the conditional compilation check from
> common/draw_panel.cpp since that was checking for wxWidgets >= 2.9.5.,
> and 3.0 or later is now enforced by CMake.
>
> Using grep, I cannot find wxALWAYS_SHOW_SB being used with any other
> wxScrolledWindows; the other instances are with text or list controls
> and I haven't been able to trigger an assert from them.
>
> Cheers,
> Blair
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~kicad-developers
> Post to : kicad-developers@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~kicad-developers
> More help : https://help.launchpad.net/ListHelp
>
References