diff options
| author | Paul Eggert | 2013-10-09 15:39:57 -0700 |
|---|---|---|
| committer | Paul Eggert | 2013-10-09 15:39:57 -0700 |
| commit | e20bb24948dd53afe77a5987c5408c715d1f388f (patch) | |
| tree | 97f95731023324d83dbf629120aa73d1cbf45849 /src | |
| parent | 9f6a18d27ebab2f41edb60cc5c45af0222f8210f (diff) | |
| download | emacs-e20bb24948dd53afe77a5987c5408c715d1f388f.tar.gz emacs-e20bb24948dd53afe77a5987c5408c715d1f388f.zip | |
* fns.c (sxhash_bool_vector): Fix buffer read overrun.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 4 | ||||
| -rw-r--r-- | src/fns.c | 4 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 0597c5d9f21..f46733d1ebe 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2013-10-09 Paul Eggert <eggert@cs.ucla.edu> | ||
| 2 | |||
| 3 | * fns.c (sxhash_bool_vector): Fix buffer read overrun. | ||
| 4 | |||
| 1 | 2013-10-09 Eli Zaretskii <eliz@gnu.org> | 5 | 2013-10-09 Eli Zaretskii <eliz@gnu.org> |
| 2 | 6 | ||
| 3 | * term.c (tty_menu_activate): Flush the output stream after | 7 | * term.c (tty_menu_activate): Flush the output stream after |
| @@ -4191,7 +4191,9 @@ sxhash_bool_vector (Lisp_Object vec) | |||
| 4191 | EMACS_UINT hash = XBOOL_VECTOR (vec)->size; | 4191 | EMACS_UINT hash = XBOOL_VECTOR (vec)->size; |
| 4192 | int i, n; | 4192 | int i, n; |
| 4193 | 4193 | ||
| 4194 | n = min (SXHASH_MAX_LEN, XBOOL_VECTOR (vec)->header.size); | 4194 | n = min (SXHASH_MAX_LEN, |
| 4195 | ((XBOOL_VECTOR (vec)->size + BOOL_VECTOR_BITS_PER_CHAR - 1) | ||
| 4196 | / BOOL_VECTOR_BITS_PER_CHAR)); | ||
| 4195 | for (i = 0; i < n; ++i) | 4197 | for (i = 0; i < n; ++i) |
| 4196 | hash = sxhash_combine (hash, XBOOL_VECTOR (vec)->data[i]); | 4198 | hash = sxhash_combine (hash, XBOOL_VECTOR (vec)->data[i]); |
| 4197 | 4199 | ||