Mercurial > emacs
comparison src/ftfont.c @ 107237:f24a9a68524d
Fix Myanmar OTF support
author | Kenichi Handa <handa@m17n.org> |
---|---|
date | Fri, 26 Feb 2010 21:40:46 +0900 |
parents | 1d1d5d9bd884 |
children | 39d09d6f8dbc |
comparison
equal
deleted
inserted
replaced
107230:8e842bd86ccf | 107237:f24a9a68524d |
---|---|
661 spec->script = Qnil; | 661 spec->script = Qnil; |
662 } | 662 } |
663 else | 663 else |
664 spec->script_tag = 0x44464C54; /* "DFLT" */ | 664 spec->script_tag = 0x44464C54; /* "DFLT" */ |
665 otf_spec = XCDR (otf_spec); | 665 otf_spec = XCDR (otf_spec); |
666 val = XCAR (otf_spec); | 666 spec->langsys_tag = 0; |
667 if (! NILP (val)) | 667 if (! NILP (otf_spec)) |
668 OTF_SYM_TAG (val, spec->langsys_tag); | 668 { |
669 else | 669 val = XCAR (otf_spec); |
670 spec->langsys_tag = 0; | 670 if (! NILP (val)) |
671 OTF_SYM_TAG (val, spec->langsys_tag); | |
672 otf_spec = XCDR (otf_spec); | |
673 } | |
671 spec->nfeatures[0] = spec->nfeatures[1] = 0; | 674 spec->nfeatures[0] = spec->nfeatures[1] = 0; |
672 for (i = 0; i < 2; i++) | 675 for (i = 0; i < 2 && ! NILP (otf_spec); i++, otf_spec = XCDR (otf_spec)) |
673 { | 676 { |
674 Lisp_Object len; | 677 Lisp_Object len; |
675 | 678 |
676 otf_spec = XCDR (otf_spec); | |
677 if (NILP (otf_spec)) | |
678 break; | |
679 val = XCAR (otf_spec); | 679 val = XCAR (otf_spec); |
680 if (NILP (val)) | 680 if (NILP (val)) |
681 continue; | 681 continue; |
682 len = Flength (val); | 682 len = Flength (val); |
683 spec->features[i] = malloc (sizeof (int) * XINT (len)); | 683 spec->features[i] = malloc (sizeof (int) * XINT (len)); |