void check_ligature_infinite_loops(void) { unsigned key; for (key = 0; key < PRIME; key++) { hash_list tt = hash_table[key]; while (tt != NULL) { if (tt->new_class > LIG_SIMPLE) l_f(tt, tt->x, tt->y); tt = tt->ptr; } } if (y_lig_cycle != CHAR_BOUNDARY) { if (x_lig_cycle == CHAR_BOUNDARY) { warning_1("Infinite ligature loop starting with boundary and %d", y_lig_cycle); } else { warning_2("Infinite ligature loop starting with %d and %d", x_lig_cycle, y_lig_cycle); } clear_ligature_entries(); nl = 0; bchar = CHAR_BOUNDARY; bchar_label = MAX_LABEL; } }
void init_map_font(int font_number) { unsigned i=0; while (i<no_fonts) { if (font_number == font_table[i].font_number) { warning_1("MAPFONT index (D %d) previously defined; " "old definition ignored", font_number); cur_font = &font_table[i]; if (cur_font->font_area != NULL) free(cur_font->font_area); if (cur_font->font_name != NULL) free(cur_font->font_name); if (cur_font->ovf_packet != NULL) free(cur_font->ovf_packet); clear_map_font(font_number); break; } i++; } if (i==no_fonts) { font_no_incr(); cur_font = &font_table[i]; clear_map_font(font_number); } packet_table_init(); append_command(DVI_FNT_DEF_1, i); cur_font_index = i; cur_font = &font_table[i]; cur_font->ovf_packet = cur_packet; cur_font->ovf_packet_length = packet_ptr; packet_table_end(); }