Guest User

Untitled

a guest
Mar 6th, 2018
244
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.58 KB | None | 0 0
  1. From 7ea8d5fc141c7067c54ffa2b9fbc552c15089ca6 Mon Sep 17 00:00:00 2001
  2. From: ashishk-1 <[email protected]>
  3. Date: Thu, 18 Jan 2018 22:14:05 +0530
  4. Subject: [PATCH] Upgrading libpng library to version 1.6 (#1724)
  5.  
  6. ---
  7. net/instaweb/rewriter/image.cc | 8 ++++++++
  8. pagespeed/kernel/image/gif_reader.cc | 4 ++--
  9. pagespeed/kernel/image/image_converter.cc | 6 ++++++
  10. pagespeed/kernel/image/png_optimizer_test.cc | 6 ++++++
  11. third_party/libpng/libpng.gyp | 26 +++++++++++++++++++++++---
  12. third_party/libpng/src | 2 +-
  13. 6 files changed, 46 insertions(+), 6 deletions(-)
  14.  
  15. diff --git a/net/instaweb/rewriter/image.cc b/net/instaweb/rewriter/image.cc
  16. index 4f631182a..bb67bba35 100644
  17. --- a/net/instaweb/rewriter/image.cc
  18. +++ b/net/instaweb/rewriter/image.cc
  19. @@ -21,6 +21,14 @@
  20. #include <algorithm>
  21. #include <cstddef>
  22.  
  23. +extern "C" {
  24. +#ifdef USE_SYSTEM_ZLIB
  25. +#include "zlib.h"
  26. +#else
  27. +#include "third_party/zlib/zlib.h"
  28. +#endif
  29. +} // extern "C"
  30. +
  31. #include "base/logging.h"
  32. #include "net/instaweb/rewriter/cached_result.pb.h"
  33. #include "net/instaweb/rewriter/public/image_data_lookup.h"
  34. diff --git a/pagespeed/kernel/image/gif_reader.cc b/pagespeed/kernel/image/gif_reader.cc
  35. index 7de69b3d7..bb0bc9cfc 100644
  36. --- a/pagespeed/kernel/image/gif_reader.cc
  37. +++ b/pagespeed/kernel/image/gif_reader.cc
  38. @@ -411,8 +411,8 @@ bool ReadGifToPng(GifFileType* gif_file,
  39. png_uint_32 height = png_get_image_height(paletted_png_ptr,
  40. paletted_info_ptr);
  41. for (png_uint_32 row = 1; row < height; ++row) {
  42. - memcpy(paletted_info_ptr->row_pointers[row],
  43. - paletted_info_ptr->row_pointers[0],
  44. + memcpy(row_pointers[row],
  45. + row_pointers[0],
  46. row_size);
  47. }
  48.  
  49. diff --git a/pagespeed/kernel/image/image_converter.cc b/pagespeed/kernel/image/image_converter.cc
  50. index d796b5065..84b7aff74 100644
  51. --- a/pagespeed/kernel/image/image_converter.cc
  52. +++ b/pagespeed/kernel/image/image_converter.cc
  53. @@ -30,6 +30,12 @@ extern "C" {
  54. #else
  55. #include "third_party/libpng/src/png.h"
  56. #endif
  57. +
  58. +#ifdef USE_SYSTEM_ZLIB
  59. +#include "zlib.h"
  60. +#else
  61. +#include "third_party/zlib/zlib.h"
  62. +#endif
  63. } // extern "C"
  64.  
  65. #include "base/logging.h"
  66. diff --git a/pagespeed/kernel/image/png_optimizer_test.cc b/pagespeed/kernel/image/png_optimizer_test.cc
  67. index 9ad915aff..3faa526a8 100644
  68. --- a/pagespeed/kernel/image/png_optimizer_test.cc
  69. +++ b/pagespeed/kernel/image/png_optimizer_test.cc
  70. @@ -36,6 +36,12 @@ extern "C" {
  71. #else
  72. #include "third_party/libpng/src/png.h"
  73. #endif
  74. +
  75. +#ifdef USE_SYSTEM_ZLIB
  76. +#include "zlib.h"
  77. +#else
  78. +#include "third_party/zlib/zlib.h"
  79. +#endif
  80. }
  81.  
  82. namespace {
  83. diff --git a/third_party/libpng/libpng.gyp b/third_party/libpng/libpng.gyp
  84. index cfaafee00..d96a8f74c 100644
  85. --- a/third_party/libpng/libpng.gyp
  86. +++ b/third_party/libpng/libpng.gyp
  87. @@ -22,14 +22,29 @@
  88. 'dependencies': [
  89. '../zlib/zlib.gyp:zlib',
  90. ],
  91. + 'actions': [
  92. + {
  93. + 'action_name': 'copy_libpngconf_prebuilt',
  94. + 'inputs' : [],
  95. + 'outputs': [''],
  96. + 'action': [
  97. + 'cp',
  98. + '-f',
  99. + '<(DEPTH)/third_party/libpng/src/scripts/pnglibconf.h.prebuilt',
  100. + '<(DEPTH)/third_party/libpng/src/pnglibconf.h',
  101. + ],
  102. + },
  103. + ],
  104. 'msvs_guid': 'C564F145-9172-42C3-BFCB-6014CA97DBCD',
  105. 'sources': [
  106. + 'src/pngpriv.h',
  107. 'src/png.c',
  108. 'src/png.h',
  109. 'src/pngconf.h',
  110. + 'src/pngdebug.h',
  111. 'src/pngerror.c',
  112. - 'src/pnggccrd.c',
  113. 'src/pngget.c',
  114. + 'src/pnginfo.h',
  115. 'src/pngmem.c',
  116. 'src/pngpread.c',
  117. 'src/pngread.c',
  118. @@ -37,9 +52,8 @@
  119. 'src/pngrtran.c',
  120. 'src/pngrutil.c',
  121. 'src/pngset.c',
  122. + 'src/pngstruct.h',
  123. 'src/pngtrans.c',
  124. - 'src/pngusr.h',
  125. - 'src/pngvcrd.c',
  126. 'src/pngwio.c',
  127. 'src/pngwrite.c',
  128. 'src/pngwtran.c',
  129. @@ -54,6 +68,12 @@
  130. # doesn't like that. This define tells libpng to not
  131. # complain about our inclusion of setjmp.h.
  132. 'PNG_SKIP_SETJMP_CHECK',
  133. +
  134. + # The PNG_FREE_ME_SUPPORTED define was dropped in libpng
  135. + # 1.4.0beta78, with its behavior becoming the default
  136. + # behavior.
  137. + # Hence, we define it ourselves for version >= 1.4.0
  138. + 'PNG_FREE_ME_SUPPORTED',
  139. ],
  140. },
  141. 'export_dependent_settings': [
Add Comment
Please, Sign In to add comment