GtkWindow: Fix a use-after-free

We were printing a string in a warning after freeing it.
Also, fix an x/y typo that might cause popovers to be
mispositioned.
This commit is contained in:
Matthias Clasen 2015-07-17 19:19:24 -04:00
parent a9ee745dc1
commit 0bb2567ff5

View File

@ -6452,7 +6452,7 @@ popover_get_rect (GtkWindowPopover *popover,
{
rect->y = popover->rect.y + popover->rect.height;
if (rect->y + rect->height < win_alloc.x + win_alloc.height &&
if (rect->y + rect->height < win_alloc.y + win_alloc.height &&
gtk_widget_get_vexpand (popover->widget))
rect->height = win_alloc.y + win_alloc.height - rect->y;
}
@ -11163,14 +11163,16 @@ gtk_window_activate_menubar (GtkWindow *window,
return FALSE;
gtk_accelerator_parse (accel, &keyval, &mods);
g_free (accel);
if (keyval == 0)
{
g_warning ("Failed to parse menu bar accelerator '%s'\n", accel);
g_free (accel);
return FALSE;
}
g_free (accel);
/* FIXME this is wrong, needs to be in the global accel resolution
* thing, to properly consider i18n etc., but that probably requires
* AccelGroup changes etc.