2005-07-31  Marko Mkel  <marko.makela@iki.fi>

	Release 1.2.3

	All files: update email address.

	* scale.c (scale_prepare):
	Do not enlarge thumbnail images from the original.
	Create thumbnails that are at most the original size.

	* photomolo.c, html.c, html.h (struct html_opts):
	Add the field "generator" for passing version number and
	other information in the meta element "Generator"

	* photomolo.c, html.c, html.h (dumphtml):
	Output the command-line arguments to the HTML documents
	in the meta element "Generator"

2005-07-30  Marko Mkel  <marko.makela@iki.fi>

	* jpegnail.1, exifiron.1, jpegnail.c, exifiron.c (main):
	Add option -n for disabling optimal Huffman coding

	* jpegnail.1, jpegnail.c (main):
	Add option -S to specify input directory for embedded thumbnail images.
	Previously, jpegnail would compute the thumbnail images itself.

	Check the return status from jpeg_transform().

	* jpegnail.c, exifiron.c (jpeg_transform):
	Copy some function parameters to local variables in order to avoid
	warning about them being possibly clobbered by setjmp(3)

2005-07-23  Marko Mkel  <marko.makela@iki.fi>

	* exifiron.c (exif_parse): Note that the buggy Canon EOS 350D
	firmware version is 1.0.2 from May 2005.

2005-07-21  Marko Mkel  <marko.makela@iki.fi>

	* exifiron.c (exif_parse): Do not expect the unused bytes of
	the Orientation value to be zero, since Canon EOS 350D writes
	them as 0xffff.  Allow the declared length of the embedded
	JPEG thumbnail to exceed the Exif tag by 8 bytes to work around
	a bug in the Canon EOS 350D firmware.

2005-07-21  Marko Mkel  <marko.makela@iki.fi>

	* html.c (dumphtml): declare Content-Type before title;
	escape the character set identifier

	* spec.h, spec.c (specstr): note that the string will be HTML

	* spec.c (specstr): use &times; instead of non-ASCII char codes

	* html.c (html_link_specs, html_a_specs, dumphtml):
	pass specstr() to html_raw() instead of html_esc()

2004-10-23  Marko Mkel  <marko.makela@iki.fi>

	* html.c (dumphtml): remove extra quote after "Content-Type; charset="

2004-05-10  Marko Mkel  <marko.makela@iki.fi>

	Release 1.2.2

	* photomolo.html: add version history

2004-05-09  Marko Mkel  <marko.makela@iki.fi>

	* rename.c, rename.h (rename_file): rename-and-replace for Win32

	* exifiron.c, jpegnail.c, jpegcom.c: #include "rename.h"

	* Makefile (ALLSRCS): add rename.c

	* exifiron.c, html.c, rename.c, tree.c, jpegcom.c, jpegnail.c,
	photomolo.c: call fflush(stderr) before perror() to avoid mixed-up
	output on Win32 platforms

2004-05-07  Marko Mkel  <marko.makela@iki.fi>

	* jpegnail.c (exif_parse): more precise error reporting

	* photomolo.html, jpegnail.1 (BUGS): mention possible corruption
	of malformed Exif records

2004-05-01  Marko Mkel  <marko.makela@iki.fi>

	* exifiron.c (exif_date_invalid, exif_string_validate): new functions
	(exif_parse): more precise error reporting; ignore minor errors,
	do not touch the Exif block if there are major inconsistencies

2004-03-18  Marko Mkel  <marko.makela@iki.fi>

	* jpegnail.c (jpeg_transform): clear errno before opening files

	* exifiron.c (jpeg_transform): clear errno before opening files

2003-12-01  Marko Mkel  <marko.makela@iki.fi>

	Release 1.2.1

	* Makefile (MANPAGES): added missing jpegnail.1

	* *.c: removed all gcc and some splint warnings

	* jpegcom: properly skip comments everywhere

2003-10-03  Marko Mkel  <marko.makela@iki.fi>

	Release 1.2

	* photomolo.html: mention ImageMagick and Gallery

	* INSTALL: mention the photocopy shell script for Unix-like systems

	* scale.c (scale_prepare): disable libjpeg prescaling,
	make libjpeg colour space transformations more explicit
	(color_transform): only convert CMYK to RGB, let libjpeg handle YCCK

2003-09-28  Marko Mkel  <marko.makela@iki.fi>

	* photomolo.html: mention colour space transformations

	* photomolo.c, photomolo.1: new option -c charset

	* photomolo.c, html.h, html.c (dumphtml): use struct html_opts

	* jpegnail.c (exif_parse): set thumb_maxlen correctly

	* scale.c (color_transform):
	libjpeg6b assumes that there is only Adobe YCCK, and we do so too

2003-09-27  Marko Mkel  <marko.makela@iki.fi>

	* html.c (dumphtml): write only ASCII literals

	* jpegnail.1: mention that the thumbnails are grayscale or YCbCr

	* scale.c (color_transform): convert CMYK to RGB and YCCK to YCbCr
	(scale_prepare): ensure YCbCr colours or grayscale in output images
	(rescale_jpeg, copy_jpeg): call color_transform when appropriate

	* exifiron.c (jtransform_request_workspace): removed a bogus
	"optimisation" that caused errors with grayscale files whose
	iMCU size differs from 1

