aboutsummaryrefslogtreecommitdiff
path: root/pk/console.c
diff options
context:
space:
mode:
authorAndrew Waterman <waterman@cs.berkeley.edu>2016-03-01 12:19:11 -0800
committerAndrew Waterman <waterman@cs.berkeley.edu>2016-03-01 12:19:11 -0800
commitdea1fa15f2712b7f6540c41832322c813591315f (patch)
tree4c77877401300bbabdb522a1e2804631d092a698 /pk/console.c
parent39c89b7db54a3a82355e179f33027113b8f69d55 (diff)
downloadriscv-pk-dea1fa15f2712b7f6540c41832322c813591315f.zip
riscv-pk-dea1fa15f2712b7f6540c41832322c813591315f.tar.gz
riscv-pk-dea1fa15f2712b7f6540c41832322c813591315f.tar.bz2
Fix vsnprintf infinite loop
Diffstat (limited to 'pk/console.c')
-rw-r--r--pk/console.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/pk/console.c b/pk/console.c
index a9258fc..097842b 100644
--- a/pk/console.c
+++ b/pk/console.c
@@ -56,9 +56,12 @@ int vsnprintf(char* out, size_t n, const char* s, va_list vl)
}
case 's':
{
- const char* s2 = va_arg(vl,const char*);
- while(*s2)
- if (++pos < n) out[pos-1] = *s2++;
+ const char* s2 = va_arg(vl, const char*);
+ while (*s2) {
+ if (++pos < n)
+ out[pos-1] = *s2;
+ s2++;
+ }
longarg = false;
format = false;
break;