+ charmap_rec = alloca (sizeof (CharmapRec) * face->num_charmaps);
+ strcpy (charmap_line, "raw");
+ for (i = 0; i < face->num_charmaps; i++)
+ {
+ strcat (charmap_line, " ");
+ charmap_rec[i].index = strlen (charmap_line);
+ charmap_rec[i].platform_id = face->charmaps[i]->platform_id;
+ charmap_rec[i].encoding_id = face->charmaps[i]->encoding_id;
+ sprintf (charmap_rec[i].name, "%d-%d",
+ charmap_rec[i].platform_id, charmap_rec[i].encoding_id);
+ if (face->charmaps[i]->platform_id == 0
+ || (face->charmaps[i]->platform_id == 3
+ && face->charmaps[i]->encoding_id == 1))
+ strcat (charmap_rec[i].name, " (unicode)");
+ else if (face->charmaps[i]->platform_id == 1
+ && face->charmaps[i]->encoding_id == 0)
+ strcat (charmap_rec[i].name, " (apple-roman)");
+ strcat (charmap_line, charmap_rec[i].name);
+ }
+ strcat (charmap_line, " ");
+