sfpool.c revision 3e14f97f673e8a630f076077de35afdd43dc1587
3853N/A POOLMTXENTER(p);
3853N/A POOLMTXRETURN(p,0);
3853N/A POOLMTXENTER(p);
3853N/A POOLMTXRETURN(p,p);
3853N/A POOLMTXENTER(p);
3853N/A POOLMTXRETURN(p,0);
3853N/Astatic int _sfpdelete(p, f, n)
3853N/A POOLMTXENTER(p);
{ if(p != &_Sfpool)
delpool(p);
goto done;
for(n = 0; n < p->n_sf; ++n)
if(n < p->n_sf && n > 0)
{ f = p->sf[n];
p->sf[0] = f;
f = p->sf[0];
if(!SFFROZEN(f))
_SFOPEN(f);
{ _sfpdelete(p,f,0);
_sfsetpool(f);
done:
POOLMTXRETURN(p,0);
#if __STD_C
reg int n;
if(type > 0)
return _sfsetpool(f);
{ if(!(p = f->pool) )
if(p->sf[n] == f)
#if __STD_C
Sfpool_t* p;
{ if(!pf)
return pf;
{ SFMTXLOCK(f);
{ SFMTXUNLOCK(f);
if(pf)
SFMTXUNLOCK(f);
SFMTXUNLOCK(f);
if(pf)
return pf;
SFLOCK(f,0);
if(pf)
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
goto done;
if(_sfsetpool(f) < 0)
goto done;
SFOPEN(f,0);
goto done;
done:
{ SFOPEN(f,0);
SFMTXUNLOCK(f);
if(pf)
return rv;