cairo 1.14.1-x64-mingw32 → 1.14.2-x64-mingw32

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of cairo might be problematic. Click here for more details.

Files changed (215) hide show
  1. checksums.yaml +4 -4
  2. data/NEWS +21 -0
  3. data/Rakefile +17 -6
  4. data/ext/cairo/cairo.def +1 -0
  5. data/ext/cairo/extconf.rb +23 -10
  6. data/ext/cairo/rb_cairo.c +3 -0
  7. data/ext/cairo/rb_cairo.h +3 -3
  8. data/ext/cairo/rb_cairo_context.c +1 -1
  9. data/ext/cairo/rb_cairo_io.c +4 -0
  10. data/ext/cairo/rb_cairo_io.h +2 -0
  11. data/ext/cairo/rb_cairo_pattern.c +4 -4
  12. data/ext/cairo/rb_cairo_private.h +2 -0
  13. data/ext/cairo/rb_cairo_surface.c +64 -232
  14. data/lib/2.0/cairo.so +0 -0
  15. data/lib/2.1/cairo.so +0 -0
  16. data/lib/2.2/cairo.so +0 -0
  17. data/lib/cairo.rb +20 -19
  18. data/lib/cairo/region.rb +14 -0
  19. data/test/test_region.rb +26 -0
  20. data/vendor/local/bin/fc-cache.exe +0 -0
  21. data/vendor/local/bin/fc-cat.exe +0 -0
  22. data/vendor/local/bin/fc-list.exe +0 -0
  23. data/vendor/local/bin/fc-match.exe +0 -0
  24. data/vendor/local/bin/fc-pattern.exe +0 -0
  25. data/vendor/local/bin/fc-query.exe +0 -0
  26. data/vendor/local/bin/fc-scan.exe +0 -0
  27. data/vendor/local/bin/fc-validate.exe +0 -0
  28. data/vendor/local/bin/freetype-config +2 -2
  29. data/vendor/local/bin/libcairo-2.dll +0 -0
  30. data/vendor/local/bin/libcairo-gobject-2.dll +0 -0
  31. data/vendor/local/bin/libcairo-script-interpreter-2.dll +0 -0
  32. data/vendor/local/bin/libfontconfig-1.dll +0 -0
  33. data/vendor/local/bin/libfreetype-6.dll +0 -0
  34. data/vendor/local/bin/libgcc_s_seh-1.dll +0 -0
  35. data/vendor/local/bin/libpixman-1-0.dll +0 -0
  36. data/vendor/local/bin/libpng-config +1 -1
  37. data/vendor/local/bin/libpng16-16.dll +0 -0
  38. data/vendor/local/bin/libpng16-config +1 -1
  39. data/vendor/local/bin/libstdc++-6.dll +0 -0
  40. data/vendor/local/bin/libwinpthread-1.dll +0 -0
  41. data/vendor/local/bin/libxml2-2.dll +0 -0
  42. data/vendor/local/bin/png-fix-itxt.exe +0 -0
  43. data/vendor/local/bin/pngfix.exe +0 -0
  44. data/vendor/local/bin/xmlcatalog.exe +0 -0
  45. data/vendor/local/bin/xmllint.exe +0 -0
  46. data/vendor/local/bin/zlib1.dll +0 -0
  47. data/vendor/local/include/cairo/cairo-version.h +1 -1
  48. data/vendor/local/include/freetype2/config/ftconfig.h +19 -2
  49. data/vendor/local/include/freetype2/config/ftheader.h +7 -5
  50. data/vendor/local/include/freetype2/config/ftoption.h +9 -22
  51. data/vendor/local/include/freetype2/config/ftstdlib.h +2 -3
  52. data/vendor/local/include/freetype2/freetype.h +38 -17
  53. data/vendor/local/include/freetype2/ft2build.h +1 -1
  54. data/vendor/local/include/freetype2/ftadvanc.h +2 -2
  55. data/vendor/local/include/freetype2/ftautoh.h +50 -2
  56. data/vendor/local/include/freetype2/ftbbox.h +1 -1
  57. data/vendor/local/include/freetype2/ftbdf.h +1 -1
  58. data/vendor/local/include/freetype2/ftbitmap.h +11 -3
  59. data/vendor/local/include/freetype2/ftbzip2.h +1 -1
  60. data/vendor/local/include/freetype2/ftcache.h +3 -3
  61. data/vendor/local/include/freetype2/ftcffdrv.h +1 -1
  62. data/vendor/local/include/freetype2/ftcid.h +2 -1
  63. data/vendor/local/include/freetype2/fterrdef.h +1 -1
  64. data/vendor/local/include/freetype2/fterrors.h +1 -1
  65. data/vendor/local/include/freetype2/{ftxf86.h → ftfntfmt.h} +22 -14
  66. data/vendor/local/include/freetype2/ftgasp.h +1 -1
  67. data/vendor/local/include/freetype2/ftglyph.h +1 -1
  68. data/vendor/local/include/freetype2/ftgxval.h +1 -1
  69. data/vendor/local/include/freetype2/ftgzip.h +1 -1
  70. data/vendor/local/include/freetype2/ftimage.h +7 -13
  71. data/vendor/local/include/freetype2/ftincrem.h +1 -1
  72. data/vendor/local/include/freetype2/ftlcdfil.h +2 -2
  73. data/vendor/local/include/freetype2/ftlist.h +1 -1
  74. data/vendor/local/include/freetype2/ftlzw.h +1 -1
  75. data/vendor/local/include/freetype2/ftmac.h +1 -1
  76. data/vendor/local/include/freetype2/ftmm.h +17 -11
  77. data/vendor/local/include/freetype2/ftmodapi.h +4 -2
  78. data/vendor/local/include/freetype2/ftmoderr.h +1 -1
  79. data/vendor/local/include/freetype2/ftotval.h +1 -1
  80. data/vendor/local/include/freetype2/ftoutln.h +1 -1
  81. data/vendor/local/include/freetype2/ftpfr.h +1 -1
  82. data/vendor/local/include/freetype2/ftrender.h +3 -8
  83. data/vendor/local/include/freetype2/ftsizes.h +1 -1
  84. data/vendor/local/include/freetype2/ftsnames.h +1 -1
  85. data/vendor/local/include/freetype2/ftstroke.h +1 -1
  86. data/vendor/local/include/freetype2/ftsynth.h +5 -3
  87. data/vendor/local/include/freetype2/ftsystem.h +10 -1
  88. data/vendor/local/include/freetype2/fttrigon.h +1 -1
  89. data/vendor/local/include/freetype2/ftttdrv.h +85 -22
  90. data/vendor/local/include/freetype2/fttypes.h +1 -1
  91. data/vendor/local/include/freetype2/ftwinfnt.h +3 -3
  92. data/vendor/local/include/freetype2/t1tables.h +4 -3
  93. data/vendor/local/include/freetype2/ttnameid.h +116 -116
  94. data/vendor/local/include/freetype2/tttables.h +2 -2
  95. data/vendor/local/include/freetype2/tttags.h +1 -1
  96. data/vendor/local/include/freetype2/ttunpat.h +1 -1
  97. data/vendor/local/include/libpng16/png.h +63 -80
  98. data/vendor/local/include/libpng16/pngconf.h +8 -30
  99. data/vendor/local/include/libpng16/pnglibconf.h +10 -4
  100. data/vendor/local/include/png.h +63 -80
  101. data/vendor/local/include/pngconf.h +8 -30
  102. data/vendor/local/include/pnglibconf.h +10 -4
  103. data/vendor/local/lib/libcairo-gobject.a +0 -0
  104. data/vendor/local/lib/libcairo-gobject.dll.a +0 -0
  105. data/vendor/local/lib/libcairo-gobject.la +2 -2
  106. data/vendor/local/lib/libcairo-script-interpreter.a +0 -0
  107. data/vendor/local/lib/libcairo-script-interpreter.dll.a +0 -0
  108. data/vendor/local/lib/libcairo-script-interpreter.la +2 -2
  109. data/vendor/local/lib/libcairo.a +0 -0
  110. data/vendor/local/lib/libcairo.dll.a +0 -0
  111. data/vendor/local/lib/libcairo.la +2 -2
  112. data/vendor/local/lib/libfontconfig.dll.a +0 -0
  113. data/vendor/local/lib/libfreetype.a +0 -0
  114. data/vendor/local/lib/libfreetype.dll.a +0 -0
  115. data/vendor/local/lib/libfreetype.la +4 -4
  116. data/vendor/local/lib/libpixman-1.a +0 -0
  117. data/vendor/local/lib/libpixman-1.dll.a +0 -0
  118. data/vendor/local/lib/libpng.a +0 -0
  119. data/vendor/local/lib/libpng.dll.a +0 -0
  120. data/vendor/local/lib/libpng.la +4 -4
  121. data/vendor/local/lib/libpng16.a +0 -0
  122. data/vendor/local/lib/libpng16.dll.a +0 -0
  123. data/vendor/local/lib/libpng16.la +4 -4
  124. data/vendor/local/lib/libxml2.a +0 -0
  125. data/vendor/local/lib/libxml2.dll.a +0 -0
  126. data/vendor/local/lib/libz.a +0 -0
  127. data/vendor/local/lib/libz.dll.a +0 -0
  128. data/vendor/local/lib/pkgconfig/cairo-fc.pc +1 -1
  129. data/vendor/local/lib/pkgconfig/cairo-ft.pc +1 -1
  130. data/vendor/local/lib/pkgconfig/cairo-gobject.pc +1 -1
  131. data/vendor/local/lib/pkgconfig/cairo-pdf.pc +1 -1
  132. data/vendor/local/lib/pkgconfig/cairo-png.pc +1 -1
  133. data/vendor/local/lib/pkgconfig/cairo-ps.pc +1 -1
  134. data/vendor/local/lib/pkgconfig/cairo-script.pc +1 -1
  135. data/vendor/local/lib/pkgconfig/cairo-svg.pc +1 -1
  136. data/vendor/local/lib/pkgconfig/cairo-win32-font.pc +1 -1
  137. data/vendor/local/lib/pkgconfig/cairo-win32.pc +1 -1
  138. data/vendor/local/lib/pkgconfig/cairo.pc +1 -1
  139. data/vendor/local/lib/pkgconfig/freetype2.pc +1 -1
  140. data/vendor/local/lib/pkgconfig/libpng.pc +1 -1
  141. data/vendor/local/lib/pkgconfig/libpng16.pc +1 -1
  142. data/vendor/local/share/aclocal/freetype2.m4 +1 -1
  143. data/vendor/local/share/gtk-doc/html/cairo/bindings-errors.html +12 -12
  144. data/vendor/local/share/gtk-doc/html/cairo/bindings-fonts.html +12 -12
  145. data/vendor/local/share/gtk-doc/html/cairo/bindings-memory.html +12 -12
  146. data/vendor/local/share/gtk-doc/html/cairo/bindings-overloading.html +13 -13
  147. data/vendor/local/share/gtk-doc/html/cairo/bindings-path.html +12 -12
  148. data/vendor/local/share/gtk-doc/html/cairo/bindings-patterns.html +35 -35
  149. data/vendor/local/share/gtk-doc/html/cairo/bindings-return-values.html +10 -10
  150. data/vendor/local/share/gtk-doc/html/cairo/bindings-streams.html +11 -11
  151. data/vendor/local/share/gtk-doc/html/cairo/bindings-surfaces.html +13 -13
  152. data/vendor/local/share/gtk-doc/html/cairo/cairo-Error-handling.html +294 -225
  153. data/vendor/local/share/gtk-doc/html/cairo/cairo-FreeType-Fonts.html +387 -269
  154. data/vendor/local/share/gtk-doc/html/cairo/cairo-Image-Surfaces.html +432 -302
  155. data/vendor/local/share/gtk-doc/html/cairo/cairo-PDF-Surfaces.html +325 -217
  156. data/vendor/local/share/gtk-doc/html/cairo/cairo-PNG-Support.html +298 -193
  157. data/vendor/local/share/gtk-doc/html/cairo/cairo-Paths.html +1121 -812
  158. data/vendor/local/share/gtk-doc/html/cairo/cairo-PostScript-Surfaces.html +513 -383
  159. data/vendor/local/share/gtk-doc/html/cairo/cairo-Quartz-(CGFont)-Fonts.html +126 -83
  160. data/vendor/local/share/gtk-doc/html/cairo/cairo-Quartz-Surfaces.html +172 -119
  161. data/vendor/local/share/gtk-doc/html/cairo/cairo-Raster-Sources.html +581 -372
  162. data/vendor/local/share/gtk-doc/html/cairo/cairo-Recording-Surfaces.html +179 -130
  163. data/vendor/local/share/gtk-doc/html/cairo/cairo-Regions.html +888 -539
  164. data/vendor/local/share/gtk-doc/html/cairo/cairo-SVG-Surfaces.html +287 -192
  165. data/vendor/local/share/gtk-doc/html/cairo/cairo-Script-Surfaces.html +374 -231
  166. data/vendor/local/share/gtk-doc/html/cairo/cairo-Transformations.html +395 -219
  167. data/vendor/local/share/gtk-doc/html/cairo/cairo-Types.html +125 -75
  168. data/vendor/local/share/gtk-doc/html/cairo/cairo-User-Fonts.html +630 -464
  169. data/vendor/local/share/gtk-doc/html/cairo/cairo-Version-Information.html +225 -200
  170. data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Fonts.html +336 -214
  171. data/vendor/local/share/gtk-doc/html/cairo/cairo-Win32-Surfaces.html +277 -186
  172. data/vendor/local/share/gtk-doc/html/cairo/cairo-XCB-Surfaces.html +495 -350
  173. data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-Surfaces.html +557 -362
  174. data/vendor/local/share/gtk-doc/html/cairo/cairo-XLib-XRender-Backend.html +158 -111
  175. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-device-t.html +655 -441
  176. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-face-t.html +389 -280
  177. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-font-options-t.html +667 -451
  178. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-matrix-t.html +579 -351
  179. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-pattern-t.html +2006 -1545
  180. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-scaled-font-t.html +892 -618
  181. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-surface-t.html +1624 -1188
  182. data/vendor/local/share/gtk-doc/html/cairo/cairo-cairo-t.html +2903 -2104
  183. data/vendor/local/share/gtk-doc/html/cairo/cairo-drawing.html +13 -13
  184. data/vendor/local/share/gtk-doc/html/cairo/cairo-fonts.html +13 -13
  185. data/vendor/local/share/gtk-doc/html/cairo/cairo-support.html +13 -13
  186. data/vendor/local/share/gtk-doc/html/cairo/cairo-surfaces.html +13 -13
  187. data/vendor/local/share/gtk-doc/html/cairo/cairo-text.html +1115 -758
  188. data/vendor/local/share/gtk-doc/html/cairo/cairo.devhelp2 +419 -604
  189. data/vendor/local/share/gtk-doc/html/cairo/home.png +0 -0
  190. data/vendor/local/share/gtk-doc/html/cairo/index-1.10.html +56 -56
  191. data/vendor/local/share/gtk-doc/html/cairo/index-1.12.html +70 -70
  192. data/vendor/local/share/gtk-doc/html/cairo/index-1.2.html +58 -58
  193. data/vendor/local/share/gtk-doc/html/cairo/index-1.4.html +39 -39
  194. data/vendor/local/share/gtk-doc/html/cairo/index-1.6.html +30 -30
  195. data/vendor/local/share/gtk-doc/html/cairo/index-1.8.html +38 -38
  196. data/vendor/local/share/gtk-doc/html/cairo/index-all.html +426 -426
  197. data/vendor/local/share/gtk-doc/html/cairo/index.html +6 -6
  198. data/vendor/local/share/gtk-doc/html/cairo/index.sgml +234 -325
  199. data/vendor/local/share/gtk-doc/html/cairo/language-bindings.html +12 -12
  200. data/vendor/local/share/gtk-doc/html/cairo/left-insensitive.png +0 -0
  201. data/vendor/local/share/gtk-doc/html/cairo/left.png +0 -0
  202. data/vendor/local/share/gtk-doc/html/cairo/right-insensitive.png +0 -0
  203. data/vendor/local/share/gtk-doc/html/cairo/right.png +0 -0
  204. data/vendor/local/share/gtk-doc/html/cairo/style.css +221 -26
  205. data/vendor/local/share/gtk-doc/html/cairo/up-insensitive.png +0 -0
  206. data/vendor/local/share/gtk-doc/html/cairo/up.png +0 -0
  207. data/vendor/local/share/license/cairo/README +1 -1
  208. data/vendor/local/share/license/freetype/README +6 -6
  209. data/vendor/local/share/license/freetype/README.git +1 -1
  210. data/vendor/local/share/license/libpng/README +2 -2
  211. data/vendor/local/share/man/man1/freetype-config.1 +1 -1
  212. data/vendor/local/share/man/man3/libpng.3 +85 -92
  213. data/vendor/local/share/man/man3/libpngpf.3 +2 -2
  214. data/vendor/local/share/man/man5/png.5 +1 -1
  215. metadata +23 -19
