mirror of
https://git.tartarus.org/simon/putty.git
synced 2025-07-15 10:07:39 -05:00
Remove all the "assert(len>0)" which forbade zero-length writes across the
from_backend() interface, after having made all implementations safe against
being called with len==0 and possibly-NULL/undefined "data".
(This includes making misc.c:bufchain_add() more robust in this area.)
Assertion was originally added 2002-03-01; e.g., see plink.c:1.53 [r1571].
I believe this now shouldn't break anything.
This should hopefully make `ppk-empty-comment' finally GO AWAY. (Tested
with Unix PuTTY.)
[originally from svn r3500]
[r1571 == fdbd697801
]
This commit is contained in:
7
scp.c
7
scp.c
@ -178,14 +178,13 @@ int from_backend(void *frontend, int is_stderr, const char *data, int datalen)
|
||||
unsigned char *p = (unsigned char *) data;
|
||||
unsigned len = (unsigned) datalen;
|
||||
|
||||
assert(len > 0);
|
||||
|
||||
/*
|
||||
* stderr data is just spouted to local stderr and otherwise
|
||||
* ignored.
|
||||
*/
|
||||
if (is_stderr) {
|
||||
fwrite(data, 1, len, stderr);
|
||||
if (len > 0)
|
||||
fwrite(data, 1, len, stderr);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@ -195,7 +194,7 @@ int from_backend(void *frontend, int is_stderr, const char *data, int datalen)
|
||||
if (!outptr)
|
||||
return 0;
|
||||
|
||||
if (outlen > 0) {
|
||||
if ((outlen > 0) && (len > 0)) {
|
||||
unsigned used = outlen;
|
||||
if (used > len)
|
||||
used = len;
|
||||
|
Reference in New Issue
Block a user