X-Git-Url: http://dolda2000.com/gitweb/?a=blobdiff_plain;f=daemon%2Ftransfer.c;h=1d4bd21645974de632183410e7412fb68cb8e3bc;hb=13b303d46959819a2da9e7d783b751c9ade45da5;hp=ab862a2bab8a8c30bdac2703ecb3307eadc10aaf;hpb=7a5e9d410f5649769f58848870995b035bebecc0;p=doldaconnect.git diff --git a/daemon/transfer.c b/daemon/transfer.c index ab862a2..1d4bd21 100644 --- a/daemon/transfer.c +++ b/daemon/transfer.c @@ -576,7 +576,7 @@ static void filterread(struct socket *sk, struct transfer *transfer) return; bufcat(transfer->filterbuf, buf, bufsize); free(buf); - if((p = memchr(transfer->filterbuf, '\n', transfer->filterbufdata)) != NULL) + while((p = memchr(transfer->filterbuf, '\n', transfer->filterbufdata)) != NULL) { *(p++) = 0; if((p2 = strchr(transfer->filterbuf, ' ')) != NULL) @@ -587,7 +587,7 @@ static void filterread(struct socket *sk, struct transfer *transfer) if(p2 != NULL) { if((arg = icmbstowcs(p2, NULL)) == NULL) - flog(LOG_WARNING, "filter sent a string which could not be converted into the local charset: %s: %s", transfer->filterbuf, strerror(errno)); + flog(LOG_WARNING, "filter sent a string which could not be converted into the local charset: %s: %s", p2, strerror(errno)); } CBCHAINDOCB(transfer, trans_filterout, transfer, cmd, arg); if(arg != NULL)