On Sat, 26 Nov 2011 15:04:43 -0600
Rich Coe
On Sat, 26 Nov 2011 18:55:43 +0100 Christoph Bartoschek
wrote: I think I see the issue. The format string passed in has %% specifier, which is supposed to print a literal % instead of being a format specifier. In this case, the code does not recognize the '%%' construct, and fails.
I think it should be easy to construct a test case that shows this.
I was wrong. Here's a test case showing that it's working.
It looks like one of the registered printf extension handlers in your
problem is being called because there's a specifier for %s (not sure)?
The info handler is specifying that there is 2 or more args expected and
the info handler is calling through to a null pointer.
Which is really weird, because the info handler has already been called once
in order to get to this point.
I'll have to think if there's a way to avoid or debug and fix this problem.
One possibility is to override the register_printf_function so that it
doesn't cause an issue in the calling program.
#include