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 0993cdf79f
commit 6ea7c290a3

View File

@@ -6359,7 +6359,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;
}
@@ -11054,14 +11054,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.