2003-09-25  Marko Mkel  <marko.makela@iki.fi>

	* jpegnail.c (main): correct the assignment to write_JFIF_header,
	replace endian with exif_endian (for clarity)

2003-09-19  Marko Mkel  <marko.makela@iki.fi>

	* jpegnail.c, jpegnail.1: new files

	* photomolo.html: document jpegnail

	* Makefile: add jpegnail

	* exifiron.1 (BUGS):
	mention previously missing transformations of the Exif data

	* exifiron.c (jcopy_markers_execute): copy thumbnail images
	(thumb_in_fill, thumb_out_dummy, thumb_out_empty):
	auxiliary functions for thumb_transform
	(thumb_buf, thumb_length):
	common data for thumb_transform, exif_parse and main
	(thumb_transform): transform embedded Exif thumbnail images
	(exif_parse): also transpose XResolution and YResolution in IFD1

2003-09-03  Marko Mkel  <marko.makela@iki.fi>

	* exifiron.c (main): reset the libjpeg contexts on error
	(exif_parse): corrected off-by-one errors in the IFD boundary checks

2003-08-29  Marko Mkel  <marko.makela@iki.fi>

	* exifiron.c (exif_date): use numeric constants for characters,
	to ensure operation on non-ASCII systems (Exif dates are in ASCII)
	(exif_parse): process short (0..4 char) strings properly,
	flip horizontal/vertical image dimensions and resolutions if needed

2003-08-27  Marko Mkel  <marko.makela@iki.fi>

	* scale.c, scale.h (scale_prepare, scale_jpeg): lower-level interface

2003-08-24  Marko Mkel  <marko.makela@iki.fi>

	* exifiron.c (endianness): corrected misleading comment

	* spec.c, spec.h (specstr): corrected misleading comment

2003-08-15  Marko Mkel  <marko.makela@iki.fi>

	* photomolo.c (make_thumbnails, dumphtmls): detect fclose failures

2003-08-14  Marko Mkel  <marko.makela@iki.fi>

	* photomolo.html: report major changes since release 1.1.1

	* jpegcom.c (main): detect fclose failures, abort on output error

	* exifiron.c (main): exit with status 2 on file output error

	* tree.h (fileinfo): rename from imagefile
	(freefileinfo): new function
	(dirtree): add n_others and others[]
	* tree.c (readtree): collect non-image files in others[]
	(freefileinfo): new function
	(freetree): deallocate files[] and others[] by calling freefileinfo

	* html.c (dumphtml): generate links for others[]

	* photomolo.c (main): deallocate others[] for the root directory

2003-07-31  Marko Mkel  <marko.makela@iki.fi>

	* tree.c (readtree): tolerate failed stat(2) calls

2003-07-28  Marko Mkel  <marko.makela@iki.fi>

	* photomolo.c (main), html.h, html.c, scale.h, scale.c, photomolo.1:
	added options -d (disable timestamp output) and -q (thumbnail quality)

	* jpegcom.c (main):
	display usage only when invoked with one argument,
	do not list unreadable or erroneous files,
	list image dimensions in lexical comments

	* exifiron.c (main):
	allow transformations of JFIF images,
	skip unreadable or erroneous files

	* exifiron.c: properly handle images containing partial iMCUs

2003-05-03  Marko Mkel  <marko.makela@iki.fi>

	Release 1.1.1
	Fix fatal bug in Win32 exifiron.exe and jpegcom.exe: use binary mode

	* jpegcom.c (main), exifiron.c (main): [WIN32] added O_BINARY

2003-05-01  Marko Mkel  <marko.makela@iki.fi>

	Release 1.1

	* INSTALL, photomolo.html, html.c, photomolo.c, exifiron.c: version 1.1

	* jpegcom.c: create the destination files in exclusive mode

	* exifiron.c: adapted for Win32

	* photocopy: sample exifiron front-end

2003-04-20  Marko Mkel  <marko.makela@iki.fi>

	* exifiron.1, exifiron.c (main): new options -s and -S

2003-04-10  Marko Mkel  <marko.makela@iki.fi>

	Release 1.0.1

	* exifiron.c: added license information

	* README: copyright information for transupp.c,
	from which parts of exifiron have been derived

2003-04-09  Marko Mkel  <marko.makela@iki.fi>

	* exifiron.c: commented all functions with Doxygen tags

	* exifiron.1 (ENVIRONMENT): mention TZ

	* photomolo.html: document exifiron

2003-04-07  Marko Mkel  <marko.makela@iki.fi>

	* Makefile, INSTALL, photomolo.1, jpegcom.1: mention exifiron

	* exifiron.1, exifiron.c, ChangeLog: new files

2003-02-26  Marko Mkel  <marko.makela@iki.fi>

	Release 1.0
