Re: Problem with gdk crossing mode



On 05/08/01 Dov Grobgeld wrote:
I found one problem that caused the Gtk Perl extension to croak and
die with the following error message:

    Invalid value 32 for GdkCrossingMode
    
The strange thing is that this problem happened only on one specific
configuration of a Sun computer after I had run some other program.
It happened when I tried to drag an object on the Gnome Canvas.

I managed to workaround this problem with no visible side effects
by applying the following ugly patch in Gtk/GdkTypes.c :

<  hv_store(h, "mode", 4, newSVGdkCrossingMode(e->crossing.mode), 0);
 hv_store(h, "mode", 4, newSVGdkCrossingMode(e->crossing.mode%3), 0);

This is obviously not the way to do it... The real problem is that
gdk returned a crossing mode that is outside its enum range. Why
did this happen? And what is the proper perl way of dealing with
this?

I worked around the problem in the binding in a general way by
returning undef when a value for an enumeration is not registerd.
The real problem should be fixed in Gdk, though as other language
bindings will be probably bitten, too.

lupus

-- 
-----------------------------------------------------------------
lupus debian org                                     debian/rules
lupus ximian com                             Monkeys do it better




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]