Skip to content

5.0.0b2

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 31 Jul 18:03
· 35 commits to main since this release

Changes (Release 5.0.0b2)

Summary (pypdfium2)

API changes

  • Rendering / Bitmap
    • Removed PdfDocument.render() (see deprecation rationale in v4.25 changelog). Instead, use PdfPage.render() with a loop or process pool.
    • Removed PdfBitmap.get_info() and PdfBitmapInfo, which existed mainly on behalf of data transfer with PdfDocument.render(). Instead, take the info from the PdfBitmap object directly. (If using an adapter that copies, you may want to store the relevant info in variables to avoid holding a reference to the original buffer.)
    • PdfBitmap.fill_rect(): Changed argument order. The color parameter now goes first.
    • PdfBitmap.to_numpy(): If the bitmap is single-channel (grayscale), use a 2d shape to avoid needlessly wrapping each pixel value in a list.
    • PdfBitmap.from_pil(): Removed recopy parameter.
  • Pageobjects
    • Renamed PdfObject.get_pos() to .get_bounds().
    • Renamed PdfImage.get_size() to .get_px_size().
    • PdfImage.extract(): Removed fb_render option because it does not fit in this API. If the image's rendered bitmap is desired, use .get_bitmap(render=True) in the first place.
  • PdfDocument.get_toc(): Replaced PdfOutlineItem namedtuple with method-oriented wrapper classes PdfBookmark and PdfDest, so callers may retrieve only the properties they actually need. This is closer to pdfium's original API and exposes the underlying raw objects. Provides signed count as-is rather than splitting in n_kids and is_closed. Also distinguishes between dest is None and a dest with unknown mode.
  • Renamed misleading PdfMatrix.mirror() parameters v, h to invert_x, invert_y, as the terms horizontal/vertical flip commonly refer to the transformation applied, not the axis around which is being flipped (i.e. the previous v meant flipping around the Y axis, which is vertical, but the resulting transform is inverting the X coordinates and thus actually horizontal). No behavior change if you did not use keyword arguments.
  • PdfTextPage.get_text_range(): Removed implicit translation of default calls to .get_text_bounded(), as pdfium reverted FPDFText_GetText() to UCS-2, which resolves the allocation concern. However, callers are encouraged to explicitly use .get_text_bounded() for full Unicode support.
  • Removed legacy version flags V_PYPDFIUM2, V_LIBPDFIUM, V_BUILDNAME, V_PDFIUM_IS_V8, V_LIBPDFIUM_FULL in favor of PYPDFIUM_INFO, PDFIUM_INFO.

Improvements and new features

  • Added PdfPosConv and PdfBitmap.get_posconv(page) helper for bidirectional translation between page and bitmap coordinates.
  • Added PdfObject.get_quad_points() to get the corner points of an image or text object.
  • Exposed PdfPage.flatten() (previously semi-private _flatten()), after having found out how to correctly use it. Added check and updated docs accordingly.
  • With PdfImage.get_bitmap(render=True), added scale_to_original option (defaults to True) to temporarily scale the image to its native pixel size. This should improve output quality and make the API substantially more useful. Thanks to Lei Zhang for the suggestion.
  • Added context manager support to PdfDocument, so it can be used in a with-statement, because opening from a file path binds a file descriptor (usually on the C side), which should be released explicitly, given OS limits.
  • If document loading failed, err_code is now assigned to the PdfiumError instance so callers may programmatically handle the error subtype. This addresses {issue}308.
  • In PdfPage.render(), added a new option use_bgra_on_transparency. If there is page content with transparency, using BGR(x) may slow down PDFium. Therefore, it is recommended to set this option to True if dynamic (page-dependent) pixel format selection is acceptable. Alternatively, you might want to use only BGRA via force_bitmap_format=pypdfium2.raw.FPDFBitmap_BGRA (at the cost of occupying more memory compared to BGR).
  • In PdfBitmap.new_*() methods, avoid use of .from_raw(), and instead call the constructor directly, as most parameters are already known on the caller side when creating a bitmap.
  • PdfPage.remove_obj() is now aware of objects nested in Form XObjects, and will use the new pdfium API FPDFFormObj_RemoveObject() in that case. Correspondingly, a .container attribute has been added to PdfObject, which points to the parent Form XObject, or None if the object is not nested.
  • In the rendering CLI, added --invert-lightness --exclude-images post-processing options to render with selective lightness inversion. This may be useful to achieve a "dark theme" for light PDFs while preserving different colors, but goes at the cost of performance. (PDFium also provides a color scheme option, but this only allows you to set colors for certain object types, which are then forced on all instances of the type in question. This may flatten different colors into one, leading to a loss of visual information.)
  • Corrected some null pointer checks: we have to use bool(ptr) rather than ptr is None.
  • In PdfDocument.save(), changed default of flags from FPDF_NO_INCREMENTAL to 0, as suggested by an upstream maintainer.
  • Avoid creation of sized pointer types at runtime, to not blow up an unbounded pointer type cache of ctypes, which could effectively lead to a memory leak in a long-running application (i.e. do (type * size).from_address(addressof(first_ptr.contents)) instead of cast(first_ptr, POINTER(type * size)).contents). Thanks to Richard Hundt for the bug report, {issue}346. The root issue (ctypes using an unbounded cache in the first place) has been fixed recently in Python 3.14. See below for a list of APIs that were affected:
    • Anything using _buffer_reader/_buffer_writer under the hood (PdfDocument created from byte stream input, PdfImage.load_jpeg(), PdfDocument.save()).
    • PdfBitmap.from_raw() rsp. PdfBitmap._get_buffer() and their internal callers (PdfBitmap makers new_foreign and new_foreign_simple, PdfImage.get_bitmap()).
    • Also, some Readme snippets were affected, including the raw API rendering example. The Readme has been updated to mention the problem and use .from_address(...) instead.
    • With older versions of pypdfium2/python, periodically calling ctypes._reset_cache() can work around this issue.
  • Improved startup performance by deferring imports of optional dependencies to the point where they are actually needed, to avoid overhead if you do not use them.
  • Simplified version classes (no API change expected).

Platforms

  • Experimental Android (PEP 738) and iOS (PEP 730) support added.
    Android arm64_v8a, armeabi_v7a, x86_64, x86 and iOS arm64 device and arm64, x86_64 simulators are now handled in setup and should implicitly download the right pdfium-binaries. Provided on a best effort basis, and largely untested. Testers/feedback welcome.
  • pypdfium2's setup is now also capable of producing wheels for these platforms, but they will not actually be included in releases at this time. (Once Termux ships Python 3.13, we may want to publish Android arm64_v8a and maybe armeabi_v7a wheels, but we do not intend to provide wheels for simulators.)
  • iOS will not actually work yet, as the PEP indicates binaries ought to be moved to a special Frameworks location for permission reasons, in which case you'd also have to patch pypdfium2's library search. We cannot do anything about this yet without access to a device or clearer instructions. Community help would be appreciated here.

