Re: [Boost-bugs] [Boost C++ Libraries] #3723: gzip_docompressor error - basic_array_source no putback member

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #3723: gzip_docompressor error - basic_array_source no putback member
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-03-01 02:26:15


#3723: gzip_docompressor error - basic_array_source no putback member
--------------------------+-------------------------------------------------
 Reporter: jose | Owner: turkanis
     Type: Bugs | Status: new
Milestone: Boost 1.42.0 | Component: iostreams
  Version: Boost 1.41.0 | Severity: Showstopper
 Keywords: |
--------------------------+-------------------------------------------------

Comment(by nikiml):

 Would you accept this patch?
 Or is it not general enough?


 $ svn diff -r HEAD
 Index: detail/adapter/direct_adapter.hpp
 ===================================================================
 --- detail/adapter/direct_adapter.hpp (revision 59992)
 +++ detail/adapter/direct_adapter.hpp (working copy)
 @@ -116,6 +116,7 @@
      std::streamsize write(const char_type* s, std::streamsize n);
      std::streampos seek( stream_offset, BOOST_IOS::seekdir,
                           BOOST_IOS::openmode = BOOST_IOS::in |
 BOOST_IOS::out );
 + bool putback(const char_type c);
      void close();
      void close(BOOST_IOS::openmode which);
  #ifndef BOOST_IOSTREAMS_NO_LOCALE
 @@ -204,6 +205,18 @@
  }

  template<typename Direct>
 +inline bool direct_adapter<Direct>::putback
 + (const char_type c)
 +{
 + pointers& get = ptrs_.first();
 + if( get.ptr == get.beg )
 + throw bad_putback();
 + get.ptr -= 1;
 + *get.ptr = c;
 + return true;
 +}
 +
 +template<typename Direct>
  inline std::streamsize direct_adapter<Direct>::write
      (const char_type* s, std::streamsize n)
  {

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/3723#comment:1>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:02 UTC