* src/buffer.c (short_read): Remove !read_full_records condition,

which was always false on a first record and thus disabled record
size autodetection.  Thanks Ed Leaver for the patch.
(_gnu_flush_read): Handle blocking_factor == 1.
* tests/sparsemv.at: Reflect changes to buffer.c.
* tests/sparsemvp.at: Likewise.
* tests/volsize.at: Likewise.
* NEWS: Update.
* THANKS: Add Ed Leaver.
This commit is contained in:
Sergey Poznyakoff
2008-10-22 20:55:35 +00:00
parent 57bfbbde90
commit 5354888e40
7 changed files with 35 additions and 10 deletions

View File

@@ -687,7 +687,7 @@ short_read (size_t status)
left = record_size - status;
if (left && left % BLOCKSIZE == 0
&& !read_full_records && verbose_option > 1
&& verbose_option
&& record_start_block == 0 && status != 0)
{
unsigned long rsize = status / BLOCKSIZE;
@@ -1567,6 +1567,9 @@ _gnu_flush_read (void)
{
while (!try_new_volume ())
;
if (current_block == record_end)
/* Necessary for blocking_factor == 1 */
flush_archive();
return;
}
else if (status == SAFE_READ_ERROR)