I've made some (a lot) more tests, and concluded that the culprit was the
"enabling" of extended devices that causes the segfault.

Here is a C code that enables the extended devices (then fires up the
InputDialog to check they are enabled):

initialize_input_devices.c
<http://gtk.10911.n7.nabble.com/file/n85894/initialize_input_devices.c>  

I tried translating it like this

my $display=$window->get_display;
my @list=($display->list_devices());
for(my $i=0;$i<$#list;$i++){
  my $name=$list[$i]->name;
  my $result=$list[$i]->set_mode('GDK_MODE_SCREEN');
  print "activating device \# $i, name=$name result=$result\n";
}

but I guess I am missing the equivalent of the "tmp_list->data". Any idea?

Alternatively, I'd be happy to learn how to make the above C code into a
function that can be called from perl (through XS magic, I guess). Any
pointer on how to do that?




--
View this message in context: 
http://gtk.10911.n7.nabble.com/segfault-using-extension-events-in-Gtk2-s-scribble-pl-tp85892p85894.html
Sent from the Gtk+ - Perl mailing list archive at Nabble.com.
_______________________________________________
gtk-perl-list mailing list
gtk-perl-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gtk-perl-list

Reply via email to