diff options
Diffstat (limited to 'amiga/object.c')
-rwxr-xr-x | amiga/object.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/amiga/object.c b/amiga/object.c index a51be81c1..93094cbda 100755 --- a/amiga/object.c +++ b/amiga/object.c @@ -48,14 +48,24 @@ struct nsObject *AddObject(struct MinList *objlist,ULONG otype) return(dtzo); } -void DelObject(struct nsObject *dtzo) +void DelObjectInternal(struct nsObject *dtzo, BOOL free_obj) { Remove((struct Node *)dtzo); - if(dtzo->objstruct) FreeVec(dtzo->objstruct); + if(dtzo->objstruct && free_obj) FreeVec(dtzo->objstruct); FreeVec(dtzo); dtzo = NULL; } +void DelObject(struct nsObject *dtzo) +{ + DelObjectInternal(dtzo, TRUE); +} + +void DelObjectNoFree(struct nsObject *dtzo) +{ + DelObjectInternal(dtzo, FALSE); +} + void FreeObjList(struct MinList *objlist) { struct nsObject *node; |