Setup

  • When pdfium binaries are downloaded implicitly on setup or emplace.py is run, we now pin the pdfium version by default. This is to prevent possible API breakage when pypdfium2 is installed from source. It should also make the git dependency optional on default setup. update.py and craft.py continue to default to the latest pdfium-binaries version.
  • update.py: added --verify option to confirm authenticity of pdfium-binaries release via SLSA provenance. Requires slsa-verifier. Thanks to Benoit Blanchon for the upstream part. Also thanks to ArcticLampyrid for the pointer.
  • We finally have a build script that works without Google's toolchain, and instead uses system tools/libraries (build_native.py). This has been inspired by the libpdfium COPR / libpdfium-nojs AUR recipes. Thanks to the respective packagers for showing how to do this. By default, this will use the GCC compiler, but Clang should also work if you set up some symlinks. As of this writing, both passes on our Ubuntu x84_64/arm64 CI.
  • On host platforms not covered with pdfium-binaries, setup now looks for system/libreoffice pdfium. If this is not available either, build_native.py will be triggered. This can also be requested explicitly by setting PDFIUM_PLATFORM to fallback, system-search or build-native.
  • Reworked setup to expose all targets through PDFIUM_PLATFORM. Added proper system staging directory. Refactored integration of caller-provided data files to avoid ambiguity. See the updated Readme for details.
  • The toolchained build script continues to be available as well, but has been renamed from sourcebuild.py to build_toolchained.py.
  • Both build scripts now pin pdfium to the version last tested by pypdfium2-team.
  • By default, the build scripts now generate separate DLLs for dependency libraries, but you may pass --single-lib to restore the previous behavior of bundling dependencies into a single pdfium DLL. Setup has been changed accordingly to collect libraries with globbing patterns.
  • With build_toolchained.py --update, avoid calling gclient revert and gclient sync, because this seems to sync twice, which is slow. Instead, call only gclient sync with -D --reset.
  • With pdfium-binaries, read the full version from the VERSION file embedded in the tarballs. This avoids a potentially expensive git ls-remote call to get Chromium tags.
  • Also added GIVEN_FULLVER and IGNORE_FULLVER env vars to manually set or skip the full version for other targets.
  • Use build-specific license files collected by pdfium-binaries. Replaced outdated LicenseRef-PdfiumThirdParty with BUILD_LICENSES/ directory.
  • Take PDFIUM_BINDINGS=reference into account on sourcebuild as well. Automatically fall back to reference bindings if ctypesgen is not installed (except on CI).
  • If packaging with PDFIUM_PLATFORM=sourcebuild, forward the platform tag determined by bdist_wheel's wrapper, rather than using the underlying sysconfig.get_platform() directly. This may provide more accurate results, e.g. on macOS.
  • Avoid needlessly calling _get_libc_ver(). Instead, call it only on Linux. A negative side effect of calling this unconditionally is that, on non-Linux platforms, an empty string may be returned, in which case the musllinux handler would be reached, which uses non-public API and isn't meant to be called on other platforms (though it seems to have passed).

Project

  • Replaced the bash ./run file with a justfile. Note that the runfile previously did not fail fast and propagate errors, which is potentially dangerous for a release workflow. This had been fixed on the runfile in v5.0.0b1 before introducing the justfile.
  • CI: Added Linux aarch64 (GH now provides free runners) and Python 3.13 to the test matrix.
  • Merged tests_old/ back into tests/.
  • Migrated from deprecated .reuse/dep5 to more visible REUSE.toml. Removed non-standard .reuse/dep5-wheel.
  • Docs: Improved logic when to include the unreleased version warning and upcoming changelog.
  • Bumped minimum pdfium requirement in conda recipe to >6635 (effectively >=6638), due to new errchecks.
  • Cleanly split out conda packaging into an own file, and confined it to the conda/ directory, to avoid polluting the main setup code.
pypdfium2 commit log

