Changes since Lynx 2.8 release ================================================================================ 1998-08-21 (2.8.1dev.22) * correct test for -std1 compiler option on Digital Unix (reported by Michael Warner) - TD * modify treatment of COLLAPSE_BR_TAGS, so that if it is set TRUE, two or more concurrent BRs will be collapsed into a single blank line. Note that the valid way to insert extra blank lines in HTML is via a PRE block with only newlines in the block (David Henderson ) * clarification in userdefs.h - HN * MS Windows codepages updated for EURO SIGN (0x20AC), from ftp.unicode.org - LP * minor fix for DISP_PARTIAL, solves problem of interfering with previously displayed document - LP * ifdef DOS/WINDOWS to open lynx.trace in text mode - LP * rearrange text in lynx.cfg concerning character_set - LP * correct miscellaneous typos - LP * Fixed: Verbose images now work with [IMAGE]-Submit. Also, fixed the core dump when clickable_images is on. The problem was an oversight in MakeNewTitle() - LE * reviewed the INSTALLATION file as it relates to DOS and updated it for the newly released version of PDCurses 2.3. Added the HAVE_GETBKGD define to makefile.dos, fixes some of the unusual background color handling that was present in the PDCurses DOS port - DK * correct ifdef: LYOptions.c fails to build with -DEXP_FORMS_OPTIONS but _without_ -DDIRED_SUPPORT (e.g. djgpp) - LP * redesigned cookie_add_{accept,reject}list in LYCookie.c -- they work now - BJP * added COOKIE_{ACCEPT,REJECT}_DOMAINS in .lynxrc handling to LYrcFile.c - BJP * slight spacing fix in lynx.cfg - BJP * added blurb in lynx.cfg about COOKIE_{ACCEPT,REJECT}_DOMAINS - BJP * -accept_all_cookies on the commandline works as a toggle now (against lynx.cfg value -- NOT against .lynxrc value) - BJP * change HtAlert for bad partial reference to an HtUserMsg to make it less annoying (request by Philip Webb, Jason McBrayer) 1998-08-15 (2.8.1dev.21) * correct pathname for help file in forms-options screen - TD * reduce clutter in LYOptions.c with SELECTED, DISABLED, NOTEMPTY macros, PutOptValues, GetOptValues functions - TD * modified LYOptions options to include MBM support from form-based options, by making a link href="LYNXOPTIONS://MBM_MENU" like it was in LYPrint.c and calling edit_bookmarks() from postoptions() - LP * add/use HTUserMsg to encapsulate most of the important messages - TD * add/use HTInfoMsg to encapsulate most of the informational messages - TD * make most of the alert messages use HTAlert, for consistency - TD * exclude forms-options pages from Visited Links page - LP * The current keymapping for the DOS Slang ports maps the keys directly to lynx actions via keymap.c. There are several places in the code that test for arrow keys, page up or down, home and end for special handling that depend on the lynx definition of the keys. Hence, the keys in the DOS Slang ports were failing the tests and not working as expected. The following patch now maps these special keys. They can no longer be mapped individually via the KEYMAP mechanism in lynx.cfg. Arrows should now work in GOTO fields. Tested the patch against the binaries maade by makefile.dos, makefile.dsl, and makefile.wsl - DK * The wsl port seems to be working well with DISP_PARTIAL, make this the default - DK * correct spelling in lynx.cfg - DK * modify HText_appendCharacter to wrap long lines when displaying HTML document source - TD * add configure option --enable-cgi-links - TD * clarify discussion of no_proxy in lynx.cfg (Al Gilman). * Multilingual bookmarks: now we store characters >127 in bookmark titles with a more consistent and independent way, by keeping in unicode as &#UUUU (NCR=numeric character reference). The idea belongs to Klaus Weide & Andrey Chernov (long ago). It may be useful if we need switching display charset frequently. This is the case when you use lynx on different platforms, e.g. on UNIX and from remote PC, but want to keep common bookmarks file valid. Compatibility: NCR as part of I18N and HTML4.0 specifications supported starting with Lynx 2.7.2, Netscape 4.0 and MSIE 4.0. New option to lynx.cfg added: NCR_IN_BOOKMARKS which is FALSE by default. - LP * Tweak "print options menu" to exclude choises which are not available under the certain conditions (print to the screen and lpansi on DOS/WINDOWS, print to e-mail for local_host_only). - LP * Forms options menu: add a link on option_help.html; synchronize option_help.html against Lynx_User_guide.html and lynx.cfg. Rename label "raw 8-bit or CJK Mode" with "CJK Mode" for CJK people and "raw 8-bit" for others. Cleanup postoptions() by introducing flags. - LP * Force HTuncache_current_document if gen_options() invoked. This is a dirty fix until we uncache previous document only when necessary. - LP * Add time/date in addition to X-URL and BASE (PrependBaseToSource), (request by Hans-Joachim Gurt ) - LP * Turn partial_display off if we are not interactive (reported by Ari Moisio ) - LP * more fixes/refinements for auto-configuring socks5 on AIX (report by Brian Hauber) - TD 1998-08-06 (2.8.1dev.20) * rename eat_all_cookies to accept_all_cookies everywhere - BJP * added ACCEPT_ALL_COOKIES lines to the dist lynx.cfg with the appropriate description - BJP * added COOKIE_ACCEPT_DOMAINS and COOKIE_REJECT_DOMAINS to lynx.cfg. These are comma delimited lists of the domains to handle - BJP * added cookie_add_acceptlist and cookie_add_rejectlist to LYCookie.c, which are passed the list of domains from lynx.cfg and add them to the global cookie list. These may be subject to change, as I might not be handling the LYstrsep() right -- it works with dev19's LYstrsep(), but hasn't been tested with Bela's... - BJP * added a big ugly ifdef'd out section to LYrcFile.c with what I have so far on the .lynxrc handling of COOKIE_{ACCEPT,REJECT}_DOMAINS. Don't use it. Makes nasty segfaults - BJP (Brian J Pardy) * fix a bug where the DJGPP_KEYHANDLER version doesn't allow movement by arrow keys within a text area. Undo previous patch to LYGetFile.c, with LYgetch now changed where it is defined in LYStrings.c, rather than at each place where it is used. The patch in LYStrings.c regarding Windows should fix the problem with keymapping that occurred when we got rid of RAWDOSKEYHACK - DK * turn on DISP_PARTIAL in makefile.dos - DK * correct typo in LYOptions.c - BL * corrected logic of LYstrsep - BL * Few minor typos and forgotten notes in man/hlp/cfg files; also quote Bela's note on lynx.cfg INCLUDE facility - LP * correct typos in makefile.wsl, makefile.dsl - LP * correct typos, fix character set problems in recent changes of LYOptions.c - LP * move include for socks.h past tcp.h, to allow for redefinition of some symbols on AIX (report by Brian Hauber) - TD * adjust headers so that each can be compiled separately, eliminating order dependencies - TD * include tcp.h always from within HTUtils.h, to enforce ordering of headers needed for socks5 definitions - TD * use S_ISREG, S_ISDIR macros to reduce clutter - TD * make test for OpenHiddenFile to overwrite user's file more stringent by ensuring that the given pathname is not a link from a world-writable directory (reported by BL, with suggested patch) - TD * add/use LYPathLeaf() function to reduce clutter of pathname-leaf parsing - TD * eliminate redundant definition of 'FREE() - TD * ifdef'd LYOptions.c to reduce unneeded code wrt --enable-forms-options - TD * check in OpenHiddenFile to ensure that we overwrite only regular files, since we also force the file's permissions to 0600 - TD 1998-07-31 (2.8.1dev.19) * modify OpenHiddenFile so that it can overwrite files owned by the real user if the O_EXCL open fails because the file already exists - TD * add experimental forms-based options screen (patch by Mike Castle), ifdef'd with EXP_FORMS_OPTIONS and configured with --enable-forms-options. * add option -eat_all_cookies and corresponding config variable EAT_ALL_COOKIES (Brian J Pardy ). * correct spurious 'Content' string versus newline after X-URL in LYMail.c (Bela Lubkin and Larry Virden). * updated versions of config.guess and config.sub based on automake 1.3 - TD * updated experimental persistent-cookie support based on RP's patch: Replaced the call to strsep with a home-rolled one for those people who don't have it. (Reported by Bela Lubkin, Mon, 27 Jul 1998 16:51:14 -0700 on the mailing list.) Bela's modification to make some character arrays static is also included. * nits/spelling in LYPrint.c, LYUtils.c (reported by Mike Castle). * changed LYGetFile.c to build lynx2.8.1dev.18 with SLANG and the DJGPP_KEYHANDLER for DOS - DK * fix a couple of places where the return-value of calloc was not checked (reported by Mike Castle ) - TD * correct typo in command-line parsing of -lss option (reported by Chris Kottaridis ) * define _AIX if needed for socks5 (request by Brian Hauber) - TD * improved configure test for getgroups array type - TD 1998-07-24 (2.8.1dev.18) * improved test for socks5, to account for special cases on AIX (reported by Brian Hauber) - TD * several changes to reduce the number of gcc cast-qual warnings, by adding CONST, removing casts - TD * add configure option --enable-syslog to enable system logging of requested URL's - TD * add RP's experimental persistent-cookie support, and configure option --enable-persistent-cookies, ifdef'd with EXP_PERSISTENT_COOKIES - TD * removed references to DOSRAWKEYHACK, which is no longer used. Modified the dos makefile for libwww and makefile.dsl to default to using display_partial. Modified INSTALLATION to reflect the successful use of slang with the dos port and the now confusing alternatives when compiling the dos port, along with some other updates - DK * modify lynx_enable_mouse() for pdcurses configuration so that mouse support is disabled unless -use_mouse is specified. This is ifdef'd with __BORLANDC__ for the time being (WB). * resync build-slang.com, against build.com - TD * add $(MMSQUALIFIERS) to top-level descrip.mms, e.g., to use options such as /FROM, /IGNORE, /NOACTION, etc., and $(INCLUDES) definitions to lower-level descrip.mms files. Improve error-recovery in build.com (patches by Liam Davis ) * use memset to clear soc_in fields before doing a connect, needed for BSD/OS (patch by Jeffrey C Honig ). * remove spurious sprintf params when using FIXED_RECORD_COMMAND_MASK which has only one parameter, change VMSsignal from void* to void (report by Mike Xun Ma ) - TD * use open(O_CREAT|O_EXCL) to open new hidden files - TD * eliminate_*putenv_cmd variables used by LYReadCFG.c as placeholders for putenv calls - TD * disable include of for VMS, from report by Chris Doran) - TD * fixes for VMS: mismatched curly brace, etc., from CTRACE and buffer-overflow changes (reported by chris.doran@gblis.mail.abb.com) - TD * correct a loop in HTML_start_element that strips 7 leading characters from an href, fixes a core-dump in traversing ".." to "/" - TD * use new macro SetOutputMode to reduce some clutter - TD * modify interface of LYCachedTemp so fileCache member is reset to null, fixes bug in my recent cleanup of temp-files, which caused a core-dump - TD * add kb/sec rate to HTReadProgress message - TD * modify computation in HTReadProgress to interpolate rate - LP * One more fix for DISP_PARTIAL: to avoid blinking while reloading document with Newline_partial > 1 (say, we press '*' and noproxy) we repaint the page only when Newline_partial <= HText_getNumOfLines(). - LP * add "-verbose" command-line switch. - LP * DOS fix: open stdout in TEXT mode for -help and startup error message. - LP * correct use of $mapname variable in CF_ALT_CHAR_SET (Tomas Vanhala) 1998-06-25 (2.8.1dev.17) * add configure option --with-socks5 (request by Brian Hauber ) - TD * define symbols HAVE_CURSESX_H, HAVE_JCURSES_H (report by Georg Schwarz ) - TD * modify logic that reports progress of download to update screen no more than once per second, fix an overrun problem (reported by Jacob Poon ) - TD 1998-06-11 (2.8.1dev.16) * modify configure script to check for special compiler options which are assumed for particular platforms (suggested by BL) - TD * modify display_page in GridText.c so that TRACE does not cause a repaint, since that causes colors to be incorrectly rendered when tracing - TD * fix a few of the signed/unsigned mismatch warnings in GridText.c - TD * correct pathname in LYOpenScratch call for bookmarks (reported by DK) - TD * DISP_PARTIAL: fix initialization of newdoc.line (case LYK_DOWNLOAD, mainloop) to correct display while 'd'ownloading files (it was initialized _after_ the download completed and was good enough without display_partial mode). - LP * correct some ifdef's for DISP_PARTIAL - LP 1998-06-04 (2.8.1dev.14) * minor formatting fixes and documentation for upload screen - LP * remove config.cache at beginning of configure script - TD * eliminate cast for GetChar in LYStrings.c (from bug report by Michael Warner, analysis by BL) - TD * shorten logs from WWW/* by disabling echo of compiler options as in src/* - TD * add configure test for types pid_t and uid_t - TD * add configure test for array type used in getgroups call, to distinguish between BSD and POSIX variations which use different sizes - TD * modify configure script to compile DISP_PARTIAL code by default - TD * fix compiler warnings dealing with unreached statements - TD * change 'keymap[] array to unsigned char, move logic that relies on its size into LYKeymap.c - TD * make LYOpenScratch() work properly for 8.3 names (reported by DK) - TD * DISP_PARTIAL: introduce separate variables Newline_partial and NumOfLines_partial, initialize them in mainloop and synchronize with Newline later when the reload completes (case NORMAL). To reduce the CPU usage while downloading, call HText_pageDisplay only if NumOfLines_partial is in the current display page or any Scroll key pressed by the user. We disable partial_display if requested URL have #fragment, otherwise user will see the top page first (yes, s/he will be moved to #fragment when the download completed, but only if no scroll keys were pressed before!). Processing of "END" key changed from MAXINT to real number of lines in the document (important for display_partial mode) - LP. * correct problem that caused DGJPP version built with slang 1.2.2 to lose its socket whenever the rendering of a http URL is interrupted with "z". This is in HTCheckForInterrupt in LYUtils.c (reported by John Lewis) - DK * add files pdcurses.key, slang.key, djgpp.key to document the keybindings used for DJGPP version - DK * allow mapping of ALT and Function keys with the DOS port for both the PDCurses version and the SLANG version with the DJGPP keyhandler. The extended keys to be mapped have to be specified numerically according to the definitions in curses.h (for PDCurses) or in keys.h (for SLANG with DJGPP keyhandler). DJGPP maps keys up to 0x293, while PDCurses maps keys up to 0x1c0 - DK * don't try to use -std1 option for gcc on Digital Unix (reported by Michael Warner ) - TD 1998-05-23 (2.8.1dev.13) * use new function LYLocalFileToUrl to cleanup some pathname references - TD * eliminate 'tempname()' function, using LYNewTxtFile, etc., with new functions LYOpenTemp, LYCloseTemp, etc., so that temporary files are opened with appropriate permissions - TD * correct use of cache variable in CF_ALT_CHAR_SET (reported by BL) - TD * spell out the logic in HTPlain.c against 2.7.2: there was a certain problem with chartrans in text/plain mode (LYRawMode was wrongly interferring, problem reported by Jacob Poon & FM). - LP * modify logic for zero-width spaces in conv_uni_to_pc to exclude 0x200a - LP * supply missing "break", which was forcing raw utf-8 output in URLs (NOT hex escaped) - LP 1998-05-14 (2.8.1dev.12) * remove unneeded definition used in testing dev.11 from config.hin) - TD 1998-05-14 (2.8.1dev.11) * fixes for function-keys with slang configuration on DOS (patch by DK). * correct missing '&' in command-line options entry for syslog (reported by HN) - TD * correct initial value for NoColorvideo with PDCurses, from my error in 1998-05-10 integration (reported by DK) - TD 1998-05-10 (2.8.1dev.10) * eliminate assignment to stderr for trace-file by making tfp a function. - TD * added John Davis' keymaps/keysym patch (it really should be integrated with the normal lynx.cfg file). * tweak chartrans, "Convert the octet to Unicode": incoming symbols >127 but < LYlowest_eightbit[IN-charset] now ignored, previously displayed as UFFFD. (SGML.c, HTPlain.c, LYCharUtils.c) - LP * removed conflicting/unused declaration of 'bzero()' from tcp.h (from report by Ashraf Zorkani ) - TD * modify the set/unset/toggle options to allow "on" and "off" values also - TD * apply the "partial display" patch, modified from: http://www.flora.org/lynx-dev/html/month0398/msg00993.html The behavior is controlled by a compile-time option (DISP_PARTIAL), by a command-line argument (-partial), and by a lynx.cfg option (PARTIAL). - BL * extend command-line option processing of set/unset/toggle options -toggle- (set that toggle to FALSE) -toggle+ (set that toggle to TRUE) e.g., lynx -show_cursor+ -case- or with explicit 1/0 values, e.g., -toggle=0 (set that toggle to FALSE) -toggle=1 (set that toggle to TRUE) NOTE: this allows you to change a few flags that would previously have been controlled by lynx.cfg, and are security-related, such as -locexec or -telnet. I believe there is no issue, because if the user can control the command line to Lynx, he could have run `lynx -cfg my_cfg_file` and circumvented those settings anyway. - BL * fix for buffer-overrun in LYMail.c when processing a mailto:very-log-address URL - BL * correct, for OS/2 EMX, a place in LYConvertToURL() which must not use HTDOS_wwwName() (patch by Jason F. McBrayer ) * similar changes to LYCurses.c, LYMain.c, LYStrings.c, add src/makefile.wsl, for building DOS version with slang - Bill Schiavo * modify LYCurses.c, LYMain.c, LYStrings.c, add src/makefile.dsl, for building DOS version with slang - DK * fix to improve reloading if user changed assume_charset in options menu using ^A, which sometimes did not work - LP * add several chartrans-related files to test/ directory: spaces.html, c1.html, raw8bit.html - LP * fixes to compile on SunOS with K&R compiler. - TD 1998-05-03 (2.8.1dev.9) * correct missing counter increment in tempname(), from cleanup. - TD 1998-05-02 (2.8.1dev.8) * Fix for CGI-related URLs processing (syntax: ?x=1&yz=2). To avoid interfere with SGML we restrict '=' as terminator for a named entity, this only applied for HREF= attribute translation (LYCharUtils.c). (reported by Alex Matulich alex@unicorn.us.com & FM). - LP * restore information in the INSTALLATION file for the DOS port on patching tcplib. Also, clarifies the location of nullpkt. It also clarifies that the PDCurses beta has incorporated some of the patches we made for the lynx DOS port. - DK * modify logic that updates bookmark file after removing a link to use copy rather than rename, to solve file-ownership problems (patch by Paul Gilmartin, though I kept the permissions check). - TD * reduce a little of the clutter in tempname() with fmt_tempname, and bad_tempname functions. Though this doesn't address the security problems it does fix the problem with signed getpid values. - TD * simplify LYUtils.c with compare_type() function - TD * add/use string functions LYLowerCase, LYUpperCase, LYRemoveBlanks (replaces collapse_spaces), LYTrimLeading, LYTrimTrailing (incidentally fixes core-dump in LYCookie.c) - TD * rewrite read_cfg function to make it more table-driven (reworked from a patch by John Davis) - TD * rewrite parse_arg function to make it more table-driven (reworked from a patch by John Davis) - TD * omit -Olimit compiler option on Digital UNIX 4.0 (patch by Tomas Vanhala). * modify configure test for acs_map[] array to work on Digital UNIX 4.0 (reported by Jim Spath and Tomas Vanhala ). - TD 1998-04-23 (2.8.1dev.7) * fix core-dump when pressing '.' on a page with no links (patch by Jan Hlav\'{a}\v{c}ek ). * initial changes to use macros CTRACE and tfp to replace explicit use of stderr for the trace log. Remaining work is required for some complex expressions, switching file pointers and for perror-substitute. - TD * ifdef's for OS/2 EMX, mostly pathname tweaks (patch by Jason F. McBrayer ). 1998-04-18 (2.8.1dev.6) * correct misplaced ifdef in LYMail.c, which caused Cc to not work (patch by LE). * convert \x escapes to octal form (reported by Claude Soma). - TD * modify configure script to check for cursesX before curses library, for ultrix 4.3 (reported by Claude Soma ). - TD * incorporate lpansi into LYPrint.c (patch by HN). * modify top-level makefile to use INSTALL_PROGRAM and INSTALL_DATA consistently, rather than installbin and installdoc (reported by ). - TD * modify treatment of -auth and -pauth options to allow setting a blank password, e.g., -pauth=user: specifies a blank password, and -pauth=user leaves the password unspecified (patch by Frederick P Herrmann ). * Change documentation to indicate "Lynx.trace" file rather than "lynx.trace". * Change default for USE_TRACE_LOG in userdefs.h to TRUE, to make behavior consistent with 2.7.2 - TD * Rename no_color_video symbol in LYCurses.c to NoColorVideo, to avoid conflict with term.h, which is included by curses.h on some systems (reported by Paul Gilmartin). - TD * modify include-path in djgpp makefile to avoid conflicting tcp.h - DK * Add -tagsoup option, for initializing parser directly to TagSoup. - TD * Modify HTML.c, ifdef'ing some of the logic involved in unstacking tags. It appears to be not completely necessary: makes Lynx a little faster, at the cost of making the tagsoup parser do the wrong thing. Some entries in the tagsoup DTD table versus the sortasgml table have SGML_EMPTY versus SGML_MIXED. This information is used to control unstacking (in the color-style configuration as well). There is still a problem evidenced when toggling between the two parsers in the Lynx main help page, but that appears to be missing logic in 2.8's version of the tagsoup parser. - TD * Modify HTTCP.c to check the length returned from gethostbyname(), which returns 0 on error on a SunOS 4 system (reported by Paul Gilmartin). - TD 1998-03-29 (2.8.1dev.5) * Fixed my typo for FNAMES_8_3 define. WB * Added SYSTEM_MAIL and SYSTEM_MAIL_FLAGS defines for DOSPATH target. WB * Better kluge to set terminal type for DOSPATH. WB * Restored DOSPATH kludge to get to root of directory. WB * Added a bit of missing _WINDOWS_NSL ifdef'ing. WB * Minor DOS dirent mod to work with Tom's rearrangements. WB * Changed #if XYZ to #ifdef XYZ in tcp.h for dumb (?) compilers. WB 1998-03-25 (2.8.1dev.4) * restore original string in LYUtils.c when user enters a badly formed or nonexistent URL when prompted for Goto/history list (patch by Randall ). Otherwise Lynx would always attempt to load a local file if the original string omits scheme:// prefix but guessing fails. * tweak formatting of .message in HTFTP.c so it has leading/trailing blank lines (patch by Ismael Cordeiro ) * retested 'make depend' rule (for Larry Virden) - TD * eliminate (except for absolute pathnames, as in VMS) quoted includes - TD * remove WWW/Library/Implementation/HTAlert.[ch], since they conflict with src/HTAlert.[ch], and are not used - TD * replace the [LINK], [INLINE] and [IMAGE] comments (for images without ALT) with filenames of these images. This feature can be enabled or disabled by setting VERBOSE_IMAGES in lynx.cfg and/or userdefs.h (patches by helen@voland.cc.huji.ac.il and wschiavo@concentric.net>) * consistently use ${cf_cv_ncurses_header-curses.h} rather than $cf_cv_ncurses_header in configure script, as noted by JS - TD * tweak include of HTML.h in HTFile.h to fix compile problem on VMS (we really should not use quote-style includes) - TD * fixes to LYStyle.c to make color-style code work on Digital Unix 4.0 - TD 1998-03-20 (2.8.1dev.3) * Added death for Win/DOS clients that don't have a TMP space defined. - WB * Added _WINDOWS_NSL to provide interruptable lookups in Win32 per a patch from afn06760@afn.org. (modified hopefully for borland AND cygwin and hard defined in tcp.h). I had to recompile everything in multithread mode for borland, including my zlib library. - WB * Added _WINDOWS as a target for FNAMES_8_3 in userdefs.h to allow for 16 bit helper apps that can't handle LFN's. (report by afn06760@afn.org) - WB 1998-03-18 (2.8.1dev.1) * correct an ifdef that caused inconsistent pathname separators on Windows (reported by afn, patch by DK). * correct a missing AC_MSG_RESULT in configure.in (also MM) - TD * guard against illegal (e.g., zero) value for DEFAULT_CACHE_SIZE, when it is read from lynx.cfg (reported by Martin Mokrejs ) - TD * implement simple 'include' facility for lynx.cfg - BL * change TagClass and TagFlags to #define's to accommodate older compilers which do not accept initialization of enums from data that do not correspond to the declared values, e.g., CLIX (which complains) and Apollo (which fails to compile, reported by Dave Eaton). - TD * remove some obsolete definitions from userdefs.h, tcp.h and HTUtils.h - TD * remove obsolete files from WWW/Library - TD 1998-03-12 * UPPER8: a separate function HTMLSetDisplayCharsetMatchLocale() introduced (LYCharSets.c). Locale mismatch assumed for DOS/WINDOWS display charsets. - LP