aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPaul Eggert2011-03-16 01:19:22 -0700
committerPaul Eggert2011-03-16 01:19:22 -0700
commite663c700e753d901479798b735c2ad6ac74c07d9 (patch)
tree6caf39ec50f87d916c89dd71a9c1b641f11fd360 /src
parent612f56dfff305bae8b6e61ea3a60502f42a8eb5b (diff)
downloademacs-e663c700e753d901479798b735c2ad6ac74c07d9.tar.gz
emacs-e663c700e753d901479798b735c2ad6ac74c07d9.zip
* font.c (font_unparse_xlfd): Don't mix pointers to variables with
pointers to constants.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog3
-rw-r--r--src/font.c28
2 files changed, 17 insertions, 14 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index adac111aa19..e9a6d5da5a3 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,8 @@
12011-03-16 Paul Eggert <eggert@cs.ucla.edu> 12011-03-16 Paul Eggert <eggert@cs.ucla.edu>
2 2
3 * font.c (font_unparse_xlfd): Don't mix pointers to variables with
4 pointers to constants.
5
3 * fns.c (require_nesting_list, require_unwind): Now static. 6 * fns.c (require_nesting_list, require_unwind): Now static.
4 (Ffillarray): Rename locals to avoid shadowing. 7 (Ffillarray): Rename locals to avoid shadowing.
5 8
diff --git a/src/font.c b/src/font.c
index 35821ae34f9..3b2ae9c6620 100644
--- a/src/font.c
+++ b/src/font.c
@@ -1163,7 +1163,8 @@ font_parse_xlfd (char *name, Lisp_Object font)
1163int 1163int
1164font_unparse_xlfd (Lisp_Object font, int pixel_size, char *name, int nbytes) 1164font_unparse_xlfd (Lisp_Object font, int pixel_size, char *name, int nbytes)
1165{ 1165{
1166 char *f[XLFD_REGISTRY_INDEX + 1]; 1166 char *p;
1167 const char *f[XLFD_REGISTRY_INDEX + 1];
1167 Lisp_Object val; 1168 Lisp_Object val;
1168 int i, j, len = 0; 1169 int i, j, len = 0;
1169 1170
@@ -1194,14 +1195,14 @@ font_unparse_xlfd (Lisp_Object font, int pixel_size, char *name, int nbytes)
1194 /* Change "jisx0208*" and "jisx0208" to "jisx0208*-*". */ 1195 /* Change "jisx0208*" and "jisx0208" to "jisx0208*-*". */
1195 if (SDATA (val)[SBYTES (val) - 1] == '*') 1196 if (SDATA (val)[SBYTES (val) - 1] == '*')
1196 { 1197 {
1197 f[j] = alloca (SBYTES (val) + 3); 1198 f[j] = p = alloca (SBYTES (val) + 3);
1198 sprintf (f[j], "%s-*", SDATA (val)); 1199 sprintf (p, "%s-*", SDATA (val));
1199 len += SBYTES (val) + 3; 1200 len += SBYTES (val) + 3;
1200 } 1201 }
1201 else 1202 else
1202 { 1203 {
1203 f[j] = alloca (SBYTES (val) + 4); 1204 f[j] = p = alloca (SBYTES (val) + 4);
1204 sprintf (f[j], "%s*-*", SDATA (val)); 1205 sprintf (p, "%s*-*", SDATA (val));
1205 len += SBYTES (val) + 4; 1206 len += SBYTES (val) + 4;
1206 } 1207 }
1207 } 1208 }
@@ -1232,8 +1233,8 @@ font_unparse_xlfd (Lisp_Object font, int pixel_size, char *name, int nbytes)
1232 i = pixel_size; 1233 i = pixel_size;
1233 if (i > 0) 1234 if (i > 0)
1234 { 1235 {
1235 f[XLFD_PIXEL_INDEX] = alloca (22); 1236 f[XLFD_PIXEL_INDEX] = p = alloca (22);
1236 len += sprintf (f[XLFD_PIXEL_INDEX], "%d-*", i) + 1; 1237 len += sprintf (p, "%d-*", i) + 1;
1237 } 1238 }
1238 else 1239 else
1239 f[XLFD_PIXEL_INDEX] = "*-*", len += 4; 1240 f[XLFD_PIXEL_INDEX] = "*-*", len += 4;
@@ -1241,8 +1242,8 @@ font_unparse_xlfd (Lisp_Object font, int pixel_size, char *name, int nbytes)
1241 else if (FLOATP (val)) 1242 else if (FLOATP (val))
1242 { 1243 {
1243 i = XFLOAT_DATA (val) * 10; 1244 i = XFLOAT_DATA (val) * 10;
1244 f[XLFD_PIXEL_INDEX] = alloca (12); 1245 f[XLFD_PIXEL_INDEX] = p = alloca (12);
1245 len += sprintf (f[XLFD_PIXEL_INDEX], "*-%d", i) + 1; 1246 len += sprintf (p, "*-%d", i) + 1;
1246 } 1247 }
1247 else 1248 else
1248 f[XLFD_PIXEL_INDEX] = "*-*", len += 4; 1249 f[XLFD_PIXEL_INDEX] = "*-*", len += 4;
@@ -1250,9 +1251,8 @@ font_unparse_xlfd (Lisp_Object font, int pixel_size, char *name, int nbytes)
1250 if (INTEGERP (AREF (font, FONT_DPI_INDEX))) 1251 if (INTEGERP (AREF (font, FONT_DPI_INDEX)))
1251 { 1252 {
1252 i = XINT (AREF (font, FONT_DPI_INDEX)); 1253 i = XINT (AREF (font, FONT_DPI_INDEX));
1253 f[XLFD_RESX_INDEX] = alloca (22); 1254 f[XLFD_RESX_INDEX] = p = alloca (22);
1254 len += sprintf (f[XLFD_RESX_INDEX], 1255 len += sprintf (p, "%d-%d", i, i) + 1;
1255 "%d-%d", i, i) + 1;
1256 } 1256 }
1257 else 1257 else
1258 f[XLFD_RESX_INDEX] = "*-*", len += 4; 1258 f[XLFD_RESX_INDEX] = "*-*", len += 4;
@@ -1270,8 +1270,8 @@ font_unparse_xlfd (Lisp_Object font, int pixel_size, char *name, int nbytes)
1270 f[XLFD_SPACING_INDEX] = "*", len += 2; 1270 f[XLFD_SPACING_INDEX] = "*", len += 2;
1271 if (INTEGERP (AREF (font, FONT_AVGWIDTH_INDEX))) 1271 if (INTEGERP (AREF (font, FONT_AVGWIDTH_INDEX)))
1272 { 1272 {
1273 f[XLFD_AVGWIDTH_INDEX] = alloca (11); 1273 f[XLFD_AVGWIDTH_INDEX] = p = alloca (11);
1274 len += sprintf (f[XLFD_AVGWIDTH_INDEX], "%ld", 1274 len += sprintf (p, "%ld",
1275 (long) XINT (AREF (font, FONT_AVGWIDTH_INDEX))) + 1; 1275 (long) XINT (AREF (font, FONT_AVGWIDTH_INDEX))) + 1;
1276 } 1276 }
1277 else 1277 else