$drawing_area->queue_draw(); make program crash on some systems
- From: gvb <postdoc38 yahoo fr>
- To: gtk-perl-list gnome org
- Subject: $drawing_area->queue_draw(); make program crash on some systems
- Date: Sat, 31 Jan 2015 09:43:45 -0700 (MST)
Dear Gtk-perlers,
In developing a drawing program in gtk2-perl, I've met a strange situation.
I have a Gtk2::DrawingArea inside a Gtk2::Viewport inside a
Gtk2::ScrolledWindow inside a Gtk2::HBox inside a Gtk2::Table inside a
Gtk2::Window. I would like the DrawingArea (that contains a Cairo Surface)
to be redrawn each time the user clicks on it.
Since the other elements in the table are not changing, I have tried calling
$My_Drawing_Area->queue_draw();
or
$My_Drawing_Area->queue_draw_area(0,0,1000,1000);
to make the expose sub redraw that part of the window. While this works fine
on one system I have (opensuse 13.1, i586), on another system (also opensuse
13.1, but x86_64), the program crashes with a "BadDrawable" X error:
The error was 'BadDrawable (invalid Pixmap or Window parameter)'.
(Details: serial 1718 error_code 9 request_code 62 minor_code 0)
I get the expected behaviour (i.e. no crash) on both system if I replace the
above command by
$My_Main_Window->queue_draw();
or by
$My_Main_Window->queue_draw_area(0,0,1000,1000);
Am I having luck that the $My_Drawing_Area->queue_draw() works on one
system, or is there a bug somewhere?
Also I wonder about the sanity of calling
$My_Main_Window->queue_draw_area(0,0,1000,1000);
In, say, a 500x500 window (even if it contains a 2000x2000 drawing area as
described above).
Any idea?
Regards,
Guillaume
--
View this message in context:
http://gtk.10911.n7.nabble.com/drawing-area-queue-draw-make-program-crash-on-some-systems-tp86333.html
Sent from the Gtk+ - Perl mailing list archive at Nabble.com.
[
Date Prev][Date Next] [
Thread Prev][Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]