diff options
author | Stephan Bergmann <sbergman@redhat.com> | 2017-02-14 09:11:07 +0100 |
---|---|---|
committer | Stephan Bergmann <sbergman@redhat.com> | 2017-02-14 09:11:07 +0100 |
commit | a9124aceb9907fc56cb8379dd586df0deb7e31f0 (patch) | |
tree | 4f69e75bae89c8d1738e622ad22246b3ead5b3f4 /external | |
parent | b0a23c4c35f90ce3cf6a18a37fe141eb33cd5c57 (diff) |
external/pdfium: Work around -fsanitize=shift
...during CppunitTest_sd_export_tests
Change-Id: Id253fd83a6056783a55f9496ac850dc00e89253d
Diffstat (limited to 'external')
-rw-r--r-- | external/pdfium/UnpackedTarball_pdfium.mk | 3 | ||||
-rw-r--r-- | external/pdfium/ubsan.patch | 19 |
2 files changed, 22 insertions, 0 deletions
diff --git a/external/pdfium/UnpackedTarball_pdfium.mk b/external/pdfium/UnpackedTarball_pdfium.mk index 0cad0169e1b6..17ddd9bd1029 100644 --- a/external/pdfium/UnpackedTarball_pdfium.mk +++ b/external/pdfium/UnpackedTarball_pdfium.mk @@ -13,11 +13,14 @@ pdfium_patches += visibility.patch.1 pdfium_patches += msvc.patch.1 # To support macOS 10.9 baseline. pdfium_patches += macos.patch.1 +pdfium_patches += ubsan.patch $(eval $(call gb_UnpackedTarball_UnpackedTarball,pdfium)) $(eval $(call gb_UnpackedTarball_set_tarball,pdfium,$(PDFIUM_TARBALL))) +$(eval $(call gb_UnpackedTarball_set_patchlevel,pdfium,0)) + $(eval $(call gb_UnpackedTarball_add_patches,pdfium,\ $(foreach patch,$(pdfium_patches),external/pdfium/$(patch)) \ )) diff --git a/external/pdfium/ubsan.patch b/external/pdfium/ubsan.patch new file mode 100644 index 000000000000..08864b3a63b9 --- /dev/null +++ b/external/pdfium/ubsan.patch @@ -0,0 +1,19 @@ +--- third_party/agg23/agg_rasterizer_scanline_aa.h ++++ third_party/agg23/agg_rasterizer_scanline_aa.h +@@ -349,14 +349,14 @@ + cover += cur_cell->cover; + } + if(area) { +- alpha = calculate_alpha((cover << (poly_base_shift + 1)) - area, no_smooth); ++ alpha = calculate_alpha(int(unsigned(cover) << (poly_base_shift + 1)) - area, no_smooth); + if(alpha) { + sl.add_cell(x, alpha); + } + x++; + } + if(num_cells && cur_cell->x > x) { +- alpha = calculate_alpha(cover << (poly_base_shift + 1), no_smooth); ++ alpha = calculate_alpha(unsigned(cover) << (poly_base_shift + 1), no_smooth); + if(alpha) { + sl.add_span(x, cur_cell->x - x, alpha); + } |