in reply to Re: Strange Perl/Tk error
in thread Strange Perl/Tk error

Thanks for this post. I have a legacy Perl/Tk application that a client needs ported to Solaris 11 x86-64. I have perl 5.6.1 and Tk800.024, and I am getting this post's subject error message.

I am not able to build (or probably use) Tk-804.028_502 as recommended, so I was wondering what you think about the viability of these alternatives:

a) Is the cause of this issue relegated to one or a few C files which can be merged into Tk800.024 and then rebuilt, or

b) Is is possible to use a SREZIC-Patch style patch? Thanks!

Replies are listed 'Best First'.
Re^3: Strange Perl/Tk error
by Anonymous Monk on Apr 26, 2012 at 02:10 UTC
    The Tk Bug Tracker on SourceForge provided a very detailed post which allowed me to create a workaround for the ancient copy of Perk/Tk I have to use. Basically, X.Org added a new event, which pushed protocol constant LASTEvent from 35 to 36, and assumptions were made as to that value always being 35.

    The changes I made were as follows (colored red)to the named source files in the Tk800.024 source distro.

    ./pTk/mTk/xlib/X11/X.h
    #define MappingNotify 34
    #define GenericEvent 35
    #define LASTEvent 36 /* must be bigger than any event # */

    ./pTk/tkBind.c
    ./pTk/mTk/generic/tkBind.c
    static int flagArrayTK_LASTEVENT = {
    ...
    /* MappingNotify */ 0,
    /*CN Not used */ 0,
    ...
    };

    ./pTk/tkEvent.c
    ./pTk/mTk/generic/tkEvent.c
    static unsigned long eventMasksTK_LASTEVENT = {
    ...
    0, /* Mapping Notify */
    0, /*CN X.Org added 'GenericEvent' */
    ...
    };

Re^3: Strange Perl/Tk error
by Anonymous Monk on Apr 25, 2012 at 13:40 UTC