summaryrefslogtreecommitdiff
path: root/Build
diff options
context:
space:
mode:
Diffstat (limited to 'Build')
-rw-r--r--Build/source/texk/web2c/mplibdir/psout.w10
1 files changed, 7 insertions, 3 deletions
diff --git a/Build/source/texk/web2c/mplibdir/psout.w b/Build/source/texk/web2c/mplibdir/psout.w
index e11dca0cc2a..71ae37e1298 100644
--- a/Build/source/texk/web2c/mplibdir/psout.w
+++ b/Build/source/texk/web2c/mplibdir/psout.w
@@ -748,6 +748,8 @@ static int fm_getchar (MP mp) {
byte_ptr = (void *)mp->ps->fm_bytes;
(mp->read_binary_file)(mp,mp->ps->fm_file,&byte_ptr,&mp->ps->fm_byte_length);
}
+ if(mp->ps->fm_byte_waiting >= mp->ps->fm_byte_length)
+ return 10;
return *(mp->ps->fm_bytes+mp->ps->fm_byte_waiting++);
}
@@ -1239,6 +1241,8 @@ static int check_fm_entry (MP mp, fm_entry * fm, boolean warn) {
while (mp_isdigit (*r))
r++;
}
+ if(fm->ps_name == NULL)
+ fm->ps_name = xstrdup(fm->tfm_name);
while (1) { /* loop through "specials", encoding, font file */
skip (r, ' ');
switch (*r) {
@@ -1584,7 +1588,7 @@ void mp_read_psname_table (MP mp) ;
void mp_read_psname_table (MP mp) {
font_number k;
char *s;
- static boolean isread = false;
+ static int isread = 0;
if (mp->ps->mitem == NULL) {
mp->ps->mitem = mp_xmalloc (mp,1,sizeof(mapitem));
mp->ps->mitem->mode = FM_DUPIGNORE;
@@ -1593,8 +1597,8 @@ void mp_read_psname_table (MP mp) {
}
s = mp_xstrdup (mp,ps_tab_name);
mp->ps->mitem->map_line = s;
- if (!isread) {
- isread = true;
+ if (isread == 0) {
+ isread++;
fm_read_info (mp);
}
for (k=mp->last_ps_fnum+1;k<=mp->last_fnum;k++) {