@@ -1,5 +1,5 @@
1
- FreeType 2.5.4
2
- ==============
1
+ FreeType 2.6
2
+ ============
3
3
 
4
4
  Homepage: http://www.freetype.org
5
5
 
@@ -24,9 +24,9 @@
24
24
 
25
25
  and download one of the following files.
26
26
 
27
- freetype-doc-2.5.4.tar.bz2
28
- freetype-doc-2.5.4.tar.gz
29
- ftdoc254.zip
27
+ freetype-doc-2.6.tar.bz2
28
+ freetype-doc-2.6.tar.gz
29
+ ftdoc26.zip
30
30
 
31
31
  To view the documentation online, go to
32
32
 
@@ -70,7 +70,7 @@
70
70
 
71
71
  ----------------------------------------------------------------------
72
72
 
73
- Copyright 2006-2014 by
73
+ Copyright 2006-2015 by
74
74
  David Turner, Robert Wilhelm, and Werner Lemberg.
75
75
 
76
76
  This file is part of the FreeType project, and may only be used,
@@ -37,7 +37,7 @@ repository.
37
37
 
38
38
  ----------------------------------------------------------------------
39
39
 
40
- Copyright 2005-2010, 2013 by
40
+ Copyright 2005-2015 by
41
41
  David Turner, Robert Wilhelm, and Werner Lemberg.
