diff options
Diffstat (limited to 'decoder/gzstream.cc')
-rw-r--r-- | decoder/gzstream.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/decoder/gzstream.cc b/decoder/gzstream.cc index 9678355b..88cd1bd2 100644 --- a/decoder/gzstream.cc +++ b/decoder/gzstream.cc @@ -51,14 +51,16 @@ gzstreambuf* gzstreambuf::open( const char* name, int open_mode) { if ((mode & std::ios::ate) || (mode & std::ios::app) || ((mode & std::ios::in) && (mode & std::ios::out))) return (gzstreambuf*)0; - char fmode[10]; + const int Nmode=10; + char fmode[Nmode]; char* fmodeptr = fmode; if ( mode & std::ios::in) *fmodeptr++ = 'r'; else if ( mode & std::ios::out) *fmodeptr++ = 'w'; *fmodeptr++ = 'b'; - *fmodeptr = '\0'; + while (fmodeptr<fmode+Nmode) // hopefully wil help valgrind + *fmodeptr++ = '\0'; file = gzopen( name, fmode); if (!file) handle_gzerror(); if (file == 0) |