You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@xerces.apache.org by db...@apache.org on 2006/09/30 01:15:47 UTC

svn commit: r451489 - in /xerces/c/trunk/src/xercesc: internal/BinFileOutputStream.cpp util/BinFileInputStream.cpp

Author: dbertoni
Date: Fri Sep 29 16:15:46 2006
New Revision: 451489

URL: http://svn.apache.org/viewvc?view=rev&rev=451489
Log:
Fixed some bugs where the literal 0 was being used as the value of an invalid file handle.  This affects platforms like Solaris, which use open/close, etc., instead of fopen/fclose, etc.  Removed unnecessary transcoding of file names, that resulted in round-trip transcoding.  Moved calls to initializer list to avoid initializing to a default value.

Modified:
    xerces/c/trunk/src/xercesc/internal/BinFileOutputStream.cpp
    xerces/c/trunk/src/xercesc/util/BinFileInputStream.cpp

Modified: xerces/c/trunk/src/xercesc/internal/BinFileOutputStream.cpp
URL: http://svn.apache.org/viewvc/xerces/c/trunk/src/xercesc/internal/BinFileOutputStream.cpp?view=diff&rev=451489&r1=451488&r2=451489
==============================================================================
--- xerces/c/trunk/src/xercesc/internal/BinFileOutputStream.cpp (original)
+++ xerces/c/trunk/src/xercesc/internal/BinFileOutputStream.cpp Fri Sep 29 16:15:46 2006
@@ -35,30 +35,23 @@
 // ---------------------------------------------------------------------------
 BinFileOutputStream::~BinFileOutputStream()
 {
-    if (fSource)
+    if (getIsOpen())
         XMLPlatformUtils::closeFile(fSource, fMemoryManager);
 }
 
 BinFileOutputStream::BinFileOutputStream(const XMLCh*   const fileName
                                          , MemoryManager* const manager)
 
-:fSource(0)
+:fSource(XMLPlatformUtils::openFileToWrite(fileName, manager))
 ,fMemoryManager(manager)
 {
-    fSource = XMLPlatformUtils::openFileToWrite(fileName, manager);
 }
 
 BinFileOutputStream::BinFileOutputStream(const char*    const fileName
                                        , MemoryManager* const manager)
-:fSource(0)
+:fSource(XMLPlatformUtils::openFileToWrite(fileName, manager))
 ,fMemoryManager(manager)
 {
-    // Transcode the file name and put a janitor on the temp buffer
-    XMLCh* realName = XMLString::transcode(fileName, manager);
-    ArrayJanitor<XMLCh> janName(realName, manager);
-
-    // Try to open the file
-    fSource = XMLPlatformUtils::openFileToWrite(realName, manager);
 }
 
 // ---------------------------------------------------------------------------

Modified: xerces/c/trunk/src/xercesc/util/BinFileInputStream.cpp
URL: http://svn.apache.org/viewvc/xerces/c/trunk/src/xercesc/util/BinFileInputStream.cpp?view=diff&rev=451489&r1=451488&r2=451489
==============================================================================
--- xerces/c/trunk/src/xercesc/util/BinFileInputStream.cpp (original)
+++ xerces/c/trunk/src/xercesc/util/BinFileInputStream.cpp Fri Sep 29 16:15:46 2006
@@ -36,25 +36,17 @@
 BinFileInputStream::BinFileInputStream(const XMLCh* const fileName
                                        , MemoryManager* const manager) :
 
-    fSource(0)
+    fSource(XMLPlatformUtils::openFile(fileName, manager))
   , fMemoryManager(manager)
 {
-    // Try to open the file
-    fSource = XMLPlatformUtils::openFile(fileName, manager);
 }
 
 BinFileInputStream::BinFileInputStream(const char* const fileName,
                                        MemoryManager* const manager) :
 
-    fSource(0)
+    fSource(XMLPlatformUtils::openFile(fileName, manager))
   , fMemoryManager(manager)
 {
-    // Transcode the file name and put a janitor on the temp buffer
-    XMLCh* realName = XMLString::transcode(fileName, manager);
-    ArrayJanitor<XMLCh> janName(realName, manager);
-
-    // Try to open the file
-    fSource = XMLPlatformUtils::openFile(realName, manager);
 }
 
 BinFileInputStream::BinFileInputStream(const FileHandle toAdopt
@@ -67,7 +59,7 @@
 
 BinFileInputStream::~BinFileInputStream()
 {
-    if (fSource)
+    if (getIsOpen())
         XMLPlatformUtils::closeFile(fSource, fMemoryManager);
 }
 



---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@xerces.apache.org
For additional commands, e-mail: commits-help@xerces.apache.org