aboutsummaryrefslogtreecommitdiffstats
path: root/src/eval.c
diff options
context:
space:
mode:
authorPaul Eggert2011-07-27 17:48:01 -0700
committerPaul Eggert2011-07-27 17:48:01 -0700
commit044c22e545acef592ed95e4e3bb9f8aeff67291a (patch)
tree167a4c706b62b12ea979bdf6ad47e70b66bb0394 /src/eval.c
parentdbf38e02c9ade4979418f24a99962cfef170b957 (diff)
parent8265d3bb30544e58683fc16e23f9908f3d5d0abc (diff)
downloademacs-044c22e545acef592ed95e4e3bb9f8aeff67291a.tar.gz
emacs-044c22e545acef592ed95e4e3bb9f8aeff67291a.zip
Merge: Integer signedness and overflow and related fixes.
Fixes: debbugs:9079
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/eval.c b/src/eval.c
index 90d0df61858..ef169e80e27 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1968,18 +1968,18 @@ void
1968verror (const char *m, va_list ap) 1968verror (const char *m, va_list ap)
1969{ 1969{
1970 char buf[4000]; 1970 char buf[4000];
1971 size_t size = sizeof buf; 1971 ptrdiff_t size = sizeof buf;
1972 size_t size_max = STRING_BYTES_BOUND + 1; 1972 ptrdiff_t size_max = STRING_BYTES_BOUND + 1;
1973 size_t mlen = strlen (m); 1973 char const *m_end = m + strlen (m);
1974 char *buffer = buf; 1974 char *buffer = buf;
1975 size_t used; 1975 ptrdiff_t used;
1976 Lisp_Object string; 1976 Lisp_Object string;
1977 1977
1978 while (1) 1978 while (1)
1979 { 1979 {
1980 va_list ap_copy; 1980 va_list ap_copy;
1981 va_copy (ap_copy, ap); 1981 va_copy (ap_copy, ap);
1982 used = doprnt (buffer, size, m, m + mlen, ap_copy); 1982 used = doprnt (buffer, size, m, m_end, ap_copy);
1983 va_end (ap_copy); 1983 va_end (ap_copy);
1984 1984
1985 /* Note: the -1 below is because `doprnt' returns the number of bytes 1985 /* Note: the -1 below is because `doprnt' returns the number of bytes