mirror of
https://github.com/ceres-solver/ceres-solver.git
synced 2026-08-29 08:34:37 +08:00
Eliminate macOS sprintf warning
AppleClang 14.0.0.14000029 warns about a potential security problem
while invoking the sprintf C function:
internal/ceres/fixed_array_test.cc:469:3: warning: 'sprintf' is deprecated: This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead. [-Wdeprecated-declarations]
sprintf(buf.data(), "foo"); // NOLINT(runtime/printf)
^
/Applications/Xcode_14.2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/include/stdio.h:188:1: note: 'sprintf' has been explicitly marked deprecated here
__deprecated_msg("This function is provided for compatibility reasons only. Due to security concerns inherent in the design of sprintf(3), it is highly recommended that you use snprintf(3) instead.")
^
/Applications/Xcode_14.2.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/include/sys/cdefs.h:215:48: note: expanded from macro '__deprecated_msg'
#define __deprecated_msg(_msg) __attribute__((__deprecated__(_msg)))
Replace sprintf by snprintf to avoid this deprecation warning.
Change-Id: I6870c0bd4e390388d1d7bcec082cee272b234eba
This commit is contained in:
@@ -466,7 +466,7 @@ TEST(FixedArrayTest, ManySizedArraysOfArraysOf2) {
|
||||
// will always overflow destination buffer [-Werror]
|
||||
TEST(FixedArrayTest, AvoidParanoidDiagnostics) {
|
||||
ceres::internal::FixedArray<char, 32> buf(32);
|
||||
sprintf(buf.data(), "foo"); // NOLINT(runtime/printf)
|
||||
snprintf(buf.data(), 32, "foo");
|
||||
}
|
||||
|
||||
TEST(FixedArrayTest, TooBigInlinedSpace) {
|
||||
|
||||
Reference in New Issue
Block a user