/*
- * Copyright (C) 1997-2012 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 1997-2013 Andre Noll <maan@systemlinux.org>
*
* Licensed under the GPL v2. For licencing details see COPYING.
*/
if (ct->scc.fd >= 0)
close(ct->scc.fd);
free_argv(ct->features);
+ ct->features = NULL;
sc_free(ct->scc.recv);
ct->scc.recv = NULL;
sc_free(ct->scc.send);
ct->scc.send = NULL;
- btr_free_node(ct->btrn);
- ct->btrn = NULL;
+ btr_remove_node(&ct->btrn);
}
/**
size_t n;
char buf[CLIENT_BUFSIZE];
- t->error = 0;
+ ret = task_get_notification(t);
+ if (ret < 0)
+ goto out;
if (ct->scc.fd < 0)
return;
switch (ct->status) {
if (!ct->use_sideband && ret != -E_SERVER_EOF &&
ret != -E_BTR_EOF && ret != -E_EOF)
PARA_ERROR_LOG("%s\n", para_strerror(-t->error));
- btr_remove_node(btrn);
+ btr_remove_node(&ct->btrn);
}
}