42
42
 
43
43
  This file is part of the FreeType project, and may only be used,
@@ -1,4 +1,4 @@
1
- README for libpng version 1.6.16 - December 22, 2014 (shared library 16.0)
1
+ README for libpng version 1.6.18 - July 23, 2015 (shared library 16.0)
2
2
  See the note about version numbers near the top of png.h
3
3
 
4
4
  See INSTALL for instructions on how to install libpng.
@@ -134,7 +134,7 @@ and ...". If in doubt, send questions to me. I'll bounce them
134
134
  to others, if necessary.
135
135
 
136
136
  Please do not send suggestions on how to change PNG. We have
137
- been discussing PNG for nineteen years now, and it is official and
137
+ been discussing PNG for twenty years now, and it is official and
138
138
  finished. If you have suggestions for libpng, however, I'll
139
139
  gladly listen. Even if your suggestion is not used immediately,
140
140
  it may be used later.
@@ -1,4 +1,4 @@
1
- .TH FREETYPE-CONFIG 1 "December 2014" "FreeType 2.5.4"
1
+ .TH FREETYPE-CONFIG 1 "June 2015" "FreeType 2.6"
2
2
  .
3
3
  .
4
4
  .SH NAME
@@ -1,6 +1,6 @@
1
- .TH LIBPNG 3 "December 22, 2014"
1
+ .TH LIBPNG 3 "July 23, 2015"
2
2
  .SH NAME
