Fix a number of segv's introduced during Win API change.
SVN revision: 22536
This commit is contained in:
parent
fb7e77a4c2
commit
5281c13f3c
|
@ -551,6 +551,7 @@ static void
|
|||
DialogEwinClose(EWin * ewin)
|
||||
{
|
||||
DialogDestroy(ewin->data);
|
||||
ewin->client.win = NULL;
|
||||
ewin->data = NULL;
|
||||
}
|
||||
|
||||
|
|
18
src/eobj.c
18
src/eobj.c
|
@ -216,20 +216,20 @@ EobjFini(EObj * eo)
|
|||
Eprintf("EobjFini: %#lx %s\n", EobjGetXwin(eo), eo->name);
|
||||
|
||||
EobjListStackDel(eo);
|
||||
if (eo->external)
|
||||
{
|
||||
EUnregisterWindow(eo->win);
|
||||
}
|
||||
else
|
||||
{
|
||||
EDestroyWindow(eo->win);
|
||||
eo->gone = 1;
|
||||
}
|
||||
|
||||
#if USE_COMPOSITE
|
||||
if (!eo->external)
|
||||
eo->gone = 1; /* Actually not yet (but soon) */
|
||||
|
||||
if (eo->cmhook)
|
||||
ECompMgrWinDel(eo);
|
||||
#endif
|
||||
|
||||
if (eo->external)
|
||||
EUnregisterWindow(eo->win);
|
||||
else
|
||||
EDestroyWindow(eo->win);
|
||||
|
||||
if (eo->name)
|
||||
Efree(eo->name);
|
||||
}
|
||||
|
|
|
@ -558,6 +558,7 @@ static void
|
|||
IconboxEwinClose(EWin * ewin)
|
||||
{
|
||||
IconboxDestroy(ewin->data, 0);
|
||||
ewin->client.win = NULL;
|
||||
ewin->data = NULL;
|
||||
}
|
||||
|
||||
|
|
|
@ -615,6 +615,7 @@ static void
|
|||
PagerEwinClose(EWin * ewin)
|
||||
{
|
||||
PagerDestroy(ewin->data);
|
||||
ewin->client.win = NULL;
|
||||
ewin->data = NULL;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue