/src/FreeImage/Source/LibMNG/Changes
https://bitbucket.org/cabalistic/ogredeps/ · #! · 1447 lines · 1098 code · 349 blank · 0 comment · 0 complexity · a0a7d843dd5409d31016a1dbcaf3b3da MD5 · raw file
- -----------------------------------------------------------
- 1.0.10 (Jul 13th 2007)
- ----------------------
- in short:
- intermediate CVS
- -------------------
- bugfixes:
- core:
- - fixed some compiler-warnings
- - fixed display routines called twice for FULL_MNG support in mozlibmngconf.h
- - standard windows dll upgraded to zlib 1.2.3
- - fixed problem with CLON object during readdisplay() (thanks Winfried!)
- - added typecast to appease the compiler (G R-P)
- - added more SKIPCHUNK conditionals (G R-P)
- - added MORE MNG_NO_1_2_4BIT_SUPPORT (G R-P)
- - added provisional support for anIM(mpNG) proposal
- - added provisional support for ANG proposal
- samples:
- - xmngview upgraded to 0.6 (thanks Winfried!)
- contrib:
- doc:
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.9 (jan 30th 2005)
- ---------------------
- in short:
- New optimizations save over 20KB on footprint.
- Also a few bugfixes and several patches.
- Thanks to those sending in their additions and for testing!
- To turn on the optimizations do:
- #DEFINE MNG_OPTIMIZE_CHUNKINITFREE
- #DEFINE MNG_OPTIMIZE_OBJCLEANUP
- #DEFINE MNG_OPTIMIZE_CHUNKASSIGN
- #DEFINE MNG_OPTIMIZE_CHUNKREADER
- (eg. they're not on by default (yet) !)
- -------------------
- bugfixes:
- - fixed chunk pushing mechanism
- - fixed bug in writing sBIT for indexed color
- - fixed PPLT getchunk/putchunk routines
- - fixed MNG_NO_1_2_4BIT_SUPPORT for TBBN1G04.PNG
- - cleaned up macro-invocations (thanks to D. Airlie)
- core:
- - added more SKIPCHUNK conditionals
- - replaced MNG_TWEAK_LARGE_FILES with permanent solution
- - improved handling of cheap transparency when 16-bit support is disabled
- - added some MNG_SUPPORT_WRITE conditionals
- - added function to retrieve current FRAM delay
- - added MNG_NO_1_2_4BIT_SUPPORT
- - added bgr565_a8 canvas-style (thanks to J. Elvander)
- - standard windows dll upgraded to zlib 1.2.2
- - added LITTLEENDIAN/BIGENDIAN fixtures (thanks J.Stiles)
- - inclusion of zlib/lcms/ijgsrc6b with <> instead of ""
- - added conditional MNG_OPTIMIZE_CHUNKINITFREE
- - added conditional MNG_OPTIMIZE_OBJCLEANUP
- - added conditional MNG_OPTIMIZE_CHUNKASSIGN
- - added conditional MNG_OPTIMIZE_CHUNKREADER
- - fixed problem with global PLTE/tRNS
- samples:
- contrib:
- doc:
- - patched jng & mng manual pages (Thanks Peter Breitenlohner)
- makefiles:
- autoconf:
- - patched makefile.am & configure.in (Thanks Peter Breitenlohner)
- -----------------------------------------------------------
- 1.0.8 (aug 5th 2004)
- --------------------
- in short:
- added special data-pushing mechanisms and a few other tid-bits
- -------------------
- bugfixes:
- - fixed problem with PAST usage where source > dest
- core:
- - added missing get-/put-chunk-jdaa
- - added CRC existence & checking flags
- - added data-push mechanisms for specialized decoders
- - some speed optimizations (thanks to John Stiles)
- - defend against using undefined closestream function
- - defend against using undefined openstream function
- - added check for extreme chunk-lengths
- - change worst-case iAlphadepth to 1 for standalone PNGs
- - added support for 3+byte pixelsize for JPEG's
- - added conditional to allow easier writing of large MNG's
- samples:
- contrib:
- doc:
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.7 (March 21st 2004)
- -----------------------
- in short:
- A bunch of new canvas-styles, some bug-fixes, upgraded to latest zlib/lcms
- and yet more work to please the Mozilla crowd.
- Releasing beta's doesn't seem very responsive, and this one's hardly changed
- much anyway. I just wanted to bump to a regular version for Mozilla
- re-integration.
- -------------------
- bugfixes:
- - fixed inclusion of IJNG chunk for non-JNG use (J.S)
- - fixed bug in chunk-storage of SHOW chunk (where from == to)
- - fixed bug in promote_g8_g8 with 16bit support off
- core:
- - added CANVAS_RGB565 and CANVAS_BGR565 (big thanx to Raphael Assenat!!)
- - added CANVAS_RGBA565 and CANVAS_BGRA565 ( -- ditto -- )
- - upgraded to zlib 1.2.1
- - upgraded to lcms 1.11
- - added premultiplied alpha canvas' for RGBA, ARGB, ABGR (thx to John Stiles)
- - more optimizations with 16bit support off
- - put conditionals around openstream/closestream callbacks.
- - fixed typo (MNG_SKIPCHUNK_SAVE -> MNG_SKIPCHUNK_nEED)
- - fixed some 64-bit platform compiler warnings
- samples:
- contrib:
- - fixed mngtree sample (Raphael)
- - added 5-6-5 canvas to SDL sample (Raphael)
- doc:
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.6 (oct 19th 2003)
- ---------------------
- in short:
- Final release from beta1. No feedback is good feedback I presume,
- so here's 1.0.6-final!
- -------------------
- bugfixes:
- core:
- samples:
- contrib:
- doc:
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.6-beta1 (sep 14th 2003)
- ---------------------------
- in short:
- further footprint-reductions
- removing email-addresses
- 1.0.6 (final) will be out shortly
- -------------------
- bugfixes:
- core:
- - added support for reducing the footprint of libmng by macros that optionally
- skip unused chunks, remove 16-bit sample support, remove Delta support, and
- remove JNG support, to accomodate Mozilla/Firebird.
- - further optional removal of unused functions
- - added MNG_NO_SUPPORT_FUNCQUERY conditional
- - added iPNGdepth member to pData structure
- - added conditionals around MAGN chunk support
- - added conditionals around non-VLC chunk support
- - added conditionals around "mng_display_go*" and other unused functions
- - added more conditionals around "promote" functions
- - removed email references as appropriate
- samples:
- contrib:
- doc:
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.6-alpha1 (aug 2nd 2003)
- ---------------------------
- in short:
- This is mostly in the light of footprint-reduction to please the Mozilla
- crew with a leaner and meaner libmng. See bug 18574 if you're interested:
- http://bugzilla.mozilla.org/show_bug.cgi?id=18574
- -------------------
- bugfixes:
- - B719420 - fixed several MNG_APP_CMS problems
- core:
- - removed some compiler-warnings
- - hiding 12-bit JPEG stuff
- - fixed problem with infinite loops during readdisplay()
- - added size-optimiation COMPOSE routine usage
- - added conditionals around canvas update routines
- - added MNG_SKIPCHUNK_cHNK footprint optimizations
- - added conditionals around some JNG-supporting code
- - added conditionals around 16-bit supporting code
- - combined init functions into one function
- - replaced nested switches with simple init setup function
- - added conditionals zlib and jpeg property accessors
- - added size-optimization DIV255B8 routine usage
- - added conditionals around 8-bit magn routines
- - removed conditionals around 8-bit magn routines
- - added MNG_NO_16BIT_SUPPORT and MNG_NO_DELTA_PNG conditionals
- - reversed many loops to use decrementing counter
- - converted some switches to array references
- - removed some redundant checks for iRawlen==0
- - optionally use zlib's crc32 function instead of local mng_update_crc
- - bugfix empty "if" statement when 16-bit code is enabled
- - restored two misplaced #else/#endif blocks
- - added conditionals around "mng_display_go*" and other unused functions
- - added MNG_NO_LOOP_SIGNALS_SUPPORTED conditional
- - fixed duplicate for-loop
- - fixed invalid test in promote_imageobject
- - added conditionals around PAST chunk support
- - fixed "FOOTPRINT_COMPOSEIV" typo (now "FOOTPRINT_DIV")
- samples:
- contrib:
- - updated xmngview
- - added MSVC project for creating delta-MNGs: makemng (thanks Alex!)
- - added MSVC lib-file for use with the standard libmng.dll (again thanks Alex)
- doc:
- - updated readme.contrib
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.5 (mar 1st 2003)
- --------------------
- in short:
- Only a small fix for progressive jpeg suspension problem.
- This is the long-awaited final release containing the new 'dynamic MNG' feature
- and bringing MNG compliance to near 100%!
- -------------------
- bugfixes:
- - B683152 - libjpeg suspension not always honored correctly
- core:
- samples:
- contrib:
- doc:
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.5-rc3 (jan 20th 2003)
- -------------------------
- in short:
- Third release-candidate for the upcoming 1.0.5 version.
- Minor bug-fixes and finalizing the accepted proposal (by official vote) for
- the TERM/frame_delay changes on mng-list (nov-dec/2002).
- -------------------
- bugfixes:
- - B654627 - fixed SEGV when no gettickcount callback (thanks Adam!)
- - B664383 - fixed typo (thanks Dimitri)
- - B664911 - fixed buffer overflow during init (thanks Alex!)
- core:
- - finalized changes in TERM/final_delay to elected proposal (positive vote)
- samples:
- contrib:
- doc:
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.5-rc2 (dec 9th 2002)
- ------------------------
- in short:
- Second release-candidate for the upcoming 1.0.5 version.
- This contains fixes for a few minor details reported by the loyal testers.
- It fixes some issues with the goframe/golayer/gotime processing and related
- stuff. And it adds a way to disable playback-caching from within the MNG,
- which is very useful for streaming-MNG encoders (such as gserver!).
- -------------------
- bugfixes:
- core:
- - fixed layer- & frame-counting during read()
- - changed FRAMECOUNT/LAYERCOUNT/PLAYTIME error to warning
- - fixed goframe/golayer/gotime processing
- - added support for nEED "MNG 1.1"
- - added support for nEED "CACHEOFF"; turn playback caching off for streaming MNG
- - fixed magnification bug with object 0
- - added support to get totals for frames/layers/playtime after mng_read()
- - fixed some issues in init_app_cms()
- - fixed goxxxxx() support for zero values
- samples:
- contrib:
- doc:
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.5-rc1 (nov 1st 2002)
- ------------------------
- in short:
- First release-candidate for the upcoming 1.0.5 version.
- This fixes a few small problems and brings the TERM/MEND processing, with
- respect to interframe_delay as per the current discussion on MNG-list,
- up-to-date with the latest proposal.
- -------------------
- bugfixes:
- core:
- - fixed initialization of pIds in dISC read routine (Thanks Winfried!)
- - fixed issue in freeing evNT chunk (Thanks Winfried!)
- - fixed clipping-problem with BACK tiling (Thanks Sakura!)
- - fixed processing for multiple objects in MAGN (Thanks Sakura!)
- - fixed display of visible target of PAST operation (Thanks Sakura!)
- - modified TERM/MEND processing for max(1, TERM_delay, interframe_delay)
- samples:
- contrib:
- - fixed typo in Makefile for gtk-mng-view sample
- doc:
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.5-b3 (oct 15th 2002)
- ------------------------
- in short:
- Fairly quick after beta2, since that introduced a couple of unfortunate
- booboo's and wasn't very workable. It also changes the standard configure
- script to build a standard shared object similar to what I intended.
- -------------------
- bugfixes:
- core:
- - fixed support for condition=2 in TERM chunk
- - fixed trace-constants for PAST chunk
- - added mng_status_dynamic to supports function
- samples:
- contrib:
- doc:
- - small cosmetic changes in man/libmng.3
- makefiles:
- autoconf:
- - fixed configure.in to build a 'standard' SO primarily
- -----------------------------------------------------------
- 1.0.5-b2 (oct 9th 2002)
- ------------------------
- in short:
- Second beta for next 1.0.5 release. This addresses some minor problems
- detected during testing. It adds the proposed change to the MNG spec as
- discussed on the "mng-list" recently; eg. Adam's option 4.
- And it adds a little function to check at run-time if the lib is a beta or not.
- -------------------
- bugfixes:
- core:
- - fixed chunk-storage for evNT chunk
- - fixed dropping mix of frozen/unfrozen objects
- - fixed problem with cloned objects marked as invalid
- - fixed problem cloning frozen object_buffers
- - fixed DISC support
- - added proposed change in handling of TERM- & interframe-delay
- - added another fix for misplaced TERM chunk
- - added check for TERM placement during create/write
- - completed support for condition=2 in TERM chunk
- - added beta version function & constant
- samples:
- contrib:
- doc:
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.5-b1 (sep 24th 2002)
- ------------------------
- in short:
- First beta of a large maintenance release. This completes support of the MNG
- specification to nearly 100% (PAST, PROM, delta-images, BACK image+tile).
- It adds "dynamic" MNG and a few other neat routines as well as fixes several
- bugs reported through SourceForge or to me directly.
- -------------------
- bugfixes:
- - B575832 - library has wrong patch version number
- - B578572 - remove in 1.0.0!
- - B578940 - some functions not implemented
- - B581625 - large chunks fail with suspension reads
- - B597134 - libmng pollutes the linker namespace
- core:
- - added sanity check for improbable chunklengths
- - removed eMNGma hack (thanks Dimitri!)
- - unimplemented functions return an errorcode now
- - added test-option for PNG filter method 192 (= levelling)
- - added test-option for PNG filter method 193 (= no filtering)
- (both are conditional and only for testing purposes!!!)
- - completed PROM support
- - completed delta-image support
- - completed MAGN support (16-bit functions)
- - added HLAPI function to copy a chunk from a read MNG to a newly created MNG
- - added option for soft-handling of errors (only for repair software!!!)
- - fixed some routine inclusion/exclusion for undefined conditionals
- - pre-fixed all internal routines with mng_
- - added symbol MNG_LOCAL (= static) to really local functions
- - fixed reading of FRAM with just frame_mode and name
- - fixed read/write of MAGN chunk
- - added event handling for dynamic MNG
- - added 'supports' call to check function availability
- - fixed copyright notice in the headers of all libmng modules
- - fixed LOOP iteration=0 special case
- - re-compiled standard Windows dll with lcms-1.0.9
- - added warning for too much IDAT data
- - warnings are ignored by default now
- - misplaced TERM is now treated as warning
- - fixed color-correction for restore-background handling
- - optimized restore-background for bKGD cases
- - cleaned up some old stuff
- - completed support for BACK image & tiling
- - completed support for PAST
- - added bgrx8 canvas (filler byte)
- - fixed reset_object_detail to clear old buffer
- - added in-memory color-correction of abstract images
- - added compose over/under routines for PAST processing
- - added flip & tile routines for PAST processing
- samples:
- - Added new BCB sample for fixing invalid JASC Animation Shop files
- (shows new copy_chunks function; use of MNG_SOFTERRORS & static linking)
- contrib:
- - added xmngview by Winfried Szukalski (Vielen dank!)
- - Updated the Delphi mngview sample to handle dynamic MNGs
- - Added Kylix example (simplified port of the Delphi mngview sample)
- doc:
- - added diff to add MNG&JNG to a systems 'magic' file (Thanks Winfried)
- - fixed docs about using mng_display_resume after display_reset
- (should read to use mng_display!)
- makefiles:
- - added makefile to build a libmng.dll for MingW
- (makefile.mingwdll - thanks to Frank Richter!)
- autoconf:
- - fixing libtool version-number to be in line with what it should be
- -----------------------------------------------------------
- 1.0.4 (Jun 23rd 2002)
- ---------------------
- in short:
- Just some small fixes
- Standard dll now compiled with zlib 1.1.4 and lcms 1.0.8
- -------------------
- bugfixes:
- - B495442 - invalid returnvalue in mng_get_suspensionmode
- - B495443 - incorrect suspend check in read_databuffer
- - B526138 - returned IJGSRC6B calling convention to default for MSVC
- - B558212 - off by one error
- - B557677 - can't find lcms.h
- core:
- - fixed possible compile-problem in cleanup_rowproc
- - MNG subimage alpha composite wrong for rgba8 images
- samples:
- contrib:
- doc:
- makefiles:
- - fixed check for lcms.h in configure.in
- autoconf:
- -----------------------------------------------------------
- 1.0.3 (Sep 18th 2001)
- ---------------------
- in short:
- Small cosmetic changes. Cleaning up the contributions.
- New makefile for mingw32, and new fbcon example.
- Major thanks to Greg for helping out with the *nix stuff!
- Note that there's also a separate download for ASM programmers now.
- Check http://www.libmng.com for details (download/ports&packages page).
- It may be a while for the next release. I'm "off duty" for the next 8 or
- so months...
- Gerard
- -------------------
- bugfixes:
- - B459058 - wrong include for lcms headers
- core:
- - changed inclusion of lcms.h header for Linux platforms (suggested by Greg)
- - added get function for last processed BACK chunk
- samples:
- - replaced the gtk & sdl viewer apps with updates by Greg Roelofs
- contrib:
- doc:
- makefiles:
- - changed makefile.linux & makefile.unix as suggested by Greg Roelofs
- (makefile.linux now compiles with lcms by default)
- - added makefile.mingw for mingw32 by Benoit Blanchon (thanks Mate!)
- autoconf:
- -----------------------------------------------------------
- 1.0.2 (Jul 7th 2001)
- --------------------
- in short:
- Another maintenance release with a few added extra's.
- -------------------
- bugfixes:
- - B421427 - writes wrong format in bKGD and tRNS
- - B434583 - compiler-warning if MNG_STORE_CHUNKS undefined
- core:
- - added optimization option for MNG-video playback
- - added processterm callback
- - added late binding errorcode (not used internally)
- - fixed memory-leak with delta-images (Thanks Michael!)
- - added option to turn off progressive refresh for large images
- samples:
- contrib:
- doc:
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.1 (May 2nd 2001)
- --------------------
- in short:
- Maintenance release.
- Fixed several memory-leaks with the help of Gregg Kelly, added/fixed some CMS
- handling, exported JPEG functions from standard DLL, and some other minor fixes.
- The CMS fix now makes libmng automagically work in MNG_FULL_CMS mode as a
- sRGB compliant system. YOU WILL NEED TO CHANGE THIS IF YOU ARE NOT ON AN sRGB
- COMPLIANT SYSTEM AND WANT TO USE CMS!!!!
- (look in libmng.h for the proper function-calls)
- -------------------
- bugfixes:
- core:
- - added MEND processing callback
- - fixed first FRAM_MODE=4 timing problem
- - added handle status-copy function (use with care)
- - exported JPEG functions from standard DLL
- - added BGRA8 canvas with premultiplied alpha (contrib by Gregg Kelly)
- - fixed problem with display_reset/display_resume (Thanks Gregg!)
- - fixed several memory-leaks (Thanks Gregg!)
- - fixed reset_rundata to drop all objects (Thanks again, Gregg!)
- - fixed problem with cms profile being created multiple times when both
- iCCP & cHRM/gAMA are present (And again... Gregg)
- - moved mng_clear_cms to libmng_cms
- - added "default" sRGB generation (Thanks Marti!)
- samples:
- contrib:
- doc:
- makefiles:
- autoconf:
- -----------------------------------------------------------
- 1.0.0 (Feb 6th 2001)
- --------------------
- in short:
- First public release. Finally(!)
- This is the 0.9.5 CVS version, which will never be released, because I feel it
- is now ready for a public release. So apart from the version-numbers here and
- there, all other changes are listed under 0.9.5.
- This library will work with every MNG/JNG known and available to me. Note that
- there are still parts that need to be coded, and that MNG support is around
- 90-95% (JNG at 100%). It is however compliant with the latest and greatest
- MNG 1.0 specification.
- I hope to dedicate a bit more time this year to finish up full support and fill
- in the remaining blanks. But this is coming out of my spare time. And extra
- help is always appreciated.
- Please enjoy!
- Gerard
- -----------------------------------------------------------
- 0.9.5 (no release)
- ------------------
- in short:
- intermediate CVS
- -------------------
- bugfixes:
- B129681 - fixed compiler warnings SGI/Irix (thanks Dimitri)
- core:
- - fixed compiler-warnings Mozilla (thanks Tim)
- - fixed timing-problem with switching framing_modes
- - fixed some small compiler warnings (thanks Nikki)
- samples:
- contrib:
- - fixed library-paths for MSVC DLL project (thanks Chad)
- doc:
- makefiles:
- - added makefile for DJGPP (thanks Silvio)
- autoconf:
- -----------------------------------------------------------
- 0.9.4 (Jan 19th 2001)
- ----------------------
- in short:
- Now that the MNG spec is at 1.0, this should be the last beta. There's a few
- small changes to make it inline with the spec, and a couple of bug-fixes.
- This is a serious release-candidate for libmng-1.0!!
- Please... test test test test!!
- -------------------
- bugfixes:
- B123314 - fixed number of TERM related problems
- B123322 - fixed unwanted repetition in mng_readdisplay()
- B123443 - fixed by Ralph
- B124910 - fixed definition for WIN32_LEAN_AND_MEAN (thanks Chad)
- B125750 - fixed by Ralph
- B125756 - fixed mixup of data- & function-pointers (thanks Dimitri)
- B127517 - changed inclusion of the lcms header file for non-windows platforms
- core:
- - version numbers
- - fixed possible loop in display_resume() (Thanks Vova!)
- - fixed unwanted repetition in mng_readdisplay()
- - changed inclusion of the lcms header file for non-windows platforms
- - changed IHDR filter_method check for PNGs
- - moved restore of object 0 to libmng_display
- - added restore of object 0 to TERM processing (B123314)
- - fixed TERM delay processing (B123314)
- - fixed TERM end processing when count = 0 (B123314)
- - changed callback convention for MSVC (Thanks Chad)
- - fixed mixup of data- & function-pointers (thanks Dimitri)
- - added support for "nEED MNG-1.0"
- - added errorcode for MAGN methods
- - added errorchecking for MAGN methods
- - removed "old" MAGN methods 3 & 4
- - added "new" MAGN methods 3, 4 & 5
- - removed test filter-methods 1 & 65
- - set default level-set for filtertype=64 to all zeroes
- samples:
- contrib:
- - added GTK mng-view example by Vova Babin
- - added MSVC MNGview sample by Nikolaus Brennig
- - updated Jason Summer's mngplg to version 0.9.2
- (that's mngplg-0.9.2 based on libmng-0.9.3 !!!)
- - rearranged contrib directory slightly
- - added MSVC project to build libmng.dll by Chad Austin
- doc:
- - added README.dll
- - added README.config
- makefiles:
- - added a makefile for MS Visual C++ (Thanks to Atsushi Matsuda)
- autoconf:
- - fixed configure.in for lcms (FreeBSD port by Mikhail Teterin)
- - by default configure includes CMS support if lcms is present
- -----------------------------------------------------------
- 0.9.3 (October 29th 2000)
- -------------------------
- in short:
- Another beta release. The number of changes in the MNG specification have
- resulted in a lot of new code and some changed code. At the same time I saw
- no need to withhold some new functionality as it was pretty clear there was
- going to be another beta-round. If things go well, I'm going to try to release
- libmng 1.0.0 very shortly after this one.
- Many thanks to a lot of people for helping out, sending contributions, making
- suggestions and testing this little baby. This would get nowhere without YOU!!!
- - fixed bug 111300/117103
- - added workaround for faulty PhotoShop iCCP chunk
- - added MAGN/JDAA chunks
- - added support for new filter_types
- - added PNG/MNG spec version indicators
- - added BCB mngview contribution by Andy Protano
- - added BCB mngdump; a GUI-based MNG dumping utility (Andy Protano)
- - implemented support for nEED "draft nn"
- - implemented app-defined support for bKGD for PNG images
- - removed trace-options from default SO/DLL builds (!!!)
- - raised initial maximum canvas size to 10000x10000 (!!!)
- (an App that wants to protect from overly large images should call
- mng_set_maxcanvassize() with appropriate values)
- - fixed other assorted stuff
- -------------------
- bugfixes:
- B111300 - fixup for improved portability
- B117103 - fixed compilation errors on *nix with lcms (thanks Ralph!)
- core:
- - fixed compiler-warnings from Mozilla
- - added check for simplicity-bits in MHDR
- - added workaround for faulty PhotoShop iCCP chunk
- - fixed app-supplied background restore
- - fixed TERM processing delay of 0 msecs
- - fixed write-code for zTXt & iTXt
- - fixed read-code for iTXt
- - added MAGN chunk
- - fixed sRGB precedence for gamma_only corection
- - added support for new filter_types
- - fixed problem with no refresh after TERM
- - fixed DEFI behavior
- - fixed inclusion parameters to make the external libs work together
- - added export of zlib functions from windows dll
- - fixed timing & refresh behavior for single PNG/JNG
- - removed trace-options from default SO/DLL builds (!!!)
- - fixed MAGN rounding errors (thanks Matthias!)
- - fixed small timing problem when FRAM delay = 0
- - fixed simplicity-check in compliance with draft 81/0.98a
- - fixed alpha-blending for all alpha-canvasstyles
- - added support for alpha-depth prediction
- - fixed processing of unknown critical chunks
- - removed test-MaGN
- - added PNG/MNG spec version indicators
- - implemented support for nEED
- - added support for JDAA
- - added functions to retrieve PNG/JNG specific header-info
- - added optional support for bKGD for PNG images
- - raised initial maximum canvas size to 10000x10000
- - added support for delta-JNG
- - added callback to process non-critical unknown chunks
- - fixed support for delta-images during read() / display()
- - added closestream() processing for mng_cleanup()
- - fixed delta-processing behavior
- - added storage for pixel-/alpha-sampledepth for delta's
- - implemented delayed delta-processing
- - fixed putchunk_plte() to set bEmpty parameter (thanks Ben!)
- - added errorcode for delayed delta-processing
- - added get/set for bKGD preference setting
- - added get function for interlace/progressive display
- - fixed bug in empty PLTE handling
- - fixed seperate read() & display() processing
- - fixed tRNS processing for gray-image < 8-bits
- samples:
- - added BCB mngview contribution by Andy Protano
- contrib:
- - added BCB mngdump; a GUI-based MNG dumping utility (Andy Protano)
- doc:
- - updated RPM spec-file by MATSUURA Takanori
- - updated README.contrib
- makefiles:
- - fixed some stuff in automake/autoconf/libtool
- - fixed auto* for bug B117103
- -----------------------------------------------------------
- 0.9.2 (August 7th 2000)
- -----------------------
- in short:
- Third beta release! Last one???
- !!IMPORTANT!! All file-names are now prefixed with "libmng_" !!IMPORTANT!!
- Many thanks to Albert Chin-A-Young for his contribution of the
- autoconf/automake/libtool stuff and to Ralph Giles for helping me
- put it in the right places.
- There's a special README.autoconf so please read it!
- - fixed bug 110320/110546/110547/111096
- - added several status retrieval functions
- - fixed other small bugs in display processing
- - fixed number of small problems and documentation typos
- - added autoconf/automake/libtool
- - added latest MNG plugin (0.9.0) by Jason Summers
- -------------------
- bugfixes:
- B110320 - fixed GCC warning about mix-sized pointer math
- B110546 - fixed for improperly returning UNEXPECTEDEOF
- B110547 - fixed bug in interlace code
- B111096 - fixed large-buffer read-suspension
- core:
- - version numbers
- - fixed small bugs in display processing
- - removed Nextbackxxx fields (no longer used)
- - fixed problem with trace-functions improperly wrapped
- - put specific code in add_chunk() inside MNG_SUPPORT_WRITE wrapper
- - fixed documentation typos
- - fixed wrapping of suspension parameters
- - added status_xxxx functions
- - added trace-codes/-strings for status_xxxxx functions
- - changed file-prefixes
- - added function to set simplicity field
- - added trace-code/-string for updatemngsimplicity
- - fixed putchunk_unknown() function
- samples:
- contrib:
- - added latest MNG plugin (0.9.0) by Jason Summers
- doc:
- - version numbers
- - added autoconf readme
- - version numbers in RPM stuff
- makefiles:
- - fixed for new file-prefix
- - added autoconf/automake/libtool
- -----------------------------------------------------------
- 0.9.1 (July 26th 2000)
- ----------------------
- in short:
- Second beta release.
- Given the enormous amount of bug-reports (not ;-), this will most likely
- be one of the last betas. If things remain upright, the first public release
- (1.0.0) is fairly eminent in the weeks to come...
- - added SDL mng player by Ralph Giles to contributions
- - fixed timing and added internal buffering for I/O-suspension scenarios
- - added get routines for internal display-state variables (frame/layer/playtime)
- - changed read-processing for improved I/O-suspension (internal buffering)
- - fixed several problems with create- & write-support
- - added a load of documentation
- - lots of small stuff
- -------------------
- bugfixes:
- core:
- - fixed mandatory BACK color to be opaque
- - changed mng_display_resume to allow to be called after a suspension
- return with MNG_NEEDMOREDATA
- - changed comments to indicate modified behavior for timer & suspension breaks
- - added variables for go_xxxx processing
- - implemented support for freeze/reset/resume & go_xxxx
- - added trace-codes/-strings for special display processing
- - added variables for improved timing support
- - added support for improved timing
- - added get routines for internal display variables
- - added get/set routines for suspensionmode variable
- - added trace-code/-string for get/set suspensionmode
- - added trace-codes/-strings for get/set display variables
- - added support for improved I/O-suspension
- - changed read-processing for improved I/O-suspension
- - added trace-code/-string for read_databuffer (I/O-suspension)
- - added suspendbuffer constants
- - changed EOF processing behavior
- - fixed TERM delay processing
- - changed pre-draft48 frame_mode=3 to frame_mode=1
- - added callbacks for SAVE/SEEK processing
- - added trace-codes/-strings for SAVE/SEEK callbacks
- - added variable for NEEDSECTIONWAIT breaks
- - added trace-codes/-strings for get/set sectionbreaks
- - added NEEDSECTIONWAIT error-code/-string
- - added macro + routine to set returncode without calling error callback
- - added trace-code/-string for special error routine
- - changed default readbuffer size from 1024 to 4200
- - added variable for freeze & reset processing
- - fixed storage of images during mng_read()
- - fixed support for mng_display() after mng_read()
- - added error cleanup processing
- - fixed support for mng_display_reset()
- - fixed suspension-buffering for 32K+ chunks
- - added function to set frame-/layer-count & playtime
- - added trace-code/-string for updatemngheader
- - added error-code/-string for updatemngheader if not a MNG
- - fixed creation-code
- - fixed writing of signature
- - fixed several chunk-writing routines
- samples:
- - fixed the libmng.pas module in line with libmng.h
- contrib:
- - added the SDL based mngplay viewer by Ralph Giles
- doc:
- - extended the RPM contribution by MATSUURA Takanori
- - added libmng.txt, a full description of the library and its usage
- - added man-pages for mng(5), jng(5) and libmng(3)
- makefiles:
- -----------------------------------------------------------
- 0.9.0 (June 30th 2000)
- ----------------------
- in short:
- This is the first beta!!! Yippee!!!
- Thanks to all the people who helped to guide me in the right direction.
- You know who you are!
- A special thanks to the guys with early implementations, who stood by and
- put up with my whims :-)
- changes over 0.5.3:
- - updated mngplg to 0.4.1 (the latest & greatest)
- - changed refresh parameters to 'x,y,width,height'
- -----------------------------------------------------------
- 0.5.3 (never released)
- ----------------------
- in short:
- This is a working version only; the next release will be 0.9.0 (first Beta!)
- There are a few incompatible changes with previous versions. The userdata
- variable has been changed from mng_uint32 to mng_ptr to accomodate 64-bit
- systems. For the same reason memory allocation size parameters have been
- changed to a mng_size_t type which is a typedef of size_t.
- Thanks to Aleks Jakulin for helping to iron out some 64-bit platform issues!
- - implemented the update-region parameters of the refresh callback
- - added support for most common delta-image options
- - added an animation-speed modifier
- - added an image-level parameter for the processtext callback
- - updated mngplg to 0.4.0 (supports JNG, full CMS, and other enhancements!)
- - fixed a lot of small things
- - added support for PPLT chunk
- - fixed to support 64-bit platforms
- -------------------
- bugfixes:
- core:
- - added processing of color-info on delta-image
- - fixed handling of empty SAVE chunk
- - fixed display of stored JNG images
- - fixed problem with BASI-IEND as object 0
- - changed the version parameters (obviously)
- - added update-region parms for refresh calback
- - added Needrefresh parameter
- - added initialization of update-region for refresh
- - added initialization of Needrefresh parameter
- - changed progressive-display processing
- - added tracecodes for tracing JPEG progression
- - added tracing of JPEG calls
- - added Deltaimmediate parm for faster delta-processing
- - added extra checks for delta-images
- - many changes to support delta-images
- - optimized some store_xxx routines
- - fixed some small things (as precaution)
- - fixed possible trouble if IEND display-processing got broken up
- - fixed nasty bug with embedded PNG after delta-image
- - added processing of PLTE & tRNS for delta-images
- - added processing of PLTE/tRNS & color-info for delta-images in the
- ani_objects chain
- - fixed problem with color-correction for stored images
- - added get/set for speedtype to facilitate testing
- - added trace-codes & -strings for get/set speedtype
- - added speed-modifier to timing routine
- - added get-routine of imagelevel for processtext callback
- - added trace-code & -string for get imagelevel
- - added administration of imagelevel parameter
- - added support for PPLT chunk
- - added trace-codes & -strings for PPLT chunk processing
- - fixed problem with incorrect gamma-correction
- - fixed inclusion of IJG read/write code
- - fixed problem with 16-bit GA format
- - fixed problem with cheap transparency for 4-bit gray
- - fixed display_xxxx routines for interlaced images
- - added precaution against faulty iCCP chunks from PS
- - changed userdata variable to mng_ptr
- - added typedef for mng_size_t
- - changed size parameter for memory allocation to mng_size_t
- - fixed compiler-warning for non-initialized iB variable
- - changed definition for 32-bit ints (64-bit platforms)
- - changed definition for mng_handle (64-bit platforms)
- - swapped refresh parameters
- - fixed initialization routine for new mng_handle type
- - added inclusion of stdlib.h for abs()
- - fixed some 64-bit warnings
- - fixed incompatible return-types
- samples:
- contrib:
- - updated mngplg to 0.3.0 (supports JNG & full color-correction!)
- - updated mngplg to 0.4.0 (Jason is picking up the pace ;-)
- doc:
- - added rpm directory with rpm spec-file (contributed by MATSUURA Takanori)
- makefiles:
- - changed makefile.linux to reflect versionnr for shared-lib
- - changed makefile.linux to depend on mng_conf.h & mng_types.h
- -----------------------------------------------------------
- 0.5.2 (June 10th 2000)
- ----------------------
- in short:
- This is the third release for developers
- Another milestone since JNG is now fully supported
- The next release will most likely be numbered 0.9.0 as the first Beta!!
- Fixed bug 106017 & 106019
- Added many constants regarding chunk-property values
- Implemented full JNG support
- Added all the error- & trace-strings
- Added get/set routines for default ZLIB/IJG parameters
- Added a generic makefile for Unix platforms (contributed by Tim Rowley)
- Added canvasstyle for separate RGB + A canvas (eg. mozilla-style)
- Separated configuration-options into a separate file: "mng_conf.h"
- Fixed stuff for generic Unix compilation (contributed by Tim Rowley)
- Upgraded to lcms1.0.6 (now supports 16-bit endian-peculiarities)
- Added a makefile for Linux ELF & fixed some code-issues to go along with gcc
- Added support for suspended input-buffer processing
- Implemented the display-routines for RGBA/ARGB/BGRA/ABGR canvasstyles
- Implemented the application background-restore functionality
- Fixed & tested the mngtree Unix-sample (runs on Linux-RH6.2 with libmng.so)
- Upgraded mngplg to v0.2.2 (based on the latest code including JNG)
- Fixed a lot of other assorted stuff
- -------------------
- bugfixes:
- B003(106017) - fixed problem with <mem.h> being proprietary to BCB
- B004(106019) - fixed problem when MNG_SUPPORT_WRITE not defined
- core:
- - bumped version-numbers up to 0.5.2 (yeah, really)
- - fixed support for IJGSRC6B
- - cleaned up some code regarding mixed support-options
- - complemented constants for chunk-property values
- - fixed MNG_UINT_pHYg value
- - implemented JNG support
- - fixed problem with DEFI clipping
- - added error telltale strings & support
- - added trace telltale strings & support
- - added support for global color-chunks inside TERM/LOOP
- - added support for global PLTE,tRNS,bKGD inside TERM/LOOP
- - added default IJG compression parameters and such
- - moved init of default zlib parms to "mng_hlapi.c"
- - added init of default IJG parms
- - added support for get/set of zlib/IJG default parms
- - added tracestrings for global animation color-chunks
- - added tracestrings for get/set of default ZLIB/IJG parms
- - added tracestrings for global PLTE,tRNS,bKGD
- - added framenr/layernr/playtime to object header
- - added initialization of framenr/layernr/playtime
- - changed ani_create calls not returning object pointer
- - create ani objects always (not just inside TERM/LOOP)
- - fixed inconsistancy with freeing global iCCP profile
- - fixed minor bugs 16-bit pixel-handling
- - added object promotion routine (PROM handling)
- - added trace-codes & -strings for image-object promotion
- - added trace-codes & -strings for delta-image processing
- - added error-codes & -strings for delta-image processing
- - added support for delta-image processing
- - added ani-object routines for delta-image processing
- - added delta-image fields
- - added compression/filter/interlace fields to object-buffer for
- delta-image processing
- - added delta-image row-processing routines
- - fixed up punctuation in several files (contributed by Tim Rowley)
- - removed useless definition in "mng_chunks.h" (contributed by Tim Rowley)
- - fixed pointer confusion in "mng_display.c" (contributed by Tim Rowley)
- - fixed inclusion for memcpy (contributed by Tim Rowley)
- - added mng_int32p (contributed by Tim Rowley)
- - added internal delta-image processing callbacks
- - separated configuration-options into "mng_conf.h"
- - changed to most likely configuration
- - added RGB8_A8 canvasstyle
- - added getalphaline callback for RGB8_A8 canvasstyle
- - fixed some makeup for Linux gcc compile
- - implemented app bkgd restore routines
- - implemented RGBA8, ARGB8, BGRA8 & ABGR8 display routines
- - added support for RGB8_A8 canvasstyle
- - added support for suspended input-buffer processing
- - added mng_read_resume HLAPI function to support read-suspension
- - fixed timer-handling to run with Mozilla (Tim Rowley)
- - fixed alpha-handling for alpha canvasstyles
- - fixed some compilation-warnings (contrib Jason Morris)
- samples:
- - fixed mngview(delphi) to work with the new core
- - synchronized libmng.pas(delphi) with the new libmng.h header
- - removed the error- & trace-strings from libmng.pas(delphi)
- - fixed mngtree(Unix) to compile on Linux (runs with libmng.so)
- - added makefile.linux for mngtree(Unix) (tested on RedHat6.2)
- contrib:
- - updated mngplg to 0.2.2 (based on latest code; supports JNG!)
- doc:
- - this file obviously
- - added Tim Rowley as contributing author
- - changed the examples.readme doc
- - updated the design-schematics in line with the current code
- makefiles:
- - changed the directory to "makefiles" to avoid name-conflicts
- - added generic Unix makefile (thanks to Tim Rowley)
- - added Linux ELF makefile (tested on RedHat6.2)
- -----------------------------------------------------------
- 0.5.1 May 16th 2000
- -------------------
- in short:
- This is the second release for developers
- It's a bit of a milestone since all the chunk functionality is in place and
- functioning (read, examine, create & write)
- This version is incompatible with 0.5.0 since some of the callback prototypes
- have changed (should be the last time that happens!)
- There are a few more samples and even a real contribution!
- Fixed bug 105795 & 105797
- Fixed a mis-alignment in animation-timing
- Added chunk-access functions
- Finished all chunk-storage routine-bits
- Finished all chunk-write routines
- Changed the callback prototypes to allow error-reporting back to the library
- Fixed some routines to allow for callback error-reporting
- Added version-control functions & constants
- Added two functions to set display- & sRGB-profile from memory
- Moved CRC table to dynamic structure (for improved thread-safety)
- Added SAVE & SEEK save&restore functionality
- Finished the application-based CMS-callbacks
- Fixed a few BCB specifics
- Changed the Win32 DLL and samples to use __stdcall
- Did some more assorted little changes
- Added 2 BCB samples
- Added 1 Unix sample
- Added the MNG plugin by Jason Summers in the contrib section
- Changed some documents to reflect these changes
- -------------------
- bugfixes:
- B001(105795) - fixed wrong lcms call & memory-leak for gammatables
- B002(105797) - fixed problem with missing sRGB profile
- core:
- - changed chunk iteration function
- - added chunk access functions
- - added version control constants & functions
- - changed strict-ANSI stuff
- - added set_outputprofile2 & set_srgbprofile2
- - added empty-chunk put-routines
- - added version_dll & VERSION_DLL (for consistency)
- - added version control explanatory text & samples
- - added iteratechunk callback definition
- - improved definitions for DLL support
- - added 8-bit palette definition
- - added general array definitions
- - added MNG_NULL definition
- - changed most callback prototypes to allow the app
- to report errors during callback processing
- - added CRC table to main structure (for thread-safety)
- - added iPLTEentries for checking hIST-length
- - changed palette definition to exported palette-type
- - removed frozen indicator
- - added create/write indicators
- - added eMNGma hack (will be removed in 1.0.0 !!!)
- - added TERM animation object pointer (easier reference)
- - added saved-data structure for SAVE/SEEK processing
- - added some errorcodes
- - added application errorcodes (used with callbacks)
- - moved chunk-access errorcodes to severity 5
- - added chunk-access function trace-codes
- - changed trace to macro for callback error-reporting
- - added save_state & restore_state trace-codes
- - put in some extra comments
- - fixed layout for sBIT, PPLT
- - changed write callback definition
- - fixed layout for PPLT again (missed deltatype ?!?)
- - cleaned up left-over teststuff in the BACK chunk routine
- - changed CRC initialization to use dynamic structure
- (wasn't thread-safe the old way !)
- - filled in many missing sequence&length checks
- - filled in many missing chunk-store snippets
- - added checks for running animations
- - filled remaining write routines
- - fixed read_pplt with regard to deltatype
- - added callback error-reporting support
- - added pre-draft48 support (short MHDR, frame_mode, LOOP)
- - fixed chunk-storage bit in several routines
- - supplemented the SAVE & SEEK display processing
- - added init of iPLTEcount
- - changed calling-convention definition
- - changed status-handling of display-routines
- - added versioning-control routines
- - filled the write routine
- - fixed frame_delay misalignment
- - added sanity check for frozen status
- - changed display_mend to reset state to initial or SAVE
- - added save_state and restore_state for SAVE/SEEK/TERM
- processing
- - added process_save & process_seek routines
- - changed and filled iterate-chunk function
- - added getchunk functions
- - added putchunk functions
- - added empty-chunk put-routines
- - filled application-based color-management routines
- - added creatememprofile
- - filled the deflatedata routine
- - added cleanup of saved-data (SAVE/SEEK processing)
- - moved the actual write_graphic functionality from mng_hlapi.c
- to it's appropriate function in the mng_write.c module
- - moved standard header includes into mng_types.h
- (stdlib/mem for mem-mngmt & math for fp gamma-calc)
- - added getimgdata & putimgdata functions
- samples:
- - fixed mngview(delphi) to work with the new core
- - synchronized libmng.pas(delphi) with the new libmng.h header
- - added mngtree(bcb) sample
- - added bogus(bcb) sample
- - added mngtree(unix) sample
- contrib:
- - added mngplg 0.1.0 / a MNG plugin for Win32 by Jason Summers
- doc:
- - added this changes.readme file
- - changed the samples.readme doc accordingly
- - changed the contrib.readme doc accordingly
- -----------------------------------------------------------
- 0.5.0 May 1st 2000
- ------------------
- in short:
- This is the first developers release.
- It's roughly about 60% done.