Dolda2000 GitWeb
/
doldaconnect.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'master' of git.dolda2000.com:/srv/git/r/doldaconnect
[doldaconnect.git]
/
daemon
/
transfer.c
diff --git
a/daemon/transfer.c
b/daemon/transfer.c
index
bebe011
..
e2fe54e
100644
(file)
--- a/
daemon/transfer.c
+++ b/
daemon/transfer.c
@@
-292,8
+292,12
@@
void *transfergetdata(struct transfer *transfer, size_t *size)
return(NULL);
if((transfer->endpos >= 0) && (transfer->curpos + *size >= transfer->endpos))
{
return(NULL);
if((transfer->endpos >= 0) && (transfer->curpos + *size >= transfer->endpos))
{
- *size = transfer->endpos - transfer->curpos;
- buf = srealloc(buf, *size);
+ if((*size = transfer->endpos - transfer->curpos) == 0) {
+ free(buf);
+ buf = NULL;
+ } else {
+ buf = srealloc(buf, *size);
+ }
}
transfer->curpos += *size;
bytesupload += *size;
}
transfer->curpos += *size;
bytesupload += *size;