3
- libpng \- Portable Network Graphics (PNG) Reference Library 1.6.16
3
+ libpng \- Portable Network Graphics (PNG) Reference Library 1.6.18
4
4
  .SH SYNOPSIS
5
5
  \fB
6
6
  #include <png.h>\fP
@@ -119,6 +119,8 @@ libpng \- Portable Network Graphics (PNG) Reference Library 1.6.16
119
119
 
120
120
  \fBpng_byte png_get_libpng_ver (png_const_structp \fIpng_ptr\fP\fB);\fP
121
121
 
122
+ \fBint png_get_palette_max(png_const_structp \fP\fIpng_ptr\fP\fB, png_const_infop \fIinfo_ptr\fP\fB);\fP
123
+
122
124
  \fBpng_voidp png_get_mem_ptr (png_const_structp \fIpng_ptr\fP\fB);\fP
123
125
 
124
126
  \fBpng_uint_32 png_get_oFFs (png_const_structp \fP\fIpng_ptr\fP\fB, png_const_infop \fP\fIinfo_ptr\fP\fB, png_uint_32 \fP\fI*offset_x\fP\fB, png_uint_32 \fP\fI*offset_y\fP\fB, int \fI*unit_type\fP\fB);\fP
@@ -369,6 +371,8 @@ libpng \- Portable Network Graphics (PNG) Reference Library 1.6.16
369
371
 
