cairo 1.15.2-x86-mingw32 → 1.15.3-x86-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 (293) hide show
  1. checksums.yaml +4 -4
  2. data/NEWS +20 -0
  3. data/Rakefile +10 -18
  4. data/ext/cairo/extconf.rb +1 -0
  5. data/ext/cairo/rb_cairo.h +1 -1
  6. data/ext/cairo/rb_cairo_font_options.c +5 -1
  7. data/ext/cairo/rb_cairo_surface.c +32 -6
  8. data/lib/2.2/cairo.so +0 -0
  9. data/lib/2.3/cairo.so +0 -0
  10. data/test/test_font_options.rb +47 -2
  11. data/test/test_pdf_surface.rb +8 -0
  12. data/test/test_svg_surface.rb +8 -0
  13. data/vendor/local/bin/fc-cache.exe +0 -0
  14. data/vendor/local/bin/fc-cat.exe +0 -0
  15. data/vendor/local/bin/fc-list.exe +0 -0
  16. data/vendor/local/bin/fc-match.exe +0 -0
  17. data/vendor/local/bin/fc-pattern.exe +0 -0
  18. data/vendor/local/bin/fc-query.exe +0 -0
  19. data/vendor/local/bin/fc-scan.exe +0 -0
  20. data/vendor/local/bin/fc-validate.exe +0 -0
  21. data/vendor/local/bin/freetype-config +1 -1
  22. data/vendor/local/bin/libcairo-2.dll +0 -0
  23. data/vendor/local/bin/libcairo-gobject-2.dll +0 -0
  24. data/vendor/local/bin/libcairo-script-interpreter-2.dll +0 -0
  25. data/vendor/local/bin/libfontconfig-1.dll +0 -0
  26. data/vendor/local/bin/libfreetype-6.dll +0 -0
  27. data/vendor/local/bin/libgcc_s_sjlj-1.dll +0 -0
  28. data/vendor/local/bin/libpixman-1-0.dll +0 -0
  29. data/vendor/local/bin/libpng-config +1 -1
  30. data/vendor/local/bin/libpng16-16.dll +0 -0
  31. data/vendor/local/bin/libpng16-config +1 -1
  32. data/vendor/local/bin/libstdc++-6.dll +0 -0
  33. data/vendor/local/bin/libwinpthread-1.dll +0 -0
  34. data/vendor/local/bin/libxml2-2.dll +0 -0
  35. data/vendor/local/bin/png-fix-itxt.exe +0 -0
  36. data/vendor/local/bin/pngfix.exe +0 -0
  37. data/vendor/local/bin/xml2-config +4 -4
  38. data/vendor/local/bin/xmlcatalog.exe +0 -0
  39. data/vendor/local/bin/xmllint.exe +0 -0
  40. data/vendor/local/bin/zlib1.dll +0 -0
  41. data/vendor/local/etc/fonts/conf.d/10-hinting-slight.conf +13 -0
  42. data/vendor/local/etc/fonts/conf.d/10-scale-bitmap-fonts.conf +17 -15
  43. data/vendor/local/etc/fonts/conf.d/30-metric-aliases.conf +83 -17
  44. data/vendor/local/etc/fonts/conf.d/45-latin.conf +113 -33
  45. data/vendor/local/etc/fonts/conf.d/60-latin.conf +3 -0
  46. data/vendor/local/etc/fonts/fonts.conf +0 -66
  47. data/vendor/local/include/fontconfig/fcprivate.h +3 -0
  48. data/vendor/local/include/fontconfig/fontconfig.h +48 -7
  49. data/vendor/local/include/freetype2/freetype/config/ftoption.h +95 -13
  50. data/vendor/local/include/freetype2/freetype/config/ftstdlib.h +3 -1
  51. data/vendor/local/include/freetype2/freetype/freetype.h +66 -32
  52. data/vendor/local/include/freetype2/freetype/ftautoh.h +9 -1
  53. data/vendor/local/include/freetype2/freetype/ftcache.h +4 -4
  54. data/vendor/local/include/freetype2/freetype/ftcffdrv.h +18 -5
  55. data/vendor/local/include/freetype2/freetype/ftcid.h +2 -2
  56. data/vendor/local/include/freetype2/freetype/ftgzip.h +5 -5
  57. data/vendor/local/include/freetype2/freetype/ftimage.h +1 -11
  58. data/vendor/local/include/freetype2/freetype/ftmm.h +9 -5
  59. data/vendor/local/include/freetype2/freetype/ftotval.h +6 -6
  60. data/vendor/local/include/freetype2/freetype/ftoutln.h +8 -0
  61. data/vendor/local/include/freetype2/freetype/ftsystem.h +1 -1
  62. data/vendor/local/include/freetype2/freetype/ftttdrv.h +41 -22
  63. data/vendor/local/include/freetype2/freetype/tttables.h +1 -1
  64. data/vendor/local/include/libpng16/png.h +259 -123
  65. data/vendor/local/include/libpng16/pngconf.h +25 -25
  66. data/vendor/local/include/libpng16/pnglibconf.h +2 -1
  67. data/vendor/local/include/libxml2/libxml/dict.h +14 -8
  68. data/vendor/local/include/libxml2/libxml/parser.h +2 -2
  69. data/vendor/local/include/libxml2/libxml/parserInternals.h +1 -1
  70. data/vendor/local/include/libxml2/libxml/schemasInternals.h +46 -46
  71. data/vendor/local/include/libxml2/libxml/tree.h +2 -1
  72. data/vendor/local/include/libxml2/libxml/xmlerror.h +1 -1
  73. data/vendor/local/include/libxml2/libxml/xmlstring.h +4 -4
  74. data/vendor/local/include/libxml2/libxml/xmlversion.h +5 -5
  75. data/vendor/local/include/libxml2/libxml/xpathInternals.h +1 -1
  76. data/vendor/local/include/pixman-1/pixman-version.h +3 -3
  77. data/vendor/local/include/png.h +259 -123
  78. data/vendor/local/include/pngconf.h +25 -25
  79. data/vendor/local/include/pnglibconf.h +2 -1
  80. data/vendor/local/lib/cmake/libxml2/libxml2-config.cmake +3 -3
  81. data/vendor/local/lib/fontconfig.def +10 -1
  82. data/vendor/local/lib/libcairo-gobject.a +0 -0
  83. data/vendor/local/lib/libcairo-gobject.dll.a +0 -0
  84. data/vendor/local/lib/libcairo-gobject.la +2 -2
  85. data/vendor/local/lib/libcairo-script-interpreter.a +0 -0
  86. data/vendor/local/lib/libcairo-script-interpreter.dll.a +0 -0
  87. data/vendor/local/lib/libcairo-script-interpreter.la +2 -2
  88. data/vendor/local/lib/libcairo.a +0 -0
  89. data/vendor/local/lib/libcairo.dll.a +0 -0
  90. data/vendor/local/lib/libcairo.la +2 -2
  91. data/vendor/local/lib/libfontconfig.dll.a +0 -0
  92. data/vendor/local/lib/libfontconfig.la +5 -5
  93. data/vendor/local/lib/libfreetype.a +0 -0
  94. data/vendor/local/lib/libfreetype.dll.a +0 -0
  95. data/vendor/local/lib/libfreetype.la +1 -1
  96. data/vendor/local/lib/libpixman-1.a +0 -0
  97. data/vendor/local/lib/libpixman-1.dll.a +0 -0
  98. data/vendor/local/lib/libpixman-1.la +5 -5
  99. data/vendor/local/lib/libpng.a +0 -0
  100. data/vendor/local/lib/libpng.dll.a +0 -0
  101. data/vendor/local/lib/libpng.la +2 -2
  102. data/vendor/local/lib/libpng16.a +0 -0
  103. data/vendor/local/lib/libpng16.dll.a +0 -0
  104. data/vendor/local/lib/libpng16.la +2 -2
  105. data/vendor/local/lib/libxml2.a +0 -0
  106. data/vendor/local/lib/libxml2.dll.a +0 -0
  107. data/vendor/local/lib/libxml2.la +3 -3
  108. data/vendor/local/lib/libz.a +0 -0
  109. data/vendor/local/lib/libz.dll.a +0 -0
  110. data/vendor/local/lib/pkgconfig/fontconfig.pc +3 -3
  111. data/vendor/local/lib/pkgconfig/freetype2.pc +1 -1
  112. data/vendor/local/lib/pkgconfig/libpng.pc +1 -1
  113. data/vendor/local/lib/pkgconfig/libpng16.pc +1 -1
  114. data/vendor/local/lib/pkgconfig/libxml-2.0.pc +2 -2
  115. data/vendor/local/lib/pkgconfig/pixman-1.pc +1 -1
  116. data/vendor/local/lib/xml2Conf.sh +2 -2
  117. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/Copyright +0 -0
  118. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/examples/testHTML.c +0 -0
  119. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/examples/testSAX.c +0 -0
  120. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/examples/testXPath.c +0 -0
  121. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/examples/xmllint.c +19 -11
  122. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/DOM.gif +0 -0
  123. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/FAQ.html +0 -0
  124. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/Libxml2-Logo-180x168.gif +0 -0
  125. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/Libxml2-Logo-90x34.gif +0 -0
  126. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/encoding.html +0 -0
  127. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/examples.xml +0 -0
  128. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/examples.xsl +0 -0
  129. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/book1.html +1 -1
  130. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/home.png +0 -0
  131. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/index.html +1 -1
  132. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/left.png +0 -0
  133. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-DOCBparser.html +0 -0
  134. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-HTMLparser.html +0 -0
  135. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-HTMLtree.html +0 -0
  136. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-SAX.html +0 -0
  137. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-SAX2.html +0 -0
  138. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-c14n.html +0 -0
  139. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-catalog.html +0 -0
  140. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-chvalid.html +0 -0
  141. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-debugXML.html +0 -0
  142. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-dict.html +14 -14
  143. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-encoding.html +0 -0
  144. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-entities.html +0 -0
  145. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-globals.html +0 -0
  146. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-hash.html +0 -0
  147. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-lib.html +1 -1
  148. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-list.html +0 -0
  149. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-nanoftp.html +0 -0
  150. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-nanohttp.html +0 -0
  151. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-parser.html +1 -1
  152. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-parserInternals.html +0 -0
  153. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-pattern.html +0 -0
  154. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-relaxng.html +0 -0
  155. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-schemasInternals.html +0 -0
  156. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-schematron.html +0 -0
  157. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-threads.html +0 -0
  158. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-tree.html +2 -1
  159. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-uri.html +0 -0
  160. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-valid.html +0 -0
  161. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xinclude.html +0 -0
  162. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xlink.html +0 -0
  163. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlIO.html +0 -0
  164. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlautomata.html +0 -0
  165. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlerror.html +0 -0
  166. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlexports.html +0 -0
  167. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlmemory.html +1 -1
  168. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlmodule.html +0 -0
  169. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlreader.html +0 -0
  170. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlregexp.html +1 -1
  171. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlsave.html +0 -0
  172. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlschemas.html +0 -0
  173. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlschemastypes.html +0 -0
  174. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlstring.html +4 -4
  175. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlunicode.html +0 -0
  176. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlversion.html +0 -0
  177. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xmlwriter.html +0 -0
  178. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xpath.html +0 -0
  179. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xpathInternals.html +0 -0
  180. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xpointer.html +0 -0
  181. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/libxml-xzlib.html +0 -0
  182. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/right.png +0 -0
  183. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/html/up.png +0 -0
  184. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/index.html +0 -0
  185. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/io1.c +0 -0
  186. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/io1.res +1 -1
  187. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/io2.c +0 -0
  188. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/io2.res +0 -0
  189. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/libxml.gif +0 -0
  190. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/parse1.c +0 -0
  191. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/parse2.c +0 -0
  192. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/parse3.c +0 -0
  193. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/parse4.c +0 -0
  194. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/reader1.c +0 -0
  195. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/reader1.res +0 -0
  196. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/reader2.c +0 -0
  197. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/reader3.c +0 -0
  198. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/reader3.res +0 -0
  199. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/reader4.c +0 -0
  200. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/reader4.res +0 -0
  201. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/redhat.gif +0 -0
  202. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/smallfootonly.gif +0 -0
  203. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/structure.gif +0 -0
  204. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/test1.xml +0 -0
  205. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/test2.xml +0 -0
  206. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/test3.xml +0 -0
  207. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/testWriter.c +0 -0
  208. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tree1.c +0 -0
  209. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tree1.res +0 -0
  210. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tree2.c +0 -0
  211. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tree2.res +0 -0
  212. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tst.xml +0 -0
  213. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/apa.html +0 -0
  214. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/apb.html +0 -0
  215. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/apc.html +0 -0
  216. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/apd.html +0 -0
  217. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/ape.html +0 -0
  218. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/apf.html +0 -0
  219. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/apg.html +0 -0
  220. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/aph.html +0 -0
  221. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/api.html +0 -0
  222. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/ar01s02.html +0 -0
  223. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/ar01s03.html +0 -0
  224. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/ar01s04.html +0 -0
  225. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/ar01s05.html +0 -0
  226. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/ar01s06.html +0 -0
  227. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/ar01s07.html +0 -0
  228. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/ar01s08.html +0 -0
  229. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/ar01s09.html +0 -0
  230. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/blank.png +0 -0
  231. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/callouts/1.png +0 -0
  232. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/callouts/10.png +0 -0
  233. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/callouts/2.png +0 -0
  234. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/callouts/3.png +0 -0
  235. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/callouts/4.png +0 -0
  236. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/callouts/5.png +0 -0
  237. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/callouts/6.png +0 -0
  238. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/callouts/7.png +0 -0
  239. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/callouts/8.png +0 -0
  240. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/callouts/9.png +0 -0
  241. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/caution.png +0 -0
  242. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/draft.png +0 -0
  243. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/home.png +0 -0
  244. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/important.png +0 -0
  245. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/next.png +0 -0
  246. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/note.png +0 -0
  247. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/prev.png +0 -0
  248. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/tip.png +0 -0
  249. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/toc-blank.png +0 -0
  250. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/toc-minus.png +0 -0
  251. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/toc-plus.png +0 -0
  252. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/up.png +0 -0
  253. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/images/warning.png +0 -0
  254. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/includeaddattribute.c +0 -0
  255. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/includeaddkeyword.c +0 -0
  256. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/includeconvert.c +0 -0
  257. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/includegetattribute.c +0 -0
  258. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/includekeyword.c +0 -0
  259. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/includexpath.c +0 -0
  260. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/index.html +0 -0
  261. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/ix01.html +0 -0
  262. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/tutorial/xmltutorial.pdf +0 -0
  263. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/w3c.png +0 -0
  264. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/writer.xml +0 -0
  265. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/xml.html +165 -0
  266. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/xpath1.c +0 -0
  267. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/xpath1.res +0 -0
  268. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/xpath2.c +0 -0
  269. data/vendor/local/share/doc/{libxml2-2.9.2 → libxml2-2.9.4}/html/xpath2.res +0 -0
  270. data/vendor/local/share/fontconfig/conf.avail/10-hinting-full.conf +13 -0
  271. data/vendor/local/share/fontconfig/conf.avail/10-hinting-medium.conf +13 -0
  272. data/vendor/local/share/fontconfig/conf.avail/10-hinting-none.conf +13 -0
  273. data/vendor/local/share/fontconfig/conf.avail/10-hinting-slight.conf +13 -0
  274. data/vendor/local/share/fontconfig/conf.avail/10-scale-bitmap-fonts.conf +17 -15
  275. data/vendor/local/share/fontconfig/conf.avail/30-metric-aliases.conf +83 -17
  276. data/vendor/local/share/fontconfig/conf.avail/45-latin.conf +113 -33
  277. data/vendor/local/share/fontconfig/conf.avail/60-latin.conf +3 -0
  278. data/vendor/local/share/gtk-doc/html/libxml2/general.html +1 -1
  279. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-dict.html +16 -16
  280. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-parser.html +1 -1
  281. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-tree.html +3 -2
  282. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlmemory.html +1 -1
  283. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlregexp.html +1 -1
  284. data/vendor/local/share/gtk-doc/html/libxml2/libxml2-xmlstring.html +4 -4
  285. data/vendor/local/share/gtk-doc/html/libxml2/libxml2.devhelp +1 -0
  286. data/vendor/local/share/license/fontconfig/README +220 -2
  287. data/vendor/local/share/license/freetype/README +5 -5
  288. data/vendor/local/share/license/libpng/README +4 -1
  289. data/vendor/local/share/man/man1/freetype-config.1 +1 -1
  290. data/vendor/local/share/man/man3/libpng.3 +82 -27
  291. data/vendor/local/share/man/man3/libpngpf.3 +2 -2
  292. data/vendor/local/share/man/man5/png.5 +2 -2
  293. metadata +185 -176
