tree c09386d20f50702a2c7d537853cbf5ddb6bce253
parent 6a1250879d7225cc0cc82a19f53571a53b791bc4
author Mark Mentovai <mark@chromium.org> 1667851459 +0000
committer Pdfium LUCI CQ <pdfium-scoped@luci-project-accounts.iam.gserviceaccount.com> 1667851459 +0000

Replace sprintf calls with snprintf in third_party

This makes it possible to build PDFium without warnings using the macOS
13 SDK. Calls to sprintf are replaced with snprintf, passing appropriate
buffer sizes.

It doesn’t appear that any of the changed uses of sprintf were actually
unsafe, so no behavior change is expected aside from SDK compatibility.

The macOS 13 SDK deprecates sprintf as it’s difficult to use safely. The
deprecation warning message is visible when building C++, but it is not
normally visible when building plain C code due to a quirk in how
sprintf is declared in the SDK. However, the deprecation message is
visible when building plain C under Address Sanitizer
(-fsanitize=address). This discrepancy was discovered at
https://crbug.com/1381706 and reported to Apple with a copy at
https://openradar.appspot.com/FB11761475.

The macOS 13 SDK is packaged in Xcode 14.1, released on 2022-11-01. This
also affects the iOS 16 SDK and other 2022-era Apple OS SDKs packaged in
Xcode 14.0, released on 2022-09-12.

This change affects libopenjpeg and libtiff. The patches here were
submitted upstream at https://github.com/uclouvain/openjpeg/pull/1450
and https://gitlab.com/libtiff/libtiff/-/merge_requests/408.

Bug: chromium:1381706
Change-Id: I92ff8f897fe63b3dee14301cd15c791e0d4fb8cf
Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/100790
Commit-Queue: Lei Zhang <thestig@chromium.org>
Reviewed-by: Lei Zhang <thestig@chromium.org>
