--------------------- PatchSet 4561 Date: 2007/05/16 13:09:13 Author: adri Branch: squid3_logdaemon Tag: (none) Log: * LogFileOpen() is expected to actually open the file.. * .. and fix LogFileBlocking::Open() to DTRT! Members: src/LogFileBlocking.cc:1.1.2.5->1.1.2.6 src/LogFileOpen.cc:1.1.2.1->1.1.2.2 Index: squid3/src/LogFileBlocking.cc =================================================================== RCS file: /cvsroot/squid-sf//squid3/src/Attic/LogFileBlocking.cc,v retrieving revision 1.1.2.5 retrieving revision 1.1.2.6 diff -u -r1.1.2.5 -r1.1.2.6 --- squid3/src/LogFileBlocking.cc 16 May 2007 03:50:51 -0000 1.1.2.5 +++ squid3/src/LogFileBlocking.cc 16 May 2007 13:09:13 -0000 1.1.2.6 @@ -1,5 +1,5 @@ /* - * $Id: LogFileBlocking.cc,v 1.1.2.5 2007/05/16 03:50:51 adri Exp $ + * $Id: LogFileBlocking.cc,v 1.1.2.6 2007/05/16 13:09:13 adri Exp $ * * DEBUG: section 50 Log file handling * AUTHOR: Adrian Chadd @@ -47,7 +47,7 @@ if (fp == NULL && do_fatal) { debugs(50, 1, "logfileBlocking::Open: " << logpath << ": " << xstrerror()); fatalf("Cannot open %s: %s", logpath.c_str(), xstrerror()); - } else { + } else if (fp == NULL) { debugs(50, 1, "logfileBlocking::Open: trying to open " << logpath << "; error " << xstrerror()); return false; } Index: squid3/src/LogFileOpen.cc =================================================================== RCS file: /cvsroot/squid-sf//squid3/src/Attic/LogFileOpen.cc,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -u -r1.1.2.1 -r1.1.2.2 --- squid3/src/LogFileOpen.cc 16 May 2007 03:50:51 -0000 1.1.2.1 +++ squid3/src/LogFileOpen.cc 16 May 2007 13:09:13 -0000 1.1.2.2 @@ -15,6 +15,14 @@ Core::LogFile * LogFileOpen(const char *path, int buf_sz, bool do_fatal) { - return new Core::LogFileBlocking(path, buf_sz, do_fatal); + Core::LogFile *lf; + lf = new Core::LogFileBlocking(path, buf_sz, do_fatal); + if (lf->Open()) + return lf; + + /* failed to open */ + delete lf; + lf = NULL; + return NULL; }