@@ -1,9 +1,9 @@
1
1
 
2
2
  /* pngconf.h - machine configurable file for libpng
3
3
  *
4
- * libpng version 1.6.21, January 15, 2016
4
+ * libpng version 1.6.26, October 20, 2016
5
5
  *
6
- * Copyright (c) 1998-2002,2004,2006-2015 Glenn Randers-Pehrson
6
+ * Copyright (c) 1998-2002,2004,2006-2016 Glenn Randers-Pehrson
7
7
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
8
8
  * (Version 0.88 Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc.)
9
9
  *
@@ -188,27 +188,27 @@
188
188
  * compatible with GCC or Visual C because of different calling conventions.
189
189
  */
190
190
  # if PNG_API_RULE == 2
191
- /* If this line results in an error, either because __watcall is not
192
- * understood or because of a redefine just below you cannot use *this*
193
- * build of the library with the compiler you are using. *This* build was
194
- * build using Watcom and applications must also be built using Watcom!
195
- */
191
+ /* If this line results in an error, either because __watcall is not
192
+ * understood or because of a redefine just below you cannot use *this*
193
+ * build of the library with the compiler you are using. *This* build was
194
+ * build using Watcom and applications must also be built using Watcom!
195
+ */
196
196
  # define PNGCAPI __watcall
197
197
  # endif
198
198
 
199
199
  # if defined(__GNUC__) || (defined(_MSC_VER) && (_MSC_VER >= 800))
200
200
  # define PNGCAPI __cdecl
201
201
  # if PNG_API_RULE == 1
202
- /* If this line results in an error __stdcall is not understood and
203
- * PNG_API_RULE should not have been set to '1'.
204
- */
202
+ /* If this line results in an error __stdcall is not understood and
203
+ * PNG_API_RULE should not have been set to '1'.
204
+ */
205
205
  # define PNGAPI __stdcall
206
206
  # endif
207
207
  # else
208
- /* An older compiler, or one not detected (erroneously) above,
209
- * if necessary override on the command line to get the correct
210
- * variants for the compiler.
211
- */
208
+ /* An older compiler, or one not detected (erroneously) above,
209
+ * if necessary override on the command line to get the correct
210
+ * variants for the compiler.
211
+ */
212
212
  # ifndef PNGCAPI
