summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordsinclair <dsinclair@chromium.org>2017-11-29 15:53:50 +0000
committerChromium commit bot <commit-bot@chromium.org>2017-11-29 15:53:50 +0000
commitc0062b913cf7e45fc398ac96d83777ae8812f9a7 (patch)
treee620f7fadd5cd78716fa023da95ce80804d3638c
parent7829b7048d5cf13a4f1a806fed57f2440d1b5dec (diff)
downloadpdfium-c0062b913cf7e45fc398ac96d83777ae8812f9a7.tar.xz
Revert "[CFI] Enable type generalization for LCMS"
This reverts commit 7829b7048d5cf13a4f1a806fed57f2440d1b5dec. Reason for revert: Breaking the waterfall build. Looks like it's finding a leak it wasn't before? https://build.chromium.org/p/client.pdfium/builders/linux_xfa_asan_lsan/builds/2376/steps/embeddertests/logs/stdio Original change's description: > [CFI] Enable type generalization for LCMS > > Control Flow Integrity [1] indirect call checking verifies that function > pointers only call valid functions with a matching type signature. This > condition can be too strict, a common form of 'abstraction' relies on > function pointers being cast to generalize argument pointer types to > void*. > > In LCMS these failures occur because of casts of function pointers called > as both _cmsInterpFn16 (cmsInterpFunction.Lerp16) and _cmsOPTeval16Fn (as > an argument to _cmsPipelineSetOptimizationParameters) types making it > difficult to refactor out easily. Instead, enabling the type > generalization build config weakens the type checking performed for > CFI-icall to accomodate this common type of casts. > > [1] https://www.chromium.org/developers/testing/control-flow-integrity > > Bug: 785442 > Change-Id: Ib42fb1b4e152d5042b170698c2707ebb9e0cc1ee > Reviewed-on: https://pdfium-review.googlesource.com/19250 > Commit-Queue: dsinclair <dsinclair@chromium.org> > Reviewed-by: dsinclair <dsinclair@chromium.org> TBR=tsepez@chromium.org,dsinclair@chromium.org,vtsyrklevich@chromium.org Change-Id: Ib9c26eb017733d2bf02035415221475bfbfe55c9 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 785442 Reviewed-on: https://pdfium-review.googlesource.com/19730 Reviewed-by: dsinclair <dsinclair@chromium.org> Commit-Queue: dsinclair <dsinclair@chromium.org>
-rw-r--r--DEPS19
-rw-r--r--third_party/BUILD.gn1
2 files changed, 4 insertions, 16 deletions
diff --git a/DEPS b/DEPS
index b91381ea73..d66a423d63 100644
--- a/DEPS
+++ b/DEPS
@@ -5,11 +5,10 @@ vars = {
'pdfium_git': 'https://pdfium.googlesource.com',
'android_ndk_revision': '26d93ec07f3ce2ec2cdfeae1b21ee6f12ff868d8',
- 'binutils_revision': '338a1641d1aa1f8551b16b19960884df357f56e5',
- 'build_revision': '98bba0679c691125ddb81d056cc278c30fb3e677',
- 'buildtools_revision': '505de88083136eefd056e5ee4ca0f01fe9b33de8',
+ 'build_revision': 'fc826e6c8785c5bf8eefdd9cdf147adba3f97ff9',
+ 'buildtools_revision': 'f90f6a5af3e8cf843395bfe6243cf606f71b5344',
'catapult_revision': '0cf3924bab2c2f66a412edda35f6e3572bd57623',
- 'clang_revision': '8427dae2b5a769314af722e09000563b5184ba06',
+ 'clang_revision': '4db585405687222660050d58eb12784fe0852884',
'cygwin_revision': 'c89e446b273697fadf3a10ff1007a97c0b7de6df',
'freetype_revision': 'bec14f688925467be708f01378fbbf82e6b19b42',
'gmock_revision': '29763965ab52f24565299976b936d1265cb6a271',
@@ -23,7 +22,7 @@ vars = {
'skia_revision': 'e0e20755f6c09b71038ced2bf4a00b4c4593f504',
'tools_memory_revision': '427f10475e1a8d72424c29d00bf689122b738e5d',
'trace_event_revision': '06294c8a4a6f744ef284cd63cfe54dbf61eea290',
- 'v8_revision': '6bccad8c97667604eb3bbe8098baff8021a9dc95',
+ 'v8_revision': '4931eb42e8a934941dc60d8f7dc510c08d7bc2c6',
'yasm_source_revision': 'b98114e18d8b9b84586b10d24353ab8616d4c5fc',
'zlib_revision': '718f686437b89038ac83525f4f1b1888aadd9bfc',
}
@@ -49,10 +48,6 @@ deps = {
"testing/gtest":
Var('chromium_git') + "/external/googletest.git@" + Var('gtest_revision'),
- "third_party/binutils":
- Var('chromium_git') + '/chromium/src/third_party/binutils.git@' +
- Var('binutils_revision'),
-
"third_party/freetype/src":
Var('chromium_git') + '/chromium/src/third_party/freetype2.git@' +
Var('freetype_revision'),
@@ -241,11 +236,5 @@ hooks = [
'pattern': '\\.sha1',
'action': ['python', 'pdfium/third_party/instrumented_libraries/scripts/download_binaries.py'],
},
- {
- 'name': 'binutils',
- 'pattern': 'src/third_party/binutils',
- 'condition': 'host_os == "linux"',
- 'action': [ 'python', 'pdfium/third_party/binutils/download.py', ],
- },
]
diff --git a/third_party/BUILD.gn b/third_party/BUILD.gn
index 863ab9e48b..a188f56194 100644
--- a/third_party/BUILD.gn
+++ b/third_party/BUILD.gn
@@ -248,7 +248,6 @@ static_library("fx_lcms2") {
configs -= [ "//build/config/compiler:chromium_code" ]
configs += [
"//build/config/compiler:no_chromium_code",
- "//build/config/sanitizers:cfi_icall_generalize_pointers",
":pdfium_third_party_config",
# Must be after no_chromium_code for warning flags to be ordered correctly.