Tony Cook [Sun, 5 Mar 2006 13:54:59 +0000 (13:54 +0000)]
- some jpeg.c logging calls didn't include parameters enough to match
the supplied format string.
- in some cases memory wasn't being freed during error handling when
reading jpeg images
Tony Cook [Sun, 5 Mar 2006 12:59:01 +0000 (12:59 +0000)]
- tifflib 3.8.0 with MDI (Microsoft(tm) TIFF) support produces a
different error when it reads a file with a bad magic number.
Update the test to handle the possible messages.
Tony Cook [Sun, 5 Mar 2006 08:36:09 +0000 (08:36 +0000)]
- handle short EXIF user_comment fields correctly, previously Imager
would read (and potentially) write beyond the end of an allocated block,
or through a NULL pointer if the EXIF user_comment field was less
than 8 bytes long.
https://rt.cpan.org/Ticket/Display.html?id=17981
Tony Cook [Wed, 1 Mar 2006 02:15:22 +0000 (02:15 +0000)]
- removed unused hashinfo() function from Imager.xs
- added =items for various methods, so Pod::Coverage will pick them up
(Pod::Coverage tests to be added in 0.49)
Tony Cook [Tue, 21 Feb 2006 04:54:43 +0000 (04:54 +0000)]
- fix/simplify META.yml generation - we now generate META.yml at
Makefile.PL time, since trying to work with EU::MM to generate a
custom META.yml was a waste.
Tony Cook [Thu, 9 Feb 2006 23:45:56 +0000 (23:45 +0000)]
- check $Config{ldflags} and $Config{ccflags} for places to search for
headers and libraries. This deals with the way the fink build of perl
puts -L/sw/lib in ldflags rather than using loclibpth
- eliminate some of the duplication of -I and -L options in LIBS and INC
- Makefile.PL now uses strict.
- the search for freetype1.x headers is now smarter
Tony Cook [Sun, 5 Feb 2006 14:07:23 +0000 (14:07 +0000)]
- scale() can now expect an Image::Math::Constrain object as a scaling
constraint via the constrain parameter.
- added tests for the various ways we can specify scaling size
- documented scale()'s scalefactor parameter
Tony Cook [Mon, 30 Jan 2006 01:13:04 +0000 (01:13 +0000)]
- supply C<imager> parameter to filters so we can register filters
implemented in perl.
- document register_filter() and add test for it
- add example to SYNOPSIS of samples/inline_replace_color.pl
Tony Cook [Wed, 18 Jan 2006 14:06:50 +0000 (14:06 +0000)]
- reading a raw image no longer exits on a short read or read error,
and returns an appropriate error message in $im->errstr
- write failures when writing a raw image now return a useful
message in $im->errstr
Tony Cook [Wed, 18 Jan 2006 12:18:51 +0000 (12:18 +0000)]
- error messages when writing TIFF images were always
'Could not write to buffer', more useful messages are now reported.
- error messages when writing PNM images were always
'unable to write pnm image', more useful messages are now reported.
Tony Cook [Fri, 13 Jan 2006 06:00:32 +0000 (06:00 +0000)]
- deal with freetype-config --cflags returning the directories
in the wrong order (Freetype 2.1.4 and earlier)
Thanks to David Wheeler for his help in tracking this down.
Tony Cook [Tue, 10 Jan 2006 03:09:58 +0000 (03:09 +0000)]
- start of external Imager API access:
- rename headers to avoid conflicts:
- image.h to imager.h
- imagei.h to imageri.h
- datatypes.h to imdatatypes.h
- config.h to imconfig.h (created by Makefile.PL)
- moved all public types defined in imager.h to imdatatypes.h
- supply the PM parameter to WriteMakefile(), to install headers
under Imager/include, and the Imager typemap in Imager/typemap.
We scan the MANIFEST for files to add to PM.
- add "i_" prefix on some functions useful as public at the C level.
- moved the typedefs that support the typemap from Imager.xs to
imperl.h
- set the global callbacks hook in the Imager.xs BOOT section
- API cleanup:
- define i_tags_set(), i_tags_setn() - we might not allow multiple
values for a tag in the future
- i_copy() now returns a new image instead of doing horrible inplace
things to an existing image
- provide actual functions for all of the macros we define in imager.h
so we can put them in the global callbacks structure
- define global functions structure (imexttypes.h)
and initialize it (imext.c)
- add API include header with macros to setup the define and
initialize the local callbacks pointer, and macros to call the API
functions.
- build Imager::APIRef from C sources, including updating the sources
to include documentation for each API function.
- convert dyntest and mandelbrot dynfilts into XS modules (too easy)
- simple Imager::CountColor example
- support Inline::C :
- typemap changes to accept Imager or Imager::ImgRaw objects as
image parameters
- define Imager output type for trivial cases of returning an i_img as
a full Imager object
- Inline WITH hook to filter Imager XS types into types Inline::C can
accept, supply appropriate headers and initialization.
- test script t/t82inline.t
- try to use XSLoader instead of DynaLoader (but fallback if necessary)
- paste() can now paste a subset of the source image.
- paste() now has better tests
- paste() should now be faster for larger pastes
Tony Cook [Thu, 8 Dec 2005 05:42:14 +0000 (05:42 +0000)]
- clean up Imager::Font documentation:
- string now documented in Imager::Draw
- add parameter list documentation
- document the utf8 parameter for bounding_box(), has_chars()
Resolves: http://rt.cpan.org/NoAuth/Bug.html?id=16094
Tony Cook [Wed, 7 Dec 2005 13:06:21 +0000 (13:06 +0000)]
- read/write i_xres, i_yres, i_aspect only tage with JPEG files,
and read/write jpeg_density_unit (+_name) tag
- save the jpeg_comment tag when writing