2022-03-21 Karl Berry * TL'22 release. 2021-12-16 Luigi Scarso * Makefile.am (install-exec-hook) [WIN32]: sh syntax. (Also found by Siep.) https://tug.org/pipermail/tlbuild/2021q4/004983.html 2021-11-03 Karl Berry * Makefile.am (install-exec-hook) [WIN32]: install via libtool, the same change as made for dvipdfmx. https://tug.org/pipermail/dvipdfmx/2021-October/000301.html 2020-12-04 Karl Berry * pl-lexer.l (YY_BUF_SIZE): #define 110000, for the same reason as the previous change. Two separate buffer overflows, it seems. 2020-11-21 Karl Berry * pl-lexer.l (MAX_PTR): increase to 100000; the tests/xyarabic.opl file has a COMMENT string longer than 10000 (the previous value), but this did not normally cause an error exit status, unfortunately. Finally did fail and was reported by Scott Norton here: https://tug.org/pipermail/tex-k/2020-November/003391.html. 2018-10-18 Norbert Preining * ligkern_routines.c (retrieve_ligkern_table): need lig_kern_size+1 for `activity' array, else glibc 2.28 on 32-bit architectures finds malloc error. Original report from Tom Callaway, https://tug.org/pipermail/tex-live/2018-September/042411.html 2018-09-09 Karl Berry * overbmp.test: LC_ALL=LANGUAGE=C. 2018-01-18 Karl Berry * error_routines.c (yyerror, warning_0, fatal_error_0, internal_error_0), * out_routines.c (out): printf %s instead of direct string. From Debian. 2016-02-27 Akira Kakuto * omfonts.c, help.test: Add an option -charcode-format for compatibility. 2015-07-07 Peter Breitenlohner * Makefile.am: Better dependencies for 'make check'. 2015-01-11 Peter Breitenlohner * error_routines.[ch], omfonts.c: Non-zero error return code. * check.test: Also test writung OPL file to stdout. * selectfont.test: Also test writung OVP file to stdout. * bad.test, version.test: Shell scripts for new tests. * tests/badofm.ofm, tests/badopl.opl, tests/badovf.{ofm,ovf}, tests/badovp.ovp: New test input files. * Makefile.am: Add new test shell scripts and input files. 2014-11-08 Peter Breitenlohner * omfonts.c: Help texts for C and Web2C versions differ. * help.test: New shell script to test help messages and options. 2014-09-22 Peter Breitenlohner * font_routines.c: Fixed packet_table realloc bug. Clean up font_table and move_table memory management. Reduce BLOCK 256 => 16 to reduce wasted packet_table space. 2014-08-20 Akira Kakuto * char_routines.c: Move '#define check_range' to the top-level. 2014-08-19 Peter Breitenlohner * char_routines.c, ligkern_routines.c: More OFM checking. * check.test, check.{ofm,opl}, checked.opl: Shell script and data for a new test. * Makefile.am: Add the new test. 2014-08-18 Peter Breitenlohner * ofonts.test: Fix parallel tests. 2014-08-17 Peter Breitenlohner * ligkern_routines.c, out_routines.h, ligkern.test: Detect unused parts of OFM ligkern program. * tests/arabic.ovp: Use more than 64k ligkern steps. * tests/liguse{,1,2}.opl (new): Additional test data. * Makefile.am: Add the new test data. 2014-08-15 Peter Breitenlohner * print_routines.c (print_ofm_level), tests/*.opl, tests/*.ovp: Output OFMLEVEL in hex (as in Web2C version). * char_routines.c, ligkern_routines.[ch], manifests.h, print_routines.[ch]: Handle BOUNDARYCHAR. * ligkern.test, tests/lig{all,bch,bdy,blb}.opl, tests/ligblv.{opl,ovp}, tests/ligloop1.{ofm,opl}, tests/ligloop2.opl: Shell script and data for a new test. * Makefile.am: Add the new test. 2014-08-10 Peter Breitenlohner * ligkern_routines.c (l_hash_input): Fixed another bug. 2014-08-09 Peter Breitenlohner * ligkern_routines.c (l_hash_lookup): Fixed a bug in checking for infinite ligature loops. 2014-08-08 Peter Breitenlohner * char_routines.c: Compute checksum as in Web2C version. * ligkern_routines.[ch], list_routines.[ch]: Handle very long ligature programs. * yannis.test, tests/arabicr.pl, tests/arabic.ovp (new): Shell script and data for a new test. * Makefile.am: Add the new test. 2014-08-05 Peter Breitenlohner General cleanup. * char_routines.[ch], dimen_routines.[ch], error_routines.[ch], font_routines.[ch], header_routines.[ch], ligkern_routines.[ch], list_routines.[ch], omfonts.[ch], out_ofm.[ch], out_routines.[ch], param_routines.[ch], parse_ofm.[ch], print_routines.[ch]: Drop unused code. Declare functions with file scope as static. 2014-08-04 Peter Breitenlohner * char_routines.c: Compute checksum. * header_routines.[ch]: Drop more unused code. * shorten.test, tests/realnum.out, tests/repeat.opl, tests/repeated.opl, tests/sample.{out,ovp}, tests/shorten.opl: Always use computed checksum. 2014-08-03 Peter Breitenlohner * dimen_routines.c (set_indices): Fixed a dimen rounding bug. * header_routines.[ch]: Drop unused code. Always output SEVENBITSAFEFLAG for TFM files. * shorten.test, tests/shorten.opl, (new): Shell script and data for a new test. * Makefile.am: Add the new test. 2014-08-02 Peter Breitenlohner * dimen_routines.c: Fixed a bug in the computation of nw, nh, nd, and ni. 2014-07-10 Peter Breitenlohner * char_routines.c, ligkern_routines.c, omfonts.c, param_routines.c, parse_ofm.c: Allow char codes 10000..10FFFF from Supplementary Unicode Planes. 2014-07-09 Peter Breitenlohner * Makefile.am: Drop Automake conditional OMFONTS. * ofonts.test, overbmp.test, tests/ofont*, tests/inbmp.opl, tests/overbmp.* (new): Shell scripts and data for new tests. 2013-12-06 Peter Breitenlohner * omfonts.c (main): Use make_suffix() for implied ofm_name. * selectfont.test: Add test for 'ovp2ovf foo.ovp bar.ovf'. * Makefile.am (DISTCLEANFILES): Additional files. Mail from TANAKA Takuji , 27 Nov 2013. 2013-07-05 Peter Breitenlohner * omfonts.c (main): Use kpse_program_basename(). 2013-06-28 Peter Breitenlohner * pl-lexer.l: Add '#include ' for strlen(). 2013-01-29 Peter Breitenlohner * Makefile.am: Allow subdir-objects. 2012-12-07 Peter Breitenlohner * char_routines.c, ligkern_routines.c: Drop unused variables (gcc-4.6 warning). 2012-08-25 Peter Breitenlohner * omfonts.c (PROG_IS): Compare program name case insensistively. (from W32TeX). 2012-07-09 Peter Breitenlohner * pl-parser.[ch]: Regenerate with bison 2.5.1. 2012-06-20 Peter Breitenlohner * pl-lexer.l: Added the never-interactive option to prevent flex from creating a problematic prototype for isatty(). #include and drop prototype for xstrdup(). 2012-01-24 Peter Breitenlohner * pl-lexer.l: 'Correctly' scan real numbers for scan_fix(). Reported by Tanaka Takuji . * realnum.test, tests/realnum.opl, tests/realnum.out (new): Shell script and data for a new test. * Makefile.am: Add the new test. 2012-01-03 Akira Kakuto * omfonts.c: fix a typo (omfomts ---> omfonts). 2011-12-20 Peter Breitenlohner * font_routines.c (set_select_font): Select the correct MAPFONT. Reported by Saito Shuzaburo via Akira Kakuto, 20 Dec 2011 08:49:10. * selectfont.test, tests/sample.out, tests/sample.ovp, tests/sample0-h.opl (new): Shell script and data for a new test. * Makefile.am: Add the new test. 2011-05-30 Peter Breitenlohner * Makefile.am: Use ../../am/bin_links.am for $(bindir) links. 2011-05-04 Peter Breitenlohner * omfonts.c (main): Call kpse_set_program_name() with args argv[0] and name_program, not name_program and NULL to avoid lstat warnings. * charwd.test, level1.test, omfonts.test, repeat.test, specialhex.test: Always set TEXMFCNF to avoid warnings. 2011-02-15 Peter Breitenlohner * Makefile.am [WIN32]: Add o??2o??.exe wrappers. 2010-12-30 Peter Breitenlohner * omfonts.c: Check for argv[0] with .exe via strcasecmp(). 2010-06-16 Peter Breitenlohner * char_routines.c (ensure_existence): Avoid OpenBSD Bus error caused by faulty logic. Reported by Edd Barrett, 10 Jun 2010 13:33:03. 2010-03-01 Peter Breitenlohner * char_routines.c (check_existence_all_character_fields): Avoid segfault (unspecified CHARWD defaults to 0.0). Reported by Akira Kakuto, 28 Feb 2010 10:34:40. * charwd.test, tests/charwd-r.pl, tests/charwd-v.vpl (new): Shell script and data for a new test. * Makefile.am: Add the new test. 2010-02-26 Peter Breitenlohner * pl-lexer.l: #include and drop some others. 2010-02-20 Peter Breitenlohner * pl-lexer.l: #include for KPSEDLL used by . 2010-01-22 Peter Breitenlohner * omfonts.[ch] (read_in_whole, name_ofm, name_opl, name_ovp, name_ovf, files): Declare file names as const_string. 2010-01-12 Peter Breitenlohner * char_routines.c (compute_ofm_character_info): Fix CHARREPEAT. * tests/repeated.opl: Ajusted. 2010-01-06 Peter Breitenlohner * char_routines.c (check_existence_and_safety, doublecheck_existence): Avoid segfault. (check_and_correct): Call build_dimen_tables() after check_existence_all_character_fields(), which may add a width. (check_existence_all_character_fields): Print "" instead of NULL. * extra_routines.c: Fix various bugs and glitches in handling of extra font parameters (ivalues etc). Add warnings in case they are used with OFMLEVEL<1. 2010-01-05 Peter Breitenlohner Implement basic functionality for OFMLEVEL=1 (CHARREPEAT only). Part 1: ofm => opl: * char_routines.c (print_characters), parse_ofm.c (ofm_organize): Handle repeated characters.. Part 2: opl => ofm: * char_routines.h (num_char_info, words_per_entry): New globals. * char_routines.c (compute_ofm_character_info): Count char_infos. (output_ofm_character_info): Output char_infos. * out_ofm.c (compute_ofm_subsizes): Compute char_info size. (output_ofm_file): Call compute_ofm_extra_stuff() much earlier. (compute_ofm_subsizes): Move final check of bc, ec and related error messages to char_routines.c (compute_ofm_character_info). * extra_routines.c (output_ofm_extra_stuff): Allow OFMLEVEL=1 unless nki+nkp+nkm+nkf+nkr+nkg>0. * omfonts.c: Version 2.1. * level1.test, repeat.test, tests/level1.opl, tests/repeat.opl, tests/repeated.opl (new): Shell scripts and data for new tests. * Makefile.am: Add the new tests. 2010-01-04 Peter Breitenlohner Cleanup extern declarations: char_routines.c (character_measures): Remove unused extern. (bchar): Remove extern and #include "parse_ofm.h". * parse_ofm.h: Extern decl of bchar (defined in parse_ofm.c). * omfonts.h (file_ofm): Extern decl (defined in omfonts.c). (output_ofm_header): Remove duplicate (in out_ofm.h). * omfonts.c (yyin): Remove extern (declared in parser.h). (output_ofm_header): #include "parse_ofm.h". * out_ofm.c (header_ptr,mw,mh,md,mi): Remove unused externs. (file_ofm): Remove extern and #include "omfonts.h". * font_routines.h (cur_packet): Remove duplicate extern. * header_routines.h (output_ofm_header): Remove duplicate extern. * parser.h (yylval): Remove extern, declared in the generated header pl-parser.h. * pl-parser.y: #include "pl-parser.h" (for yylval). * out_ofm.h (output_ofm_header): Remove (in header_routines.h). (output_ofm_extra_stuff): Remove (in extra_routines.h). (compute_ofm_character_info, output_ofm_character_info): Remove (in char_routines.h). 2010-01-03 Peter Breitenlohner Minor bug fixes: * char_routines.c (init_character): Fix a typo (bug?). (init_planes): Drop initialization of char_max[plane_max]. (copy_characters, ensure_existence): Add check for non-existent plane (plane>plane_max). * dimen_routines.c (build_dimen_tables, retrieve_dimen_tables): Replace malloc() by xmalloc(). * list_routines.c (in_cons, in_list1): Initialize index field. (in_list2): Fix a typo (bug) and initialize index fields. * parse_ofm.c (ofm_organize): Give correct OFMLEVEL in error messages. * header_routines.c (store_seven_bit_safe_flag, output_ofm_header): Store as 0x80 (as does PLtoTF) and not 0x01. 2009-09-18 Peter Breitenlohner * header_routines.c (init_header): Call init_ofm_level() to allow reading PL/VPL (ofm_level=-1) files. 2009-09-11 Peter Breitenlohner * pl-parser.l: Accept NFONTDIR as alias for NATURALFONTDIR for compatibility with omegaware (Web2C) versions. 2009-08-27 Peter Breitenlohner Avoid maximal compiler warnings. * char_routines.[ch] (check_existence_and_safety, doublecheck_existence): Constify string params. * error_routines.[ch]: Constify string params of all functions. * header_routines.c (init_design_size): ANSI C definition. ({init,set}_{coding_scheme,family}): Use xstrdup'ed string literal to initialize non-const string (and later free it). * omfonts.c (names_msg, suffixes, full_suffixes): Constify strings. * out_routines.[ch] (character_measures, extensible_pieces, ligature_commands, xerox_faces, named_parameters, named_mathsy_parameters, named_mathex_parameters, type_directions, actual_directions, accent_kinds, move_directions, rule_measures, glue_shrink_stretch, glue_orders, glue_kinds): Constify strings. (out): Constify string param. * pl-lexer.l: (scan_string): Constify string param. * Makefile.am (INCLUDES): Add -DNOT_WEB2C, not to import from ../lib/lib.h globals defined in ../lib/main.c. * dimen_routines.c (delta): Remove unused global var. 2009-08-19 Peter Breitenlohner * Makefile.am: omfonts must depend explicitly on KPATHSEA_DEPEND, the implicit dependency via proglib is not enough. 2009-07-15 Peter Breitenlohner Implement DVI specials in ovp/ovf character packets. * font_routines.c (get_hex): fix hex digit conversion. * lexer.l (scan_hex_string): allow white space in hex strings. * char_routines.c (print_packet): handle DVI specials. (string_balance): new function to decide SPECIAL or SPECIALHEX. * print_routines.[ch] (print_special_hex): output DVI specials. * out_routines.[ch] (out_hex): new function. * specialhex.test (new): Shell script to test specials. * tests/specialhex.ovp (new): test data. * Makefile.am: add the new test. 2009-06-17 Peter Breitenlohner * Makefile.am (AM_CFLAGS): enable compiler warnings. * char_routines.c (get_char_remainder): declare as static. * dimen_routines.c (min_cover, shorten, set_indices): declare as static. * error_routines.c: #include "error_routines.h". * extra_routines.c (init_all_tables): declare as static, unused. * font_routines.c (font_no_incr, packet_ptr_incr, append_to_packet, move_ptr_decr, move_ptr_incr, output_ovf_fonts, in_ovf_4, in_ovf_unsigned_4, in_ovf_3, in_ovf): declare as static. * font_routines.h (in_ovf_4, in_ovf_unsigned_4): remove declaration as external. * header_routines.c (init_header_word, store_header_word, retrieve_header_word, init_face, init_seven_bit_safe_flag): declare as static. (init_ofm_level, init_font_dir): declare as static, unused. * header_routines.h (init_face, init_seven_bit_safe_flag): remove declaration as external. * pl-lexer.l (scan_int, scan_char, scan_fix, scan_string, scan_hex_string): declare as static. 2009-06-16 Peter Breitenlohner * Makefile.am: pl-lexer.l provides yywrap, no need for $(LEXLIB). 2009-06-02 Peter Breitenlohner * dimen_routines.c, manifests.h: rename INFINITY -> WEB_INFINITY, to avoid name conflict with INFINITY from cygwin . 2009-05-31 Peter Breitenlohner * omfonts.c: allow 'omfonts -ofm2opl' to be ofm2opl etc., used to test uninstalled program. * omfonts.test (new): Shell script to test ofm2opl etc. * tests/* (new): test data. * Makefile.am: add the new test. 2009-04-01 Peter Breitenlohner * pl-lexer.l: Add #ifdef __MINGW32__ to source file. * pl-lexer.c: Regenerated. 2009-04-01 Taco Hoekwater * pl-lexer.c: Add #ifdef __MINGW32__ to support compilation using the mingw32 cross-compiler. 2008-03-13 Karl Berry * font_routines.c (font_no_incr): change test to avoid reported segfault on http://norgz.info/download/gregorio.ovp. Report from Elie Roux, 11 Mar 2008 17:19:46, fix from Arthur Reutenauer. 2008-03-02 Karl Berry * Makefile.in (omfonts.o): depend on y_tab.h. From Alexis Ballier, 29 Feb 2008 19:27:23, via https://bugs.gentoo.org/show_bug.cgi?id=209362. 2008-01-29 Peter Breitenlohner * Makefile.in: Add @configure_input@ line. 2006-05-25 Roozbeh Pournader * font_routines.c (clear_map_font): fixed default value of font_at. * parse_ofm.c (ofm_organize): replaced magic number with constant. (ofm_read_simple): fixed a 1-off offset.