Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
023843b2
Commit
023843b2
authored
Nov 16, 2007
by
Andreas Schwab
Browse files
(Fformat): When formatting an integer as float take precision into account.
parent
b322c205
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
8 additions
and
2 deletions
+8
-2
src/ChangeLog
src/ChangeLog
+1
-0
src/editfns.c
src/editfns.c
+7
-2
No files found.
src/ChangeLog
View file @
023843b2
2007-11-15 Andreas Schwab <schwab@suse.de>
* editfns.c (Fformat): Correctly format EMACS_INT values.
When formatting an integer as float take precision into account.
2007-11-15 Juanma Barranquero <lekktu@gmail.com>
...
...
src/editfns.c
View file @
023843b2
...
...
@@ -3596,18 +3596,23 @@ usage: (format STRING &rest OBJECTS) */)
/* Would get MPV otherwise, since Lisp_Int's `point' to low memory. */
else
if
(
INTEGERP
(
args
[
n
])
&&
*
format
!=
's'
)
{
thissize
=
30
;
/* The following loop assumes the Lisp type indicates
the proper way to pass the argument.
So make sure we have a flonum if the argument should
be a double. */
if
(
*
format
==
'e'
||
*
format
==
'f'
||
*
format
==
'g'
)
args
[
n
]
=
Ffloat
(
args
[
n
]);
{
args
[
n
]
=
Ffloat
(
args
[
n
]);
if
(
precision
[
n
]
>
0
)
thissize
+=
precision
[
n
];
}
else
if
(
*
format
!=
'd'
&&
*
format
!=
'o'
&&
*
format
!=
'x'
&&
*
format
!=
'i'
&&
*
format
!=
'X'
&&
*
format
!=
'c'
)
error
(
"Invalid format operation %%%c"
,
*
format
);
thissize
=
30
;
if
(
*
format
==
'c'
)
{
if
(
!
SINGLE_BYTE_CHAR_P
(
XINT
(
args
[
n
]))
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment