summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErik Troan <ewt@redhat.com>2000-08-16 16:10:51 +0000
committerErik Troan <ewt@redhat.com>2000-08-16 16:10:51 +0000
commit2716d3c0647b7046c3afbd3ea64707f39b37af04 (patch)
treef2a1a879fe91c7899605186053bfdc647df90ba3
parent00697a0a85bae71a670bc3f38f7efbe623a3c45b (diff)
downloadanaconda-2716d3c0647b7046c3afbd3ea64707f39b37af04.tar.gz
anaconda-2716d3c0647b7046c3afbd3ea64707f39b37af04.tar.xz
anaconda-2716d3c0647b7046c3afbd3ea64707f39b37af04.zip
need to be able to printf("foo%cbar", 0x00) correctly
-rw-r--r--loader/printf-stub.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/loader/printf-stub.c b/loader/printf-stub.c
index 70e86f1f2..b0fb6a9af 100644
--- a/loader/printf-stub.c
+++ b/loader/printf-stub.c
@@ -377,10 +377,15 @@ int sprintf(char * buf, const char *fmt, ...)
int _IO_vfprintf(FILE *f, const char *fmt, va_list args)
{
+ int i;
+
buf = bigbuf;
lim = buf + 1024;
xprintf(fmt, args);
- fputs(buf, f);
+
+ for (i = 0; i < str - buf - 1; i++)
+ fputc(buf[i], f);
+
if (buf != bigbuf)
free(buf);
return str - buf - 1;