Check whether the gadcon is on a shelf before doing shelf operation.

(Thanks to Dave Andreoli).


SVN revision: 34810
This commit is contained in:
Sebastian Dransfeld 2008-06-13 09:14:20 +00:00
parent 99d1b2d024
commit 705f459e8c
1 changed files with 6 additions and 2 deletions

View File

@ -637,15 +637,19 @@ _e_drag_win_show(E_Drop_Handler *h)
static void static void
_e_drag_win_hide(E_Drop_Handler *h) _e_drag_win_hide(E_Drop_Handler *h)
{ {
E_Shelf *shelf;
if (h->obj) if (h->obj)
{ {
switch (h->obj->type) switch (h->obj->type)
{ {
case E_GADCON_TYPE: case E_GADCON_TYPE:
e_shelf_toggle(e_gadcon_shelf_get((E_Gadcon *)(h->obj)), 0); shelf = e_gadcon_shelf_get((E_Gadcon *)(h->obj));
if (shelf) e_shelf_toggle(shelf, 0);
break; break;
case E_GADCON_CLIENT_TYPE: case E_GADCON_CLIENT_TYPE:
e_shelf_toggle(e_gadcon_shelf_get(((E_Gadcon_Client *)(h->obj))->gadcon), 0); shelf = e_gadcon_shelf_get(((E_Gadcon_Client *)(h->obj))->gadcon);
if (shelf) e_shelf_toggle(shelf, 0);
break; break;
/* FIXME: add more types as needed */ /* FIXME: add more types as needed */
default: default: