diff options
| author | Paul Eggert | 2011-06-18 09:02:03 -0700 |
|---|---|---|
| committer | Paul Eggert | 2011-06-18 09:02:03 -0700 |
| commit | 311d5d7cc63a9f2d4823066f82faeb4fb6203710 (patch) | |
| tree | 113cc2363ccbe9cd568c3be7fb36e411e69d754b | |
| parent | f03dc6ef9f0c33552acea1713901de8c73f23b82 (diff) | |
| download | emacs-311d5d7cc63a9f2d4823066f82faeb4fb6203710.tar.gz emacs-311d5d7cc63a9f2d4823066f82faeb4fb6203710.zip | |
* fns.c: Don't assume string byte-length fits in 'int'.
| -rw-r--r-- | src/ChangeLog | 1 | ||||
| -rw-r--r-- | src/fns.c | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 75b9327247c..ee582c4e4a0 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -2,6 +2,7 @@ | |||
| 2 | 2 | ||
| 3 | * fns.c (Ffillarray): Don't assume bool vector size fits in 'int'. | 3 | * fns.c (Ffillarray): Don't assume bool vector size fits in 'int'. |
| 4 | Use much-faster test for byte-length change. | 4 | Use much-faster test for byte-length change. |
| 5 | Don't assume string byte-length fits in 'int'. | ||
| 5 | 6 | ||
| 6 | * alloc.c (Fmake_bool_vector): Avoid unnecessary multiplication. | 7 | * alloc.c (Fmake_bool_vector): Avoid unnecessary multiplication. |
| 7 | 8 | ||
| @@ -2169,7 +2169,7 @@ ARRAY is a vector, string, char-table, or bool-vector. */) | |||
| 2169 | unsigned char str[MAX_MULTIBYTE_LENGTH]; | 2169 | unsigned char str[MAX_MULTIBYTE_LENGTH]; |
| 2170 | int len = CHAR_STRING (charval, str); | 2170 | int len = CHAR_STRING (charval, str); |
| 2171 | EMACS_INT size_byte = SBYTES (array); | 2171 | EMACS_INT size_byte = SBYTES (array); |
| 2172 | int i; | 2172 | EMACS_INT i; |
| 2173 | 2173 | ||
| 2174 | if (INT_MULTIPLY_OVERFLOW (SCHARS (array), len) | 2174 | if (INT_MULTIPLY_OVERFLOW (SCHARS (array), len) |
| 2175 | || SCHARS (array) * len != size_byte) | 2175 | || SCHARS (array) * len != size_byte) |