+ if( src->bytes_read == src->frag->GetLength() )
+ {
+ // Start the I/O suspension simply by returning false here:
+ return FALSE;
+ }
+
+ size_t input_buf_size = INPUT_BUF_SIZE;
+ if( (src->bytes_read + INPUT_BUF_SIZE) > src->frag->GetLength() )
+ {
+ input_buf_size = src->frag->GetLength() - src->bytes_read;
+ }
+
+ src->infile->read( (char*)src->buffer, input_buf_size);