diff options
-rw-r--r-- | decoder/filelib.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/decoder/filelib.h b/decoder/filelib.h index 9f6bd0a9..2d347c00 100644 --- a/decoder/filelib.h +++ b/decoder/filelib.h @@ -59,9 +59,9 @@ class ReadFile : public BaseFile<std::istream> { abort(); } char const* file=filename_.c_str(); // just in case the gzstream keeps using the filename for longer than the constructor, e.g. inflateReset2. warning in valgrind that I'm hoping will disappear - it makes no sense. - ps_.reset(EndsWith(filename, ".gz") ? + ps_=PS(EndsWith(filename, ".gz") ? static_cast<std::istream*>(new igzstream(file)) : - static_cast<std::istream*>(new std::ifstream(file))); + static_cast<std::istream*>(new std::ifstream(file))); if (!*ps_) { std::cerr << "Failed to open " << filename << std::endl; abort(); @@ -81,7 +81,7 @@ class WriteFile : public BaseFile<std::ostream> { ps_=PS(&std::cout,file_null_deleter()); } else { char const* file=filename_.c_str(); // just in case the gzstream keeps using the filename for longer than the constructor, e.g. inflateReset2. warning in valgrind that I'm hoping will disappear - it makes no sense. - ps_.reset(EndsWith(filename, ".gz") ? + ps_=PS(EndsWith(filename, ".gz") ? static_cast<std::ostream*>(new ogzstream(file)) : static_cast<std::ostream*>(new std::ofstream(file))); if (!*ps_) { |