mirror of
https://github.com/gryf/wmaker.git
synced 2025-12-23 14:42:29 +01:00
WMaker: change conceptually imperfect code in drawerDestroy (Coverity #50265)
Factually, the program works because the function 'drawerRemoveFromChain' uses only the address of the drawer and not the content of the structure, but conceptually this address point to a storage space that has been de-allocated, so that's calling for trouble for future code changes. Signed-off-by: Christophe CURIS <christophe.curis@free.fr>
This commit is contained in:
committed by
Carlos R. Mafra
parent
68e4ccca58
commit
1a64ca8275
@@ -4448,13 +4448,15 @@ static void drawerDestroy(WDock *drawer)
|
||||
|
||||
wAppIconDestroy(drawer->icon_array[0]);
|
||||
wfree(drawer->icon_array);
|
||||
wfree(drawer);
|
||||
drawer->icon_array = NULL;
|
||||
|
||||
drawerRemoveFromChain(scr, drawer);
|
||||
if (scr->last_dock == drawer)
|
||||
scr->last_dock = NULL;
|
||||
if (scr->attracting_drawer == drawer)
|
||||
scr->attracting_drawer = NULL;
|
||||
|
||||
wfree(drawer);
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user