emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/casefiddle.c [emacs-unicode-2]


From: Miles Bader
Subject: [Emacs-diffs] Changes to emacs/src/casefiddle.c [emacs-unicode-2]
Date: Mon, 28 Jun 2004 03:56:35 -0400

Index: emacs/src/casefiddle.c
diff -c emacs/src/casefiddle.c:1.43.6.2 emacs/src/casefiddle.c:1.43.6.3
*** emacs/src/casefiddle.c:1.43.6.2     Fri Apr 16 12:50:45 2004
--- emacs/src/casefiddle.c      Mon Jun 28 07:29:19 2004
***************
*** 1,5 ****
  /* GNU Emacs case conversion functions.
!    Copyright (C) 1985, 1994, 1997 Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
  
--- 1,6 ----
  /* GNU Emacs case conversion functions.
!    Copyright (C) 1985,94,97,98,99, 2001, 2002, 2004
!    Free Software Foundation, Inc.
  
  This file is part of GNU Emacs.
  
***************
*** 53,63 ****
          int flags = XINT (obj) & flagbits;
          int multibyte = ! NILP (current_buffer->enable_multibyte_characters);
  
          c1 = XFASTINT (obj) & ~flagbits;
          if (! multibyte)
            MAKE_CHAR_MULTIBYTE (c1);
          c = DOWNCASE (c1);
!         if (inword || c == c1)
            {
              if (! inword)
                c = UPCASE1 (c1);
--- 54,72 ----
          int flags = XINT (obj) & flagbits;
          int multibyte = ! NILP (current_buffer->enable_multibyte_characters);
  
+         /* If the character has higher bits set
+            above the flags, return it unchanged.
+            It is not a real character.  */
+         if ((unsigned) XFASTINT (obj) > (unsigned) flagbits)
+           return obj;
+ 
          c1 = XFASTINT (obj) & ~flagbits;
          if (! multibyte)
            MAKE_CHAR_MULTIBYTE (c1);
          c = DOWNCASE (c1);
!         if (inword)
!           XSETFASTINT (obj, c | flags);
!         else if (c == (XFASTINT (obj) & ~flagbits))
            {
              if (! inword)
                c = UPCASE1 (c1);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]