| 10 | 
  | 
#include "copyright.h" | 
| 11 | 
  | 
 | 
| 12 | 
  | 
#include  <ctype.h> | 
| 13 | 
– | 
#include  <string.h> | 
| 14 | 
– | 
#include  <stdio.h> | 
| 13 | 
  | 
 | 
| 14 | 
  | 
#include  "platform.h" | 
| 15 | 
  | 
#include  "standard.h" | 
| 17 | 
  | 
#include  "otypes.h" | 
| 18 | 
  | 
 | 
| 19 | 
  | 
#ifndef OBJMEMOPT | 
| 20 | 
< | 
#define OBJMEMOPT       1               /* optimize object block memory? */ | 
| 20 | 
> | 
#define OBJMEMOPT       0               /* optimize object block memory? */ | 
| 21 | 
  | 
#endif | 
| 22 | 
  | 
 | 
| 23 | 
  | 
OBJREC  *objblock[MAXOBJBLK];           /* our objects */ | 
| 182 | 
  | 
        unsigned long   sargcnt = 0, iargcnt = 0, fargcnt = 0, namecnt = 0; | 
| 183 | 
  | 
 | 
| 184 | 
  | 
        if (i < 0 || objblock[i] == NULL || objblock[i][OBJBLKSIZ].otype < 0) | 
| 185 | 
< | 
                return;                 /* invalid or already flagged */ | 
| 185 | 
> | 
                return;                 /* invalid or already done */ | 
| 186 | 
  | 
 | 
| 187 | 
  | 
        for (o = objblock[i]+OBJBLKSIZ; o-- > objblock[i]; ) { | 
| 188 | 
  | 
                if (o->oname == NULL)   /* too early to optimize? */ | 
| 197 | 
  | 
#endif | 
| 198 | 
  | 
                namecnt += strlen(o->oname)+1; | 
| 199 | 
  | 
        } | 
| 200 | 
< | 
        if (n < OBJBLKSIZ/10)   /* never happens? */ | 
| 200 | 
> | 
        if (n < OBJBLKSIZ/10)           /* never happens? */ | 
| 201 | 
  | 
                return; | 
| 202 | 
  | 
                                        /* prep consolidation object */ | 
| 203 | 
  | 
        co = objblock[i]+OBJBLKSIZ; | 
| 213 | 
  | 
                        (co->oargs.farg == NULL)) { | 
| 214 | 
  | 
                free(co->oname); | 
| 215 | 
  | 
                free(co->oargs.sarg); free(co->oargs.farg); | 
| 216 | 
+ | 
                memset(co, 0, sizeof(OBJREC)); | 
| 217 | 
  | 
                return;                 /* insufficient memory */ | 
| 218 | 
  | 
        } | 
| 219 | 
  | 
#ifdef  IARGS | 
| 222 | 
  | 
        if (co->oargs.iarg == NULL) { | 
| 223 | 
  | 
                free(co->oname); | 
| 224 | 
  | 
                free(co->oargs.sarg); free(co->oargs.farg); | 
| 225 | 
+ | 
                memset(co, 0, sizeof(OBJREC)); | 
| 226 | 
  | 
                return;                 /* insufficient memory */ | 
| 227 | 
  | 
        } | 
| 228 | 
  | 
        iargcnt = 0; |