[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] /srv/bzr/emacs/trunk r108858: * doprnt.c (doprnt): Don't a
From: |
Paul Eggert |
Subject: |
[Emacs-diffs] /srv/bzr/emacs/trunk r108858: * doprnt.c (doprnt): Don't assume string length fits in 'int'. |
Date: |
Wed, 04 Jul 2012 01:26:20 -0700 |
User-agent: |
Bazaar (2.5.0) |
------------------------------------------------------------
revno: 108858
committer: Paul Eggert <address@hidden>
branch nick: trunk
timestamp: Wed 2012-07-04 01:26:20 -0700
message:
* doprnt.c (doprnt): Don't assume string length fits in 'int'.
Tighten new eassert a bit.
modified:
src/ChangeLog
src/doprnt.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog 2012-07-04 08:07:26 +0000
+++ b/src/ChangeLog 2012-07-04 08:26:20 +0000
@@ -1,3 +1,8 @@
+2012-07-04 Paul Eggert <address@hidden>
+
+ * doprnt.c (doprnt): Don't assume string length fits in 'int'.
+ Tighten new eassert a bit.
+
2012-07-04 Dmitry Antipov <address@hidden>
Fix compilation with --enable-gcc-warnings and -O1
=== modified file 'src/doprnt.c'
--- a/src/doprnt.c 2012-07-04 08:07:26 +0000
+++ b/src/doprnt.c 2012-07-04 08:26:20 +0000
@@ -135,8 +135,8 @@
doprnt (char *buffer, ptrdiff_t bufsize, const char *format,
const char *format_end, va_list ap)
{
- const char *fmt = format; /* Pointer into format string */
- register char *bufptr = buffer; /* Pointer into output buffer.. */
+ const char *fmt = format; /* Pointer into format string. */
+ char *bufptr = buffer; /* Pointer into output buffer. */
/* Use this for sprintf unless we need something really big. */
char tembuf[DBL_MAX_10_EXP + 100];
@@ -150,7 +150,7 @@
/* Buffer we have got with malloc. */
char *big_buffer = NULL;
- register int tem = -1;
+ ptrdiff_t tem = -1;
char *string;
char fixed_buffer[20]; /* Default buffer for small formatting. */
char *fmtcpy;
@@ -368,7 +368,7 @@
/* Copy string into final output, truncating if no room. */
doit:
- eassert (tem != -1);
+ eassert (0 <= tem);
/* Coming here means STRING contains ASCII only. */
if (STRING_BYTES_BOUND < tem)
error ("Format width or precision too large");
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] /srv/bzr/emacs/trunk r108858: * doprnt.c (doprnt): Don't assume string length fits in 'int'.,
Paul Eggert <=