Dolda2000 GitWeb
/
doldaconnect.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fix file descriptor leak.
[doldaconnect.git]
/
daemon
/
fnet-dc.c
diff --git
a/daemon/fnet-dc.c
b/daemon/fnet-dc.c
index
3fe4950
..
75c5c8b
100644
(file)
--- a/
daemon/fnet-dc.c
+++ b/
daemon/fnet-dc.c
@@
-1825,6
+1825,7
@@
static void cmd_get(struct socket *sk, struct dcpeer *peer, char *cmd, char *arg
if(sb.st_size < 65536)
peer->transfer->flags.b.minislot = 1;
if(!peer->transfer->flags.b.minislot && (slotsleft() < 1)) {
if(sb.st_size < 65536)
peer->transfer->flags.b.minislot = 1;
if(!peer->transfer->flags.b.minislot && (slotsleft() < 1)) {
+ close(fd);
qstr(sk, "$MaxedOut|");
freedcpeer(peer);
return;
qstr(sk, "$MaxedOut|");
freedcpeer(peer);
return;
@@
-1963,6
+1964,7
@@
static void cmd_getblock(struct socket *sk, struct dcpeer *peer, char *cmd, char
if(sb.st_size < 65536)
peer->transfer->flags.b.minislot = 1;
if(!peer->transfer->flags.b.minislot && (slotsleft() < 1)) {
if(sb.st_size < 65536)
peer->transfer->flags.b.minislot = 1;
if(!peer->transfer->flags.b.minislot && (slotsleft() < 1)) {
+ close(fd);
qstr(sk, "$MaxedOut|");
return;
}
qstr(sk, "$MaxedOut|");
return;
}