← Back to team overview

kicad-developers team mailing list archive

Re: Issue with wxWidgets 3.1.2 - MSW. Need GAL gurus help.


Le 26/12/2018 à 16:19, Maciej Suminski a écrit :
> On 12/22/18 8:04 PM, jp charras wrote:
>> Le 22/12/2018 à 18:49, Maciej Suminski a écrit :
>>> On 12/21/18 8:22 PM, jp charras wrote:
>>>> I very recently updated wxWidgets from 3.1.1 to 3.1.2
>>>> I ran into a problem with Pcbnew and Gerbview (Not eeschema, that has a
>>>> different event handler):
>>>> The context menus Zoom selection and Grid Selection are no longer
>>>> working (and presumably any other context submenu).
>>>> I had a look into this issue (MSW specific).
>>>> The 3.1.1 and the 3.1.2 have different behaviors.
>>>> The attached patch fixes this issue.
>>>> However I do not understand this code in context_menu.cpp line 361:
>>>>  if( menu && menu != this )
>>>> The condition " && menu != this" is the culprit:
>>>> in wxWidgets 3.1.2, menu == this happens always.
>>>> in wxWidgets 3.1.2, menu == this happens never.
>>>> This line has no comment, and must be modified.
>>>> I'll be happy if Thomasz or Orson could have a look into that issue, and
>>>> that change and if this condition can be explained, if it is needed.
>>>> Thanks,
>>> Hi Jean-Pierre,
>>> The commit message for the mentioned line says "Fix for clarification
>>> menu crash (GAL/Windows)". Unfortunately, it had been committed before
>>> we started using 'Fixes:' tag, so I cannot point to a particular bug
>>> report. My impression is that FindItem() could return the same menu
>>> object, ultimately leading to an infinite loop on Windows.
>>> I will try your patch later with an wxWidgets 3.0.x version to see if
>>> removing the condition causes any problems.
>>> Cheers,
>>> Orson
>> Hi Orson,
>> Thanks to have a look into this problem.
>> I just saw the "Set Language" menu has a similar issue (sub-menus do not
>> work), but my fix does not work for this menu.
>> However, because it also does not work in Eeschema, I am guessing it
>> could be a different issue.
> Hi Jean-Pierre,
> I have checked the proposed patch with wxMSW 3.0.4 and it works fine.
> Moreover, even with without 'menu != this' condition, I have not
> observed any issues. I think there might have been a problem with an
> older version of wxWidgets, or it is now fixed somewhere else.
> Cheers,
> Orson

Hi Orson,

Thanks for testing this patch.
I committed it.
I'll remove the 'menu != this' condition later, for the V6 version.

But for now I would prefer avoiding any risk.

Jean-Pierre CHARRAS