vecfree.c revision 3e14f97f673e8a630f076077de35afdd43dc1587
/***********************************************************************
* *
* This software is part of the ast package *
* Copyright (c) 1985-2010 AT&T Intellectual Property *
* and is licensed under the *
* Common Public License, Version 1.0 *
* by AT&T Intellectual Property *
* *
* A copy of the License is available at *
* http://www.opensource.org/licenses/cpl1.0.txt *
* (with md5 checksum 059e8cd6165cb4c31e351f2b69388fd9) *
* *
* Information and Software Systems Research *
* AT&T Research *
* Florham Park NJ *
* *
* Glenn Fowler <gsf@research.att.com> *
* David Korn <dgk@research.att.com> *
* Phong Vo <kpv@research.att.com> *
* *
***********************************************************************/
#pragma prototyped
/*
* Glenn Fowler
* AT&T Bell Laboratories
*
* file to string vector support
*/
#include <ast.h>
#include <vecargs.h>
/*
* free a string vector generated by vecload()
*
* retain!=0 frees the string pointers but retains the string data
* in this case the data is permanently allocated
*/
void
vecfree(register char** vec, int retain)
{
if (vec)
{
if (*(vec -= 2) && !retain) free(*vec);
free(vec);
}
}