if( interp){ LangClientMessage(winPtr->mainPtr->interp, (Tk_Window) winPtr, eve +ntPtr); }
Hi, I first asked this question in Gtk2 apps are seg-faulting my Tk apps. It turned out that Gtk2 apps using the gtk+ lib at a version level greater than 2.8.0, would cause Perl/Tk apps to segfault, when a gtk button was clicked. This problem is becoming more widely noticed as people upgrade to newer distribution levels, which use > 2.8.6 level of the Gtk2 libs. The bug was reported in Tk report and Ubuntu report
Anyways, a possible fix may have been found if you experience it.
Change tkEvent.c line 989 from
toLangClientMessage(winPtr->mainPtr->interp, (Tk_Window) winPtr, eventP +tr);
if (eventPtr && winPtr && winPtr->mainPtr) { LangClientMessage(winPtr->mainPtr->interp, (Tk_Window) winPtr, e +ventPtr); }
This fix has not been analyzed as to the ramifications it may have elsewhere in Tk, but it seems to work OK. Any comments on it's side effects, or improvements to it are welcome.
And of course, keeps your eyes and ears open for people complaining about Tk segfaulting, and point them to this. Thanks.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: Possible Tk segfault bugfix
by tinita (Parson) on Dec 21, 2005 at 17:36 UTC | |
by zentara (Cardinal) on Dec 21, 2005 at 19:28 UTC | |
|
Re: Possible Tk segfault bugfix
by demerphq (Chancellor) on Dec 19, 2005 at 13:05 UTC | |
by zentara (Cardinal) on Dec 19, 2005 at 18:50 UTC | |
|
Re: Possible Tk segfault bugfix
by zentara (Cardinal) on Dec 22, 2005 at 12:32 UTC |