aboutsummaryrefslogtreecommitdiffstats
path: root/src/editfns.c
diff options
context:
space:
mode:
authorStefan Monnier <[email protected]>2005-10-24 03:51:05 +0000
committerStefan Monnier <[email protected]>2005-10-24 03:51:05 +0000
commit1149fd6f89324e2b258fcca32697bb9ed9bff289 (patch)
tree314e2bb16ab99ef7631e119210a25b8de250ad92 /src/editfns.c
parent61796b3ce3e502a2f3c8420dd169b230957e80d2 (diff)
(Fcompare_buffer_substrings): Handle multibyte chars.
Diffstat (limited to 'src/editfns.c')
-rw-r--r--src/editfns.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/editfns.c b/src/editfns.c
index c3982b10ce..4471e4553d 100644
--- a/src/editfns.c
+++ b/src/editfns.c
@@ -2472,9 +2472,9 @@ determines whether case is significant or ignored. */)
{
register int begp1, endp1, begp2, endp2, temp;
register struct buffer *bp1, *bp2;
- register Lisp_Object *trt
+ register Lisp_Object trt
= (!NILP (current_buffer->case_fold_search)
- ? XCHAR_TABLE (current_buffer->case_canon_table)->contents : 0);
+ ? XCHAR_TABLE (current_buffer->case_canon_table) : Qnil);
int chars = 0;
int i1, i2, i1_byte, i2_byte;
@@ -2593,10 +2593,10 @@ determines whether case is significant or ignored. */)
i2++;
}
- if (trt)
+ if (!NILP (trt))
{
- c1 = XINT (trt[c1]);
- c2 = XINT (trt[c2]);
+ c1 = CHAR_TABLE_TRANSLATE (trt, c1);
+ c2 = CHAR_TABLE_TRANSLATE (trt, c2);
}
if (c1 < c2)
return make_number (- 1 - chars);