/* ******************************************************************************* * Copyright (c) 1996 Martin Poole * ******************************************************************************* ** ** WARNING !! WARNING !! WARNING !! WARNING !! WARNING !! WARNING !! ** ** Any changes to be made to this file should first be checked with ** mplib1 source control for library integrity. ** ** mplib1 source control can be reached at mplib1@quatermass.co.uk ** * * $Source: /home/cvs/cvsroot/onelan/onelan/src/mplib1/libsrc/bpo_l_027.c,v $ * $Author: mpoole $ * $Date: 2002/10/07 09:37:36 $ * $Revision: 1.2 $ * ******************************************************************************* * * Change History * * $Log: bpo_l_027.c,v $ * Revision 1.2 2002/10/07 09:37:36 mpoole * Initial checkin of mplib1-3.1.0 * * Revision 1.1 2002/10/07 09:36:53 mpoole * Initial checkin of mplib1-3.1.0 * * ******************************************************************************* */ #ident "$Header: /home/cvs/cvsroot/onelan/onelan/src/mplib1/libsrc/bpo_l_027.c,v 1.2 2002/10/07 09:37:36 mpoole Exp $" /* ------------------------------------------------------------------ Include files ------------------------------------------------------------------ */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include /* ------------------------------------------------------------------ defines ------------------------------------------------------------------ */ /* ------------------------------------------------------------------ Code starts here ------------------------------------------------------------------ */ void bpo_Free_Node( bpo_Node_t *bnp, int flags ) { if ( (flags & BPO_REMOVE_NODES) || (flags & BPO_FREE_NODES) ) bpo_Remove_Node( bnp ); if ( (flags & BPO_FREE_NAMES) && bnp->lno_Name ) { shfree( Get_SODB_Pointer( bnp, bnp->lno_Name ) ); bnp->lno_Name = (off_t)0; } if ( (flags & BPO_FREE_ITEMS) && bnp->lno_Item ) { shfree( Get_SODB_Pointer( bnp, bnp->lno_Item ) ); bnp->lno_Item = (off_t)0; } if ( flags & BPO_FREE_NODES ) { shfree( bnp ); } return; } void bpo_Free_List( bpo_List_t *blp, int flags ) { bpo_Walk_List_N( blp, (bpo_Walk_List_N_t)bpo_Free_Node, (void *)flags ); return; } /* -- End of File -- */