On Thu, 29 Aug 2002, Chris Gilbert wrote: > Just been fiddling with cyrus 2.1.8, and for numerous reasons ended up > with NetBSD telling me that free was being given a junk pointer, a bit of > debugging later turns out that the error cases for create_db, turns out > that the error cases caused a bad db->fname to be freed, it just needed > initialising to NULL. > > Please can someone check the attached patch. Should I have entered this > via http://bugzilla.andrew.cmu.edu/ ?
Patch accepted for the Debian tree, thanks! Ken, Rob, maybe this one didn't get your attention at the time? -- "One disk to rule them all, One disk to find them. One disk to bring them all and in the darkness grind them. In the Land of Redmond where the shadows lie." -- The Silicon Valley Tarot Henrique Holschuh
Index: cyrusdb_flat.c =================================================================== RCS file: /home/cvs/debian/cyrus21-imapd/lib/cyrusdb_flat.c,v retrieving revision 1.3 diff -u -r1.3 cyrusdb_flat.c --- cyrusdb_flat.c 6 Sep 2002 21:26:03 -0000 1.3 +++ cyrusdb_flat.c 21 Sep 2002 12:17:31 -0000 @@ -186,6 +186,7 @@ struct db *db = (struct db *) xmalloc(sizeof(struct db)); struct stat sbuf; + db->fname = NULL; assert(fname && ret); db->fd = open(fname, O_RDWR | O_CREAT, 0666);