emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] /srv/bzr/emacs/trunk r111019: font.c (font_unparse_xlfd):


From: Kenichi Handa
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r111019: font.c (font_unparse_xlfd): Exclude special characters from the generating XLFD name.
Date: Tue, 27 Nov 2012 22:41:56 +0900
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 111019 [merge]
committer: Kenichi Handa <address@hidden>
branch nick: trunk
timestamp: Tue 2012-11-27 22:41:56 +0900
message:
  font.c (font_unparse_xlfd): Exclude special characters from the generating 
XLFD name.
modified:
  src/ChangeLog
  src/font.c
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2012-11-27 05:38:42 +0000
+++ b/src/ChangeLog     2012-11-27 13:03:42 +0000
@@ -1,3 +1,13 @@
+2012-11-18  Kenichi Handa  <address@hidden>
+
+       * font.c (font_unparse_xlfd): Fix previous change.  Keep "const"
+       for the variable "f".
+
+2012-11-13  Kenichi Handa  <address@hidden>
+
+       * font.c (font_unparse_xlfd): Exclude special characters from the
+       generating XLFD name.
+
 2012-11-27  Paul Eggert  <address@hidden>
 
        Assume POSIX 1003.1-1988 or later for grp.h, pwd.h.

=== modified file 'src/font.c'
--- a/src/font.c        2012-11-06 13:26:20 +0000
+++ b/src/font.c        2012-11-18 11:29:06 +0000
@@ -1234,8 +1234,21 @@
        f[j] = "*";
       else
        {
+         int c, k, l;
+         ptrdiff_t alloc;
+
          val = SYMBOL_NAME (val);
-         f[j] = SSDATA (val);
+         alloc = SBYTES (val) + 1;
+         if (nbytes <= alloc)
+           return -1;
+         f[j] = p = alloca (alloc);
+         /* Copy the name while excluding '-', '?', ',', and '"'.  */
+         for (k = l = 0; k < alloc; k++)
+           {
+             c = SREF (val, k);
+             if (c != '-' && c != '?' && c != ',' && c != '"')
+               p[l++] = c;
+           }
        }
     }
 


reply via email to

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