[2866fb]: ChangeLog Maximize Restore History

Download this file

ChangeLog    166 lines (117 with data), 6.2 kB

2007-07-16  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* catclose.c (mc_close): Error out, if descriptor for message
	catalogue to be closed lies outside the valid range.

2007-06-18  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Handle unicode input streams.

	* mcutfsig.c, include/mcutfsig.h: New files; they define the
	interface and implementation for...
	(mc_utf_signature): ...this new function.

	* mcsource.c (mc_discard): New static function.
	(mc_source): Use it to clean up heap on abnormal termination.
	Include `mcutfsig.h'; use `mc_utf_signature' to identify unicode
	streams; map codeset using new local variables `input_encoding'
	and `input_code_size'; use them with...
	(UTF_TYPE): ...this new macro, to parse input accordingly.

	* include/gcmsgs.h (MSG_HAD_CODESET): New wording.
	(MSG_UTF_CODESET, NMSG_UTF_UNKNOWN): New message definitions.
	(MSG_UTF_SIZE_ERROR, MSG_UTF_FRAME_ERROR): Likewise.

	* Makefile.in (canonical_prefix): New macro.
	(HEADER_TRANSFORM_SCRIPT): Use it.
	(GENCAT_HEADERS): Add `mcutfsig.h'.
	(GENCAT_SOURCES): Add `mcutfsig.c'.
	(target): Macro renamed as...
	(tool_prefix): ...this.
	(install-progs): Updated to use it.
	(clean): Remove all locally generated headers.

	* aclocal.m4 (MINGW_AC_HOST_CANONICAL_PREFIX): New macro.
	(MSYS_AC_CANONICAL_PATH): New macro; copied from `man' sources.
	* configure.ac: Use them.
	(GENCAT_AC_OBJECTS_ADD): Add `mcutfsig'.
	* configure: Regenerated.

2007-06-01  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* repl/include/langinfo.h (LC_CTYPE): Include locale.h, to define.

2007-05-20  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Handle CRLF line endings in source files.

	* mcsource.c: Add numerous additional comments.
	(mc_source): Add `last_char' local variable; use it to implement
	one character look ahead, to suppress emission of extraneous CRs
	into the compiled message text, when immediately followed by LF.
	(mc_workspace_wanted, mc_update_workspace): Mark as `inline'.
	(mc_add_escape): Mark as `inline'.

2007-05-17  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* mcsource.c (mc_source): Adjust block nesting to correct logic
	defect introduced in revision 1.7 (2007-05-14).
	[DEBUG]: Tidy up formatting of some ugly debugging messages.

2007-05-14  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* mcsource.c (mc_source): Close `input_fd' prior to every use
	of `return', when returning abnormally.

2007-05-14  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Support all escape sequences required by POSIX 1003.1.

	* mcsource.c (OCTAL_SEQUENCE_DECODE): New manifest constant.
	(HEXADECIMAL_SEQUENCE_DECODE): Ditto, but not currently used.
	(mc_source): Interpret "\n", "\r", "\b", "\t", "\v" and "\f"
	standard escapes, and also "\ddd" generic octal digit sequence
	escapes, appearing in message text definitions; "\\" is also
	implicitly handled as required.

2007-05-12  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Add support for `delset' directive.

	* mcmerge.c (mc_delset): New static function...
	(mc_merge): Use it.

	* include/gcmsgs.h (MSG_DEL_UNSUPPORTED): Redundant message
	definition; deleted.

2007-05-12  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Add support for single message deletion.

	* mcsource.c: More comment improvements.
	(mc_source): Set `this->base = NULL' on parsing a message number
	immediately followed by `newline'; this causes the message to be
	removed from the internal catalogue index, when the input record
	is merged.

	* mcmerge.c (mc_merge): Reorganise logic; add section to remove
	entries with `set > 0 && msg > 0 && base == NULL'.
	Relocate logic block for processing `delset' requests; still need
	an implementation for this.
	Add logic block to catch and diagnose invalid index entries.

	* include/gcmsgs.h (MSG_CATLOAD_FAILED): Renamed symbolic define...
	(MSG_BAD_CATALOGUE): ...to this.
	(MSG_INTERNAL_ERROR, MSG_BAD_INDEX): New message defines; used by
	`mc_merge', to diagnose invalid index entries.

	* include/gencat.h (msgarg): New macro; used by `mc_merge', to
	associate `MSG_BAD_INDEX' with `MSG_INTERNAL_ERROR'.

	* gencat.c (main): Use `MSG_BAD_CATALOGUE'.

2007-05-11  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* mcsource.c: Miscellaneous comment and layout improvements;
	improved formatting of some debugging/tracing messages.
	(add_escape): Static function renamed...
	(mc_add_escape): ...to this.
	(wanted): Static function renamed...
	(mc_workspace_wanted): ...to this.
	(update_workspace): Static function renamed...
	(mc_update_workspace): ...to this.
	(errout): Static function renamed...
	(mc_errout): ...to this.

	* include/debug.h (DCODEFMT): Redundant macro; deleted.

2007-05-11  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Avoid attempt to read input again, after EOF detected; this caused
	strange behaviour if processing an interactive input stream.

	* mcsource.c (mc_source): New local variable `input_fd'; assign it as
	a duplicate of `fd'.  Set `fd' to -1, when EOF detected; don't do any
	more reads, after `fd' set to this invalid value.  Call `close' on
	`input_fd', before return.

2007-05-11  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Avoid calling `iconv' with unintialised codeset converter.

	* mcsource.c (mc_default_codeset): New static function.
	(mc_source): Use it, before each `iconv' call, to initialise the
	codeset converters, if `codeset' has not been assigned.

2007-05-09  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Provide more robust handling of possibly incomplete LC_MESSAGES macro
	expansions, when parsing NLSPATH.

	* catopen.c (mc_check_break_code): New function.
	(mc_nlspath_open): Use it to identify break points, when splitting
	LC_MESSAGES string into its component parts.

2007-04-20  Keith Marshall  <keithmarshall@users.sourceforge.net>

	* catopen.c (mc_open): Catch unopened file; return failed status.
	* mcsource.c (mc_source): Kill MSGTEXT state, after NL at EOF.

2007-04-06  Keith Marshall  <keithmarshall@users.sourceforge.net>

	Initial import of module catgets.

	* MinGW: Vendor tag.
	* R0: Release tag.