summaryrefslogtreecommitdiff
path: root/src/htsback.c
diff options
context:
space:
mode:
authorXavier Roche <xroche@users.noreply.github.com>2014-02-08 15:27:41 +0000
committerXavier Roche <xroche@users.noreply.github.com>2014-02-08 15:27:41 +0000
commitc95ab9232965028df003af6f8a5a974c940cf35a (patch)
tree20abba2f69e96fd81b824acc6f37ca973d37b435 /src/htsback.c
parent903450d45350580131dc5acdf02b42d719d4650d (diff)
Fixed infinite loop when attempting to download a file:/// directory on Unix (gp)
Diffstat (limited to 'src/htsback.c')
-rw-r--r--src/htsback.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/htsback.c b/src/htsback.c
index d026e7a..857e6be 100644
--- a/src/htsback.c
+++ b/src/htsback.c
@@ -2896,6 +2896,12 @@ void back_wait(struct_back * sback, httrackp * opt, cache_back * cache,
"* * Fatal write error, giving up");
}
back[i].r.is_write = 0; // erreur, abandonner
+ back[i].status = STATUS_READY; // terminé
+ back_set_finished(sback, i);
+ if (back[i].r.soc != INVALID_SOCKET) {
+ deletehttp(&back[i].r);
+ back[i].r.soc = INVALID_SOCKET;
+ }
} else {
#ifndef _WIN32
chmod(back[i].url_sav, HTS_ACCESS_FILE);