370
372
  \fBvoid png_set_oFFs (png_structp \fP\fIpng_ptr\fP\fB, png_infop \fP\fIinfo_ptr\fP\fB, png_uint_32 \fP\fIoffset_x\fP\fB, png_uint_32 \fP\fIoffset_y\fP\fB, int \fIunit_type\fP\fB);\fP
371
373
 
374
+ \fBint png_set_option(png_structrp \fP\fIpng_ptr\fP\fB, int \fP\fIoption\fP\fB, int \fIonoff\fP\fB);\fP
375
+
372
376
  \fBvoid png_set_packing (png_structp \fIpng_ptr\fP\fB);\fP
373
377
 
374
378
  \fBvoid png_set_packswap (png_structp \fIpng_ptr\fP\fB);\fP
@@ -504,10 +508,10 @@ Following is a copy of the libpng-manual.txt file that accompanies libpng.
504
508
  .SH LIBPNG.TXT
505
509
  libpng-manual.txt - A description on how to use and modify libpng
506
510
 
507
- libpng version 1.6.16 - December 22, 2014
511
+ libpng version 1.6.18 - July 23, 2015
508
512
  Updated and distributed by Glenn Randers-Pehrson
509
513
  <glennrp at users.sourceforge.net>
510
- Copyright (c) 1998-2014 Glenn Randers-Pehrson
514
+ Copyright (c) 1998-2015 Glenn Randers-Pehrson
511
515
 
512
516
  This document is released under the libpng license.
513
517
  For conditions of distribution and use, see the disclaimer
@@ -515,9 +519,9 @@ libpng-manual.txt - A description on how to use and modify libpng
515
519
 
516
520
  Based on:
517
521
 
518
- libpng versions 0.97, January 1998, through 1.6.16 - December 22, 2014
522
+ libpng versions 0.97, January 1998, through 1.6.18 - July 23, 2015
519
523
  Updated and distributed by Glenn Randers-Pehrson
520
- Copyright (c) 1998-2014 Glenn Randers-Pehrson
524
+ Copyright (c) 1998-2015 Glenn Randers-Pehrson
521
525
 
522
526
  libpng 1.0 beta 6 - version 0.96 - May 28, 1997
523
527
  Updated and distributed by Andreas Dilger
@@ -840,7 +844,7 @@ prediction.
840
844
 
841
845
  If you are intending to keep the file pointer open for use in libpng,
842
846
  you must ensure you don't read more than 8 bytes from the beginning
843
- of the file, and you also have to make a call to png_set_sig_bytes_read()
847
+ of the file, and you also have to make a call to png_set_sig_bytes()
844
848
  with the number of bytes you read from the beginning. Libpng will
845
849
  then only check the bytes (if any) that your program didn't read.
846
850
 
@@ -848,22 +852,23 @@ then only check the bytes (if any) that your program didn't read.
848
852
  to replace them with custom functions. See the discussion under
849
853
  Customizing libpng.
850
854
 
851
-
852
855
  FILE *fp = fopen(file_name, "rb");
853
856
  if (!fp)
854
857
  {
855
858
  return (ERROR);
856
859
  }
857
860
 
858
- fread(header, 1, number, fp);
859
- is_png = !png_sig_cmp(header, 0, number);
861
+ if (fread(header, 1, number, fp) != number)
862
+ {
863
+ return (ERROR);
864
+ }
860
865
 
866
+ is_png = !png_sig_cmp(header, 0, number);
861
867
  if (!is_png)
862
868
  {
863
869
  return (NOT_PNG);
864
870
  }
865
871
 
866
-
867
872
  Next, png_struct and png_info need to be allocated and initialized. In
868
873
  order to ensure that the size of these structures is correct even with a
869
874
  dynamically linked libpng, there are functions to initialize and
@@ -1153,7 +1158,7 @@ callback function:
1153
1158
  The PNG specification allows the width and height of an image to be as
1154
1159
  large as 2^(31\-1 (0x7fffffff), or about 2.147 billion rows and columns.
1155
1160
  Larger images will be rejected immediately with a png_error() call. If
1156
- you wish to reduce these limits, you can use
1161
+ you wish to change these limits, you can use
1157
1162
 
1158
1163
  png_set_user_limits(png_ptr, width_max, height_max);
1159
1164
 
@@ -1768,13 +1773,13 @@ in until png_read_end() has read the chunk data following the image.
1768
1773
  the PNG datastream is embedded in
1769
1774
  a MNG-1.0 datastream)
1770
1775
 
1771
- Any or all of interlace_type, compression_type, or
1772
- filter_method can be NULL if you are
1773
- not interested in their values.
1776
+ Any of width, height, color_type, bit_depth,
1777
+ interlace_type, compression_type, or filter_method can
1778
+ be NULL if you are not interested in their values.
1774
1779
 
1775
1780
  Note that png_get_IHDR() returns 32-bit data into
1776
1781
  the application's width and height variables.
