diff options
| author | Paul Eggert | 2011-03-22 09:20:45 -0700 |
|---|---|---|
| committer | Paul Eggert | 2011-03-22 09:20:45 -0700 |
| commit | 8abc3f12955673bdb367b2de5556ff66f202d2d0 (patch) | |
| tree | 0555a165d49f0900c1be467857a89d46cebabbd2 | |
| parent | a2d26660368fbe4cc7d103aad6f565e36a280fac (diff) | |
| download | emacs-8abc3f12955673bdb367b2de5556ff66f202d2d0.tar.gz emacs-8abc3f12955673bdb367b2de5556ff66f202d2d0.zip | |
* coding.c (encode_coding_raw_text): Avoid unnecessary test
the first time through the loop, since we know p0 < p1 then.
This also avoids a gcc -Wstrict-overflow warning.
| -rw-r--r-- | src/ChangeLog | 4 | ||||
| -rw-r--r-- | src/coding.c | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index a341d1b4678..45982f607f4 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,5 +1,9 @@ | |||
| 1 | 2011-03-22 Paul Eggert <eggert@cs.ucla.edu> | 1 | 2011-03-22 Paul Eggert <eggert@cs.ucla.edu> |
| 2 | 2 | ||
| 3 | * coding.c (encode_coding_raw_text): Avoid unnecessary test | ||
| 4 | the first time through the loop, since we know p0 < p1 then. | ||
| 5 | This also avoids a gcc -Wstrict-overflow warning. | ||
| 6 | |||
| 3 | * lisp.h (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Avoid 'int' overflow | 7 | * lisp.h (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Avoid 'int' overflow |
| 4 | leading to a memory leak, possible in functions like | 8 | leading to a memory leak, possible in functions like |
| 5 | load_charset_map_from_file that can allocate an unbounded number | 9 | load_charset_map_from_file that can allocate an unbounded number |
diff --git a/src/coding.c b/src/coding.c index 0c2836c19f6..0596d16bf46 100644 --- a/src/coding.c +++ b/src/coding.c | |||
| @@ -5266,11 +5266,12 @@ encode_coding_raw_text (struct coding_system *coding) | |||
| 5266 | unsigned char str[MAX_MULTIBYTE_LENGTH], *p0 = str, *p1 = str; | 5266 | unsigned char str[MAX_MULTIBYTE_LENGTH], *p0 = str, *p1 = str; |
| 5267 | 5267 | ||
| 5268 | CHAR_STRING_ADVANCE (c, p1); | 5268 | CHAR_STRING_ADVANCE (c, p1); |
| 5269 | while (p0 < p1) | 5269 | do |
| 5270 | { | 5270 | { |
| 5271 | EMIT_ONE_BYTE (*p0); | 5271 | EMIT_ONE_BYTE (*p0); |
| 5272 | p0++; | 5272 | p0++; |
| 5273 | } | 5273 | } |
| 5274 | while (p0 < p1); | ||
| 5274 | } | 5275 | } |
| 5275 | } | 5276 | } |
| 5276 | else | 5277 | else |