Mercurial > hg > xemacs-beta
comparison src/glyphs.c @ 4816:576f09d387d5
Fix query_string_font lookup domains
author | Didier Verna <didier@lrde.epita.fr> |
---|---|
date | Sat, 09 Jan 2010 15:49:38 +0100 |
parents | 6540302eedf5 |
children | a98ca4640147 |
comparison
equal
deleted
inserted
replaced
4815:6540302eedf5 | 4816:576f09d387d5 |
---|---|
2429 | 2429 |
2430 Lisp_Object | 2430 Lisp_Object |
2431 query_string_font (Lisp_Object string, Lisp_Object face, Lisp_Object domain) | 2431 query_string_font (Lisp_Object string, Lisp_Object face, Lisp_Object domain) |
2432 { | 2432 { |
2433 unsigned char charsets[NUM_LEADING_BYTES]; | 2433 unsigned char charsets[NUM_LEADING_BYTES]; |
2434 struct face_cachel frame_cachel; | 2434 struct face_cachel cachel; |
2435 struct face_cachel *cachel; | |
2436 int i; | 2435 int i; |
2437 Lisp_Object frame = DOMAIN_FRAME (domain); | 2436 Lisp_Object window = DOMAIN_WINDOW (domain); |
2437 Lisp_Object frame = DOMAIN_FRAME (domain); | |
2438 | 2438 |
2439 /* Compute string font info */ | 2439 /* Compute string font info */ |
2440 find_charsets_in_ibyte_string (charsets, | 2440 find_charsets_in_ibyte_string (charsets, |
2441 XSTRING_DATA (string), | 2441 XSTRING_DATA (string), |
2442 XSTRING_LENGTH (string)); | 2442 XSTRING_LENGTH (string)); |
2443 | 2443 |
2444 reset_face_cachel (&frame_cachel); | 2444 reset_face_cachel (&cachel); |
2445 update_face_cachel_data (&frame_cachel, frame, face); | 2445 update_face_cachel_data (&cachel, NILP (window) ? frame : window, face); |
2446 cachel = &frame_cachel; | 2446 ensure_face_cachel_complete (&cachel, domain, charsets); |
2447 | |
2448 ensure_face_cachel_complete (cachel, domain, charsets); | |
2449 | 2447 |
2450 for (i = 0; i < NUM_LEADING_BYTES; i++) | 2448 for (i = 0; i < NUM_LEADING_BYTES; i++) |
2451 { | 2449 if (charsets[i]) |
2452 if (charsets[i]) | 2450 return FACE_CACHEL_FONT |
2453 { | 2451 ((&cachel), charset_by_leading_byte (i + MIN_LEADING_BYTE)); |
2454 return FACE_CACHEL_FONT (cachel, | |
2455 charset_by_leading_byte (i + | |
2456 MIN_LEADING_BYTE)); | |
2457 | |
2458 } | |
2459 } | |
2460 | 2452 |
2461 return Qnil; /* NOT REACHED */ | 2453 return Qnil; /* NOT REACHED */ |
2462 } | 2454 } |
2463 | 2455 |
2464 static void | 2456 static void |