1777
- This is an unsafe situation if these are 16-bit
1782
+ This is an unsafe situation if these are not png_uint_32
1778
1783
  variables. In such situations, the
1779
1784
  png_get_image_width() and png_get_image_height()
1780
1785
  functions described below are safer.
@@ -2497,7 +2502,7 @@ value when you call it in this position:
2497
2502
  png_set_gamma(png_ptr, screen_gamma, 0.45455);
2498
2503
 
2499
2504
  If you need to reduce an RGB file to a paletted file, or if a paletted
2500
- file has more entries then will fit on your screen, png_set_quantize()
2505
+ file has more entries than will fit on your screen, png_set_quantize()
2501
2506
  will do that. Note that this is a simple match quantization that merely
2502
2507
  finds the closest color available. This should work fairly well with
2503
2508
  optimized palettes, but fairly badly with linear color cubes. If you
@@ -3050,7 +3055,7 @@ png_infop info_ptr;
3050
3055
  64K. The library seems to run fine with sizes
3051
3056
  of 4K. Although you can give it much less if
3052
3057
  necessary (I assume you can give it chunks of
3053
- 1 byte, I haven't tried less then 256 bytes
3058
+ 1 byte, I haven't tried less than 256 bytes
3054
3059
  yet). When this function returns, you may
3055
3060
  want to display any rows that were generated
3056
3061
  in the row callback if you don't already do
@@ -4568,10 +4573,11 @@ a 16-bit linear encoded PNG file is written.
4568
4573
 
4569
4574
  With all APIs row_stride is handled as in the read APIs - it is the spacing
4570
4575
  from one row to the next in component sized units (float) and if negative
4571
- indicates a bottom-up row layout in the buffer.
4576
+ indicates a bottom-up row layout in the buffer. If you pass zero, libpng will
4577
+ calculate the row_stride for you from the width and number of channels.
4572
4578
 
4573
4579
  Note that the write API does not support interlacing, sub-8-bit pixels,
4574
- and indexed (paletted) images.
4580
+ indexed (paletted) images, or most ancillary chunks.
4575
4581
 
4576
4582
  .SH VI. Modifying/Customizing libpng
4577
4583
 
@@ -4859,41 +4865,6 @@ is called for the first time.)
4859
4865
  same as the value of filter_method used
4860
4866
  in png_set_IHDR().
4861
4867
 
4862
- It is also possible to influence how libpng chooses from among the
4863
- available filters. This is done in one or both of two ways - by
4864
- telling it how important it is to keep the same filter for successive
4865
- rows, and by telling it the relative computational costs of the filters.
4866
-
4867
- double weights[3] = {1.5, 1.3, 1.1},
4868
- costs[PNG_FILTER_VALUE_LAST] =
4869
- {1.0, 1.3, 1.3, 1.5, 1.7};
4870
-
4871
- png_set_filter_heuristics(png_ptr,
4872
- PNG_FILTER_HEURISTIC_WEIGHTED, 3,
4873
- weights, costs);
4874
-
4875
- The weights are multiplying factors that indicate to libpng that the
4876
- row filter should be the same for successive rows unless another row filter
4877
- is that many times better than the previous filter. In the above example,
4878
- if the previous 3 filters were SUB, SUB, NONE, the SUB filter could have a
4879
- "sum of absolute differences" 1.5 x 1.3 times higher than other filters
4880
- and still be chosen, while the NONE filter could have a sum 1.1 times
4881
- higher than other filters and still be chosen. Unspecified weights are
4882
- taken to be 1.0, and the specified weights should probably be declining
4883
- like those above in order to emphasize recent filters over older filters.
4884
-
4885
- The filter costs specify for each filter type a relative decoding cost
4886
- to be considered when selecting row filters. This means that filters
4887
- with higher costs are less likely to be chosen over filters with lower
4888
- costs, unless their "sum of absolute differences" is that much smaller.
4889
- The costs do not necessarily reflect the exact computational speeds of
4890
- the various filters, since this would unduly influence the final image
4891
- size.
4892
-
4893
- Note that the numbers above were invented purely for this example and
4894
- are given only to help explain the function usage. Little testing has
4895
- been done to find optimum values for either the costs or the weights.
4896
-
4897
4868
  .SS Requesting debug printout
4898
4869
 
4899
4870
  The macro definition PNG_DEBUG can be used to request debugging
@@ -5535,6 +5506,10 @@ The signatures of many exported functions were changed, such that
5535
5506
  png_infop became png_inforp or png_const_inforp
5536
5507
  where "rp" indicates a "restricted pointer".
5537
5508
 
5509
+ The support for FAR/far types has been eliminated and the definition of
5510
+ png_alloc_size_t is now controlled by a flag so that 'small size_t' systems
5511
+ can select it if necessary.
5512
+
5538
5513
  Error detection in some chunks has improved; in particular the iCCP chunk
5539
5514
  reader now does pretty complete validation of the basic format. Some bad
5540
5515
  profiles that were previously accepted are now accepted with a warning or
@@ -5549,7 +5524,7 @@ means of
5549
5524
  PNG_OPTION_ON);
5550
5525
  #endif
5551
5526
 
5552
- It's not a good idea to do this if you are using the new "simplified API",
5527
+ It's not a good idea to do this if you are using the "simplified API",
5553
5528
  which needs to be able to recognize sRGB profiles conveyed via the iCCP
5554
5529
  chunk.
