(file) Return to TraceFileHandlerPOSIX.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Common

Diff for /pegasus/src/Pegasus/Common/TraceFileHandlerPOSIX.cpp between version 1.18 and 1.19.8.2

version 1.18, 2009/01/21 19:52:04 version 1.19.8.2, 2013/01/12 07:25:46
Line 35 
Line 35 
 #include <Pegasus/Common/System.h> #include <Pegasus/Common/System.h>
 #include <Pegasus/Common/TraceFileHandler.h> #include <Pegasus/Common/TraceFileHandler.h>
 #include <Pegasus/Common/Mutex.h> #include <Pegasus/Common/Mutex.h>
   #include <Pegasus/Common/StringConversion.h>
  
 PEGASUS_USING_STD; PEGASUS_USING_STD;
  
Line 77 
Line 78 
         // approaches 2GB, the next file which gets created would be         // approaches 2GB, the next file which gets created would be
         // named "cimserver.trc.1" and so on ...         // named "cimserver.trc.1" and so on ...
         fclose(_fileHandle);         fclose(_fileHandle);
         sprintf(_fileName, "%s.%u", _baseFileName, ++_fileCount);  
         _fileHandle = fopen(_fileName, "a+");          char buf[1024];
           sprintf(buf, "%s.%u", _baseFileName, ++_fileCount);
   
           //Holds current trace file name  for rolling back in case of failure
           char lastTraceFileName [strlen(_fileName) +1 ];
           memset(lastTraceFileName,0x00,sizeof(lastTraceFileName));
           strcpy (lastTraceFileName, _fileName) ;
           free(_fileName);
           _fileName = 0;
   
           // 1 extra bytes for trailling NUL
           _fileName = (char*)malloc(strlen(buf) + 1 );
           if(_fileName)
           {
               sprintf(_fileName, "%s.%u", _baseFileName, _fileCount);
               _fileHandle = _openFile(_fileName);
         if (!_fileHandle)         if (!_fileHandle)
         {         {
             // Unable to open file, log a message                   //error handling done by _openFile
             MessageLoaderParms parm(                   free (_fileName);
                 "Common.TraceFileHandler.FAILED_TO_OPEN_FILE",                   _fileName = 0;
                 "Failed to open File $0",                   //roll back to old trace file name for retest
                 _fileName);                   _fileName = strdup(lastTraceFileName);
             _logError(TRCFH_FAILED_TO_OPEN_FILE_SYSMSG,parm);                   _fileCount--;
             return;             return;
         }         }
     }     }
           else
           {
               _fileName = strdup(lastTraceFileName);
               throw PEGASUS_STD(bad_alloc)();
           }
       }
 # endif # endif
 } }
  
Line 119 
Line 141 
     fprintf(_fileHandle, "%s", message);     fprintf(_fileHandle, "%s", message);
     vfprintf(_fileHandle, fmt, argList);     vfprintf(_fileHandle, fmt, argList);
     fprintf(_fileHandle, "\n");     fprintf(_fileHandle, "\n");
   
   #if defined(PEGASUS_OS_VMS)
       if (0 == fsync(fileno(_fileHandle)))
   #else
     if (0 == fflush(_fileHandle))     if (0 == fflush(_fileHandle))
   #endif
     {     {
         // trace message successful written, reset error log messages         // trace message successful written, reset error log messages
         // thus allow writing of errors to log again         // thus allow writing of errors to log again
Line 150 
Line 177 
     prepareFileHandle();     prepareFileHandle();
     // Write the message to the file     // Write the message to the file
     fprintf(_fileHandle, "%s\n", message);     fprintf(_fileHandle, "%s\n", message);
   #if defined(PEGASUS_OS_VMS)
       if (0 == fsync(fileno(_fileHandle)))
   #else
     if (0 == fflush(_fileHandle))     if (0 == fflush(_fileHandle))
   #endif
     {     {
         // trace message successful written, reset error log messages         // trace message successful written, reset error log messages
         // thus allow writing of errors to log again         // thus allow writing of errors to log again


Legend:
Removed from v.1.18  
changed lines
  Added in v.1.19.8.2

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2