Commits between 5.0.0b1 and 5.0.0b2 (latest commit first):

  • 60b8f3a [autorelease main] update 5.0.0b2
  • a751071 autorelease: prepare for another beta release
  • 46192bc Minor Readme improvements
  • 746c4ac Style nits
  • 04d0961 changelog: add note about 4.30.1 yank
  • d6a6809 test_setup: use verbose installation
  • 8ce7c00 setup/autorelease: properly pin pdfium
  • 54d9c96 conda_raw: try to fix description rendering
  • 4a4d915 Inline post_ver handling into pack_sourcebuild()
  • a40e020 Readme: Hard wrap caller-provided data files code block
  • 63a2b5e test_setup: remove outdated todo
  • 7d1b315 test_setup workflow: drop python 3.8
  • b27c4f0 req/docs: bump sphinx requirement
  • b0bf367 test_setup workflow: use latest pdfium
  • 95f8ee1 Make just check happier
  • f8f746e build(deps): bump slsa-framework/slsa-verifier from 2.7.0 to 2.7.1
  • 4f76a49 setup: introduce subtargets (#363)
  • c3f3d7b other issue: add stumbling block
  • 696ea6a Pick issue template changes from #363
  • f2c3a54 base.py nit: slightly improve a log message
  • 0a8f81c Drop non-standard REUSE-wheel.toml
  • ecf0427 PdfDocument.save(flags=): FPDF_NO_INCREMENTAL -> 0
  • 739b0e6 Verify pdfium-binaries packages via SLSA (#360)
  • 8a5e80d python_api.rst: fix typo in footnote name
  • dc8d108 Flatten BUILD_LICENSES/v8_xfa
  • 35a88d2 Add V8 licenses
  • ac76eac Fix typo in build_native.py help
  • e93c594 readme: clean up an orphaned footnote
  • 03ef291 Migrate flags lists to tuples
  • ed8961e slightly improve readme, reorder members in setup base
  • 6eeb544 Revert "Attempt to verify pdfium-binaries builds (#359)"
  • df92e8c Add musl license to aggregated BUILD_LICENSES
  • 8213000 Attempt to verify pdfium-binaries builds (#359)
  • 01db641 Check in licenses for V8/XFA enabled builds
  • 77d8014 update changelog on remove_obj()
  • 20ba258 system_pdfium: join paths properly
  • 0e31690 system_pdfium: fix path concatentation
  • 914efcb changelog_staging: try to fix order
  • d48dcfc build_toolchained: align parameters
  • 9808c3b build_toolchained: don't use WindowsPath explicitly
  • 388ef80 build_toolchained: help nit
  • 8c65a9d Update copyright for dependabot.yml
  • 56650c4 Licenses branch (#357)
  • 72fdb03 readme: reorder "Thanks to" section
  • 3792af7 build_native: build abseil as separate shared library
  • 88ae1a8 update changelog
  • a86cd52 setup/sourcebuild improvements (#356)
  • 9f76534 Also update the Readme
  • 86a77d1 Update changelog
  • 864d52b win/resources.rc: bump copyright year
  • 93b4e5b build_native: prefer NaN over Inf
  • 4dd2f3c build_native: use filter() function
  • 3225ed9 hash: add "g" prefix
  • 3720692 system_pdfium: use run_cmd() for pkg-config
  • 0e05c4c build_native: get commit hash if building from main
  • 7a6e51f run_cmd: don't merge stderr into stdout by default
  • 16dfaa2 conda-helpers build: fix type error
  • c6f8248 build_native: update a comment
  • 1eb51f4 build_native: use git rather than tarballs (#355)
  • 7d4091d build_native: set clang_path only if compiler is actually clang
  • 742720f build_native: slightly correct help
  • 7427ea2 setup: look for system pdfium if we don't have binaries (#353)
  • 4c3f8d3 readme: avoid meaningless filler phrases
  • 8b0d15c Rename build_lean to build_native
  • 1ec780e build_lean: don't use shutil.which()
  • 3df6cce build_lean: honor clang base path in lld patch
  • 95d73b3 build_lean: indicate build from main in version.json
  • 865914e setup.py: expand comments around unknown host
  • 6b1b39d Update changelog
  • de3d19b build_lean: add option to override number of build jobs
  • f4036f0 test_sourcebuild: try to fix clang build (#352)
  • 98a38bd test_sourcebuild: comment out clang after all
  • 6dd18a9 test_sourcebuild: progress on clang
  • d26764e windows: update build patch
  • 3a08903 Update sourcebuild test workflow
  • 5051e9d Pass just check
  • 5b2f26e Lean build script (#350)
  • 8bd57b1 Handle new FPDFBitmap_BGRA_Premul pixel format
  • 4f6959f PdfBitmap.fill_rect(): tolerate older pdfium
  • 3cd7096 readme: shorten libreoffice section
  • caee9ea Slightly update comment in _library_scope.py
  • 02783ed bases: slightly relax warning
  • 9551425 cli/render: unwrap default PIL hook
  • f0d6c33 Slightly update changelog_staging
  • ee6698c build(deps): bump extractions/setup-just from 2 to 3
  • 3731559 Avoid creation of sized POINTER types at runtime (#347)
  • 09e06cc Replace ./run script with a justfile (#344)
  • 4e48c34 Readme: Fix docs build command
  • 0d38fa1 Update a comment regarding android
  • 58ab942 changelog: pypi should now support PEPs 730/738
  • 5288325 sourcebuild: add task
  • b154a30 posconv: add repr
  • 90cf7e2 Rename darwin_universal to darwin_univ2
  • 6fa0058 Add an explicit exception for legacy mac arches
  • 0d0b589 Remove note about intel
  • da1a3d0 Add android_arm64 to extra platforms build example
  • 2c3d1a9 emplace.py: fix outdated name in help
  • 6687b6e More null-term to NUL-term
  • eda5fc4 changelog nits again
  • 4359717 changelog: remove obsolete comment
  • ee329f9 PdfImage.extract(): a few cleanups
  • cf8378d changelog: better explain the benefits of scale_to_original
  • 46a78f7 GH release: fix inclusion of sdist (amends 9b06578)
  • 542f966 Clean up now-unused import
  • b4ff562 Rename "null terminator" to "NUL terminator"
  • f8843dd Remove the textpage version check as well
  • 5a87303 Remove some checks for legacy pdfium versions
  • 64aaafe changelog nits
  • 9b06578 Avoid publishing the attestation files
PDFium commit log

Commits between 6996 and 7323 (latest commit first):

  • 7f80ad740 Rename "pDoc" instances to "doc" in //fxjs and //testing
  • 02ed40c03 Avoid calls to deprecated GetIsolate methods
  • e8b8183f4 Rename "pDoc" instances to "doc" or "document" in //fpdfsdk and //xfa
  • 20159328a Fix a JPEG2000 decoding regression
  • b000116ef Move RGB conversion code out of CPDF_DIB::LoadJpxBitmap()
  • 0294ae7cc Simplify CPDF_SecurityHandler::GetUserPassword()
  • 646f89bda Encapsulate more JPEG2000 decoding logic
  • b5b7809a5 Add alternate CJS_Object constructor for testing.
  • 468f8ba85 Make jbig2 data in recently-added file more spec-compliant
  • 612e92d68 Roll Catapult from a03b70978cc5 to 26075d3aef24 (34 revisions)
  • e51c3ed6c Roll Memory Tools from cc38b4b04fbf to 7f4bdaac14af (1 revision)
  • 9128fd668 Roll Depot Tools from 909e2921a011 to dd6e72e96818 (41 revisions)
  • 0db284a42 Fix drawing of MMR general regions in JBIG2 images
  • f87423057 Use NOTREACHED() in more switch statements inside cpdf_dib.cpp
  • 0a845e675 Get rid of JpxDecodeAction::kFail enum value
  • 519938c8f golden_fetch.sh: Tolerate dashes in filenames
  • 0289dc71b Fix decoding of halftone JBIG2 files that use HENABLESKIP
  • 98b41bcc4 Add comments for UNSAFE_TODOs in cpdf_pageobjectholder.cpp
  • 5b21a9c19 Update test expectations for macOS 14
  • 441eafa8b Roll goldctl from 2da73c426d1b to 39c6fad2c962
  • 030a06e26 Update siso_version to f96f46a8e4cf30c097110903d4b71516ef976fb6
  • ea5d1f0b8 Roll third_party/skia/ e8ef1a27c..34a40032f (89 commits; 9 trivial rolls)
  • 3c3290b5c Update skia/BUILD.gn and roll third_party/skia
  • 71eeeea2c Roll third_party/skia/ df7ab9373..ddb944ebd (134 commits; 20 trivial rolls)
  • 305f67d88 Spanify fx_skia_device.cpp and roll third_party/skia
  • 58e257468 Roll third_party/rust, third_party/skia
  • 6759df861 Roll tools/clang/ a8d02857f..b17ffb3e8 (44 commits)
  • e8def5657 Roll third_party/libunwind/src/ e3eb847e5..634c60974 (3 commits)
  • 4ab45c56d Roll v8/ e82d457e6..9bfa30b42 (688 commits)
  • 9f3bd4ab8 Update reclient_version to 0.179.0.28341fc7-gomaip
  • 4b9edc5ba Roll third_party/libc++abi/src/ aca866473..4a1b48642 (5 commits)
  • 3906df47e Roll third_party/llvm-libc/src/ 81a117beb..f37e727ed (98 commits)
  • 790e3d1c0 Roll libpng from 058e1ebb3139 to cb7e5155c4a1 (1 revision)
  • ef39ac22b Rename resultdb_version DEPS entry to result_adapter_revision
  • 35490756a Update gn_version to 97b68a0bb62b7528bc3491c7949d6804223c2b82
  • 6fe031a59 Roll third_party/nasm/ 9f916e90e..e2c93c349 (2 commits)
  • a71746210 Roll third_party/googletest/src/ e9092b12d..c67de1173 (10 commits)
  • bfec2a4f5 Roll third_party/freetype/src/ 320b72a29..39d85f169 (34 commits)
  • effd2bcfc Roll base/allocator/partition_allocator/ e3668842c..79b418050 (15 commits)
  • bc45accd9 Roll third_party/simdutf/ 9d3e4d7c1..a1046f20f (2 commits)
  • f3033bbec Roll Zlib from a1f2fe223f55 to 4028ebf8710e (2 revisions)
  • 65003eb85 Do IWYU for free()
  • fdb2a3c32 Avoid -Wcharacter-conversion
  • e697afe4f Use default/projection forms of C++20 std::ranges::lower_bound()
  • 27620197d Fix UNSAFE_TODOs in cpdf_security_handler.cpp
  • f2d1266fe Fix FPDFText_GetText() handling with invalid characters
  • e50e167c9 Fix UNSAFE_TODOs in cpdf_crypto_handler.cpp
  • 429bf9f4c Add embedder test for FPDFText_GetText() behavior with invalid chars
  • c8d8bdcb9 Fix truncated hash value used in GetEventParaInfoByName().
  • af8ef613c Remove another is_nacl test from PDFium build file.
  • fb4c7337a Avoid some copies in CPDF_TextPage::AddCharInfoBy*()
  • e5f58bf24 Remove IS_NACL code
  • b86a4ccff Roll Jinja2 from 5e1ee241ab04 to c3027d884967 (1 revision)
  • 698a1addd Roll Catapult from 938fc9953b41 to a03b70978cc5 (27 revisions)
  • faeb83f19 Roll MarkupSafe from 9f8efc8637f8 to 4256084ae141 (1 revision)
  • 1dbcd29c4 Roll Depot Tools from e0ece52cfb4f to 909e2921a011 (49 revisions)
  • b6457bccc Avoid loose bounds for invalid char codes
  • 9ee2baba3 Convert UNSAFE_TODO() to UNSAFE_BUFFERS() at API point.
  • a4646686a Ensure all TrueType Unicode cmap formats are equal
  • 5da0e90fa Treat all Unicode character maps like MSUnicode
  • b8e298a2c Use DecodeTestData::input_span() to avoid UNSAFE_TODOs
  • 0f7507cc6 Avoid -Wcharacter-conversion warnings
  • 6c8172a19 Change some comments in core/fxcrt/utf16.h to static_asserts
  • fd17f2f5f Fix UNSAFE_TODO() in BC_OnedCode128Writer_unittest.cpp.
  • 06efa0399 Improve comment for flags parameter to FPDF_SaveAsCopy()
  • 522bc4598 Stop using soon-to-be-deprecated V8 Apis
  • fe0d0540a Roll goldctl from db7e9d50d2f8 to c0a24f7ae77d
  • 421860a28 Discard portion of decrypt key longer than 32 bytes.
  • 591ce25a2 Fix AES block size as 128 bits (it is always that).
  • 08585679e Remove last memcpys from AES
  • a06ddbc0f Resolve some UNSAFE_TODO() in AES
  • 096f61b5c Ignore whitespace in ToUnicode codepoint strings
  • 54b23007a Fix Form XObject content regeneration when removing objects
  • 7fc72177a Pass span to CRYPT_AESSetIV()
  • 4c40fce83 [fxge] Modernize cfx_fillrenderoptions
  • 2d93912bb Beef up AES test cases prior to spanification
  • d70b6fd6a Sync third_party/googletest/README.pdfium with Chromium's
  • 58ab383fc Roll libpng from 28213bcabe21 to 058e1ebb3139 (2 revisions)
  • be8a89829 Roll third_party/freetype/src/ 2f2dfad59..320b72a29 (74 commits)
  • abfac2f8e Roll third_party/freetype/src/ 4792cff5c..2f2dfad59 (1 commit)
  • 0b93112b5 Roll third_party/freetype/src/ 79912716e..4792cff5c (19 commits)
  • 7ae4bd4f2 Fix undo counting in CPWL_EditImpl::ReplaceSelection for cut operations
  • c3c804498 Add FPDFPage_InsertObjectAtIndex() API
  • 58b63c9ef Roll third_party/rust/ e4c474081..483563e40 (50 commits)
  • f9977af27 Roll third_party/llvm-libc/src/ e9d9246e8..81a117beb (47 commits)
  • 66eadc183 Roll third_party/libc++abi/src/ f2a7f2987..aca866473 (8 commits)
  • 2a731f818 Roll third_party/libunwind/src/ 81e2cb40a..e3eb847e5 (6 commits)
  • 4e4d7a14a Current font need not contain part of ActualText
  • c374e352f Roll third_party/skia/ b82ac22e2..eaa402365 (272 commits; 39 trivial rolls)
  • cff4f499c Update resultdb_version to git_revision:5fb3ca203842fd691cab615453f8e5a14302a1d8
  • a61a35790 Update gn_version to 99a82ca8ee957da829d6313b818b99df8e7ccb8
  • 01e3f4a27 Roll base/allocator/partition_allocator/ 299f79368..e3668842c (15 commits)
  • f532682a2 Roll third_party/googletest/src/ 90a415211..e9092b12d (11 commits)
  • a650631fd Small code simplification in patch drawing
  • 0dd9ef40a Roll v8/ 4d69b8272..e82d457e6 (345 commits)
  • 24684aa10 Roll Code Coverage from dea8d7c1bd51 to ef6864ec11f1 (2 revisions)
  • 95a31df84 Roll Zlib from 6f9b4e619240 to a1f2fe223f55 (8 revisions)
  • ea75ab993 Remove FXARGB_SetRGBOrderDIB()
  • 190fe4d3e Correctly handle component bounds for shadings 4-7
  • f16c9fa83 Spanify FXARGB_SetDIB()
  • a1375d8d9 Store 8-bpp mask value as a separate variant in CFX_ScanlineCompositor
  • 205d9d92b Use structs to represent mask colors in cfx_scanlinecompositor.cpp
  • ea8017210 For shading types 4-7, evaluate function per pixel if present
  • 200e96136 Roll abseil-cpp, build, buildtools, clang, icu and tools/rust
  • 217e37a83 Rename "pDict" instances to "dict"
  • 06c12145c pdfium_test: Add a --render-repeats= flag
  • d67b1b105 Support Siso builds
  • 66b63bba6 Add another test patch to shade-tensor.in
  • e43a86c0f Add scoped objects and methods for saved doc / page in EmbedderTest
  • 8db533196 Rename most "pFont" instances to "font"
  • 669737aaf Roll Depot Tools from 1fcc527019d7 to e0ece52cfb4f (51 revisions)
  • 77c73af7d Roll Catapult from 000f47cfa393 to 938fc9953b41 (65 revisions)
  • ae7d47693 Remove TODO about upstreaming InsertBraces to Chromium clang-format
  • 61cab1eb0 Rename most "pDocument" instances to "document"
  • cf433ae55 Avoid a case of float-int-float conversion in CPDF_Page
  • 92725d5c9 Add freetext annotation support to FPDFAnnot_GetFontColor()
  • b81e7ceb3 Add experimental FPDFAnnot_SetFontColor() API
  • be2fc5287 Rename IPDF_Page::GetDisplayMatrix()
  • 2b754ba30 Handle negative rotation case in CPDF_Page::GetDisplayMatrix()
  • 13cb04222 Rename iRotate to rotation
  • 139579cce Shorten ScopedEmbedderTestPage to ScopedPage
  • 9d59dcd0a Use ByteStringView in more methods
  • 17201fb9f Rename CJS_Document::getPropertyInternal()
  • f40f993d3 Change CPDF_Dictionary getters to take ByteStringView
  • 83f11d630 Fix build with system libpng
  • cffbd3c96 Add FPDFFormObj_RemoveObject API to remove objects from forms
  • 61e138929 Roll goldctl from cce6d37d624f to 649709ff0442
  • baab5f7cd Roll v8/ bb856da62..4d69b8272 (168 commits)
  • 00ca21a09 Roll v8/ 0ee17041e..bb856da62 (2 commits)
  • b461f27c0 Roll v8 and simdutf
  • 175e50930 Add third_party/dragonbox dependency
  • f01c61742 Roll base/allocator/partition_allocator/ d691f607f..299f79368 (25 commits)
  • 58e8e0ffa Roll base/allocator/partition_allocator/ a5083e082..d691f607f (1 commit)
  • d3b3c3590 Roll base/allocator/partition_allocator/ 53e916ce2..a5083e082 (14 commits)
  • df5eed8d8 Only checkout Highway when V8 is being checked out
  • a378c291e Roll build, clang, and tools/rust
  • c9eac6c71 Roll build/ 2e5d994c2..28c2aef2b (1 commit)
  • 155e8a04f Roll build/ 49491ecc7..2e5d994c2 (24 commits)
  • 5a18d4587 Roll buildtools/, third_party/libc++/src
  • 17d5aeac6 Roll third_party/skia/ 290c4fb91..b82ac22e2 (110 commits; 9 trivial rolls)
  • 6551a206a Roll third_party/skia/ 68e53210b..290c4fb91 (1 commit)
  • 0be9b6bf1 Move GetDefaultAppearanceString() into cpdf_defaultappearance.cpp
  • b1df13e6f Add/remove STL includes
  • a9fd58f6f Replace a (1.0f / 2.0f) with 0.5f
  • 2cadd25ea Add test case for a bunch of shading type 7 (and 6) corner cases.
  • c6b8c8e6a Change CPDF_Dictionary::KeyExist() to take ByteStringView
  • 429e3b091 Remove out-parameter from CPDF_DefaultAppearance::GetFont()
  • e49c5ef91 Fix testing_rust_revision after pdfium-review.googlesource.com/131370
  • cce603a3d Stop handling coons patches in CFX_SkiaDeviceDriver::DrawShading
  • 3d37e944c Implement support for drawing bezier patches
  • 61be18b57 Use absl::flat_hash_set inside cpdf_nametree.cpp
  • 28557e89b Remove explicit template argument from ScopedSetInsertion users
  • c432752b4 Add test for multidimensional reinterpret_span<>() flattening.
  • a907ba08a Add FPDFAnnot_SetFormFieldFlags API to modify form field flags
  • 0034a5091 Improve FPDF_GetPageWidthF() / FPDF_GetPageHeightF() documentation
  • c92cd178b Rewrite CPDF_Annot::AnnotSubtypeToString() with switch-statement
  • b8e8a35d0 testing/tools: Add a script to renumber objects in file order
  • 88d42b166 Extend shade.pdf test
  • 93ea99df7 Explain preconditions whenever UNSAFE_BUFFER_USAGE.
  • 3e8d18425 Fix GCC build issue in fxcodec.DecodeDataZeroSize test (try 2)
  • 1ece8a1b7 Clean up CPDF_DefaultAppearance
  • 3ef4650c6 Update reclient_version to 0.177.1.e58c0145-gomaip
  • 38d16b8b7 Roll third_party/googletest/src/ 52204f78f..90a415211 (9 commits)
  • 642c3be53 Roll third_party/nasm/ 767a169c8..9f916e90e (426 commits)
  • d6ebd129e Roll v8/ 04fa9cbe2..d91bd611c (362 commits)
  • 8b14de9bb Roll third_party/libc++abi/src/ 94c5d7a8e..f2a7f2987 (8 commits)
  • f9b941a26 Roll third_party/skia/ 7d56b9cc7..68e53210b (103 commits)
  • 0ace6369f Roll third_party/libunwind/src/ 62e217a12..81e2cb40a (2 commits)
  • e265bde6f Fix botched UnownedPtr refactor
  • 4d936fae8 Revert "Rework inline image parsing in content streams"
  • 6058b2ad6 Revert "Fix crash in CPDF_StreamContentParser::Handle_BeginImageData()"
  • 46f456133 Roll third_party/llvm-libc/src/ 4b760d9a7..e9d9246e8 (49 commits)
  • 136d704af Roll third_party/freetype/src/ 82090e67c..79912716e (81 commits)
  • acffebe1b Roll third_party/abseil-cpp/ 1e8b41f1e..91f1a3775 (8 commits)
  • 9490e64a3 Modernize all remaining operator==() code.
  • 1eb36c32e Replace extern const with inline constexpr in //constants
  • af6de9b6a Modernize PDFium strings operator==().
  • 7d8f6a47b Update android_toolchain_version to KXOia11cm9lVdUdPlbGLu8sCz6Y4ey_HV2s8_8qeqhgC
  • 37b2c595a Roll third_party/rust/ d05fde505..e4c474081 (35 commits)
  • 3b98432e5 Update gn_version to 487f8353f15456474437df32bb186187b0940b45
  • e73054c2e Modernize StringViewTemplate::operator==().
  • 23f69c918 Roll third_party/icu/ c9fb4b3a6..4c8cc4b36 (2 commits)
  • 6b0300a6b Fix GCC build issue in fxcodec.DecodeDataZeroSize test
  • 2ab9e9324 Roll Zlib from ce5a169f5017 to 6f9b4e619240 (9 revisions)
  • 6114b3b18 Roll Memory Tools from 14089a7f57fa to cc38b4b04fbf (1 revision)
  • d1ee8b060 Remove some strlen() calls using pdfium::span_from_cstring()
  • 41e5f4098 Replace fxcrt::span_equals() with pdfium::span::operator==
  • 6ec1d2f92 Add constexpr {Byte,Wide}StringView unit tests
  • f92aa15fa Update pdfium::Contains() from Chromium
  • 0f84b859e Replace MakeFakeUniquePtr() with MatchesUniquePtr()
  • 9444ec89c Replace fxcrt::ToArray() with std::to_array()
  • 6b13180e1 Convert to C++20 requires clauses in span_util.h
  • ae0ead6f6 Remove unnecessary stl_util.h includes
  • 7daaacfa0 Convert to more C++20 requires clauses in //core/fxcrt
  • a66a29a3d Convert to C++20 requires clauses in //core/fpdfapi
  • 789082d68 Convert RetainPtr<> templates to use C++20 requires clauses
  • e90e389f9 Remove std::span conversion code from span.h
  • 5c21bbded Remove unused internal templates from span.h.
  • ceaecc2e4 Actually remove pdfium::make_span().
  • 6397490e1 Replace calls to pdfium::make_span() with CTAD.
  • d2b5a2886 Make pdfium::span<> range constructors consistent
  • 0496d8061 Use fast_float::chars_format::allow_leading_plus option
  • ba9bff4f4 Remove uses of deprecated download_from_google_storage --no_auth in DEPS
  • 5da39fb3a Remove <string.h> inclusion from span.h
  • d45defc2d Use inline constexpr in cmaps headers
  • 69686ef8c Update pdfium::span<> to more closely match C++20 base::span<>
  • bce7ccbf7 Use size_t for indices in CPDF_CMap::GetNextChar()
  • 87a497287 Add API to retrieve MIME type from PDF attachments
  • 384d40930 Fix nullptr deref in CFXJSE_FormCalcContext::Time2Num()
  • 02c94a325 Use std::ranges::find() and find_if()
  • cf64c421d Handle arrays of 1-in, 1-out functions for shading types 4-7
  • 953632ef5 Roll Catapult from 5bda0fdab9d9 to 000f47cfa393 (43 revisions)
  • 52aa19e0a Roll Code Coverage from 86ab7fc653c4 to dea8d7c1bd51 (11 revisions)
  • 69bef25f9 Roll Depot Tools from 3ce438f7f0ba to 1fcc527019d7 (91 revisions)
  • c440145ff Prepare more files for update to pdfium::span<>
  • d91512df6 Roll v8/ c206c46cd..04fa9cbe2 (552 commits)
  • 67ca3cf33 Fix crash in CPDF_StreamContentParser::Handle_BeginImageData()
  • e72f115e7 Prepare PDFium for updated base::span implementation.
  • 8f09a6363 Add LIFETIME_BOUND to core/fxcrt/compiler_specific.h.
  • 0557a2212 Update core/fxcrt/numerics
  • c31ed43be Implement PDF version handling from catalog dictionary
  • c0bc98d0c Rework inline image parsing in content streams
  • ef236b14e Improve CPDF_StreamParser::ReadInlineStream() span usage
  • 23963509e Ignore inline images without EI operators
  • 694199148 [fxcrt] Remove IsPowerOfTwo()
  • 69bb6260d Remove fxcrt::Fill()
  • dbf0a1bda Replace fxcrt::Fill() with std::ranges::fill()
  • 309d5e923 Convert remaining code to google_style_ members
  • 7c525236c Roll goldctl from bbe5d9f7f74b to cce6d37d624f
  • 042b29dd9 Convert to google_style in core/fpdfapi/render
  • f7649ff74 Convert to google_style in core/fpdfapi/page
  • f6ad5f322 Convert to google_style_ naming in core/fpdfapi/parser.
  • 660770699 Rewrite core/fpdfapi/{cmaps,font} to google_style_ members
  • 3d8aaf446 Update README URLs for filing a new bug
  • c1efd963d Clang-format remainder core files
  • 27136666b Clang-format //testing
  • e7231ebb3 Clang-format //fxjs
  • f6d3ca2cd Clang-format core/fxcrt
  • 3cf23e17f Clang-format core/fpdfapi
  • 1847ad5d0 Clang-format core/fxge
  • fb910dcc5 Replace fxcrt::Fill() with std::ranges::fill() in one spot
  • b5b7e1eb4 Convert to google_style_ member names in core/fxge.
  • cdd0eae7f Improve a few member variables names in fpdfsdk
  • d0dcedc01 Clang-format //fpdfsdk
  • 0a26adce0 Clang-format core/fxcodec
  • 5af729ea8 Clang-format core/fpdfdoc
  • f15df302f Clang-format //fxbarcode
  • 53b8f9cdd Fix references to non-existent APIs in fpdf_annot.h
  • 127007956 Clang-format //xfa
  • 3dba1b629 Convert to google_style_ members in fpdfdoc
  • b3466cc54 Convert to google_style_ member naming in fpdfsdk/
  • 073395985 Roll third_party/skia/ b5b6f29d6..7d56b9cc7 (100 commits)
  • f9c12a8d7 Roll build, clang and rust
  • a4b11d6be Roll DEPS for abseil, buildtools, and libc++
  • 04685b5b9 Clamp PDFium indexed color space hival
  • 0c880b1f8 Add pixel test for invalid indexed colorspace hival
  • cbc692a42 Convert to google_style_ members in core/fxcodec.
  • 812b97001 Roll Zlib from 788cb3c270e8 to ce5a169f5017 (1 revision)
  • eeaea7e7f Avoid sharing resources dict entries in CPDF_PageContentGenerator
  • ed3b0b84d Improve shared resources dict detection in CPDF_PageContentGenerator
  • b0972c310 [fpdfdoc] Refactor GetAutoFontSize() to use std::lower_bound
  • d4b22e9d7 Convert to google_style_ members in fwl/
  • 7b5cb7854 Change FPDFImageObj_GetRenderedBitmap() to take clip path into account
  • 746bdf7d8 Use std::variant inside CPDF_StreamContentParser
  • ab1a89811 Convert to google-name_ style in fpdfxfa/
  • 572844143 Let FPDFPageObj_SetMatrix() reset dirty bit if restoring image matrix
  • 47a0b779b Convert to google_style_ members in xfa/
  • 4cc351bb8 Roll third_party/llvm-libc/src/ a02de4d0d..4b760d9a7 (96 commits)
  • 8f2fa296e Roll base/allocator/partition_allocator/ 46d880ff6..53e916ce2 (11 commits)
  • 3212699ee Roll third_party/googletest/src/ 24a9e940d..52204f78f (9 commits)
  • 4abda5669 Roll third_party/nasm/ f477acb10..767a169c8 (1 commit)
  • fa8babff7 Roll third_party/simdutf/ 5a9a2134b..40d1fa26c (1 commit)
  • d00aeec82 Consistently call ProcessGraphics() in CPDF_PageContentGenerator
  • 1adeee0a5 Convert to google-style_ member names in fxbarcode/
  • 54c3b26e6 Add buganizer component ID to DIR_METADATA
  • a4609adba convert core/fxcrt/css to google_style_ members
  • 06e0f2399 Rewrite fxjs/ directory to use google_style_ member names.
  • 82a3c81d7 Roll third_party/skia/ 2bc5ed566..b5b6f29d6 (196 commits)
  • d7154f0f0 Roll third_party/freetype/src/ 5d4e649f7..82090e67c (4 commits)
  • cafb72a49 Clang-format unit tests
  • 29ab2014d convert fxcrt/ to google-style_ naming.
  • c521814ac Spanify FPDFText_SetCharcodes()
  • b6e873162 Roll third_party/icu/ d30b7b0bb..c9fb4b3a6 (1 commit)
  • 61cb98e49 Roll tools/clang/ c5329b322..d05ab7b5b (16 commits)
  • b780c21ce Roll Depot Tools from 50eedb1b5a74 to 3ce438f7f0ba (58 revisions)
  • 2f4560fc0 Roll Catapult from 93e56257a508 to 5bda0fdab9d9 (31 revisions)
  • 89bebf8b1 Roll Code Coverage from 13e2c8b82298 to 86ab7fc653c4 (5 revisions)
  • c9f0b0fe8 Add FPDFBitmap_BGRA_Premul format
  • eb636a3be Refine NeedToPremultiplyBitmap() logic
  • 9fa4c12a4 Remove do_premultiply parameter for CFX_DIBitmap::ScopedPremultiplier
  • 1b73b0212 Consolidate pre-multiply checks into a single function
  • a59bf4f72 Rename cpdf_interactiveform* to use Google C++ variable names
  • 533bbc831 Fix various nits in cpdf_interactiveform.cpp
  • 098ed663b Clang-format cpdf_interactiveform.cpp
  • 519d7d5fc Fix rendering for freetext_annotation_without_da.in
  • 8174ab960 Remove CFXColorFromString()
  • a71df3276 Fix rendering for freetext_annotation_with_da.in
  • d75f1ef6b Fix minor issue with freetext annotation test files
  • 429385943 Update fixup_pdf_template.py for Python 3.12
  • 89da8e11e Roll third_party/skia/ 6ca926db5..2bc5ed566 (1 commit)
  • fec010c74 Remove unnecessary virtual specifiers
  • cc534b45e Reuse AnnotationStampWithApChecksum()
  • 24779b061 Add CHECK to validate Flate encoding success
  • 69c006aa6 Roll Instrumented Libraries from 3cc43119a291 to 69015643b3f6 (1 revision)
  • 3f6542840 Roll goldctl from 657d7bc2c9d8 to 3f888b0b05df
  • 9232d7c94 Reduce max bitmap size for pdf_scanlinecompositor_fuzzer
  • 122a3add7 Still even less memset() in embedder tests.
  • 304b383c8 Avoid another memset in scan line compositor.
  • 30130534e Avoid still another memset in embedder tests
  • cffff9df9 Use aggregate init to avoid memset in CFGAS_FontMgr.
  • fd8dc49b2 Use aggregate init to avoid memset in embedder test.
  • fb252723b Ban abseil variant.h and utility.h libraries in pdfium
  • 054a44d24 Add some string constants to CPDF_SimpleFont
  • 17414d396 Migrate absl variant.h and utility.h in pdfium
  • 9b896087d Roll abseil, build, buildtools and libcxx
  • 93b90e60e Return void from CXFA_Node::CalculateWidgetAutoSize().
  • 50eaa517a Make ConvertColorScale return void instead of bool.
  • ab8934ea5 Enable unsafe libc call warnings for PDFium.
  • 67d63fbbc Roll build, clang, and rust
  • 6b44f7c50 Make ClearEmptySection() return void.
  • f2b54058b Make CPDF_FormField::SetItemSelection() and friends return void
  • 150f4db10 Convert several CPWL_EditImpl methods to return void.
  • 045bfddf5 Return void from UpdateFWLData() and PerformLayout().
  • 33b2eb48e Make CXFA_LocaleValue::SetDate(), SetTime() and SetDateTime() void.
  • fad67dead Check more functions returing bool in tests.
  • 5dd766372 Make DoActionFieldJavaScript() return void.
  • 2b4336400 Make CXFA_FFDocView::InitValidate() and RunValidate() return void.
  • a1c7c8d5e Make EnumFontList() return void
  • 6b27c718b Mark ScanlineDecoder::Rewind() as nodiscard
  • 03193a5cc Roll third_party/libjpeg_turbo/ 927aabfcd..e14cbfaa8 (2 commits)
  • 5a1649e98 Propagate Rewind() errors in ScanlineDecoder::SkipToScanline()
  • 9d43ad95e Avoid integer overflow when calculating loose char box
  • 139b93407 Roll third_party/skia/ 01b6ccad8..6ca926db5 (146 commits)
  • a769c3f17 Make libunwind DEPS entry Android-only
  • 6fede0535 Roll build, buildtools, and libc++
  • c6e8d0640 Roll third_party/abseil-cpp/ 221ee3ed3..2705c6655 (2 commits)
  • 375ae5289 Update gn_version to 4a8016dc391553fa1644c0740cc04eaac844121e
  • 2661abc18 Roll third_party/libunwind/src/ e55d8cf51..62e217a12 (3 commits)
  • cc0f452e0 Fetch architecture-specific GN binary on Linux
  • 33c290918 Roll buildtools and libc++
  • a6ca36580 Remove SkColorPriv.h #includes
  • 9cd9895da Roll build, clang, rust
  • 257045286 Roll third_party/llvm-libc/src/ 533347237..a02de4d0d (68 commits)
  • 3875d6c15 Roll base/allocator/partition_allocator/ f3153d2c6..46d880ff6 (10 commits)
  • be03c8023 Roll third_party/freetype/src/ b1f478508..5d4e649f7 (3 commits)
  • 9d98284e3 Remove uses of SkColorPriv functions
  • 24ad5f2c8 Roll third_party/skia/ 6f17f2ebb..01b6ccad8 (21 commits)
  • 9f627e879 Roll third_party/googletest/src/ e235eb34c..24a9e940d (12 commits)
  • eca0ccd35 Roll third_party/icu/ bbccc2f6e..d30b7b0bb (2 commits)
  • bf0b34dac Roll v8/ d53112274..c206c46cd (376 commits)
  • 184f4a5e2 Roll Catapult from d5166861902b to 93e56257a508 (21 revisions)
  • 5f2a784ba Roll Code Coverage from 22e1f7663197 to 13e2c8b82298 (5 revisions)
  • 311e0a259 Roll Depot Tools from 98b7273c8d49 to 50eedb1b5a74 (80 revisions)
  • 9afffebfa Skip loose charbox calculation if the charbox is empty
  • b6f8d57db Demonstrate FPDFText_GetLooseCharBox() bug with generated chars
  • eb629927b Roll goldctl from 5d5ebf486dd1 to 53ff30f1de82
  • f4f666cbd Avoid hard-coding libjpeg header paths
  • 154cd3d27 Add missing FPDF_CALLCONV for "is active" page object functions
  • 5e50d5e2b Remove no-op Skia defines
  • 59ad47e26 Save loose char box values in CPDF_TextPage::CharInfo
  • b3673bb15 Store frequently used function results in variables in GetLooseBounds()
  • eebb95eb9 Roll v8/ 75be3dcb5..d53112274 (677 commits; 1 trivial rolls)
  • 6fb0dfc23 Add simdutf dependency
  • d7de7a817 Redo FPDFText_GetLooseCharBox() top/bottom calculation
  • 38cb4a42e Roll third_party/skia/ 975788ea9..6f17f2ebb (344 commits)
  • e82997582 Update skia/BUILD.gn to use gni filegroups for font port files
  • 6ef2b9f2d Roll third_party/fast_float/src/ 3e57d8dcf..cb1d42aaa (40 commits)
  • abf46a2fe Roll third_party/libc++abi/src/ 83dfa1f5b..94c5d7a8e (9 commits)
  • a20946ae8 Roll base/allocator/partition_allocator/ 85d14cbcf..f3153d2c6 (6 commits)
  • fd6531fb3 Remove unused CFX_Face::GetHeight()
  • ae69e3abd Roll abseil, build, buildtools, clang, libc++, llvm-libc, rust together
  • bd9c16f51 Make sure loose char box is at least as big as regular char box
  • 4d89054be Flip top/bottom values for FPDFText_GetLooseCharBox() with vertical text
  • 8e626f4ab Call FPDFText_GetCharBox() in FPDFTextEmbedderTest.TextVertical
  • dc0653ef3 Add FPDFText_GetLooseCharBox() test case for diacritics
  • 3cd6c8ff3 fixup_pdf_template: Don't count final newline in {{streamlen}}
  • 600248a49 Tolerate bfchar / bfrange sections with more than 100 entries
  • 76a74cb97 Roll Memory Tools from 8e9b58419b41 to 14089a7f57fa (1 revision)
  • ad9d0b73e Roll Zlib from b763971bcaa3 to 788cb3c270e8 (3 revisions)
  • bed1f9450 Add regression test for /ActualText parsing
  • 340b95514 Fix some formatting issues in fpdfview.h
  • 01a53b0c0 Add pixel test for PDF with /NeedAppearances true
  • c58db783d fix extraction of marked text
  • edeeceeea Add another indexed jpeg2000 test
  • f32695da8 Remove MSVC-specific code
  • 330540390 Roll third_party/abseil-cpp/ 72093794a..f9b083a49 (12 commits)
  • a2dd5077f Roll third_party/freetype/src/ afc7000ca..b1f478508 (36 commits)
  • 61da0de7e Update gn_version to ed1abc107815210dc66ec439542bee2f6cbabc00
  • bf822ae22 Roll third_party/libunwind/src/ d1e95b102..e55d8cf51 (1 commit)
  • 4bac39b85 Roll third_party/googletest/src/ 7d76a231b..e235eb34c (7 commits)
  • e914d6b03 Use StringTo{Float,Double}() in more places
  • 067011d41 Switch one FXSYS_wcstof() caller to StringToFloat()
  • 100e24682 Switch FXSYS_wcstof() to use fast_float
  • c80dc394d Avoid UTF-8 conversion in wide versions of StringTo{Float,Double}()
  • 698283cd5 Test more WideString inputs with StringTo{Float,Double}()
  • c5a175051 Suppress unsafe_libc_call (Debug only) in CFXJSE_Context.
  • 92e774c0b Fix JPEG2000 image decoding with an indexed colorspace
  • 5f2ff3938 Enable death tests for {Byte,Wide}String in release builds.
  • 40f8124e0 Remove CXFA_FMLexer::Token::ToDebugString().
  • 97aaf8bda Remove the /wd defines from BUILD.gn
  • 643e4267f Default pdfium to using an optimized allocator.
  • f37509d40 Roll base/allocator/partition_allocator/ 9cab8b0d1..85d14cbcf (14 commits)
  • 4d39fb694 Roll Code Coverage from 5e7c277c0d8c to 22e1f7663197 (2 revisions)
  • 208278ad9 Roll Depot Tools from 58625e82c685 to 98b7273c8d49 (86 revisions)
  • 6299cda27 Roll Catapult from 86d6f8ee6130 to d5166861902b (22 revisions)
  • afaaf5517 Skip some WideString creation in CPDF_TextPage::ProcessTextObjectItems()