--- dialects/freebsd/dproc.c.orig 2013-03-21 07:36:03.631437106 +0400 +++ dialects/freebsd/dproc.c 2013-03-21 07:38:53.310418277 +0400 @@ -122,10 +122,11 @@ MALLOC_S nb; #if defined(HAS_FILEDESCENT) - static struct filedescent *ofb = NULL; + typedef struct filedescent ofb_t; #else /* !defined(HAS_FILEDESCENT) */ - static struct file **ofb = NULL; + typedef struct file* ofb_t; #endif /* defined(HAS_FILEDESCENT) */ + static ofb_t *ofb = NULL; static int ofbb = 0; int pgid, pid; @@ -373,24 +374,13 @@ if (!fd.fd_ofiles || (nf = fd.fd_nfiles) <= 0) continue; -#if defined(HAS_FILEDESCENT) - nb = (MALLOC_S)(sizeof(struct filedescent) * nf); -#else /* !defined(HAS_FILEDESCENT) */ - nb = (MALLOC_S)(sizeof(struct file *) * nf); -#endif /* defined(HAS_FILEDESCENT) */ + nb = (MALLOC_S)(sizeof(ofb_t) * nf); if (nb > ofbb) { if (!ofb) - -#if defined(HAS_FILEDESCENT) - ofb = (struct filedescent *)malloc(nb); - else - ofb = (struct filedescent *)realloc((MALLOC_P *)ofb, nb); -#else /* !defined(HAS_FILEDESCENT) */ - ofb = (struct file **)malloc(nb); + ofb = (ofb_t *)malloc(nb); else - ofb = (struct file **)realloc((MALLOC_P *)ofb, nb); -#endif /* defined(HAS_FILEDESCENT) */ + ofb = (ofb_t *)realloc((MALLOC_P *)ofb, nb); if (!ofb) { (void) fprintf(stderr, "%s: PID %d, no file * space\n",