5555
5530
 
@@ -5608,6 +5583,23 @@ length, which resulted in PNG files that cannot be read beyond the bad iTXt
5608
5583
  chunk. This error was fixed in libpng-1.6.3, and a tool (called
5609
5584
  contrib/tools/png-fix-itxt) has been added to the libpng distribution.
5610
5585
 
5586
+ Starting with libpng-1.6.17, the PNG_SAFE_LIMITS macro was eliminated
5587
+ and safe limits are used by default (users who need larger limits
5588
+ can still override them at compile time or run time, as described above).
5589
+
5590
+ The new limits are
5591
+ default spec limit
5592
+ png_user_width_max 1,000,000 2,147,483,647
5593
+ png_user_height_max 1,000,000 2,147,483,647
5594
+ png_user_chunk_cache_max 128 unlimited
5595
+ png_user_chunk_malloc_max 8,000,000 unlimited
5596
+
5597
+ Starting with libpng-1.6.18, a PNG_RELEASE_BUILD macro was added, which allows
5598
+ library builders to control compilation for an installed system (a release build).
5599
+ It can be set for testing debug or beta builds to ensure that they will compile
5600
+ when the build type is switched to RC or STABLE. In essence this overrides the
5601
+ PNG_LIBPNG_BUILD_BASE_TYPE definition which is not directly user controllable.
5602
+
5611
5603
  .SH XIII. Detecting libpng
5612
5604
 
5613
5605
  The png_get_io_ptr() function has been present since libpng-0.88, has never
@@ -5778,13 +5770,13 @@ Other rules can be inferred by inspecting the libpng source.
5778
5770
 
5779
5771
  .SH XVI. Y2K Compliance in libpng
5780
5772
 
5781
- December 22, 2014
5773
+ July 23, 2015
5782
5774
 
5783
5775
  Since the PNG Development group is an ad-hoc body, we can't make
5784
5776
  an official declaration.
5785
5777
 
5786
5778
  This is your unofficial assurance that libpng from version 0.71 and
5787
- upward through 1.6.16 are Y2K compliant. It is my belief that earlier
5779
+ upward through 1.6.18 are Y2K compliant. It is my belief that earlier
5788
5780
  versions were also Y2K compliant.
5789
5781
 
5790
5782
  Libpng only has two year fields. One is a 2-byte unsigned integer
@@ -6036,6 +6028,12 @@ the first widely used release:
6036
6028
  1.6.16beta01-03 16 10616 16.so.16.16[.0]
6037
6029
  1.6.16rc01-02 16 10616 16.so.16.16[.0]
6038
6030
  1.6.16 16 10616 16.so.16.16[.0]
6031
+ 1.6.17beta01-06 16 10617 16.so.16.17[.0]
6032
+ 1.6.17rc01-06 16 10617 16.so.16.17[.0]
6033
+ 1.6.17 16 10617 16.so.16.17[.0]
6034
+ 1.6.18beta01-09 16 10618 16.so.16.18[.0]
6035
+ 1.6.18rc01-03 16 10618 16.so.16.18[.0]
6036
+ 1.6.18 16 10618 16.so.16.18[.0]
6039
6037
 
6040
6038
  Henceforth the source version will match the shared-library minor
6041
6039
  and patch numbers; the shared-library major version number will be
@@ -6092,7 +6090,7 @@ possible without all of you.
6092
6090
 
6093
6091
  Thanks to Frank J. T. Wojcik for helping with the documentation.
6094
6092
 
6095
- Libpng version 1.6.16 - December 22, 2014:
6093
+ Libpng version 1.6.18 - July 23, 2015:
6096
6094
  Initially created in 1995 by Guy Eric Schalnat, then of Group 42, Inc.
6097
6095
  Currently maintained by Glenn Randers-Pehrson (glennrp at users.sourceforge.net).
6098
6096
 
@@ -6115,44 +6113,39 @@ this sentence.
6115
6113
 
6116
6114
  This code is released under the libpng license.
6117
6115
 
6118
- libpng versions 1.2.6, August 15, 2004, through 1.6.16, December 22, 2014, are
6119
- Copyright (c) 2004,2006-2014 Glenn Randers-Pehrson, and are
6120
- distributed according to the same disclaimer and license as libpng-1.2.5
6121
- with the following individual added to the list of Contributing Authors
6122
-
6123
- Cosmin Truta
6124
-
6125
- libpng versions 1.0.7, July 1, 2000, through 1.2.5 - October 3, 2002, are
6126
- Copyright (c) 2000-2002 Glenn Randers-Pehrson, and are
6116
+ libpng versions 1.0.7, July 1, 2000, through 1.6.18, July 23, 2015, are
6117
+ Copyright (c) 2000-2002, 2004, 2006-2015 Glenn Randers-Pehrson, and are
6127
6118
  distributed according to the same disclaimer and license as libpng-1.0.6
6128
- with the following individuals added to the list of Contributing Authors
6119
+ with the following individuals added to the list of Contributing Authors:
6129
6120
 
6130
6121
  Simon-Pierre Cadieux
6131
6122
  Eric S. Raymond
6123
+ Mans Rullgard
6124
+ Cosmin Truta
6132
6125
  Gilles Vollant
6126
+ James Yu
6133
6127
 
6134
6128
  and with the following additions to the disclaimer:
