1189777a2SCristian PallaresChangeLog 2189777a2SCristian Pallares 3*b3fce824SCristian Pallarésv1.14 2017/02/19 4*b3fce824SCristian Pallarés (2017/02/19) PS1 - speed: use clang as default compiler if 5*b3fce824SCristian Pallarés available, and no longer use -ffloat-store even with gcc. 6*b3fce824SCristian Pallarés (2017/02/18) PS1 - corrected some exit codes, added some missing 7*b3fce824SCristian Pallarés error handlers. 8*b3fce824SCristian Pallarés (2017/02/17) PS1 - mkbitmap: bugfixes and improvements in parsing 9*b3fce824SCristian Pallarés image files. 10*b3fce824SCristian Pallarés (2017/02/15) PS1 - truncate the image size when bitmap data ends 11*b3fce824SCristian Pallarés prematurely. This fixes CVE-2016-8686, where Potrace appeared to 12*b3fce824SCristian Pallarés be "hanging" on a crafted input file. 13*b3fce824SCristian Pallarés (2017/02/14) PS1 - test suite: added tests for plain pnm files. 14*b3fce824SCristian Pallarés (2017/01/08) PS1 - fixed potential compiler issues due to signed 15*b3fce824SCristian Pallarés arithmetic overflow and arithmetic shifting. 16*b3fce824SCristian Pallarés (2017/01/07) PS1 - enable use of negative dy in bitmap data. 17*b3fce824SCristian Pallarés (2017/01/07) PS1 - test suite: moved data files to a subdirectory. 18*b3fce824SCristian Pallarés (2017/01/07) PS1 - test suite: added a check for -i flag. 19*b3fce824SCristian Pallarés (2017/01/07) PS1 - fixed buffer overflow CVE-2016-8685, reported 20*b3fce824SCristian Pallarés by Agostino Sarubbo. 21*b3fce824SCristian Pallarés (2015/10/24) PS1 - portability: use const char * for string 22*b3fce824SCristian Pallarés constants, required by C++11. Reported by Martin Gieseking. 23*b3fce824SCristian Pallarés (2015/10/24) PS1 - portability: extra spaces around string macros, 24*b3fce824SCristian Pallarés required by C++11. Reported by Martin Gieseking. 25*b3fce824SCristian Pallarés (2015/10/24) PS1 - portability: added more potential C compilers 26*b3fce824SCristian Pallarés to autoconf. Suggested by Nelson Beebe. 27*b3fce824SCristian Pallarés 28275def9cSCristian Pallarésv1.13 2015/10/22 29275def9cSCristian Pallarés (2015/07/18) PS1 - fixed heap overflows, null pointer dereference 30275def9cSCristian Pallarés bugs and a memory leak. Reported by Agostino Sarubbo. 31275def9cSCristian Pallarés (2015/05/17) PS1 - man page: show which backends are dimension 32275def9cSCristian Pallarés based, and state more clearly that svg backend defaults to 72dpi. 33275def9cSCristian Pallarés (2015/04/11) PS1 - portability: ssize_t not supported on some 34275def9cSCristian Pallarés systems; use ptrdiff_t instead. Reported by Martin Gieseking. 35275def9cSCristian Pallarés (2015/03/28) PS1 - portability: added missing #includes for c99, 36275def9cSCristian Pallarés reported by Nelson Beebe. 37275def9cSCristian Pallarés (2015/03/27) PS1 - include config.h before other header files, 38275def9cSCristian Pallarés reported by Peter Breitenlohner. 39275def9cSCristian Pallarés (2015/03/26) PS1 - fixed division by zero bug triggered by bitmap 40275def9cSCristian Pallarés of dimension 1x0. Reported by Tomasz Buchert. 41275def9cSCristian Pallarés 421f13f311SSkyrpexv1.12 2015/03/24 431f13f311SSkyrpex (2015/03/20) PS1 - fixed memory overflow bug triggered by very 441f13f311SSkyrpex large bitmaps. Fixes RedHat bug #955808 reported by Vincent Danen 451f13f311SSkyrpex and Debian bug #778646 reported by Moritz Muehlenhoff. 461f13f311SSkyrpex (2014/09/06) PS1 - test suite: added binary-check, to check that 471f13f311SSkyrpex files are written in binary mode. Mostly relevant on Windows. 481f13f311SSkyrpex (2014/09/06) PS1 - portability: fixed potential binary file mode 491f13f311SSkyrpex bug on MinGW64. 501f13f311SSkyrpex (2014/03/30) PS1 - man pages: fixed leading blank page with 511f13f311SSkyrpex groff -man -Tps. 521f13f311SSkyrpex (2013/12/29) PS1 - portability: made regular expressions in test 531f13f311SSkyrpex suite POSIX compliant, reported by Ben Bullock. 541f13f311SSkyrpex (2013/05/14) PS1 - distribution: removed libtool from distribution. 551f13f311SSkyrpex 56189777a2SCristian Pallaresv1.11 2013/02/19 57189777a2SCristian Pallares (2013/02/10) PS1 - bitops.c: added "cc" as a clobbered register. 58189777a2SCristian Pallares (2012/09/13) PS1 - GeoJSON backend: -u option affects rounding, 59189777a2SCristian Pallares not scaling. 60189777a2SCristian Pallares (2012/09/12) CH1 - added GeoJSON backend. 61189777a2SCristian Pallares (2012/03/04) PS1 - minor change in behavior of alphamax parameter: 62189777a2SCristian Pallares make a corner if alpha >= alphamax (instead of >). This makes 63189777a2SCristian Pallares little practical difference, except when alphamax = 0, in which 64189777a2SCristian Pallares case we now get a polygon. Fixes bug #3495854, reported by 65189777a2SCristian Pallares scribbleink. 66189777a2SCristian Pallares (2012/02/24) PS1 - added support for BMP format with bitfields. 67189777a2SCristian Pallares 68189777a2SCristian Pallaresv1.10 2011/08/19 69189777a2SCristian Pallares (2011/08/07) PS1 - added --tight option 70189777a2SCristian Pallares (2011/08/05) PS1 - backends: simplified dimension calculations 71189777a2SCristian Pallares (2011/08/05) PS1 - eps backend: prevent integer overflow in 72189777a2SCristian Pallares bounding box. 73189777a2SCristian Pallares (2011/08/05) PS1 - disallow resolution of 0 dpi. 74189777a2SCristian Pallares (2011/08/05) PS1 - man page: added BACKEND TYPES section 75189777a2SCristian Pallares (2011/08/05) PS1 - fixed default scaling at 72dpi for 76189777a2SCristian Pallares variable-sized backends 77189777a2SCristian Pallares (2011/08/02) PS1 - new gimppath backend produces SVG output 78189777a2SCristian Pallares suitable for current versions of Gimp. 79189777a2SCristian Pallares (2011/08/02) PS1 - added a --flat option for the SVG backend. 80*b3fce824SCristian Pallarés (2011/07/31) PS1 - test suite: renamed *.out files to prevent 81*b3fce824SCristian Pallarés make's built-in implicit rules from accidentally overwriting them. 82189777a2SCristian Pallares (2011/07/26) PS1 - added DXF backend. Thanks to Jonas Benedett 83189777a2SCristian Pallares Dorr for testing. 84189777a2SCristian Pallares (2011/07/26) PS1 - use high resolution bounding box in EPS, PDF, 85189777a2SCristian Pallares and SVG backends 86189777a2SCristian Pallares (2011/05/13) PS1 - autoconf: CADD can now be given at compile time 87189777a2SCristian Pallares 88189777a2SCristian Pallaresv1.9 2010/12/21 89189777a2SCristian Pallares (2010/12/20) PS1 - getopt.h: fixed compiler warnings 90189777a2SCristian Pallares (2010/12/20) PS1 - added --tty option to specify progress bar 91189777a2SCristian Pallares rendering at runtime. 92189777a2SCristian Pallares (2010/12/20) PS1 - added simplified progress bar for Windows or 93189777a2SCristian Pallares other dumb terminals. New --enable-dumb-tty configuration option. 94189777a2SCristian Pallares (2010/12/16) PS1 - test suite: fixed bug where a failed test was 95189777a2SCristian Pallares not reported in backend-check.sh 96189777a2SCristian Pallares (2010/12/15) PS1 - test suite: support for $EXEEXT 97189777a2SCristian Pallares (2010/12/15) PS1 - optimized penalty3 inner loop, 4.6% speedup. 98189777a2SCristian Pallares (2010/12/15) PS1 - autoconf: new CADD variable to add to CFLAGS 99189777a2SCristian Pallares (2010/12/15) PS1 - fixed some compiler warnings, added some error 100189777a2SCristian Pallares handlers, and added some cosmetic top-level free's. 101189777a2SCristian Pallares (2010/11/25) PS1 - added support for some BMP version 4 and 5 102189777a2SCristian Pallares files, and for top-down BMP files. Suggested by Kanwar Sangwan. 103189777a2SCristian Pallares (2010/11/13) PS1 - don't enter filter mode if -- is used 104189777a2SCristian Pallares (2010/11/09) PS1 - greymap.h, bitmap.h: drop unneeded dependencies 105189777a2SCristian Pallares (2010/09/07) PS1 - autoconf: fixed getopt_long test to allow 106189777a2SCristian Pallares cross-compiling, bug #3061403, reported by Igor Filippov. 107189777a2SCristian Pallares (2010/08/31) PS1 - test suite: added environment variables 108189777a2SCristian Pallares CHECK_POTRACE and CHECK_MKBITMAP to allow binaries outside the 109189777a2SCristian Pallares build tree to be tested 110189777a2SCristian Pallares (2010/08/09) PS1 - autoconf: converted to libtool 111189777a2SCristian Pallares (2010/08/05) PS1 - autoconf: renamed configure.in as configure.ac 112189777a2SCristian Pallares (2010/08/05) PS1 - autoconf: added --with-libpotrace to optionally 113189777a2SCristian Pallares install the Potrace library and header files. 114189777a2SCristian Pallares (2009/08/03) PS1 - portability: c++ wrapper in potracelib.h, 115189777a2SCristian Pallares suggested by Peter Jankuliak. 116189777a2SCristian Pallares (2009/05/13) PS1 - added pdfpage backend for fixed pagesize PDF 117189777a2SCristian Pallares output. 118189777a2SCristian Pallares (2009/04/07) PS1 - decompose.c: minor optimization 119189777a2SCristian Pallares (2008/10/08) PS1 - mkbitmap: speed increase by 8% to 26% by 120189777a2SCristian Pallares eliminating unnecessary bounds checks and interpolation. 121189777a2SCristian Pallares (2008/10/05) PS1 - trace.c: separate function for path reversal 122189777a2SCristian Pallares (2008/10/03) PS1 - progress.h: do the right thing if progress == 123189777a2SCristian Pallares NULL 124189777a2SCristian Pallares (2008/10/03) PS1 - moved detrand() to auxiliary.h 125189777a2SCristian Pallares (2008/08/21) PS1 - mkbitmap: added --blur option. 126189777a2SCristian Pallares (2008/08/12) PS1 - combined the old -V option with -v. 127189777a2SCristian Pallares (2008/08/12) PS1 - test suite: adjusted tolerances to fix bug 128189777a2SCristian Pallares #1745456 129189777a2SCristian Pallares (2007/12/31) PS1 - include curve.h where path_t is used 130189777a2SCristian Pallares (2007/12/28) PS1 - flush stderr when interleaved with stdout 131189777a2SCristian Pallares (2007/12/28) PS1 - portability: don't hardcode size of short int 132189777a2SCristian Pallares (2007/11/09) PS1 - eps backend: use save-restore to avoid 133189777a2SCristian Pallares polluting caller's dictionary and for page independence. 134189777a2SCristian Pallares (2007/05/22) PS1 - xfig backend: added depth to opaque components 135189777a2SCristian Pallares to avoid them floating to the background. Suggested by Rafael 136189777a2SCristian Pallares Laboissiere. 137189777a2SCristian Pallares 138189777a2SCristian Pallaresv1.8 2007/04/09 139189777a2SCristian Pallares (2007/04/08) PS1 - portability: use 'test' instead of '[' in shell 140189777a2SCristian Pallares scripts. 141189777a2SCristian Pallares (2007/04/08) PS1 - test suite: run PDF checks as a separate test. 142189777a2SCristian Pallares (2007/04/06) PS1 - fixed logical expressions in flate.c 143189777a2SCristian Pallares (2007/02/19) PS1 - portability: replacements for inline and M_PI 144189777a2SCristian Pallares (2007/01/16) PS1 - test suite: added checks for rotation in 145189777a2SCristian Pallares PostScript, PDF, and PGM backends 146189777a2SCristian Pallares (2007/01/16) PS1 - pdf backend: added rotation 147189777a2SCristian Pallares (2007/01/16) PS1 - pdf backend: renamed shipcom() function 148189777a2SCristian Pallares (2007/01/14) PS1 - autoconf: check if getopt_long reorders its 149189777a2SCristian Pallares arguments. 150189777a2SCristian Pallares (2007/01/13) PS1 - made pseudo-random number generation 151189777a2SCristian Pallares thread-safe and much faster. 152189777a2SCristian Pallares (2006/12/20) PS1 - renamed some structures in lzw.c, main.h 153189777a2SCristian Pallares (2006/12/20) PS1 - portability: fixed some compiler issues for 154189777a2SCristian Pallares Amiga, reported by Andreas Kleinert. 155189777a2SCristian Pallares (2006/12/20) PS1 - main.c: changed some return types to void. 156189777a2SCristian Pallares (2006/08/14) PS1 - made curve.c:privcurve_free_members() static. 157189777a2SCristian Pallares (2005/12/22) PS1 - renamed README.win as README-WIN 158189777a2SCristian Pallares (2005/11/11) PS1 - portability: use binary file i/o in Cygwin. 159189777a2SCristian Pallares Suggested by Henry He. 160189777a2SCristian Pallares (2005/06/24) PS1 - potracelib: fixed allocation bug, reported by 161189777a2SCristian Pallares Jung Shin. 162189777a2SCristian Pallares (2005/06/23) PS1 - potracelib_demo.c: free resources properly. 163189777a2SCristian Pallares (2005/06/23) PS1 - initialize unused private state to 0. 164189777a2SCristian Pallares (2005/06/23) PS1 - decompose.c: improved memory allocation scheme. 165189777a2SCristian Pallares (2005/05/06) PS1 - added "alphacurve" field to private curve 166189777a2SCristian Pallares structure, so that backends that don't use the public interface 167189777a2SCristian Pallares (such as the EPS backend) can be warned of non-conforming curves. 168189777a2SCristian Pallares 169189777a2SCristian Pallaresv1.7 2005/03/06 170189777a2SCristian Pallares (2005/03/05) PS1 - fixed progress bar subrange bug. 171189777a2SCristian Pallares 172189777a2SCristian Pallaresv1.6 2005/02/27 173189777a2SCristian Pallares (2005/02/22) PS1 - added "epsilon" feature to progress bar. 174189777a2SCristian Pallares (2005/02/22) PS1 - documentation: changed potracelib documentation 175189777a2SCristian Pallares to TeX format. 176189777a2SCristian Pallares (2005/02/07) PS1 - tweaked progress bar 177189777a2SCristian Pallares (2005/01/24) PS1 - added --progress option to potrace frontend. 178189777a2SCristian Pallares (2005/01/24) PS1 - potracelib: added progress bar interface. 179189777a2SCristian Pallares (2005/01/23) PS1 - fixed overflow bug in fast summing code. 180189777a2SCristian Pallares (2005/01/23) PS1 - rewrote trace.c:bestpolygon(). This speeds up 181189777a2SCristian Pallares potrace by 20% on typical data and up to 60% in some bad cases. 182189777a2SCristian Pallares (2004/12/07) PS1 - documentation: added potracelib.txt 183189777a2SCristian Pallares (2004/12/07) PS1 - renamed aux.h as auxiliary.h, since aux is an 184189777a2SCristian Pallares invalid filename in Windows. 185189777a2SCristian Pallares (2004/12/06) PS1 - API: added default parameters 186189777a2SCristian Pallares (2004/12/06) PS1 - API: added potrace_state_t 187189777a2SCristian Pallares (2004/12/06) PS1 - API: added "const" qualifiers 188189777a2SCristian Pallares (2004/12/06) PS1 - removed conv and areac fields from privpath_t. 189189777a2SCristian Pallares (2004/12/06) PS1 - changed bounding box handling in decompose.c 190189777a2SCristian Pallares (2004/12/06) PS1 - split curve_t into public and private parts. 191189777a2SCristian Pallares (2004/12/06) PS1 - moved curve/path allocation to curve.c. 192189777a2SCristian Pallares (2004/12/06) PS1 - renamed a type in lzw.h. 193189777a2SCristian Pallares (2004/12/06) PS1 - renamed source files. 194189777a2SCristian Pallares (2004/12/04) PS1 - split path_t into public and private parts. 195189777a2SCristian Pallares (2004/12/03) PS1 - split core functionality from user interface. 196189777a2SCristian Pallares (2004/12/03) PS1 - moved parts of bitmap.h to potracelib.h. Split 197189777a2SCristian Pallares bitmap.c into bitmap.c and bitmap_io.c. Moved path decomposition 198189777a2SCristian Pallares auxiliary functions from bitmap.c to path.c. 199189777a2SCristian Pallares (2004/12/03) PS1 - converted some stray local functions to static 200189777a2SCristian Pallares (2004/12/01) PS1 - moved basic curve data type definitions to 201189777a2SCristian Pallares potracelib.h 202189777a2SCristian Pallares (2004/12/01) PS1 - collected some repeatedly used macros in aux.h 203189777a2SCristian Pallares (2004/12/01) PS1 - started to create API to potrace core 204189777a2SCristian Pallares functionality in potracelib.c and potracelib.h. Also added new 205189777a2SCristian Pallares libpotrace.a target. 206189777a2SCristian Pallares (2004/12/01) PS1 - made curve.c and path.c reentrant by removing 207189777a2SCristian Pallares global variable "info". 208189777a2SCristian Pallares (2004/11/28) PS1 - made a85* auxiliary functions static in 209189777a2SCristian Pallares flate.c. 210189777a2SCristian Pallares (2004/11/28) PS1 - pdf backend: removed arbitrary page limit. 211189777a2SCristian Pallares (2004/11/24) PS1 - pdf backend: replaced ftell() by explicit byte 212189777a2SCristian Pallares count to work correctly with stdout. 213189777a2SCristian Pallares (2004/11/24) PS1 - portability: use binary file i/o in MinGW. 214189777a2SCristian Pallares (2004/10/08) PS1 - minor cleanup in backend_pdf.c. 215189777a2SCristian Pallares (2004/09/21) PS1 - replace -O3 compilation default by -O2; inlined 216189777a2SCristian Pallares critical functions manually instead. 217189777a2SCristian Pallares (2004/09/18) PS1 - slightly optimized multiplications in 218189777a2SCristian Pallares curve.c:bezier(). Thanks to Thomas M.Ott for suggesting it. 219189777a2SCristian Pallares (2004/09/16) PS1 - list of backends in help message is now 220189777a2SCristian Pallares generated. 221189777a2SCristian Pallares (2004/09/16) PS1 - test suite: added test for pdf backend. 222189777a2SCristian Pallares (2004/09/14) PS1 - removed bits.c, renamed bits.h to bitops.h, and 223189777a2SCristian Pallares use static inline functions instead of macros. 224189777a2SCristian Pallares (2004/09/14) PS1 - test suite: adjusted tolerances. 225189777a2SCristian Pallares (2004/09/12) PS1 - mkbitmap: when reading plain pbm files, use 226189777a2SCristian Pallares colors 0 and 255, not 0 and 1. 227189777a2SCristian Pallares (2004/09/12) PS1 - potrace and mkbitmap: don't complain about 228189777a2SCristian Pallares "junk at the end of file" if the junk is whitespace and 229189777a2SCristian Pallares comments. Treat files which contain only whitespace and comments 230189777a2SCristian Pallares as empty. 231189777a2SCristian Pallares (2004/08/05) TA1 - added pdf backend. 232189777a2SCristian Pallares 233189777a2SCristian Pallaresv1.5 2004/07/08 234189777a2SCristian Pallares (2004/07/08) PS1 - removed dependency on external "compress" 235189777a2SCristian Pallares program. Removed ztops.c, added lzw.c, bits.c. 236189777a2SCristian Pallares (2004/03/17) PS1 - don't leave temporary file /tmp/have_compress.* 237189777a2SCristian Pallares lying around. 238189777a2SCristian Pallares (2004/03/06) PS1 - fixed a type error in have_compress.c:28. 239189777a2SCristian Pallares 240189777a2SCristian Pallaresv1.4 2004/03/06 241189777a2SCristian Pallares (2004/03/05) PS1 - removed the compile-time check for the 242189777a2SCristian Pallares "compress" program and replaced it by a run-time check. 243189777a2SCristian Pallares (2004/03/03) PS1 - ztops.c: fixed compression bug where garbage 244189777a2SCristian Pallares was added after the end of stream. 245189777a2SCristian Pallares (2004/02/09) PS1 - further optimized the speed of the function 246189777a2SCristian Pallares path.c:pathlist_to_tree, which now takes less than 0.1% of total 247189777a2SCristian Pallares running time. 248189777a2SCristian Pallares (2004/02/09) PS1 - distribution: removed potrace.{ps,pdf} from 249189777a2SCristian Pallares distribution, changed textfiles to DOS mode in Cygwin distribution 250189777a2SCristian Pallares (2004/01/19) PS1 - corrected a bug in 1.2 which caused an enormous 251189777a2SCristian Pallares slowdown in the function path.c:pathlist_to_tree. 252189777a2SCristian Pallares (2004/01/17) PS1 - test suite: better quoting in shell scripts to 253189777a2SCristian Pallares be more robust against spaces in filenames etc. 254189777a2SCristian Pallares (2004/01/17) PS1 - test suite and ztops.c: respect TEMPDIR 255189777a2SCristian Pallares environment variable, if set. 256189777a2SCristian Pallares 257189777a2SCristian Pallaresv1.3 2004/01/15 258189777a2SCristian Pallares (2004/01/14) PS1 - test suite: adjusted tolerances. 259189777a2SCristian Pallares (2004/01/13) PS1 - when reading a bitmap of width or height 0, 260189777a2SCristian Pallares pretend the offending dimension is 1. This is not 100% logical 261189777a2SCristian Pallares in all cases, but better than producing garbage. 262189777a2SCristian Pallares (2004/01/13) PS1 - fixed bounding box in xfig backend. 263189777a2SCristian Pallares (2004/01/13) PS1 - added missing gsave/grestore to ps backend. 264189777a2SCristian Pallares (2004/01/07) PS1 - autoconf: search for zlib.h in 265189777a2SCristian Pallares ${prefix}/include and for libz.so in ${prefix}/lib, in case they 266189777a2SCristian Pallares are not found elsewhere. 267189777a2SCristian Pallares (2004/01/07) PS1 - eliminated some unused variables. 268189777a2SCristian Pallares (2004/01/07) PS1 - portability: eliminated typeof() from 269189777a2SCristian Pallares mkbitmap.c 270189777a2SCristian Pallares (2004/01/07) PS1 - test suite: added a test for empty bitmaps. 271189777a2SCristian Pallares (2003/12/25) PS1 - fixed bug #866223: potrace crashes when applied 272189777a2SCristian Pallares to an empty bitmap. 273189777a2SCristian Pallares (2003/12/25) PS1 - when options -2 or -3 are unsupported, ignore 274189777a2SCristian Pallares them rather than failing, for improved compatibility. 275189777a2SCristian Pallares (2003/12/25) PS1 - autoconf: added --disable-zlib configuration 276189777a2SCristian Pallares option and improved error messages for missing zlib.h or libz.so 277189777a2SCristian Pallares (2003/12/25) PS1 - portability: eliminated dynamic arrays in 278189777a2SCristian Pallares mkbitmap.c 279189777a2SCristian Pallares (2003/12/25) PS1 - test suite: added a check for mkbitmap. 280189777a2SCristian Pallares (2003/12/25) PS1 - test suite: more portable filesize checking in 281189777a2SCristian Pallares backend-check.sh 282189777a2SCristian Pallares 283189777a2SCristian Pallaresv1.2 2003/12/23 284189777a2SCristian Pallares (2003/12/23) PS1 - added an xfig backend. 285189777a2SCristian Pallares (2003/12/23) PS1 - added --group option to group related shapes 286189777a2SCristian Pallares together in SVG backend. 287189777a2SCristian Pallares (2003/12/23) PS1 - added --opaque option to paint white shapes 288189777a2SCristian Pallares opaquely, instead of leaving them transparent, in PS/EPS and SVG 289189777a2SCristian Pallares backends. 290189777a2SCristian Pallares (2003/12/23) PS1 - rewrote path decomposition algorithm to 291189777a2SCristian Pallares calculate path containment tree, to be used for grouping. 292189777a2SCristian Pallares (2003/12/23) PS1 - test suite: added a check of postscript output 293189777a2SCristian Pallares using ghostscript. 294189777a2SCristian Pallares (2003/09/18) PS1 - autoconf: added tests for -lm and -lz 295189777a2SCristian Pallares libraries, and for zlib.h header file. 296189777a2SCristian Pallares (2003/09/18) PS1 - portability: cleaned up code so that it can be 297189777a2SCristian Pallares compiled with a C++ compiler. 298189777a2SCristian Pallares (2003/09/17) PS1 - code cleanup in main.c:main(). 299189777a2SCristian Pallares (2003/09/17) PS1 - added mkbitmap program. 300189777a2SCristian Pallares (2003/09/17) PS1 - added -ffloat-store compiler flag for improved 301189777a2SCristian Pallares floating point predictability. 302189777a2SCristian Pallares (2003/09/12) PS1 - test suite: added test for BMP runlength 303189777a2SCristian Pallares encoding. 304189777a2SCristian Pallares (2003/09/12) PS1 - fixed frontend for BMP runlength encoding. 305189777a2SCristian Pallares (2003/09/11) PS1 - autoconf: added test to work around gcc 306189777a2SCristian Pallares compiler bug 12243, which affected curve.c:adjust_vertices(). 307189777a2SCristian Pallares (2003/09/11) PS1 - renamed pbm.c as bitmap.c, pgm.c as greymap.c 308189777a2SCristian Pallares (2003/09/11) PS1 - moved some bitmap details from path.c to pbm.c 309189777a2SCristian Pallares (2003/09/10) PS1 - renamed pbm.h macros to start with BM_ 310189777a2SCristian Pallares (2003/09/02) PS1 - portability: added missing fallback value for 311189777a2SCristian Pallares M_PI to backend_pgm.c. 312189777a2SCristian Pallares (2003/08/28) PS1 - specialized matrix solving code for n=2. 313189777a2SCristian Pallares (2003/08/28) PS1 - portability (and scalability): eliminated 314189777a2SCristian Pallares dynamic arrays. 315189777a2SCristian Pallares (2003/08/28) PS1 - portability: replaced vsnprintf by vsprintf. 316189777a2SCristian Pallares (2003/08/28) PS1 - portability: provided fallback value for M_PI 317189777a2SCristian Pallares (2003/08/27) PS1 - autoconf: now checks whether the compress 318189777a2SCristian Pallares program works, not just whether it exists. 319189777a2SCristian Pallares (2003/08/27) PS1 - test suite: wrote three tests for "make check" 320189777a2SCristian Pallares (2003/08/27) PS1 - portability: fixed some floating point errors 321189777a2SCristian Pallares on DEC Alpha: division by zero and log of zero. 322189777a2SCristian Pallares (2003/08/27) PS1 - changed bitmap representation to take advantage 323189777a2SCristian Pallares of 64-bit architectures. 324189777a2SCristian Pallares (2003/08/27) PS1 - changed default scaling in ps and eps modes for 325189777a2SCristian Pallares small page sizes. 326189777a2SCristian Pallares (2003/08/26) PS1 - allow arguments of command line options -b, -z, 327189777a2SCristian Pallares -P to be abbreviated by "unambiguous prefix". 328189777a2SCristian Pallares (2003/08/26) PS1 - added rotation to gimppath backend. 329189777a2SCristian Pallares (2003/08/24) PS1 - portability: removed GNU extensions from printf 330189777a2SCristian Pallares format strings in backend_eps. 331189777a2SCristian Pallares (2003/08/22) PS1 - converted --unit to double value. 332189777a2SCristian Pallares (2003/08/22) PS1 - added experimental gimppath backend. 333189777a2SCristian Pallares (2003/08/20) PS1 - close paths in postscript/eps backend. 334189777a2SCristian Pallares (2003/08/20) PS1 - fixed bug in parsing command line options: long 335189777a2SCristian Pallares options --cleartext, --level2, --level3 did not work properly. 336189777a2SCristian Pallares Thanks to George Williams for reporting this bug. 337189777a2SCristian Pallares 338189777a2SCristian Pallaresv1.1 2003/08/18 339189777a2SCristian Pallares (2003/08/17) PS1 - replaced calc_lon algorithm by a faster 340189777a2SCristian Pallares implementation. This results in speedups of up to factor 3.3 for 341189777a2SCristian Pallares certain large input files. 342189777a2SCristian Pallares (2003/08/17) PS1 - added --invert option. 343189777a2SCristian Pallares (2003/08/17) PS1 - improved error messages on wrong file format. 344189777a2SCristian Pallares (2003/08/17) PS1 - code cleanup to build under fussier compilers. 345189777a2SCristian Pallares Thanks to Nelson Beebe for submitting compiler logs for a large 346189777a2SCristian Pallares number of setups. 347189777a2SCristian Pallares (2003/08/17) PS1 - renamed curve.c:quad as quadform to avoid name 348189777a2SCristian Pallares clash on IBM AIX, Compaq/DEC ODF/1. 349189777a2SCristian Pallares (2003/08/17) PS1 - autoconf: let user override CFLAGS at configure 350189777a2SCristian Pallares time, and use -Wall and -O3 only for gcc compiler 351189777a2SCristian Pallares (2003/08/16) PS1 - added --blacklevel option to control 352189777a2SCristian Pallares image-to-bitmap conversion 353189777a2SCristian Pallares (2003/08/16) PS1 - added ability to read BMP files. Changed error 354189777a2SCristian Pallares reporting in case of empty files, or if there is junk at the end 355189777a2SCristian Pallares of a file in multipage mode. 356189777a2SCristian Pallares (2003/08/14) PS1 - as a convenience, now also read files in PGM 357189777a2SCristian Pallares and PPM format and convert to bitmap by simple threshold method. 358189777a2SCristian Pallares This is because many programs, including the Gimp and the *topnm 359189777a2SCristian Pallares tools, produce PNM output which must be further converted to PBM. 360189777a2SCristian Pallares (2003/08/14) PS1 - rearranged order of options in usage message. 361189777a2SCristian Pallares (2003/08/14) PS1 - implemented -d1 option for SVG backend. This 362189777a2SCristian Pallares outputs a jaggy bitmap with no smoothing. 363189777a2SCristian Pallares (2003/08/14) PS1 - autoconf: improved handling of 364189777a2SCristian Pallares --enable-compress 365189777a2SCristian Pallares (2003/08/14) PS1 - added SVG backend. 366189777a2SCristian Pallares (2003/08/14) PS1 - renamed old -s option as -S 367189777a2SCristian Pallares (2003/08/12) PS1 - added README.win 368189777a2SCristian Pallares (2003/08/12) PS1 - autoconf: fixed bug #787182: added non-standard 369189777a2SCristian Pallares compile time options to help message for ./configure script 370189777a2SCristian Pallares 371189777a2SCristian Pallaresv1.0 2003/08/10 372189777a2SCristian Pallares (2003/08/10) PS1 - added file i/o code 373189777a2SCristian Pallares (2003/08/08) PS1 - optimized number of times the penalty3 function 374189777a2SCristian Pallares is called. Speedups of factor 2.7 were observed on large files. 375189777a2SCristian Pallares (2003/08/08) PS1 - added --opttolerance and --alphamax options. 376189777a2SCristian Pallares (2003/08/07) PS1 - autoconf: changed configure.in so that test for 377189777a2SCristian Pallares compress is omitted when the user overrides it - this prevents a 378189777a2SCristian Pallares wrong cached value to be read. 379189777a2SCristian Pallares (2003/08/07) PS1 - keep output flushed in postscript mode 380189777a2SCristian Pallares (2003/08/07) PS1 - fixed memory leak in multiple page mode 381189777a2SCristian Pallares (2003/08/06) PS1 - replaced --opticurve by --longcurve option; 382189777a2SCristian Pallares opticurve is now the default 383189777a2SCristian Pallares (2003/08/06) PS1 - added opticurve sensitivity to pgm backend 384189777a2SCristian Pallares (2003/08/06) PS1 - restricted opticurves to be bounded away from 385189777a2SCristian Pallares 180 degrees 386189777a2SCristian Pallares (2003/08/06) PS1 - allow margins and papersize to determine width 387189777a2SCristian Pallares if it is not defined by other means in postscript mode 388189777a2SCristian Pallares (2003/08/06) PS1 - added ability to read multiple bitmaps in 389189777a2SCristian Pallares postscript mode 390189777a2SCristian Pallares (2003/08/05) PS1 - new --longcoding option 391189777a2SCristian Pallares (2003/08/05) PS1 - new optimized eps backend which works with 392189777a2SCristian Pallares opticurve. 393189777a2SCristian Pallares (2003/07/31) PS1 - replaced O(n^3) calc_lon algorithm by a new 394189777a2SCristian Pallares O(n^2) algorithm. Observed speedups of factor 80. 395189777a2SCristian Pallares (2003/07/27) PS1 - added --opticurve option and integrated 396189777a2SCristian Pallares opticurve code in curve.c 397189777a2SCristian Pallares (2003/06/04) PS1 - made bm_to_pathlist a lot more efficient by 398189777a2SCristian Pallares scanning and clearing only bounding box of mask in inner scan. 399189777a2SCristian Pallares (2002/11/17) PS1 - changed bm_to_pathlist prototype to use 400189777a2SCristian Pallares explicit return value. 401189777a2SCristian Pallares (2002/10/09) PS1 - autoconf: added automake/autoconf scripts in 402189777a2SCristian Pallares preparation for public distribution. 403