From: Sergey Skorniakov (s.skorniakov_at_[hidden])
Date: 2007-06-06 02:57:22
> Sergey Skorniakov wrote:
>> basic_binary_iprimitive.hpp, basic_binary_iprimitive<Archive, Elem,
>> std::streamsize s = count / sizeof(Elem);
>> std::streamsize scount = m_sb.sgetn(
>> static_cast<Elem *>(address),
>> if(count != static_cast<std::size_t>(s))
>> If sizeof(Elem) != 1, exception will be thrown. Looks like wide
>> binary iarchives was never been tested.
> True - wide binary archives result from the implementation scheme.
> I couldn't think of a use case for them.
The real problem with this typo is that narrow binary archive can't reports about errors - count != static_cast<std::size_t>(s) always evaluates to true if sizeof(Elem) == 1.
I think that 'scount' should be used instead of 'count'.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk