(Fformat): Handle %c specially since it requires the
argument to be of type int.
This commit is contained in:
parent
dd8ff1b79b
commit
89df6fc6bd
2 changed files with 12 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
|||
2007-11-23 Andreas Schwab <schwab@suse.de>
|
||||
|
||||
* editfns.c (Fformat): Handle %c specially since it requires the
|
||||
argument to be of type int.
|
||||
|
||||
2007-11-22 Jan Dj,Ad(Brv <jan.h.d@swipnet.se>
|
||||
|
||||
* gtkutil.c (update_frame_tool_bar): Don't call x-gtk-map-stock if
|
||||
|
|
|
@ -3809,7 +3809,8 @@ usage: (format STRING &rest OBJECTS) */)
|
|||
sprintf (p, this_format, XFLOAT_DATA (args[n]));
|
||||
else
|
||||
{
|
||||
if (sizeof (EMACS_INT) > sizeof (int))
|
||||
if (sizeof (EMACS_INT) > sizeof (int)
|
||||
&& format[-1] != 'c')
|
||||
{
|
||||
/* Insert 'l' before format spec. */
|
||||
this_format[format - this_format_start]
|
||||
|
@ -3820,12 +3821,16 @@ usage: (format STRING &rest OBJECTS) */)
|
|||
|
||||
if (INTEGERP (args[n]))
|
||||
{
|
||||
if (format[-1] == 'd')
|
||||
if (format[-1] == 'c')
|
||||
sprintf (p, this_format, (int) XINT (args[n]));
|
||||
else if (format[-1] == 'd')
|
||||
sprintf (p, this_format, XINT (args[n]));
|
||||
/* Don't sign-extend for octal or hex printing. */
|
||||
else
|
||||
sprintf (p, this_format, XUINT (args[n]));
|
||||
}
|
||||
else if (format[-1] == 'c')
|
||||
sprintf (p, this_format, (int) XFLOAT_DATA (args[n]));
|
||||
else if (format[-1] == 'd')
|
||||
/* Maybe we should use "%1.0f" instead so it also works
|
||||
for values larger than MAXINT. */
|
||||
|
|
Loading…
Add table
Reference in a new issue