Hi, I came across this code in the current luatex trunk: void out_cmd(void) { if ((oval < 0x100) && (oval >= 0)) { if ((ocmd != set1) || (oval > 127)) { if ((ocmd == fnt1) && (oval < 64)) oval += fnt_num_0; else dvi_out(ocmd); } } else { if ((oval < 0x10000) && (oval >= 0)) { dvi_out(ocmd + 1); } else { if ((oval < 0x1000000) && (oval >= 0)) { dvi_out(ocmd + 2); } else { dvi_out(ocmd + 3); if (oval >= 0) { dvi_out(oval / 0x1000000); } else { oval += 0x40000000; oval += 0x40000000; dvi_out((oval / 0x1000000) + 128); oval = oval % 0x1000000; } dvi_out(oval / 0x10000); <---------- Remove? oval = oval % 0x10000; } dvi_out(oval / 0x10000); <---------- oval = oval % 0x10000; } dvi_out(oval / 0x100); oval = oval % 0x100; } dvi_out(oval); } It seems that the same byte gets written twice in some cases (see the arrows). When compiling tlb0735.lvt in the latex test suite, the output is not accepted by e.g. xdvi. I test with 0.95 and texlive. Cheers /Lars
participants (1)
-
Lars Hamren