Restored work-around for hangs when trying to use disk-based handlers
[tangerine.git] / rom / oop / removeclass.c
blobb0194ab0830dafcac63901509bb1cdfaddfb234c
1 /*
2 Copyright © 1995-2007, The AROS Development Team. All rights reserved.
3 $Id$
5 Desc:
6 Lang: english
7 */
8 #include <proto/exec.h>
9 #include "intern.h"
11 static int test; /* cxref bug */
13 /*****************************************************************************
15 NAME */
17 AROS_LH1(void, OOP_RemoveClass,
19 /* SYNOPSIS */
20 AROS_LHA(OOP_Class *, classPtr, A0),
22 /* LOCATION */
23 struct Library *, OOPBase, 11, OOP)
25 /* FUNCTION
26 Remove a class from the list of public classes.
27 The class must have previously added with AddClass().
29 INPUTS
30 classPtr - Pointer to class that should be removed.
32 RESULT
33 None.
35 NOTES
37 EXAMPLE
39 BUGS
41 SEE ALSO
42 OOP_AddClass()
44 INTERNALS
46 HISTORY
47 29-10-95 digulla automatically created from
48 intuition_lib.fd and clib/intuition_protos.h
50 *****************************************************************************/
52 AROS_LIBFUNC_INIT
54 if (classPtr)
56 ObtainSemaphore( &GetOBase(OOPBase)->ob_ClassListLock );
57 Remove ((struct Node *)classPtr);
58 ReleaseSemaphore( &GetOBase(OOPBase)->ob_ClassListLock );
62 return;
64 AROS_LIBFUNC_EXIT
65 } /* OOP_RemoveClass */