third_party/inchi/INCHI_BASE/src/ichi_io.c
void inchi_ios_free_str( INCHI_IOSTREAM *ios )
{
    if (NULL == ios)
    {
        return;
    }
    if (ios->s.pStr) /* && ios->s.nAllocatedLength)*/
    {
        inchi_free(ios->s.pStr);
    }
    ios->s.pStr = NULL;
    ios->s.nUsedLength = 0;
    ios->s.nAllocatedLength = 0;
    ios->s.nPtr = 0;

    return;
}
/****************************************************************************
    Reset INCHI_IOSTREAM: set string buffer ptr to NULL
    (after freeing memory) but do not close associated file.
****************************************************************************/
Reset INCHI_IOSTREAM: set string buffer ptr to NULL
(after freeing memory) but do not close associated file.
Reset INCHI_IOSTREAM : set string buffer ptr to NULL ( after freeing memory ) but do not close associated file .
void inchi_ios_free_str( INCHI_IOSTREAM *ios )
{
    if (NULL == ios)
    {
        return;
    }
    if (ios->s.pStr) 
    {
        inchi_free(ios->s.pStr);
    }
    ios->s.pStr = NULL;
    ios->s.nUsedLength = 0;
    ios->s.nAllocatedLength = 0;
    ios->s.nPtr = 0;
    return;
}
void inchi_ios_free_str ( INCHI_IOSTREAM * ios ) { if ( NULL == ios ) { return ; } if ( ios -> s . pStr ) { inchi_free ( ios -> s . pStr ) ; } ios -> s . pStr = NULL ; ios -> s . nUsedLength = 0 ; ios -> s . nAllocatedLength = 0 ; ios -> s . nPtr = 0 ; return ; }
Reset INCHI_IOSTREAM: set string buffer ptr to NULL
(after freeing memory) but do not close associated file.
Reset INCHI_IOSTREAM : set string buffer ptr to NULL ( after freeing memory ) but do not close associated file .
/* && ios->s.nAllocatedLength)*/