[news.software.b] News 2.11.17 expire problem with dbm/dbz

mark@jhereg.Jhereg.MN.ORG (Mark H. Colburn) (01/29/89)

The new patches for expire uncover a problem with expire when it is used in
conjunction with dbm or dbz.  The problem is that expire wants to create a
new ARTFILE (NARTFILE), however, since neither DBM or DBZ creates this
file, expire will fail with a "can't write" error.  The patch to fix the
problem is below.

*** orig/expire.c	Sat Jan 28 11:35:36 1989
--- ./expire.c	Sat Jan 28 11:36:11 1989
***************
*** 346,351
  		(void) sprintf(DIRFILE, "%s/%s", LIB, "nhistory.dir");
  		(void) close(creat(PAGFILE, 0666));
  		(void) close(creat(DIRFILE, 0666));
  		initdbm(NARTFILE);
  	}
  #endif

--- 346,352 -----
  		(void) sprintf(DIRFILE, "%s/%s", LIB, "nhistory.dir");
  		(void) close(creat(PAGFILE, 0666));
  		(void) close(creat(DIRFILE, 0666));
+ 		(void) close(creat(NARTFILE, 0666));
  		initdbm(NARTFILE);
  	}
  #endif

-- 
Mark H. Colburn                  "They didn't understand a different kind of 
Minnetech Consulting, Inc.        smack was needed, than the back of a hand, 
mark@jhereg.mn.org                something else was always needed."