213
213
  # define PNGCAPI _cdecl
214
214
  # endif
@@ -225,10 +225,10 @@
225
225
 
226
226
  # if (defined(_MSC_VER) && _MSC_VER < 800) ||\
227
227
  (defined(__BORLANDC__) && __BORLANDC__ < 0x500)
228
- /* older Borland and MSC
229
- * compilers used '__export' and required this to be after
230
- * the type.
231
- */
228
+ /* older Borland and MSC
229
+ * compilers used '__export' and required this to be after
230
+ * the type.
231
+ */
232
232
  # ifndef PNG_EXPORT_TYPE
233
233
  # define PNG_EXPORT_TYPE(type) type PNG_IMPEXP
234
234
  # endif
@@ -244,9 +244,9 @@
244
244
  # if (defined(__IBMC__) || defined(__IBMCPP__)) && defined(__OS2__)
245
245
  # define PNGAPI _System
246
246
  # else /* !Windows/x86 && !OS/2 */
247
- /* Use the defaults, or define PNG*API on the command line (but
248
- * this will have to be done for every compile!)
249
- */
247
+ /* Use the defaults, or define PNG*API on the command line (but
248
+ * this will have to be done for every compile!)
249
+ */
250
250
  # endif /* other system, !OS/2 */
251
251
  #endif /* !Windows/x86 */
252
252
 
@@ -267,7 +267,7 @@
267
267
  */
268
268
  #ifndef PNG_IMPEXP
269
269
  # if defined(PNG_USE_DLL) && defined(PNG_DLL_IMPORT)
270
- /* This forces use of a DLL, disallowing static linking */
270
+ /* This forces use of a DLL, disallowing static linking */
271
271
  # define PNG_IMPEXP PNG_DLL_IMPORT
272
272
  # endif
273
273
 
@@ -340,7 +340,7 @@
340
340
  * less efficient code.
341
341
  */
342
342
  # if defined(__clang__) && defined(__has_attribute)
343
- /* Clang defines both __clang__ and __GNUC__. Check __clang__ first. */
343
+ /* Clang defines both __clang__ and __GNUC__. Check __clang__ first. */
344
344
  # if !defined(PNG_USE_RESULT) && __has_attribute(__warn_unused_result__)
345
345
  # define PNG_USE_RESULT __attribute__((__warn_unused_result__))
346
346
  # endif
@@ -507,9 +507,9 @@
507
507
  # error "libpng requires a signed 32-bit (or more) type"
508
508
  #endif
509
509
 
510
- #if UINT_MAX > 4294967294
510
+ #if UINT_MAX > 4294967294U
511
511
  typedef unsigned int png_uint_32;
512
- #elif ULONG_MAX > 4294967294
512
+ #elif ULONG_MAX > 4294967294U
513
513
  typedef unsigned long int png_uint_32;
514
514
  #else
515
515
  # error "libpng requires an unsigned 32-bit (or more) type"
@@ -1,6 +1,6 @@
1
1
  /* pnglibconf.h - library build configuration */
2
2
 
3
- /* libpng version 1.6.21, January 15, 2016 */
3
+ /* libpng version 1.6.26, October 20, 2016 */
4
4
 
5
5
  /* Copyright (c) 1998-2016 Glenn Randers-Pehrson */
6
6
 
@@ -107,6 +107,7 @@
107
107
  #define PNG_SIMPLIFIED_READ_SUPPORTED
108
108
  #define PNG_SIMPLIFIED_WRITE_AFIRST_SUPPORTED
109
109
  #define PNG_SIMPLIFIED_WRITE_BGR_SUPPORTED
110
+ #define PNG_SIMPLIFIED_WRITE_STDIO_SUPPORTED
110
111
  #define PNG_SIMPLIFIED_WRITE_SUPPORTED
111
112
  #define PNG_STDIO_SUPPORTED
112
113
  #define PNG_STORE_UNKNOWN_CHUNKS_SUPPORTED
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Summary: string dictionnary
2
+ * Summary: string dictionary
3
3
  * Description: dictionary of reusable strings, just used to avoid allocation
4
4
  * and freeing operations.
5
5
  *
@@ -11,6 +11,18 @@
11
11
  #ifndef __XML_DICT_H__
12
12
  #define __XML_DICT_H__
13
13
 
14
+ #ifdef __cplusplus
15
+ #define __XML_EXTERNC extern "C"
16
+ #else
17
+ #define __XML_EXTERNC
18
+ #endif
19
+
20
+ /*
21
+ * The dictionary.
22
+ */
23
+ __XML_EXTERNC typedef struct _xmlDict xmlDict;
24
+ __XML_EXTERNC typedef xmlDict *xmlDictPtr;
25
+
14
26
  #include <limits.h>
15
27
  #include <libxml/xmlversion.h>
16
28
  #include <libxml/tree.h>
