zipl/libc: Fix printing zeros in vsnprintf
zipl/libc: Fix printing zeros in vsnprintf

Printing the number zero (e.g. printf("%u", 0)) currently only gives you
an empty string. This is because the while-do loop to map the number to a
string is only entered when the value is 'true', i.e. non-zero. Fix this
by using do-while instead.

Fixes: 6fe9e6c ("zipl/libc: Introduce vsnprintf")
Signed-off-by: Philipp Rudo <ebc9ed60c9e1dc6a17c00cf7f6009c740d3c3928@linux.ibm.com>
Reported-by: Stefan Haberland <dec981e3bbb165d021029c42291faf06f59827c1@linux.ibm.com>
Reviewed-by: Jan Höppner <96138615ab4af0813785fa10d283f3d37eca3b78@linux.ibm.com>
Signed-off-by: Jan Höppner <96138615ab4af0813785fa10d283f3d37eca3b78@linux.ibm.com>

ibm-s390-tools/s390-tools,ibm-s390-tools/s390-tools,ibm-s390-tools/s390-tools,ibm-s390-tools/s390-tools