Mercurial > emacs
comparison src/font.c @ 95984:cf2b26adbb9b
Tweak last change.
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Mon, 16 Jun 2008 02:04:45 +0000 |
parents | 104a55eb192a |
children | f2d08191aec7 |
comparison
equal
deleted
inserted
replaced
95983:104a55eb192a | 95984:cf2b26adbb9b |
---|---|
1426 while (*p) | 1426 while (*p) |
1427 { | 1427 { |
1428 Lisp_Object val; | 1428 Lisp_Object val; |
1429 int word_len, prop; | 1429 int word_len, prop; |
1430 | 1430 |
1431 #define PROP_MATCH(STR,N) ((word_len == N) && memcmp (p, STR, N) == 0) | |
1432 | |
1433 for (q = p + 1; *q && *q != '=' && *q != ':'; q++); | 1431 for (q = p + 1; *q && *q != '=' && *q != ':'; q++); |
1434 word_len = q - p; | 1432 word_len = q - p; |
1435 if (*q != '=') | 1433 if (*q != '=') |
1436 { | 1434 { |
1437 /* Must be an enumerated value. */ | 1435 /* Must be an enumerated value. */ |
1438 val = font_intern_prop (p, q - p, 1); | 1436 val = font_intern_prop (p, q - p, 1); |
1437 | |
1438 #define PROP_MATCH(STR,N) ((word_len == N) && memcmp (p, STR, N) == 0) | |
1439 | |
1439 if (PROP_MATCH ("light", 5) | 1440 if (PROP_MATCH ("light", 5) |
1440 || PROP_MATCH ("medium", 6) | 1441 || PROP_MATCH ("medium", 6) |
1441 || PROP_MATCH ("demibold", 8) | 1442 || PROP_MATCH ("demibold", 8) |
1442 || PROP_MATCH ("bold", 4) | 1443 || PROP_MATCH ("bold", 4) |
1443 || PROP_MATCH ("black", 5)) | 1444 || PROP_MATCH ("black", 5)) |
1459 { | 1460 { |
1460 /* Unknown key */ | 1461 /* Unknown key */ |
1461 bcopy (p, copy, word_len); | 1462 bcopy (p, copy, word_len); |
1462 copy += word_len; | 1463 copy += word_len; |
1463 } | 1464 } |
1465 #undef PROP_MATCH | |
1464 } | 1466 } |
1465 else /* KEY=VAL pairs */ | 1467 else /* KEY=VAL pairs */ |
1466 { | 1468 { |
1467 Lisp_Object key; | 1469 Lisp_Object key; |
1468 char *keyhead = p; | 1470 char *keyhead = p; |
1490 bcopy (keyhead, copy, q - keyhead); | 1492 bcopy (keyhead, copy, q - keyhead); |
1491 copy += q - keyhead; | 1493 copy += q - keyhead; |
1492 } | 1494 } |
1493 } | 1495 } |
1494 p = *q ? q + 1 : q; | 1496 p = *q ? q + 1 : q; |
1495 #undef PROP_MATCH | |
1496 } | 1497 } |
1497 if (name != copy) | 1498 if (name != copy) |
1498 font_put_extra (font, QCfc_unknown_spec, | 1499 font_put_extra (font, QCfc_unknown_spec, |
1499 make_unibyte_string (name, copy - name)); | 1500 make_unibyte_string (name, copy - name)); |
1500 } | 1501 } |