X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;f=lib%2Fsorter%2Fsbuck.c;h=ff9e9efa47a0fd7753203736689796866c878e0f;hb=9fc7be0fdf22e9fd5a560112393ef7c7d88d1e0f;hp=5bc6bbe488dd2a08ddf046efc2cd9f67ec369a83;hpb=889bb33b738e79732f3fb1ca79b361ac0375aa76;p=libucw.git diff --git a/lib/sorter/sbuck.c b/lib/sorter/sbuck.c index 5bc6bbe4..ff9e9efa 100644 --- a/lib/sorter/sbuck.c +++ b/lib/sorter/sbuck.c @@ -71,7 +71,7 @@ sbuck_swap_in(struct sort_bucket *b) b->fb = bopen(b->filename, O_RDWR, sorter_stream_bufsize); if (b->flags & SBF_OPEN_WRITE) bseek(b->fb, 0, SEEK_END); - bconfig(b->fb, BCONFIG_IS_TEMP_FILE, 1); /* FIXME: Was it always so? */ + bconfig(b->fb, BCONFIG_IS_TEMP_FILE, 1); b->flags &= ~SBF_SWAPPED_OUT; SORT_XTRACE(2, "Swapped in %s", b->filename); } @@ -115,7 +115,7 @@ sbuck_write(struct sort_bucket *b) void sbuck_swap_out(struct sort_bucket *b) { - if ((b->flags & (SBF_OPEN_READ | SBF_OPEN_WRITE)) && b->fb) + if ((b->flags & (SBF_OPEN_READ | SBF_OPEN_WRITE)) && b->fb && !(b->flags & SBF_SOURCE)) { if (b->flags & SBF_OPEN_WRITE) b->size = btell(b->fb);