[gtkmm] Fix a segfault in the Drawing Area demo



commit d2ec192179a9d6449c83a33b4de039645e8d7c8a
Author: Kjell Ahlstedt <kjell ahlstedt bredband net>
Date:   Thu May 22 11:22:12 2014 +0200

    Fix a segfault in the Drawing Area demo
    
    * demos/gtk-demo/example_drawingarea.cc: Take a reference of event->device
    in Example_DrawingArea::on_drawingarea_scribble_motion_notify_event().
    RefPtr's destructor unreferences it.

 demos/gtk-demo/example_drawingarea.cc |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)
---
diff --git a/demos/gtk-demo/example_drawingarea.cc b/demos/gtk-demo/example_drawingarea.cc
index 2aabd9f..564b617 100644
--- a/demos/gtk-demo/example_drawingarea.cc
+++ b/demos/gtk-demo/example_drawingarea.cc
@@ -203,7 +203,8 @@ bool Example_DrawingArea::on_drawingarea_scribble_motion_notify_event(GdkEventMo
     {
       int x = 0, y = 0;
       Gdk::ModifierType state = Gdk::ModifierType(0);
-      const Glib::RefPtr<const Gdk::Device> device = Glib::wrap(event->device);
+      const Glib::RefPtr<const Gdk::Device> device =
+        Glib::wrap(event->device, true); // true == take_copy
       refWindow->get_device_position(device, x, y, state);
 
       if((state & Gdk::BUTTON1_MASK) != 0)


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