[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]


    NAME
        FreeRemember -- Free memory allocated by calls to allocremember().

    SYNOPSIS
        FreeRemember( RememberKey, ReallyForget )
                      A0           D0

        VOID FreeRemember( struct remember **, bool );

    FUNCTION
        This function frees up memory allocated by the allocremember() function.
        It will either free up just the remember structures, which supply the
        link nodes that tie your allocations together, or it will deallocate
        both the link nodes AND your memory buffers too.

        If you want to deallocate just the remember structure link nodes,
        you should set the ReallyForget argument to FALSE.  However, if you
        want FreeRemember to really deallocate all the memory, including
        both the remember structure link nodes and the buffers you requested
        via earlier calls to allocremember(), then you should set the
        ReallyForget argument to TRUE.

        NOTE WELL: Once you call this function passing it FALSE, the
        linkages between all the memory chunks are lost, and you
        cannot subsequently use FreeRemember() to free them.

    INPUTS
        RememberKey = the address of a pointer to struct remember.  this
           pointer should either be NULL or set to some value (possibly
           NULL) by a call to allocremember().
        ReallyForget = a bool false or true describing, respectively,
           whether you want to free up only the remember nodes or
           if you want this procedure to really forget about all of
           the memory, including both the nodes and the memory buffers
           referenced by the nodes.

    EXAMPLE
        struct remember *rememberkey;
        RememberKey = NULL;
        AllocRemember(&RememberKey, BUFSIZE, MEMF_CHIP);
        FreeRemember(&RememberKey, TRUE);

    RESULT
        None

    BUGS

    SEE ALSO
        allocremember(), exec.library/freemem()