Changeset 59714 in webkit


Ignore:
Timestamp:
May 18, 2010 3:14:25 PM (14 years ago)
Author:
Martin Robinson
Message:

2010-05-18 Martin Robinson <mrobinson@igalia.com>

Reviewed by Xan Lopez.

[GTK] DragClientGtk::startDrag leaks GdkEvents
https://bugs.webkit.org/show_bug.cgi?id=39322

  • WebCoreSupport/DragClientGtk.cpp: (WebKit::DragClient::startDrag): Properly clean up allocated GdkEvent.
Location:
trunk/WebKit/gtk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/WebKit/gtk/ChangeLog

    r59240 r59714  
     12010-05-18  Martin Robinson  <mrobinson@igalia.com>
     2
     3        Reviewed by Xan Lopez.
     4
     5        [GTK] DragClientGtk::startDrag leaks GdkEvents
     6        https://bugs.webkit.org/show_bug.cgi?id=39322
     7
     8        * WebCoreSupport/DragClientGtk.cpp:
     9        (WebKit::DragClient::startDrag): Properly clean up allocated GdkEvent.
     10
    1112010-05-12  Martin Robinson  <mrobinson@igalia.com>
    212
  • trunk/WebKit/gtk/WebCoreSupport/DragClientGtk.cpp

    r58885 r59714  
    8181    GRefPtr<GtkTargetList> targetList(clipboardGtk->helper()->targetListForDataObject(dataObject.get()));
    8282    GdkEvent* event = gdk_event_new(GDK_BUTTON_PRESS);
    83     reinterpret_cast<GdkEventButton*>(event)->window = gtk_widget_get_window(GTK_WIDGET(m_webView));
    84     reinterpret_cast<GdkEventButton*>(event)->time = GDK_CURRENT_TIME;
     83    // This will be decremented by gdk_event_free() below.
     84    event->button.window = static_cast<GdkWindow*>(g_object_ref(gtk_widget_get_window(GTK_WIDGET(m_webView))));
     85    event->button.time = GDK_CURRENT_TIME;
    8586
    8687    GdkDragContext* context = gtk_drag_begin(GTK_WIDGET(m_webView), targetList.get(), dragAction, 1, event);
     
    9192    else
    9293        gtk_drag_set_icon_default(context);
     94
     95    gdk_event_free(event);
    9396}
    9497
Note: See TracChangeset for help on using the changeset viewer.