@@ -19,12 +31,6 @@
19
31
  extern "C" {
20
32
  #endif
21
33
 
22
- /*
23
- * The dictionnary.
24
- */
25
- typedef struct _xmlDict xmlDict;
26
- typedef xmlDict *xmlDictPtr;
27
-
28
34
  /*
29
35
  * Initializer
30
36
  */
@@ -48,7 +54,7 @@ XMLPUBFUN void XMLCALL
48
54
  xmlDictFree (xmlDictPtr dict);
49
55
 
50
56
  /*
51
- * Lookup of entry in the dictionnary.
57
+ * Lookup of entry in the dictionary.
52
58
  */
53
59
  XMLPUBFUN const xmlChar * XMLCALL
54
60
  xmlDictLookup (xmlDictPtr dict,
@@ -260,7 +260,7 @@ struct _xmlParserCtxt {
260
260
  void *catalogs; /* document's own catalog */
261
261
  int recovery; /* run in recovery mode */
262
262
  int progressive; /* is this a progressive parsing */
263
- xmlDictPtr dict; /* dictionnary for the parser */
263
+ xmlDictPtr dict; /* dictionary for the parser */
264
264
  const xmlChar * *atts; /* array for the attributes callbacks */
265
265
  int maxatts; /* the size of the array */
266
266
  int docdict; /* use strings from dict to build tree */
@@ -1099,7 +1099,7 @@ typedef enum {
1099
1099
  XML_PARSE_SAX1 = 1<<9, /* use the SAX1 interface internally */
1100
1100
  XML_PARSE_XINCLUDE = 1<<10,/* Implement XInclude substitition */
1101
1101
  XML_PARSE_NONET = 1<<11,/* Forbid network access */
1102
- XML_PARSE_NODICT = 1<<12,/* Do not reuse the context dictionnary */
1102
+ XML_PARSE_NODICT = 1<<12,/* Do not reuse the context dictionary */
1103
1103
  XML_PARSE_NSCLEAN = 1<<13,/* remove redundant namespaces declarations */
1104
1104
  XML_PARSE_NOCDATA = 1<<14,/* merge CDATA as text nodes */
1105
1105
  XML_PARSE_NOXINCNODE= 1<<15,/* do not generate XINCLUDE START/END nodes */
@@ -351,7 +351,7 @@ XMLPUBFUN void XMLCALL
351
351
  xmlParserErrors xmlerr,
352
352
  const char *msg,
353
353
  const xmlChar * str1,
354
- const xmlChar * str2);
354
+ const xmlChar * str2) LIBXML_ATTR_FORMAT(3,0);
355
355
  #endif
356
356
 
357
357
  /**
@@ -28,52 +28,52 @@ extern "C" {
28
28
 
29
29
  typedef enum {
30
30
  XML_SCHEMAS_UNKNOWN = 0,
31
- XML_SCHEMAS_STRING,
32
- XML_SCHEMAS_NORMSTRING,
33
- XML_SCHEMAS_DECIMAL,
34
- XML_SCHEMAS_TIME,
35
- XML_SCHEMAS_GDAY,
36
- XML_SCHEMAS_GMONTH,
37
- XML_SCHEMAS_GMONTHDAY,
38
- XML_SCHEMAS_GYEAR,
39
- XML_SCHEMAS_GYEARMONTH,
40
- XML_SCHEMAS_DATE,
41
- XML_SCHEMAS_DATETIME,
42
- XML_SCHEMAS_DURATION,
43
- XML_SCHEMAS_FLOAT,
44
- XML_SCHEMAS_DOUBLE,
45
- XML_SCHEMAS_BOOLEAN,
46
- XML_SCHEMAS_TOKEN,
47
- XML_SCHEMAS_LANGUAGE,
48
- XML_SCHEMAS_NMTOKEN,
49
- XML_SCHEMAS_NMTOKENS,
50
- XML_SCHEMAS_NAME,
51
- XML_SCHEMAS_QNAME,
52
- XML_SCHEMAS_NCNAME,
53
- XML_SCHEMAS_ID,
54
- XML_SCHEMAS_IDREF,
55
- XML_SCHEMAS_IDREFS,
56
- XML_SCHEMAS_ENTITY,
57
- XML_SCHEMAS_ENTITIES,
58
- XML_SCHEMAS_NOTATION,
59
- XML_SCHEMAS_ANYURI,
60
- XML_SCHEMAS_INTEGER,
61
- XML_SCHEMAS_NPINTEGER,
62
- XML_SCHEMAS_NINTEGER,
63
- XML_SCHEMAS_NNINTEGER,
64
- XML_SCHEMAS_PINTEGER,
65
- XML_SCHEMAS_INT,
66
- XML_SCHEMAS_UINT,
67
- XML_SCHEMAS_LONG,
68
- XML_SCHEMAS_ULONG,
69
- XML_SCHEMAS_SHORT,
70
- XML_SCHEMAS_USHORT,
71
- XML_SCHEMAS_BYTE,
72
- XML_SCHEMAS_UBYTE,
73
- XML_SCHEMAS_HEXBINARY,
74
- XML_SCHEMAS_BASE64BINARY,
75
- XML_SCHEMAS_ANYTYPE,
76
- XML_SCHEMAS_ANYSIMPLETYPE
31
+ XML_SCHEMAS_STRING = 1,
32
+ XML_SCHEMAS_NORMSTRING = 2,
33
+ XML_SCHEMAS_DECIMAL = 3,
34
+ XML_SCHEMAS_TIME = 4,
35
+ XML_SCHEMAS_GDAY = 5,
36
+ XML_SCHEMAS_GMONTH = 6,
37
+ XML_SCHEMAS_GMONTHDAY = 7,
38
+ XML_SCHEMAS_GYEAR = 8,
39
+ XML_SCHEMAS_GYEARMONTH = 9,
40
+ XML_SCHEMAS_DATE = 10,
41
+ XML_SCHEMAS_DATETIME = 11,
42
+ XML_SCHEMAS_DURATION = 12,
43
+ XML_SCHEMAS_FLOAT = 13,
44
+ XML_SCHEMAS_DOUBLE = 14,
45
+ XML_SCHEMAS_BOOLEAN = 15,
46
+ XML_SCHEMAS_TOKEN = 16,
47
+ XML_SCHEMAS_LANGUAGE = 17,
48
+ XML_SCHEMAS_NMTOKEN = 18,
49
+ XML_SCHEMAS_NMTOKENS = 19,
50
+ XML_SCHEMAS_NAME = 20,
51
+ XML_SCHEMAS_QNAME = 21,
52
+ XML_SCHEMAS_NCNAME = 22,
53
+ XML_SCHEMAS_ID = 23,
54
+ XML_SCHEMAS_IDREF = 24,
55
+ XML_SCHEMAS_IDREFS = 25,
56
+ XML_SCHEMAS_ENTITY = 26,
57
+ XML_SCHEMAS_ENTITIES = 27,
58
+ XML_SCHEMAS_NOTATION = 28,
59
+ XML_SCHEMAS_ANYURI = 29,
60
+ XML_SCHEMAS_INTEGER = 30,
61
+ XML_SCHEMAS_NPINTEGER = 31,
62
+ XML_SCHEMAS_NINTEGER = 32,
63
+ XML_SCHEMAS_NNINTEGER = 33,
64
+ XML_SCHEMAS_PINTEGER = 34,
65
+ XML_SCHEMAS_INT = 35,
66
+ XML_SCHEMAS_UINT = 36,
67
+ XML_SCHEMAS_LONG = 37,
68
+ XML_SCHEMAS_ULONG = 38,
69
+ XML_SCHEMAS_SHORT = 39,
70
+ XML_SCHEMAS_USHORT = 40,
71
+ XML_SCHEMAS_BYTE = 41,
72
+ XML_SCHEMAS_UBYTE = 42,
73
+ XML_SCHEMAS_HEXBINARY = 43,
74
+ XML_SCHEMAS_BASE64BINARY = 44,
75
+ XML_SCHEMAS_ANYTYPE = 45,
76
+ XML_SCHEMAS_ANYSIMPLETYPE = 46
77
77
  } xmlSchemaValType;
78
78
 
79
79
  /*
@@ -76,7 +76,8 @@ typedef enum {
76
76
  XML_BUFFER_ALLOC_EXACT, /* grow only to the minimal size */
77
77
  XML_BUFFER_ALLOC_IMMUTABLE, /* immutable buffer */
78
78
  XML_BUFFER_ALLOC_IO, /* special allocation scheme used for I/O */
79
- XML_BUFFER_ALLOC_HYBRID /* exact up to a threshold, and doubleit thereafter */
79
+ XML_BUFFER_ALLOC_HYBRID, /* exact up to a threshold, and doubleit thereafter */
80
+ XML_BUFFER_ALLOC_BOUNDED /* limit the upper size of the buffer */
80
81
  } xmlBufferAllocationScheme;
81
82
 
82
83
  /**
@@ -937,7 +937,7 @@ XMLPUBFUN void XMLCALL
937
937
  int code,
938
938
  xmlNodePtr node,
939
939
  const char *msg,
940
- const char *extra);
940
+ const char *extra) LIBXML_ATTR_FORMAT(4,0);
941
941
  #endif
942
942
  #ifdef __cplusplus
943
943
  }
@@ -97,13 +97,13 @@ XMLPUBFUN xmlChar * XMLCALL
97
97
  XMLPUBFUN int XMLCALL
98
98
  xmlStrPrintf (xmlChar *buf,
99
99
  int len,
100
- const xmlChar *msg,
101
- ...);
100
+ const char *msg,
101
+ ...) LIBXML_ATTR_FORMAT(3,4);
102
102
  XMLPUBFUN int XMLCALL
103
103
  xmlStrVPrintf (xmlChar *buf,
104
104
  int len,
105
- const xmlChar *msg,
106
- va_list ap);
105
+ const char *msg,
106
+ va_list ap) LIBXML_ATTR_FORMAT(3,0);
107
107
 
108
108
  XMLPUBFUN int XMLCALL
109
109
  xmlGetUTF8Char (const unsigned char *utf,
@@ -29,21 +29,21 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(int version);
29
29
  *
30
30
  * the version string like "1.2.3"
31
31
  */
32
- #define LIBXML_DOTTED_VERSION "2.9.2"
32
+ #define LIBXML_DOTTED_VERSION "2.9.4"
33
33
 
34
34
  /**
35
35
  * LIBXML_VERSION:
36
36
  *
37
37
  * the version number: 1.2.3 value is 10203
38
38
  */
39
- #define LIBXML_VERSION 20902
39
+ #define LIBXML_VERSION 20904
40
40
 
41
41
  /**
42
42
  * LIBXML_VERSION_STRING:
43
43
  *
44
44
  * the version number string, 1.2.3 value is "10203"
45
45
  */
46
- #define LIBXML_VERSION_STRING "20902"
46
+ #define LIBXML_VERSION_STRING "20904"
47
47
 
48
48
  /**
49
49
  * LIBXML_VERSION_EXTRA:
@@ -58,7 +58,7 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(int version);
58
58
  * Macro to check that the libxml version in use is compatible with
59
59
  * the version the software has been compiled against
60
60
  */
61
- #define LIBXML_TEST_VERSION xmlCheckVersion(20902);
61
+ #define LIBXML_TEST_VERSION xmlCheckVersion(20904);
62
62
 
63
63
  #ifndef VMS
64
64
  #if 0
@@ -435,7 +435,7 @@ XMLPUBFUN void XMLCALL xmlCheckVersion(int version);
435
435
  */
436
436
 
437
437
  #ifndef LIBXML_ATTR_ALLOC_SIZE
438
- # if ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3)))
438
+ # if (!defined(__clang__) && ((__GNUC__ > 4) || ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 3))))
439
439
  # define LIBXML_ATTR_ALLOC_SIZE(x) __attribute__((alloc_size(x)))
440
440
  # else
441
441
  # define LIBXML_ATTR_ALLOC_SIZE(x)
@@ -229,7 +229,7 @@ XMLPUBFUN void * XMLCALL
229
229
  * Empties a node-set.
230
230
  */
231
231
  #define xmlXPathEmptyNodeSet(ns) \
232
- { while ((ns)->nodeNr > 0) (ns)->nodeTab[(ns)->nodeNr--] = NULL; }
232
+ { while ((ns)->nodeNr > 0) (ns)->nodeTab[--(ns)->nodeNr] = NULL; }
233
233
 
234
234
  /**
235
235
  * CHECK_ERROR:
@@ -32,10 +32,10 @@
32
32
  #endif
33
33
 
34
34
  #define PIXMAN_VERSION_MAJOR 0
35
- #define PIXMAN_VERSION_MINOR 32
36
- #define PIXMAN_VERSION_MICRO 6
35
+ #define PIXMAN_VERSION_MINOR 34
36
+ #define PIXMAN_VERSION_MICRO 0
37
37
 
38
- #define PIXMAN_VERSION_STRING "0.32.6"
38
+ #define PIXMAN_VERSION_STRING "0.34.0"
39
39
 
40
40
  #define PIXMAN_VERSION_ENCODE(major, minor, micro) ( \
41
41
  ((major) * 10000) \
@@ -1,7 +1,7 @@
1
1
 
2
2
  /* png.h - header file for PNG reference library
3
3
  *
4
- * libpng version 1.6.21, January 15, 2016
4
+ * libpng version 1.6.26, October 20, 2016
5
5
  *
6
6
  * Copyright (c) 1998-2002,2004,2006-2016 Glenn Randers-Pehrson
7
7
  * (Version 0.96 Copyright (c) 1996, 1997 Andreas Dilger)
@@ -12,7 +12,7 @@
12
12
  * Authors and maintainers:
13
13
  * libpng versions 0.71, May 1995, through 0.88, January 1996: Guy Schalnat
14
14
  * libpng versions 0.89, June 1996, through 0.96, May 1997: Andreas Dilger
15
- * libpng versions 0.97, January 1998, through 1.6.21, January 15, 2016:
15
+ * libpng versions 0.97, January 1998, through 1.6.26, October 20, 2016:
16
16
  * Glenn Randers-Pehrson.
17
17
  * See also "Contributing Authors", below.
18
18
  */
@@ -25,7 +25,11 @@
25
25
  *
26
26
  * This code is released under the libpng license.
27
27
  *
28
- * libpng versions 1.0.7, July 1, 2000, through 1.6.21, January 15, 2016, are
28
+ * Some files in the "contrib" directory and some configure-generated
29
+ * files that are distributed with libpng have other copyright owners and
30
+ * are released under other open source licenses.
31
+ *
32
+ * libpng versions 1.0.7, July 1, 2000 through 1.6.26, October 20, 2016 are
29
33
  * Copyright (c) 2000-2002, 2004, 2006-2016 Glenn Randers-Pehrson, are
30
34
  * derived from libpng-1.0.6, and are distributed according to the same
31
35
  * disclaimer and license as libpng-1.0.6 with the following individuals
@@ -37,6 +41,7 @@
37
41
  * Cosmin Truta
38
42
  * Gilles Vollant
39
43
  * James Yu
44
+ * Mandar Sahastrabuddhe
40
45
  *
41
46
  * and with the following additions to the disclaimer:
42
47
  *
@@ -47,6 +52,10 @@
47
52
  * risk of satisfactory quality, performance, accuracy, and effort is with
48
53
  * the user.
49
54
  *
55
+ * Some files in the "contrib" directory have other copyright owners and
56
+ * are released under other open source licenses.
57
+ *
58
+ *
50
59
  * libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are
51
60
  * Copyright (c) 1998-2000 Glenn Randers-Pehrson, are derived from
52
61
  * libpng-0.96, and are distributed according to the same disclaimer and
@@ -57,6 +66,9 @@
57
66
  * Glenn Randers-Pehrson
58
67
  * Willem van Schaik
59
68
  *
69
+ * Some files in the "scripts" directory have different copyright owners
70
+ * but are also released under this license.
71
+ *
60
72
  * libpng versions 0.89, June 1996, through 0.96, May 1997, are
61
73
  * Copyright (c) 1996-1997 Andreas Dilger, are derived from libpng-0.88,
62
74
  * and are distributed according to the same disclaimer and license as
@@ -70,6 +82,9 @@
70
82
  * Greg Roelofs
71
83
  * Tom Tanner
72
84
  *
85
+ * Some files in the "scripts" directory have other copyright owners
86
+ * but are released under this license.
87
+ *
73
88
  * libpng versions 0.5, May 1995, through 0.88, January 1996, are
74
89
  * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc.
75
90
  *
@@ -109,6 +124,29 @@
109
124
  * appreciated.
110
125
  *
111
126
  * END OF COPYRIGHT NOTICE, DISCLAIMER, and LICENSE.
127
+ *
128
+ * TRADEMARK:
129
+ *
130
+ * The name "libpng" has not been registered by the Copyright owner
131
+ * as a trademark in any jurisdiction. However, because libpng has
132
+ * been distributed and maintained world-wide, continually since 1995,
133
+ * the Copyright owner claims "common-law trademark protection" in any
134
+ * jurisdiction where common-law trademark is recognized.
135
+ *
136
+ * OSI CERTIFICATION:
137
+ *
138
+ * Libpng is OSI Certified Open Source Software. OSI Certified Open Source is
139
+ * a certification mark of the Open Source Initiative. OSI has not addressed
140
+ * the additional disclaimers inserted at version 1.0.7.
141
+ *
142
+ * EXPORT CONTROL:
143
+ *
144
+ * The Copyright owner believes that the Export Control Classification
145
+ * Number (ECCN) for libpng is EAR99, which means not subject to export
146
+ * controls or International Traffic in Arms Regulations (ITAR) because
147
+ * it is open source, publicly available software, that does not contain
148
+ * any encryption software. See the EAR, paragraphs 734.3(b)(3) and
149
+ * 734.7(b).
112
150
  */
113
151
 
114
152
  /*
@@ -121,12 +159,6 @@
121
159
  * files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31).
122
160
  */
123
161
 
124
- /*
125
- * Libpng is OSI Certified Open Source Software. OSI Certified Open Source is
126
- * a certification mark of the Open Source Initiative. OSI has not addressed
127
- * the additional disclaimers inserted at version 1.0.7.
128
- */
129
-
130
162
  /*
131
163
  * The contributing authors would like to thank all those who helped
132
164
  * with testing, bug fixes, and patience. This wouldn't have been
@@ -182,11 +214,11 @@
182
214
  * ...
183
215
  * 1.0.19 10 10019 10.so.0.19[.0]
184
216
  * ...
185
- * 1.2.53 13 10253 12.so.0.53[.0]
217
+ * 1.2.56 13 10256 12.so.0.56[.0]
186
218
  * ...
187
- * 1.5.23 15 10523 15.so.15.23[.0]
219
+ * 1.5.27 15 10527 15.so.15.27[.0]
188
220
  * ...
189
- * 1.6.21 16 10621 16.so.16.21[.0]
221
+ * 1.6.26 16 10626 16.so.16.26[.0]
190
222
  *
191
223
  * Henceforth the source version will match the shared-library major
192
224
  * and minor numbers; the shared-library major version number will be
@@ -214,13 +246,13 @@
214
246
  * Y2K compliance in libpng:
215
247
  * =========================
216
248
  *
217
- * January 15, 2016
249
+ * October 20, 2016
218
250
  *
219
251
  * Since the PNG Development group is an ad-hoc body, we can't make
220
252
  * an official declaration.
221
253
  *
222
254
  * This is your unofficial assurance that libpng from version 0.71 and
223
- * upward through 1.6.21 are Y2K compliant. It is my belief that
255
+ * upward through 1.6.26 are Y2K compliant. It is my belief that
224
256
  * earlier versions were also Y2K compliant.
225
257
  *
226
258
  * Libpng only has two year fields. One is a 2-byte unsigned integer
@@ -282,9 +314,8 @@
282
314
  */
283
315
 
284
316
  /* Version information for png.h - this should match the version in png.c */
285
- #define PNG_LIBPNG_VER_STRING "1.6.21"
286
- #define PNG_HEADER_VERSION_STRING \
287
- " libpng version 1.6.21 - January 15, 2016\n"
317
+ #define PNG_LIBPNG_VER_STRING "1.6.26"
318
+ #define PNG_HEADER_VERSION_STRING " libpng version 1.6.26 - October 20, 2016\n"
288
319
 
289
320
  #define PNG_LIBPNG_VER_SONUM 16
290
321
  #define PNG_LIBPNG_VER_DLLNUM 16
@@ -292,7 +323,7 @@
292
323
  /* These should match the first 3 components of PNG_LIBPNG_VER_STRING: */
293
324
  #define PNG_LIBPNG_VER_MAJOR 1
294
325
  #define PNG_LIBPNG_VER_MINOR 6
295
- #define PNG_LIBPNG_VER_RELEASE 21
326
+ #define PNG_LIBPNG_VER_RELEASE 26
296
327
 
297
328
  /* This should match the numeric part of the final component of
298
329
  * PNG_LIBPNG_VER_STRING, omitting any leading zero:
@@ -323,20 +354,20 @@
323
354
  * version 1.0.0 was mis-numbered 100 instead of 10000). From
324
355
  * version 1.0.1 it's xxyyzz, where x=major, y=minor, z=release
325
356
  */
326
- #define PNG_LIBPNG_VER 10621 /* 1.6.21 */
357
+ #define PNG_LIBPNG_VER 10626 /* 1.6.26 */
327
358
 
328
359
  /* Library configuration: these options cannot be changed after
329
360
  * the library has been built.
330
361
  */
331
362
  #ifndef PNGLCONF_H
332
- /* If pnglibconf.h is missing, you can
333
- * copy scripts/pnglibconf.h.prebuilt to pnglibconf.h
334
- */
363
+ /* If pnglibconf.h is missing, you can
364
+ * copy scripts/pnglibconf.h.prebuilt to pnglibconf.h
365
+ */
335
366
  # include "pnglibconf.h"
336
367
  #endif
337
368
 
338
369
  #ifndef PNG_VERSION_INFO_ONLY
339
- /* Machine specific configuration. */
370
+ /* Machine specific configuration. */
340
371
  # include "pngconf.h"
341
372
  #endif
342
373
 
@@ -433,7 +464,7 @@ extern "C" {
433
464
  /* This triggers a compiler error in png.c, if png.c and png.h
434
465
  * do not agree upon the version number.
435
466
  */
436
- typedef char* png_libpng_version_1_6_21;
467
+ typedef char* png_libpng_version_1_6_26;
437
468
 
438
469
  /* Basic control structions. Read libpng-manual.txt or libpng.3 for more info.
439
470
  *
@@ -626,17 +657,17 @@ typedef png_time * * png_timepp;
626
657
  */
627
658
  typedef struct png_unknown_chunk_t
628
659
  {
629
- png_byte name[5]; /* Textual chunk name with '\0' terminator */
630
- png_byte *data; /* Data, should not be modified on read! */
631
- png_size_t size;
632
-
633
- /* On write 'location' must be set using the flag values listed below.
634
- * Notice that on read it is set by libpng however the values stored have
635
- * more bits set than are listed below. Always treat the value as a
636
- * bitmask. On write set only one bit - setting multiple bits may cause the
637
- * chunk to be written in multiple places.
638
- */
639
- png_byte location; /* mode of operation at read time */
660
+ png_byte name[5]; /* Textual chunk name with '\0' terminator */
661
+ png_byte *data; /* Data, should not be modified on read! */
662
+ png_size_t size;
663
+
664
+ /* On write 'location' must be set using the flag values listed below.
665
+ * Notice that on read it is set by libpng however the values stored have
666
+ * more bits set than are listed below. Always treat the value as a
667
+ * bitmask. On write set only one bit - setting multiple bits may cause the
668
+ * chunk to be written in multiple places.
669
+ */
670
+ png_byte location; /* mode of operation at read time */
640
671
  }
641
672
  png_unknown_chunk;
642
673
 
@@ -734,24 +765,22 @@ typedef png_unknown_chunk * * png_unknown_chunkpp;
734
765
  * data in the info_struct to be written into the output file. The values
735
766
  * of the PNG_INFO_<chunk> defines should NOT be changed.
736
767
  */
737
- #define PNG_INFO_gAMA 0x0001
738
- #define PNG_INFO_sBIT 0x0002
739
- #define PNG_INFO_cHRM 0x0004
740
- #define PNG_INFO_PLTE 0x0008
741
- #define PNG_INFO_tRNS 0x0010
742
- #define PNG_INFO_bKGD 0x0020
743
- #define PNG_INFO_hIST 0x0040
744
- #define PNG_INFO_pHYs 0x0080
745
- #define PNG_INFO_oFFs 0x0100
746
- #define PNG_INFO_tIME 0x0200
747
- #define PNG_INFO_pCAL 0x0400
748
- #define PNG_INFO_sRGB 0x0800 /* GR-P, 0.96a */
749
- #define PNG_INFO_iCCP 0x1000 /* ESR, 1.0.6 */
750
- #define PNG_INFO_sPLT 0x2000 /* ESR, 1.0.6 */
751
- #define PNG_INFO_sCAL 0x4000 /* ESR, 1.0.6 */
752
- #if INT_MAX >= 0x8000 /* else this might break */
753
- #define PNG_INFO_IDAT 0x8000 /* ESR, 1.0.6 */
754
- #endif
768
+ #define PNG_INFO_gAMA 0x0001U
769
+ #define PNG_INFO_sBIT 0x0002U
770
+ #define PNG_INFO_cHRM 0x0004U
771
+ #define PNG_INFO_PLTE 0x0008U
772
+ #define PNG_INFO_tRNS 0x0010U
773
+ #define PNG_INFO_bKGD 0x0020U
774
+ #define PNG_INFO_hIST 0x0040U
775
+ #define PNG_INFO_pHYs 0x0080U
776
+ #define PNG_INFO_oFFs 0x0100U
777
+ #define PNG_INFO_tIME 0x0200U
778
+ #define PNG_INFO_pCAL 0x0400U
779
+ #define PNG_INFO_sRGB 0x0800U /* GR-P, 0.96a */
780
+ #define PNG_INFO_iCCP 0x1000U /* ESR, 1.0.6 */
781
+ #define PNG_INFO_sPLT 0x2000U /* ESR, 1.0.6 */
782
+ #define PNG_INFO_sCAL 0x4000U /* ESR, 1.0.6 */
783
+ #define PNG_INFO_IDAT 0x8000U /* ESR, 1.0.6 */
755
784
 
756
785
  /* This is used for the transformation routines, as some of them
757
786
  * change these values for the row. It also should enable using
@@ -1322,7 +1351,7 @@ PNG_EXPORT(229, void, png_set_scale_16, (png_structrp png_ptr));
1322
1351
  #endif
1323
1352
 
1324
1353
  #ifdef PNG_READ_STRIP_16_TO_8_SUPPORTED
1325
- #define PNG_READ_16_TO_8 SUPPORTED /* Name prior to 1.5.4 */
1354
+ #define PNG_READ_16_TO_8_SUPPORTED /* Name prior to 1.5.4 */
1326
1355
  /* Strip the second byte of information from a 16-bit depth file. */
1327
1356
  PNG_EXPORT(48, void, png_set_strip_16, (png_structrp png_ptr));
1328
1357
  #endif
@@ -1473,8 +1502,8 @@ PNG_EXPORT(67, void, png_set_filter, (png_structrp png_ptr, int method,
1473
1502
  #define PNG_FILTER_UP 0x20
1474
1503
  #define PNG_FILTER_AVG 0x40
1475
1504
  #define PNG_FILTER_PAETH 0x80
1476
- #define PNG_ALL_FILTERS (PNG_FILTER_NONE | PNG_FILTER_SUB | PNG_FILTER_UP | \
1477
- PNG_FILTER_AVG | PNG_FILTER_PAETH)
1505
+ #define PNG_FAST_FILTERS (PNG_FILTER_NONE | PNG_FILTER_SUB | PNG_FILTER_UP)
1506
+ #define PNG_ALL_FILTERS (PNG_FAST_FILTERS | PNG_FILTER_AVG | PNG_FILTER_PAETH)
1478
1507
 
1479
1508
  /* Filter values (not flags) - used in pngwrite.c, pngwutil.c for now.
1480
1509
  * These defines should NOT be changed.
@@ -1751,21 +1780,21 @@ PNG_EXPORT(99, void, png_data_freer, (png_const_structrp png_ptr,
1751
1780
  #define PNG_SET_WILL_FREE_DATA 1
1752
1781
  #define PNG_USER_WILL_FREE_DATA 2
1753
1782
  /* Flags for png_ptr->free_me and info_ptr->free_me */
1754
- #define PNG_FREE_HIST 0x0008
1755
- #define PNG_FREE_ICCP 0x0010
1756
- #define PNG_FREE_SPLT 0x0020
1757
- #define PNG_FREE_ROWS 0x0040
1758
- #define PNG_FREE_PCAL 0x0080
1759
- #define PNG_FREE_SCAL 0x0100
1783
+ #define PNG_FREE_HIST 0x0008U
1784
+ #define PNG_FREE_ICCP 0x0010U
1785
+ #define PNG_FREE_SPLT 0x0020U
1786
+ #define PNG_FREE_ROWS 0x0040U
1787
+ #define PNG_FREE_PCAL 0x0080U
1788
+ #define PNG_FREE_SCAL 0x0100U
1760
1789
  #ifdef PNG_STORE_UNKNOWN_CHUNKS_SUPPORTED
1761
- # define PNG_FREE_UNKN 0x0200
1790
+ # define PNG_FREE_UNKN 0x0200U
1762
1791
  #endif
1763
- /* PNG_FREE_LIST 0x0400 removed in 1.6.0 because it is ignored */
1764
- #define PNG_FREE_PLTE 0x1000
1765
- #define PNG_FREE_TRNS 0x2000
1766
- #define PNG_FREE_TEXT 0x4000
1767
- #define PNG_FREE_ALL 0x7fff
1768
- #define PNG_FREE_MUL 0x4220 /* PNG_FREE_SPLT|PNG_FREE_TEXT|PNG_FREE_UNKN */
1792
+ /* PNG_FREE_LIST 0x0400U removed in 1.6.0 because it is ignored */
1793
+ #define PNG_FREE_PLTE 0x1000U
1794
+ #define PNG_FREE_TRNS 0x2000U
1795
+ #define PNG_FREE_TEXT 0x4000U
1796
+ #define PNG_FREE_ALL 0x7fffU
1797
+ #define PNG_FREE_MUL 0x4220U /* PNG_FREE_SPLT|PNG_FREE_TEXT|PNG_FREE_UNKN */
1769
1798
 
1770
1799
  #ifdef PNG_USER_MEM_SUPPORTED
1771
1800
  PNG_EXPORTA(100, png_voidp, png_malloc_default, (png_const_structrp png_ptr,
@@ -2271,8 +2300,10 @@ PNG_EXPORT(171, void, png_set_sCAL_s, (png_const_structrp png_ptr,
2271
2300
  * except for the IHDR, PLTE, tRNS, IDAT, and IEND chunks (which continue to
2272
2301
  * be processed by libpng.
2273
2302
  */
2303
+ #ifdef PNG_HANDLE_AS_UNKNOWN_SUPPORTED
2274
2304
  PNG_EXPORT(172, void, png_set_keep_unknown_chunks, (png_structrp png_ptr,
2275
2305
  int keep, png_const_bytep chunk_list, int num_chunks));
2306
+ #endif /* HANDLE_AS_UNKNOWN */
2276
2307
 
2277
2308
  /* The "keep" PNG_HANDLE_CHUNK_ parameter for the specified chunk is returned;
2278
2309
  * the result is therefore true (non-zero) if special handling is required,
@@ -2280,7 +2311,7 @@ PNG_EXPORT(172, void, png_set_keep_unknown_chunks, (png_structrp png_ptr,
2280
2311
  */
2281
2312
  PNG_EXPORT(173, int, png_handle_as_unknown, (png_const_structrp png_ptr,
2282
2313
  png_const_bytep chunk_name));
2283
- #endif
2314
+ #endif /* SET_UNKNOWN_CHUNKS */
2284
2315
 
2285
2316
  #ifdef PNG_STORE_UNKNOWN_CHUNKS_SUPPORTED
2286
2317
  PNG_EXPORT(174, void, png_set_unknown_chunks, (png_const_structrp png_ptr,
@@ -2501,33 +2532,37 @@ PNG_EXPORT(216, png_uint_32, png_get_io_chunk_type,
2501
2532
 
2502
2533
  /* fg and bg should be in `gamma 1.0' space; alpha is the opacity */
2503
2534
 
2504
- # define png_composite(composite, fg, alpha, bg) \
2505
- { png_uint_16 temp = (png_uint_16)((png_uint_16)(fg) \
2506
- * (png_uint_16)(alpha) \
2507
- + (png_uint_16)(bg)*(png_uint_16)(255 \
2508
- - (png_uint_16)(alpha)) + 128); \
2509
- (composite) = (png_byte)(((temp + (temp >> 8)) >> 8) & 0xff); }
2510
-
2511
- # define png_composite_16(composite, fg, alpha, bg) \
2512
- { png_uint_32 temp = (png_uint_32)((png_uint_32)(fg) \
2513
- * (png_uint_32)(alpha) \
2514
- + (png_uint_32)(bg)*(65535 \
2515
- - (png_uint_32)(alpha)) + 32768); \
2516
- (composite) = (png_uint_16)(0xffff & ((temp + (temp >> 16)) >> 16)); }
2535
+ # define png_composite(composite, fg, alpha, bg) \
2536
+ { \
2537
+ png_uint_16 temp = (png_uint_16)((png_uint_16)(fg) \
2538
+ * (png_uint_16)(alpha) \
2539
+ + (png_uint_16)(bg)*(png_uint_16)(255 \
2540
+ - (png_uint_16)(alpha)) + 128); \
2541
+ (composite) = (png_byte)(((temp + (temp >> 8)) >> 8) & 0xff); \
2542
+ }
2543
+
2544
+ # define png_composite_16(composite, fg, alpha, bg) \
2545
+ { \
2546
+ png_uint_32 temp = (png_uint_32)((png_uint_32)(fg) \
2547
+ * (png_uint_32)(alpha) \
2548
+ + (png_uint_32)(bg)*(65535 \
2549
+ - (png_uint_32)(alpha)) + 32768); \
2550
+ (composite) = (png_uint_16)(0xffff & ((temp + (temp >> 16)) >> 16)); \
2551
+ }
2517
2552
 
2518
2553
  #else /* Standard method using integer division */
2519
2554
 
2520
- # define png_composite(composite, fg, alpha, bg) \
2521
- (composite) = \
2522
- (png_byte)(0xff & (((png_uint_16)(fg) * (png_uint_16)(alpha) + \
2523
- (png_uint_16)(bg) * (png_uint_16)(255 - (png_uint_16)(alpha)) + \
2524
- 127) / 255))
2525
-
2526
- # define png_composite_16(composite, fg, alpha, bg) \
2527
- (composite) = \
2528
- (png_uint_16)(0xffff & (((png_uint_32)(fg) * (png_uint_32)(alpha) + \
2529
- (png_uint_32)(bg)*(png_uint_32)(65535 - (png_uint_32)(alpha)) + \
2530
- 32767) / 65535))
2555
+ # define png_composite(composite, fg, alpha, bg) \
2556
+ (composite) = \
2557
+ (png_byte)(0xff & (((png_uint_16)(fg) * (png_uint_16)(alpha) + \
2558
+ (png_uint_16)(bg) * (png_uint_16)(255 - (png_uint_16)(alpha)) + \
2559
+ 127) / 255))
2560
+
2561
+ # define png_composite_16(composite, fg, alpha, bg) \
2562
+ (composite) = \
2563
+ (png_uint_16)(0xffff & (((png_uint_32)(fg) * (png_uint_32)(alpha) + \
2564
+ (png_uint_32)(bg)*(png_uint_32)(65535 - (png_uint_32)(alpha)) + \
2565
+ 32767) / 65535))
2531
2566
  #endif /* READ_COMPOSITE_NODIV */
2532
2567
 
2533
2568
  #ifdef PNG_READ_INT_FUNCTIONS_SUPPORTED
@@ -2563,38 +2598,38 @@ PNG_EXPORT(207, void, png_save_uint_16, (png_bytep buf, unsigned int i));
2563
2598
  * format for negative values, which is almost certainly true.
2564
2599
  */
2565
2600
  # define PNG_get_uint_32(buf) \
2566
- (((png_uint_32)(*(buf)) << 24) + \
2567
- ((png_uint_32)(*((buf) + 1)) << 16) + \
2568
- ((png_uint_32)(*((buf) + 2)) << 8) + \
2569
- ((png_uint_32)(*((buf) + 3))))
2601
+ (((png_uint_32)(*(buf)) << 24) + \
2602
+ ((png_uint_32)(*((buf) + 1)) << 16) + \
2603
+ ((png_uint_32)(*((buf) + 2)) << 8) + \
2604
+ ((png_uint_32)(*((buf) + 3))))
2570
2605
 
2571
2606
  /* From libpng-1.4.0 until 1.4.4, the png_get_uint_16 macro (but not the
2572
2607
  * function) incorrectly returned a value of type png_uint_32.
2573
2608
  */
2574
2609
  # define PNG_get_uint_16(buf) \
2575
- ((png_uint_16) \
2576
- (((unsigned int)(*(buf)) << 8) + \
2577
- ((unsigned int)(*((buf) + 1)))))
2610
+ ((png_uint_16) \
2611
+ (((unsigned int)(*(buf)) << 8) + \
2612
+ ((unsigned int)(*((buf) + 1)))))
2578
2613
 
2579
2614
  # define PNG_get_int_32(buf) \
2580
- ((png_int_32)((*(buf) & 0x80) \
2581
- ? -((png_int_32)(((png_get_uint_32(buf)^0xffffffffU)+1U)&0x7fffffffU)) \
2582
- : (png_int_32)png_get_uint_32(buf)))
2615
+ ((png_int_32)((*(buf) & 0x80) \
2616
+ ? -((png_int_32)(((png_get_uint_32(buf)^0xffffffffU)+1U)&0x7fffffffU)) \
2617
+ : (png_int_32)png_get_uint_32(buf)))
2583
2618
 
2584
- /* If PNG_PREFIX is defined the same thing as below happens in pnglibconf.h,
2585
- * but defining a macro name prefixed with PNG_PREFIX.
2586
- */
2619
+ /* If PNG_PREFIX is defined the same thing as below happens in pnglibconf.h,
2620
+ * but defining a macro name prefixed with PNG_PREFIX.
2621
+ */
2587
2622
  # ifndef PNG_PREFIX
2588
- # define png_get_uint_32(buf) PNG_get_uint_32(buf)
2589
- # define png_get_uint_16(buf) PNG_get_uint_16(buf)
2590
- # define png_get_int_32(buf) PNG_get_int_32(buf)
2623
+ # define png_get_uint_32(buf) PNG_get_uint_32(buf)
2624
+ # define png_get_uint_16(buf) PNG_get_uint_16(buf)
2625
+ # define png_get_int_32(buf) PNG_get_int_32(buf)
2591
2626
  # endif
2592
2627
  #else
2593
2628
  # ifdef PNG_PREFIX
2594
- /* No macros; revert to the (redefined) function */
2595
- # define PNG_get_uint_32 (png_get_uint_32)
2596
- # define PNG_get_uint_16 (png_get_uint_16)
2597
- # define PNG_get_int_32 (png_get_int_32)
2629
+ /* No macros; revert to the (redefined) function */
2630
+ # define PNG_get_uint_32 (png_get_uint_32)
2631
+ # define PNG_get_uint_16 (png_get_uint_16)
2632
+ # define PNG_get_int_32 (png_get_int_32)
2598
2633
  # endif
2599
2634
  #endif
2600
2635
 
@@ -2889,12 +2924,19 @@ typedef struct
2889
2924
  * is the minimum 'row stride', the minimum count of components between each
2890
2925
  * row. For a color-mapped image this is the minimum number of bytes in a
2891
2926
  * row.
2927
+ *
2928
+ * WARNING: this macro overflows for some images with more than one component
2929
+ * and very large image widths. libpng will refuse to process an image where
2930
+ * this macro would overflow.
2892
2931
  */
2893
2932
 
2894
2933
  #define PNG_IMAGE_BUFFER_SIZE(image, row_stride)\
2895
2934
  (PNG_IMAGE_PIXEL_COMPONENT_SIZE((image).format)*(image).height*(row_stride))
2896
2935
  /* Return the size, in bytes, of an image buffer given a png_image and a row
2897
2936
  * stride - the number of components to leave space for in each row.
2937
+ *
2938
+ * WARNING: this macro overflows a 32-bit integer for some large PNG images,
2939
+ * libpng will refuse to process an image where such an overflow would occur.
2898
2940
  */
2899
2941
 
2900
2942
  #define PNG_IMAGE_SIZE(image)\
@@ -3015,7 +3057,6 @@ PNG_EXPORT(238, void, png_image_free, (png_imagep image));
3015
3057
  #endif /* SIMPLIFIED_READ */
3016
3058
 
3017
3059
  #ifdef PNG_SIMPLIFIED_WRITE_SUPPORTED
3018
- #ifdef PNG_STDIO_SUPPORTED
3019
3060
  /* WRITE APIS
3020
3061
  * ----------
3021
3062
  * For write you must initialize a png_image structure to describe the image to
@@ -3032,6 +3073,7 @@ PNG_EXPORT(238, void, png_image_free, (png_imagep image));
3032
3073
  * values do not correspond to the colors in sRGB.
3033
3074
  * colormap_entries: set to the number of entries in the color-map (0 to 256)
3034
3075
  */
3076
+ #ifdef PNG_SIMPLIFIED_WRITE_STDIO_SUPPORTED
3035
3077
  PNG_EXPORT(239, int, png_image_write_to_file, (png_imagep image,
3036
3078
  const char *file, int convert_to_8bit, const void *buffer,
3037
3079
  png_int_32 row_stride, const void *colormap));
@@ -3041,8 +3083,9 @@ PNG_EXPORT(240, int, png_image_write_to_stdio, (png_imagep image, FILE *file,
3041
3083
  int convert_to_8_bit, const void *buffer, png_int_32 row_stride,
3042
3084
  const void *colormap));
3043
3085
  /* Write the image to the given (FILE*). */
3086
+ #endif /* SIMPLIFIED_WRITE_STDIO */
3044
3087
 
3045
- /* With both write APIs if image is in one of the linear formats with 16-bit
3088
+ /* With all write APIs if image is in one of the linear formats with 16-bit
3046
3089
  * data then setting convert_to_8_bit will cause the output to be an 8-bit PNG
3047
3090
  * gamma encoded according to the sRGB specification, otherwise a 16-bit linear
3048
3091
  * encoded PNG file is written.
@@ -3054,13 +3097,103 @@ PNG_EXPORT(240, int, png_image_write_to_stdio, (png_imagep image, FILE *file,
3054
3097
  *
3055
3098
  * With all APIs row_stride is handled as in the read APIs - it is the spacing
3056
3099
  * from one row to the next in component sized units (1 or 2 bytes) and if
3057
- * negative indicates a bottom-up row layout in the buffer. If row_stride is zero,
3058
- * libpng will calculate it for you from the image width and number of channels.
3100
+ * negative indicates a bottom-up row layout in the buffer. If row_stride is
3101
+ * zero, libpng will calculate it for you from the image width and number of
3102
+ * channels.
3059
3103
  *
3060
- * Note that the write API does not support interlacing, sub-8-bit pixels, indexed
3061
- * PNG (color_type 3) or most ancillary chunks.
3104
+ * Note that the write API does not support interlacing, sub-8-bit pixels or
3105
+ * most ancillary chunks. If you need to write text chunks (e.g. for copyright
3106
+ * notices) you need to use one of the other APIs.
3062
3107
  */
3063
- #endif /* STDIO */
3108
+
3109
+ PNG_EXPORT(245, int, png_image_write_to_memory, (png_imagep image, void *memory,
3110
+ png_alloc_size_t * PNG_RESTRICT memory_bytes, int convert_to_8_bit,
3111
+ const void *buffer, png_int_32 row_stride, const void *colormap));
3112
+ /* Write the image to the given memory buffer. The function both writes the
3113
+ * whole PNG data stream to *memory and updates *memory_bytes with the count
3114
+ * of bytes written.
3115
+ *
3116
+ * 'memory' may be NULL. In this case *memory_bytes is not read however on
3117
+ * success the number of bytes which would have been written will still be
3118
+ * stored in *memory_bytes. On failure *memory_bytes will contain 0.
3119
+ *
3120
+ * If 'memory' is not NULL it must point to memory[*memory_bytes] of
3121
+ * writeable memory.
3122
+ *
3123
+ * If the function returns success memory[*memory_bytes] (if 'memory' is not
3124
+ * NULL) contains the written PNG data. *memory_bytes will always be less
3125
+ * than or equal to the original value.
3126
+ *
3127
+ * If the function returns false and *memory_bytes was not changed an error
3128
+ * occured during write. If *memory_bytes was changed, or is not 0 if
3129
+ * 'memory' was NULL, the write would have succeeded but for the memory
3130
+ * buffer being too small. *memory_bytes contains the required number of
3131
+ * bytes and will be bigger that the original value.
3132
+ */
3133
+
3134
+ #define png_image_write_get_memory_size(image, size, convert_to_8_bit, buffer,\
3135
+ row_stride, colormap)\
3136
+ png_image_write_to_memory(&(image), 0, &(size), convert_to_8_bit, buffer,\
3137
+ row_stride, colormap)
3138
+ /* Return the amount of memory in 'size' required to compress this image.
3139
+ * The png_image structure 'image' must be filled in as in the above
3140
+ * function and must not be changed before the actual write call, the buffer
3141
+ * and all other parameters must also be identical to that in the final
3142
+ * write call. The 'size' variable need not be initialized.
3143
+ *
3144
+ * NOTE: the macro returns true/false, if false is returned 'size' will be
3145
+ * set to zero and the write failed and probably will fail if tried again.
3146
+ */
3147
+
3148
+ /* You can pre-allocate the buffer by making sure it is of sufficient size
3149
+ * regardless of the amount of compression achieved. The buffer size will
3150
+ * always be bigger than the original image and it will never be filled. The
3151
+ * following macros are provided to assist in allocating the buffer.
3152
+ */
3153
+ #define PNG_IMAGE_DATA_SIZE(image) (PNG_IMAGE_SIZE(image)+(image).height)
3154
+ /* The number of uncompressed bytes in the PNG byte encoding of the image;
3155
+ * uncompressing the PNG IDAT data will give this number of bytes.
3156
+ *
3157
+ * NOTE: while PNG_IMAGE_SIZE cannot overflow for an image in memory this
3158
+ * macro can because of the extra bytes used in the PNG byte encoding. You
3159
+ * need to avoid this macro if your image size approaches 2^30 in width or
3160
+ * height. The same goes for the remainder of these macros; they all produce
3161
+ * bigger numbers than the actual in-memory image size.
3162
+ */
3163
+ #ifndef PNG_ZLIB_MAX_SIZE
3164
+ # define PNG_ZLIB_MAX_SIZE(b) ((b)+(((b)+7U)>>3)+(((b)+63U)>>6)+11U)
3165
+ /* An upper bound on the number of compressed bytes given 'b' uncompressed
3166
+ * bytes. This is based on deflateBounds() in zlib; different
3167
+ * implementations of zlib compression may conceivably produce more data so
3168
+ * if your zlib implementation is not zlib itself redefine this macro
3169
+ * appropriately.
3170
+ */
3171
+ #endif
3172
+
3173
+ #define PNG_IMAGE_COMPRESSED_SIZE_MAX(image)\
3174
+ PNG_ZLIB_MAX_SIZE((png_alloc_size_t)PNG_IMAGE_DATA_SIZE(image))
3175
+ /* An upper bound on the size of the data in the PNG IDAT chunks. */
3176
+
3177
+ #define PNG_IMAGE_PNG_SIZE_MAX_(image, image_size)\
3178
+ ((8U/*sig*/+25U/*IHDR*/+16U/*gAMA*/+44U/*cHRM*/+12U/*IEND*/+\
3179
+ (((image).format&PNG_FORMAT_FLAG_COLORMAP)?/*colormap: PLTE, tRNS*/\
3180
+ 12U+3U*(image).colormap_entries/*PLTE data*/+\
3181
+ (((image).format&PNG_FORMAT_FLAG_ALPHA)?\
3182
+ 12U/*tRNS*/+(image).colormap_entries:0U):0U)+\
3183
+ 12U)+(12U*((image_size)/PNG_ZBUF_SIZE))/*IDAT*/+(image_size))
3184
+ /* A helper for the following macro; if your compiler cannot handle the
3185
+ * following macro use this one with the result of
3186
+ * PNG_IMAGE_COMPRESSED_SIZE_MAX(image) as the second argument (most
3187
+ * compilers should handle this just fine.)
3188
+ */
3189
+
3190
+ #define PNG_IMAGE_PNG_SIZE_MAX(image)\
3191
+ PNG_IMAGE_PNG_SIZE_MAX_(image, PNG_IMAGE_COMPRESSED_SIZE_MAX(image))
3192
+ /* An upper bound on the total length of the PNG data stream for 'image'.
3193
+ * The result is of type png_alloc_size_t, on 32-bit systems this may
3194
+ * overflow even though PNG_IMAGE_DATA_SIZE does not overflow; the write will
3195
+ * run out of buffer space but return a corrected size which should work.
3196
+ */
3064
3197
  #endif /* SIMPLIFIED_WRITE */
3065
3198
  /*******************************************************************************
3066
3199
  * END OF SIMPLIFIED API
@@ -3094,7 +3227,10 @@ PNG_EXPORT(240, int, png_image_write_to_stdio, (png_imagep image, FILE *file,
3094
3227
  #endif
3095
3228
  #define PNG_MAXIMUM_INFLATE_WINDOW 2 /* SOFTWARE: force maximum window */
3096
3229
  #define PNG_SKIP_sRGB_CHECK_PROFILE 4 /* SOFTWARE: Check ICC profile for sRGB */
3097
- #define PNG_OPTION_NEXT 6 /* Next option - numbers must be even */
3230
+ #ifdef PNG_MIPS_MSA_API_SUPPORTED
3231
+ # define PNG_MIPS_MSA 6 /* HARDWARE: MIPS Msa SIMD instructions supported */
3232
+ #endif
3233
+ #define PNG_OPTION_NEXT 8 /* Next option - numbers must be even */
3098
3234
 
3099
3235
  /* Return values: NOTE: there are four values and 'off' is *not* zero */
3100
3236
  #define PNG_OPTION_UNSET 0 /* Unset - defaults to off */
@@ -3118,7 +3254,7 @@ PNG_EXPORT(244, int, png_set_option, (png_structrp png_ptr, int option,
3118
3254
  * one to use is one more than this.)
3119
3255
  */
3120
3256
  #ifdef PNG_EXPORT_LAST_ORDINAL
3121
- PNG_EXPORT_LAST_ORDINAL(244);
3257
+ PNG_EXPORT_LAST_ORDINAL(245);
3122
3258
  #endif
3123
3259
 
3124
3260
  #ifdef __cplusplus