readsome instead of read

This commit is contained in:
John Jones 2018-11-15 13:46:07 -08:00
parent f4dec89dc3
commit 84318f8d28

View file

@ -68,17 +68,13 @@ namespace fc {
size_t ifstream::readsome( char* buf, size_t len ) {
auto s = size_t(my->ifs.readsome( buf, len ));
if( s <= 0 ) {
try
if( s <= 0 )
{
read( buf, 1 );
s = 1;
if (len > 1)
{
read( buf, len );
s = len;
}
catch (const fc::eof_exception& eof)
{
s = my->ifs.gcount();
if (s == 0)
throw eof;
s += size_t(my->ifs.readsome( &buf[1], len - 1));
}
}
return s;