6135
6129
 
6136
- There is no warranty against interference with your
6137
- enjoyment of the library or against infringement.
6138
- There is no warranty that our efforts or the library
6139
- will fulfill any of your particular purposes or needs.
6140
- This library is provided with all faults, and the entire
6141
- risk of satisfactory quality, performance, accuracy, and
6142
- effort is with the user.
6130
+ There is no warranty against interference with your enjoyment of the
6131
+ library or against infringement. There is no warranty that our
6132
+ efforts or the library will fulfill any of your particular purposes
6133
+ or needs. This library is provided with all faults, and the entire
6134
+ risk of satisfactory quality, performance, accuracy, and effort is with
6135
+ the user.
6143
6136
 
6144
6137
  libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are
6145
- Copyright (c) 1998, 1999 Glenn Randers-Pehrson
6146
- Distributed according to the same disclaimer and license as libpng-0.96,
6147
- with the following individuals added to the list of Contributing Authors:
6138
+ Copyright (c) 1998-2000 Glenn Randers-Pehrson, and are distributed according
6139
+ to the same disclaimer and license as libpng-0.96, with the following
6140
+ individuals added to the list of Contributing Authors:
6148
6141
 
6149
6142
  Tom Lane
6150
6143
  Glenn Randers-Pehrson
6151
6144
  Willem van Schaik
6152
6145
 
6153
6146
  libpng versions 0.89, June 1996, through 0.96, May 1997, are
6154
- Copyright (c) 1996, 1997 Andreas Dilger
6155
- Distributed according to the same disclaimer and license as libpng-0.88,
6147
+ Copyright (c) 1996-1997 Andreas Dilger, and are
6148
+ distributed according to the same disclaimer and license as libpng-0.88,
6156
6149
  with the following individuals added to the list of Contributing Authors:
6157
6150
 
6158
6151
  John Bowler
@@ -6163,7 +6156,7 @@ with the following individuals added to the list of Contributing Authors:
6163
6156
  Tom Tanner
6164
6157
 
6165
6158
  libpng versions 0.5, May 1995, through 0.88, January 1996, are
6166
- Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.
6159
+ Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.
6167
6160
 
6168
6161
  For the purposes of this copyright and license, "Contributing Authors"
6169
6162
  is defined as the following set of individuals:
@@ -6186,13 +6179,13 @@ Permission is hereby granted to use, copy, modify, and distribute this
6186
6179
  source code, or portions hereof, for any purpose, without fee, subject
6187
6180
  to the following restrictions:
6188
6181
 
6189
- 1. The origin of this source code must not be misrepresented.
6182
+ 1. The origin of this source code must not be misrepresented.
6190
6183
 
6191
- 2. Altered versions must be plainly marked as such and
6192
- must not be misrepresented as being the original source.
6184
+ 2. Altered versions must be plainly marked as such and must not
6185
+ be misrepresented as being the original source.
6193
6186
 
6194
- 3. This Copyright notice may not be removed or altered from
6195
- any source or altered source distribution.
6187
+ 3. This Copyright notice may not be removed or altered from any
6188
+ source or altered source distribution.
6196
6189
 
6197
6190
  The Contributing Authors and Group 42, Inc. specifically permit, without
6198
6191
  fee, and encourage the use of this source code as a component to
@@ -6200,21 +6193,21 @@ supporting the PNG file format in commercial products. If you use this
6200
6193
  source code in a product, acknowledgment is not required but would be
6201
6194
  appreciated.
6202
6195
 
6203
-
6204
6196
  A "png_get_copyright" function is available, for convenient use in "about"
6205
6197
  boxes and the like:
6206
6198
 
6207
- printf("%s",png_get_copyright(NULL));
6199
+ printf("%s", png_get_copyright(NULL));
6208
6200
 
6209
6201
  Also, the PNG logo (in PNG format, of course) is supplied in the
6210
6202
  files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31).
6211
6203
 
6212
- Libpng is OSI Certified Open Source Software. OSI Certified Open Source is a
6213
- certification mark of the Open Source Initiative.
6204
+ Libpng is OSI Certified Open Source Software. OSI Certified Open Source is
6205
+ a certification mark of the Open Source Initiative. OSI has not addressed
6206
+ the additional disclaimers inserted at version 1.0.7.
6214
6207
 
6215
6208
  Glenn Randers-Pehrson
6216
6209
  glennrp at users.sourceforge.net
6217
- December 22, 2014
6210
+ July 23, 2015
6218
6211
 
6219
6212
  .\" end of man page
6220
6213
 
@@ -1,6 +1,6 @@
1
- .TH LIBPNGPF 3 "December 22, 2014"
1
+ .TH LIBPNGPF 3 "July 23, 2015"
2
2
  .SH NAME
3
- libpng \- Portable Network Graphics (PNG) Reference Library 1.6.16
3
+ libpng \- Portable Network Graphics (PNG) Reference Library 1.6.18
4
4
  (private functions)
5
5
  .SH SYNOPSIS
6
6
  \fB#include \fI"pngpriv.h"
@@ -1,4 +1,4 @@
1
- .TH PNG 5 "December 22, 2014"
1
+ .TH PNG 5 "July 23, 2015"
2
2
  .SH NAME
3
3
  png \- Portable Network Graphics (PNG) format
4
4
  .SH DESCRIPTION