diff options
| author | Paul Eggert | 2011-03-16 01:19:22 -0700 |
|---|---|---|
| committer | Paul Eggert | 2011-03-16 01:19:22 -0700 |
| commit | e663c700e753d901479798b735c2ad6ac74c07d9 (patch) | |
| tree | 6caf39ec50f87d916c89dd71a9c1b641f11fd360 /src | |
| parent | 612f56dfff305bae8b6e61ea3a60502f42a8eb5b (diff) | |
| download | emacs-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/ChangeLog | 3 | ||||
| -rw-r--r-- | src/font.c | 28 |
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 @@ | |||
| 1 | 2011-03-16 Paul Eggert <eggert@cs.ucla.edu> | 1 | 2011-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) | |||
| 1163 | int | 1163 | int |
| 1164 | font_unparse_xlfd (Lisp_Object font, int pixel_size, char *name, int nbytes) | 1164 | font_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 |