Delete wrappers for snprintf and vsnprintf
Bug: webrtc:6424
Change-Id: I99373dc86e25caff20111408b104ff5dafa7b711
Reviewed-on: https://webrtc-review.googlesource.com/c/106322
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#25210}
diff --git a/rtc_base/base64_unittest.cc b/rtc_base/base64_unittest.cc
index 4b857f1..bdf8559 100644
--- a/rtc_base/base64_unittest.cc
+++ b/rtc_base/base64_unittest.cc
@@ -11,7 +11,6 @@
#include "rtc_base/third_party/base64/base64.h"
#include "rtc_base/gunit.h"
#include "rtc_base/logging.h"
-#include "rtc_base/stringutils.h"
#include "rtc_base/testbase64.h"
@@ -430,10 +429,10 @@
// try putting some extra stuff after the equals signs, or in between them
if (equals == 2) {
- sprintfn(first_equals, 6, " = = ");
+ snprintf(first_equals, 6, " = = ");
len = first_equals - encode_buffer + 5;
} else {
- sprintfn(first_equals, 6, " = ");
+ snprintf(first_equals, 6, " = ");
len = first_equals - encode_buffer + 3;
}
decoded2.assign("this junk should be ignored");
diff --git a/rtc_base/event_tracer.cc b/rtc_base/event_tracer.cc
index 31f4271..c61def9 100644
--- a/rtc_base/event_tracer.cc
+++ b/rtc_base/event_tracer.cc
@@ -20,7 +20,6 @@
#include "rtc_base/event.h"
#include "rtc_base/logging.h"
#include "rtc_base/platform_thread.h"
-#include "rtc_base/stringutils.h"
#include "rtc_base/timeutils.h"
#include "rtc_base/trace_event.h"
@@ -286,19 +285,19 @@
}
break;
case TRACE_VALUE_TYPE_UINT:
- print_length = sprintfn(&output[0], kTraceArgBufferLength, "%llu",
+ print_length = snprintf(&output[0], kTraceArgBufferLength, "%llu",
arg.value.as_uint);
break;
case TRACE_VALUE_TYPE_INT:
- print_length = sprintfn(&output[0], kTraceArgBufferLength, "%lld",
+ print_length = snprintf(&output[0], kTraceArgBufferLength, "%lld",
arg.value.as_int);
break;
case TRACE_VALUE_TYPE_DOUBLE:
- print_length = sprintfn(&output[0], kTraceArgBufferLength, "%f",
+ print_length = snprintf(&output[0], kTraceArgBufferLength, "%f",
arg.value.as_double);
break;
case TRACE_VALUE_TYPE_POINTER:
- print_length = sprintfn(&output[0], kTraceArgBufferLength, "\"%p\"",
+ print_length = snprintf(&output[0], kTraceArgBufferLength, "\"%p\"",
arg.value.as_pointer);
break;
}
diff --git a/rtc_base/httpcommon.cc b/rtc_base/httpcommon.cc
index 43831b7..baf843d 100644
--- a/rtc_base/httpcommon.cc
+++ b/rtc_base/httpcommon.cc
@@ -32,7 +32,6 @@
#include "rtc_base/messagedigest.h"
#include "rtc_base/socketaddress.h"
#include "rtc_base/strings/string_builder.h"
-#include "rtc_base/stringutils.h" // for strcpyn, _stricmp
#include "rtc_base/third_party/base64/base64.h" // for Base64
#include "rtc_base/zero_memory.h" // for ExplicitZeroMemory
@@ -377,7 +376,7 @@
return HAR_IGNORE;
}
#else
- sprintfn(spn, MAX_SPN, "HTTP/%s", server.ToString().c_str());
+ snprintf(spn, MAX_SPN, "HTTP/%s", server.ToString().c_str());
#endif
SecBuffer out_sec;
diff --git a/rtc_base/ipaddress.cc b/rtc_base/ipaddress.cc
index c52c9a4..9967ff3 100644
--- a/rtc_base/ipaddress.cc
+++ b/rtc_base/ipaddress.cc
@@ -162,11 +162,10 @@
std::string result;
result.resize(INET6_ADDRSTRLEN);
in6_addr addr = ipv6_address();
- size_t len =
- rtc::sprintfn(&(result[0]), result.size(), "%x:%x:%x:x:x:x:x:x",
- (addr.s6_addr[0] << 8) + addr.s6_addr[1],
- (addr.s6_addr[2] << 8) + addr.s6_addr[3],
- (addr.s6_addr[4] << 8) + addr.s6_addr[5]);
+ size_t len = snprintf(&(result[0]), result.size(), "%x:%x:%x:x:x:x:x:x",
+ (addr.s6_addr[0] << 8) + addr.s6_addr[1],
+ (addr.s6_addr[2] << 8) + addr.s6_addr[3],
+ (addr.s6_addr[4] << 8) + addr.s6_addr[5]);
result.resize(len);
return result;
}
diff --git a/rtc_base/location.cc b/rtc_base/location.cc
index 9c90d9e..c95ad9c 100644
--- a/rtc_base/location.cc
+++ b/rtc_base/location.cc
@@ -10,8 +10,6 @@
#include "rtc_base/location.h"
-#include "rtc_base/stringutils.h"
-
namespace rtc {
Location::Location(const char* function_name, const char* file_and_line)
@@ -31,7 +29,7 @@
std::string Location::ToString() const {
char buf[256];
- sprintfn(buf, sizeof(buf), "%s@%s", function_name_, file_and_line_);
+ snprintf(buf, sizeof(buf), "%s@%s", function_name_, file_and_line_);
return buf;
}
diff --git a/rtc_base/stringutils.h b/rtc_base/stringutils.h
index 2d9228b..75436b1 100644
--- a/rtc_base/stringutils.h
+++ b/rtc_base/stringutils.h
@@ -141,32 +141,6 @@
return bufpos + strcpyn(buffer + bufpos, buflen - bufpos, source, srclen);
}
-// Some compilers (clang specifically) require vsprintfn be defined before
-// sprintfn.
-template <class CTYPE>
-size_t vsprintfn(CTYPE* buffer,
- size_t buflen,
- const CTYPE* format,
- va_list args) {
- int len = vsnprintf(buffer, buflen, format, args);
- if ((len < 0) || (static_cast<size_t>(len) >= buflen)) {
- len = static_cast<int>(buflen - 1);
- buffer[len] = 0;
- }
- return len;
-}
-
-template <class CTYPE>
-size_t sprintfn(CTYPE* buffer, size_t buflen, const CTYPE* format, ...);
-template <class CTYPE>
-size_t sprintfn(CTYPE* buffer, size_t buflen, const CTYPE* format, ...) {
- va_list args;
- va_start(args, format);
- size_t len = vsprintfn(buffer, buflen, format, args);
- va_end(args);
- return len;
-}
-
///////////////////////////////////////////////////////////////////////////////
// Traits<char> specializations
///////////////////////////////////////////////////////////////////////////////
diff --git a/rtc_base/testutils.h b/rtc_base/testutils.h
index 2ab4a35..25e1edc 100644
--- a/rtc_base/testutils.h
+++ b/rtc_base/testutils.h
@@ -21,7 +21,6 @@
#include "rtc_base/checks.h"
#include "rtc_base/gunit.h"
#include "rtc_base/stream.h"
-#include "rtc_base/stringutils.h"
namespace webrtc {
namespace testing {
@@ -164,7 +163,7 @@
va_list args;
va_start(args, format);
char buffer[1024];
- size_t len = vsprintfn(buffer, sizeof(buffer), format, args);
+ size_t len = vsnprintf(buffer, sizeof(buffer), format, args);
RTC_CHECK(len < sizeof(buffer) - 1);
va_end(args);
QueueData(buffer, len);
diff --git a/rtc_base/thread.cc b/rtc_base/thread.cc
index 8b0ef41..b6c6a47 100644
--- a/rtc_base/thread.cc
+++ b/rtc_base/thread.cc
@@ -29,7 +29,6 @@
#include "rtc_base/checks.h"
#include "rtc_base/logging.h"
#include "rtc_base/nullsocketserver.h"
-#include "rtc_base/stringutils.h"
#include "rtc_base/timeutils.h"
#include "rtc_base/trace_event.h"
@@ -221,8 +220,10 @@
name_ = name;
if (obj) {
- char buf[16];
- sprintfn(buf, sizeof(buf), " 0x%p", obj);
+ // The %p specifier typically produce at most 16 hex digits, possibly with a
+ // 0x prefix. But format is implementation defined, so add some margin.
+ char buf[30];
+ snprintf(buf, sizeof(buf), " 0x%p", obj);
name_ += buf;
}
return true;
diff --git a/rtc_base/win32.cc b/rtc_base/win32.cc
index d81d685..e138752 100644
--- a/rtc_base/win32.cc
+++ b/rtc_base/win32.cc
@@ -72,9 +72,9 @@
}
const struct in_addr* as_in_addr =
reinterpret_cast<const struct in_addr*>(src);
- rtc::sprintfn(dst, size, "%d.%d.%d.%d", as_in_addr->S_un.S_un_b.s_b1,
- as_in_addr->S_un.S_un_b.s_b2, as_in_addr->S_un.S_un_b.s_b3,
- as_in_addr->S_un.S_un_b.s_b4);
+ snprintf(dst, size, "%d.%d.%d.%d", as_in_addr->S_un.S_un_b.s_b1,
+ as_in_addr->S_un.S_un_b.s_b2, as_in_addr->S_un.S_un_b.s_b3,
+ as_in_addr->S_un.S_un_b.s_b4);
return dst;
}
@@ -127,7 +127,7 @@
*cursor++ = ':';
*cursor++ = ':';
if (maxpos == 4) {
- cursor += rtc::sprintfn(cursor, INET6_ADDRSTRLEN - 2, "ffff:");
+ cursor += snprintf(cursor, INET6_ADDRSTRLEN - 2, "ffff:");
}
const struct in_addr* as_v4 =
reinterpret_cast<const struct in_addr*>(&(as_shorts[6]));
@@ -136,8 +136,8 @@
} else {
for (int i = 0; i < run_array_size; ++i) {
if (runpos[i] == -1) {
- cursor += rtc::sprintfn(cursor, INET6_ADDRSTRLEN - (cursor - dst), "%x",
- NetworkToHost16(as_shorts[i]));
+ cursor += snprintf(cursor, INET6_ADDRSTRLEN - (cursor - dst), "%x",
+ NetworkToHost16(as_shorts[i]));
if (i != 7 && runpos[i + 1] != 1) {
*cursor++ = ':';
}