print_escape returns 1 even if it's on null, and the rest of the prog just ignores null literals
$ env -i sh -c '/usr/bin/printf \\' printf: unknown escape sequence `\' PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/X11R6/bin:/usr/local/bin diff -u -r1.17 printf.c --- printf.c 27 Oct 2009 23:59:41 -0000 1.17 +++ printf.c 2 Apr 2011 18:44:36 -0000 @@ -351,6 +351,11 @@ putchar('\v'); break; + case '\0': + warnx("null escape sequence"); + rval = 1; + return 0; + default: putchar(*str); warnx("unknown escape sequence `\\%c'", *str);