summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Love <fx@gnu.org>2000-09-25 09:23:53 +0000
committerDave Love <fx@gnu.org>2000-09-25 09:23:53 +0000
commit844eb643e45887a54d5ad5edd6ced1de0b82e5ab (patch)
tree14f754d2c299c28cd409c794c267c2808aa8fb0e
parent2e636f9d4814c7da977ab8581ab5e8b6b994d903 (diff)
downloademacs-844eb643e45887a54d5ad5edd6ced1de0b82e5ab.tar.gz
emacs-844eb643e45887a54d5ad5edd6ced1de0b82e5ab.tar.bz2
emacs-844eb643e45887a54d5ad5edd6ced1de0b82e5ab.zip
(base64_encode_1): Fix last change.
-rw-r--r--src/ChangeLog4
-rw-r--r--src/fns.c14
2 files changed, 13 insertions, 5 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 97235b593ec..da4dc9c21c5 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,7 @@
+2000-09-24 Dave Love <fx@gnu.org>
+
+ * fns.c (base64_encode_1): Fix last change.
+
2000-09-22 Gerd Moellmann <gerd@gnu.org>
* dispnew.c (enable_glyph_matrix_rows): Remove xasserts.
diff --git a/src/fns.c b/src/fns.c
index e46159fd63c..fce3d728a3a 100644
--- a/src/fns.c
+++ b/src/fns.c
@@ -3377,7 +3377,7 @@ base64_encode_1 (from, to, length, line_break, multibyte)
{
int counter = 0, i = 0;
char *e = to;
- unsigned char c;
+ int c;
unsigned int value;
int bytes;
@@ -3386,9 +3386,9 @@ base64_encode_1 (from, to, length, line_break, multibyte)
if (multibyte)
{
c = STRING_CHAR_AND_LENGTH (from + i, length - i, bytes);
- if (!SINGLE_BYTE_CHAR_P (c))
+ if (bytes > 1)
return -1;
- i += bytes;
+ i++;
}
else
c = from[i++];
@@ -3424,7 +3424,9 @@ base64_encode_1 (from, to, length, line_break, multibyte)
if (multibyte)
{
c = STRING_CHAR_AND_LENGTH (from + i, length - i, bytes);
- i += bytes;
+ if (bytes > 1)
+ return -1;
+ i++;
}
else
c = from[i++];
@@ -3444,7 +3446,9 @@ base64_encode_1 (from, to, length, line_break, multibyte)
if (multibyte)
{
c = STRING_CHAR_AND_LENGTH (from + i, length - i, bytes);
- i += bytes;
+ if (bytes > 1)
+ return -1;
+ i++;
}
else
c = from[i++];