mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-19 09:50:06 +00:00
Fix memory management of types array
Also add autorelease pool to gtk_drag_begin_idle().
This commit is contained in:
parent
c12dbae0ac
commit
f91907101d
@ -370,7 +370,7 @@ gtk_clipboard_set_contents (GtkClipboard *clipboard,
|
|||||||
clipboard->target_list = gtk_target_list_new (targets, n_targets);
|
clipboard->target_list = gtk_target_list_new (targets, n_targets);
|
||||||
|
|
||||||
[clipboard->pasteboard declareTypes:types owner:owner];
|
[clipboard->pasteboard declareTypes:types owner:owner];
|
||||||
|
[types release];
|
||||||
[pool release];
|
[pool release];
|
||||||
|
|
||||||
return TRUE;
|
return TRUE;
|
||||||
|
@ -455,7 +455,9 @@ register_types (GtkWidget *widget, GtkDragDestSite *site)
|
|||||||
pool = [[NSAutoreleasePool alloc] init];
|
pool = [[NSAutoreleasePool alloc] init];
|
||||||
types = _gtk_quartz_target_list_to_pasteboard_types (site->target_list);
|
types = _gtk_quartz_target_list_to_pasteboard_types (site->target_list);
|
||||||
|
|
||||||
[nswindow registerForDraggedTypes:types];
|
[nswindow registerForDraggedTypes:[types copy]];
|
||||||
|
|
||||||
|
[types release];
|
||||||
[pool release];
|
[pool release];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1063,6 +1065,7 @@ gtk_drag_dest_find_target (GtkWidget *widget,
|
|||||||
static gboolean
|
static gboolean
|
||||||
gtk_drag_begin_idle (gpointer arg)
|
gtk_drag_begin_idle (gpointer arg)
|
||||||
{
|
{
|
||||||
|
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
|
||||||
GdkDragContext* context = (GdkDragContext*) arg;
|
GdkDragContext* context = (GdkDragContext*) arg;
|
||||||
GtkDragSourceInfo* info = gtk_drag_get_source_info (context, FALSE);
|
GtkDragSourceInfo* info = gtk_drag_get_source_info (context, FALSE);
|
||||||
NSWindow *nswindow;
|
NSWindow *nswindow;
|
||||||
@ -1096,6 +1099,8 @@ gtk_drag_begin_idle (gpointer arg)
|
|||||||
|
|
||||||
[info->nsevent release];
|
[info->nsevent release];
|
||||||
|
|
||||||
|
[pool release];
|
||||||
|
|
||||||
return FALSE;
|
return FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user