* grub-core/kern/misc.c (grub_vsnprintf_real): Fix formatting of

"(null)" string.
	Simplify expressions to save around 256 bytes in kernel.img.
	* tests/printf_unit_test.c (printf_test): Add "(null)" tests.
This commit is contained in:
Vladimir 'phcoder' Serbinenko 2013-10-19 23:52:09 +02:00
parent 99519c154c
commit bbd2b5396b
3 changed files with 42 additions and 43 deletions

View file

@ -28,6 +28,19 @@ printf_test (void)
{
char real[512];
char expected[512];
char *null = NULL;
grub_snprintf (real, sizeof (real), "%s", null);
snprintf (expected, sizeof (expected), "%s", null);
grub_test_assert (strcmp (real, expected) == 0, MSG);
grub_snprintf (real, sizeof (real), "%10s", null);
snprintf (expected, sizeof (expected), "%10s", null);
grub_test_assert (strcmp (real, expected) == 0, MSG);
grub_snprintf (real, sizeof (real), "%-10s", null);
snprintf (expected, sizeof (expected), "%-10s", null);
grub_test_assert (strcmp (real, expected) == 0, MSG);
grub_snprintf (real, sizeof (real), "%d%%", 10);
snprintf (expected, sizeof (expected), "%d%%", 10);