diff options
| author | Kenichi Handa | 2002-08-22 01:18:39 +0000 |
|---|---|---|
| committer | Kenichi Handa | 2002-08-22 01:18:39 +0000 |
| commit | 680d4b87f3d88a8b79f883cf3635036747588250 (patch) | |
| tree | f7631a67cc7b1d84ffdfd7fb7bb0c4598cbef67e /src | |
| parent | a2974661fb866736365377ef7fede57531134219 (diff) | |
| download | emacs-680d4b87f3d88a8b79f883cf3635036747588250.tar.gz emacs-680d4b87f3d88a8b79f883cf3635036747588250.zip | |
(base64_encode_1): Handle eight-bit chars correctly.
Diffstat (limited to 'src')
| -rw-r--r-- | src/fns.c | 12 |
1 files changed, 9 insertions, 3 deletions
| @@ -3047,7 +3047,9 @@ base64_encode_1 (from, to, length, line_break, multibyte) | |||
| 3047 | if (multibyte) | 3047 | if (multibyte) |
| 3048 | { | 3048 | { |
| 3049 | c = STRING_CHAR_AND_LENGTH (from + i, length - i, bytes); | 3049 | c = STRING_CHAR_AND_LENGTH (from + i, length - i, bytes); |
| 3050 | if (c >= 256) | 3050 | if (CHAR_BYTE8_P (c)) |
| 3051 | c = CHAR_TO_BYTE8 (c); | ||
| 3052 | else if (c >= 256) | ||
| 3051 | return -1; | 3053 | return -1; |
| 3052 | i += bytes; | 3054 | i += bytes; |
| 3053 | } | 3055 | } |
| @@ -3085,7 +3087,9 @@ base64_encode_1 (from, to, length, line_break, multibyte) | |||
| 3085 | if (multibyte) | 3087 | if (multibyte) |
| 3086 | { | 3088 | { |
| 3087 | c = STRING_CHAR_AND_LENGTH (from + i, length - i, bytes); | 3089 | c = STRING_CHAR_AND_LENGTH (from + i, length - i, bytes); |
| 3088 | if (c >= 256) | 3090 | if (CHAR_BYTE8_P (c)) |
| 3091 | c = CHAR_TO_BYTE8 (c); | ||
| 3092 | else if (c >= 256) | ||
| 3089 | return -1; | 3093 | return -1; |
| 3090 | i += bytes; | 3094 | i += bytes; |
| 3091 | } | 3095 | } |
| @@ -3107,7 +3111,9 @@ base64_encode_1 (from, to, length, line_break, multibyte) | |||
| 3107 | if (multibyte) | 3111 | if (multibyte) |
| 3108 | { | 3112 | { |
| 3109 | c = STRING_CHAR_AND_LENGTH (from + i, length - i, bytes); | 3113 | c = STRING_CHAR_AND_LENGTH (from + i, length - i, bytes); |
| 3110 | if (c >= 256) | 3114 | if (CHAR_BYTE8_P (c)) |
| 3115 | c = CHAR_TO_BYTE8 (c); | ||
| 3116 | else if (c >= 256) | ||
| 3111 | return -1; | 3117 | return -1; |
| 3112 | i += bytes; | 3118 | i += bytes; |
| 3113 | } | 3119 | } |