Fix for when size=1.

This commit is contained in:
Andrew Johnson
2006-12-12 20:44:53 +00:00
parent b937142ff3
commit 0f0ff1eec0

View File

@@ -24,13 +24,14 @@ static STATUS outRoutine(char *buffer, int nchars, int outarg) {
int free = poutStr->free;
int len;
if(free<=1) { /*let fioFormatV continue to count length*/
if (free < 1) { /*let fioFormatV continue to count length*/
return OK;
} else if (free > 1) {
len = min(free-1, nchars);
strncpy(poutStr->str, buffer, len);
poutStr->str += len;
poutStr->free -= len;
}
len = min(free-1, nchars);
strncpy(poutStr->str, buffer, len);
poutStr->str += len;
poutStr->free -= len;
/*make sure final string is null terminated*/
*poutStr->str = 0;
return OK;