#ident "%Z%%M% %I% %E% SMI"
#include "stdlib.h"
#include "lp.h"
#include "filters.h"
static void
#if defined(__STDC__)
freetypel (
TYPE * typel
)
#else
freetypel (typel)
register TYPE *typel;
#endif
{
register TYPE *pt;
if (typel) {
for (pt = typel; pt->name; pt++)
Free (pt->name);
Free ((char *)typel);
}
return;
}
void
#if defined(__STDC__)
freetempl (
TEMPLATE * templ
)
#else
freetempl (templ)
register TEMPLATE *templ;
#endif
{
register TEMPLATE *pt;
if (templ) {
for (pt = templ; pt->keyword; pt++) {
Free (pt->keyword);
if (pt->pattern)
Free (pt->pattern);
if (pt->re)
Free (pt->re);
if (pt->result)
Free (pt->result);
}
Free ((char *)templ);
}
return;
}
void
#if defined(__STDC__)
freefilter (
FILTER * pf
)
#else
freefilter (pf)
FILTER *pf;
#endif
{
if (!pf)
return;
if (pf->name)
Free (pf->name);
if (pf->command)
Free (pf->command);
freelist (pf->printers);
freelist (pf->printer_types);
freelist (pf->input_types);
freelist (pf->output_types);
freelist (pf->templates);
return;
}
void
#if defined(__STDC__)
free_filter (
_FILTER * pf
)
#else
free_filter (pf)
_FILTER *pf;
#endif
{
if (!pf)
return;
if (pf->name)
Free (pf->name);
if (pf->command)
Free (pf->command);
freelist (pf->printers);
freetypel (pf->printer_types);
freetypel (pf->input_types);
freetypel (pf->output_types);
freetempl (pf->templates);
return;
}