Index: t2load.c =================================================================== RCS file: /cvsroot/freetype2/src/cff/t2load.c,v retrieving revision 1.6 diff -c -r1.6 t2load.c *** t2load.c 2000/06/07 20:19:21 1.6 --- t2load.c 2000/06/09 02:38:20 *************** *** 406,427 **** error = t2_new_cff_index( &font->charstrings_index, stream, 0 ); if (error) goto Exit; ! /* read the local subrs */ ! if ( FILE_Seek( base_offset + font->top_dict.private_offset + ! font->private_dict.local_subrs_offset ) ) ! goto Exit; ! error = t2_new_cff_index( &font->local_subrs_index, stream, 1 ); ! if (error) goto Exit; /* explicit the global and local subrs */ ! font->num_local_subrs = font->local_subrs_index.count; font->num_global_subrs = font->global_subrs_index.count; ! error = t2_explicit_cff_index( &font->global_subrs_index, ! &font->global_subrs ) || ! t2_explicit_cff_index( &font->local_subrs_index, ! &font->local_subrs ); if (error) goto Exit; } --- 406,440 ---- error = t2_new_cff_index( &font->charstrings_index, stream, 0 ); if (error) goto Exit; ! /* read the local subrs, if any */ ! ! if (font->private_dict.local_subrs_offset) { ! ! if ( FILE_Seek( base_offset + font->top_dict.private_offset + ! font->private_dict.local_subrs_offset ) ) ! goto Exit; ! error = t2_new_cff_index( &font->local_subrs_index, stream, 1 ); ! if (error) goto Exit; ! } /* explicit the global and local subrs */ ! ! if (font->private_dict.local_subrs_offset) { ! font->num_local_subrs = font->local_subrs_index.count; ! } else { ! font->num_local_subrs = 0; ! } ! font->num_global_subrs = font->global_subrs_index.count; ! ! error = t2_explicit_cff_index( &font->global_subrs_index, &font->global_subrs ) ; ! ! if (font->private_dict.local_subrs_offset) { ! error |= t2_explicit_cff_index( &font->local_subrs_index, &font->local_subrs ) ; ! } ! if (error) goto Exit; }