From 2e1379867a77bfa94cc740b6d1407d3702810c73 Mon Sep 17 00:00:00 2001 From: Brad Burlage Date: Tue, 18 Jun 2019 14:17:31 -0700 Subject: Replace usage of deprecated strtoul/strtoull PiperOrigin-RevId: 253864770 --- test/syscalls/linux/BUILD | 1 + test/syscalls/linux/exec_state_workload.cc | 22 +++++++++++----------- 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/test/syscalls/linux/BUILD b/test/syscalls/linux/BUILD index 2f6704842..7e3ad08a9 100644 --- a/test/syscalls/linux/BUILD +++ b/test/syscalls/linux/BUILD @@ -42,6 +42,7 @@ cc_binary( name = "exec_state_workload", testonly = 1, srcs = ["exec_state_workload.cc"], + deps = ["@com_google_absl//absl/strings"], ) sh_binary( diff --git a/test/syscalls/linux/exec_state_workload.cc b/test/syscalls/linux/exec_state_workload.cc index 725c2977f..028902b14 100644 --- a/test/syscalls/linux/exec_state_workload.cc +++ b/test/syscalls/linux/exec_state_workload.cc @@ -19,10 +19,13 @@ #include #include #include + #include #include #include +#include "absl/strings/numbers.h" + // Pretty-print a sigset_t. std::ostream& operator<<(std::ostream& out, const sigset_t& s) { out << "{ "; @@ -138,15 +141,14 @@ int main(int argc, char** argv) { return 1; } - char* end; - uint32_t signo = strtoul(argv[2], &end, 10); - if (end == argv[2]) { + uint32_t signo; + if (!absl::SimpleAtoi(argv[2], &signo)) { std::cerr << "invalid signo: " << argv[2] << std::endl; return 1; } - uintptr_t handler = strtoull(argv[3], &end, 16); - if (end == argv[3]) { + uintptr_t handler; + if (!absl::numbers_internal::safe_strtoi_base(argv[3], &handler, 16)) { std::cerr << "invalid handler: " << std::hex << argv[3] << std::endl; return 1; } @@ -160,9 +162,8 @@ int main(int argc, char** argv) { return 1; } - char* end; - uint32_t signo = strtoul(argv[2], &end, 10); - if (end == argv[2]) { + uint32_t signo; + if (!absl::SimpleAtoi(argv[2], &signo)) { std::cerr << "invalid signo: " << argv[2] << std::endl; return 1; } @@ -176,9 +177,8 @@ int main(int argc, char** argv) { return 1; } - char* end; - uint32_t timer = strtoul(argv[2], &end, 10); - if (end == argv[2]) { + uint32_t timer; + if (!absl::SimpleAtoi(argv[2], &timer)) { std::cerr << "invalid signo: " << argv[2] << std::endl; return 1; } -- cgit v1.2.3