1
0
Fork 0

Fix an illegal write.

Thu Mar 30 16:38:35 2006  Søren Sandmann  <sandmann@redhat.com>

	* src/compositor.c (meta_compositor_begin_move): Fix an illegal write.
This commit is contained in:
Søren Sandmann 2006-03-30 21:39:00 +00:00 committed by Søren Sandmann Pedersen
parent 3bf211c89f
commit aaafd14124
2 changed files with 9 additions and 1 deletions

View file

@ -1,3 +1,7 @@
Thu Mar 30 16:38:35 2006 Søren Sandmann <sandmann@redhat.com>
* src/compositor.c (meta_compositor_begin_move): Fix an illegal write.
Thu Mar 30 16:13:52 2006 Søren Sandmann <sandmann@redhat.com> Thu Mar 30 16:13:52 2006 Søren Sandmann <sandmann@redhat.com>
* composite.c: Turn wobbling back on Add new explosion effect. * composite.c: Turn wobbling back on Add new explosion effect.

View file

@ -1243,6 +1243,7 @@ struct MoveInfo
MetaWindow *window; MetaWindow *window;
gdouble last_time; gdouble last_time;
gboolean window_destroyed; gboolean window_destroyed;
MetaCompositor *compositor;
}; };
#endif #endif
@ -1286,7 +1287,7 @@ wobble (gpointer data)
if (!info->window_destroyed) if (!info->window_destroyed)
meta_screen_info_unset_patch (minfo, get_xid (info->window)); meta_screen_info_unset_patch (minfo, get_xid (info->window));
g_free (info); g_free (info);
info = NULL; info->compositor->move_info = NULL;
g_print ("stop wobb\n"); g_print ("stop wobb\n");
return FALSE; return FALSE;
} }
@ -1343,16 +1344,19 @@ meta_compositor_begin_move (MetaCompositor *compositor,
compositor->move_info = g_new0 (MoveInfo, 1); compositor->move_info = g_new0 (MoveInfo, 1);
compositor->move_info->compositor = compositor;
compositor->move_info->last_time = 0.0; compositor->move_info->last_time = 0.0;
compositor->move_info->timer = g_timer_new (); compositor->move_info->timer = g_timer_new ();
compositor->move_info->window_destroyed = FALSE; compositor->move_info->window_destroyed = FALSE;
compute_window_rect (window, &rect); compute_window_rect (window, &rect);
#if 0
g_print ("init: %d %d\n", initial->x, initial->y); g_print ("init: %d %d\n", initial->x, initial->y);
g_print ("window: %d %d\n", window->rect.x, window->rect.y); g_print ("window: %d %d\n", window->rect.x, window->rect.y);
g_print ("frame: %d %d\n", rect.x, rect.y); g_print ("frame: %d %d\n", rect.x, rect.y);
g_print ("grab: %d %d\n", grab_x, grab_y); g_print ("grab: %d %d\n", grab_x, grab_y);
#endif
compositor->move_info->model = model_new (&rect, TRUE); compositor->move_info->model = model_new (&rect, TRUE);
compositor->move_info->window = window; compositor->move_info->window = window;