]> git.mxchange.org Git - simgear.git/blobdiff - simgear/misc/zfstream.hxx
MSVC .NET 2003 fix
[simgear.git] / simgear / misc / zfstream.hxx
index 1dd3669e1b1853af6dcfccd72163689b0b975d9a..2b0f10c4d7515bf52fc56d1793cbd3b5b714a4c7 100644 (file)
 
 #include <simgear/compiler.h>
 
-#ifdef HAVE_ZLIB
-#  include <zlib.h>
-#else
-#  include <simgear/zlib/zlib.h>
-#endif
-
-// At least Irix needs this
-#ifdef SG_HAVE_NATIVE_SGI_COMPILERS
-#include <char_traits.h>
-SG_USING_STD(char_traits);
-#endif
+#include <zlib.h>
 
 #ifdef SG_HAVE_STD_INCLUDES
 
@@ -80,8 +70,6 @@ SG_USING_STD(streamoff);
 
 #if defined(__GNUC__) && __GNUC_MINOR__ < 8
 #  define ios_binary   ios::bin
-#elif defined( SG_HAVE_NATIVE_SGI_COMPILERS )
-#  define ios_binary   0
 #else
 #  define ios_binary   ios::binary
 #endif
@@ -98,7 +86,11 @@ SG_USING_STD(streamoff);
 /**
  * A C++ I/O streams interface to the zlib gz* functions.
  */
+#ifdef SG_NEED_STREAMBUF_HACK
+class gzfilebuf : public __streambuf
+#else
 class gzfilebuf : public streambuf
+#endif
 {
 public:
 
@@ -149,7 +141,7 @@ public:
 protected:
 
     virtual int_type underflow();
-    virtual int_type overflow( int_type c = traits_type::eof() );
+    virtual int_type overflow( int_type c = streambuf::traits_type::eof() );
 
 private: