Refactor ParseCommaSeparatedIntegers() to use base::StringPiece

This CL refactors the ParseCommaSeparatedIntegers() function to
use base::StringPiece for more concise code.

Change-Id: Id7d3a1e8f385b21161c090f81b130faf7a0bdf31
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4554160
Commit-Queue: Joone Hur <joone@chromium.org>
Reviewed-by: Peter Kasting <pkasting@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1149379}
diff --git a/chrome/browser/ui/browser_window_state.cc b/chrome/browser/ui/browser_window_state.cc
index da49c28b..fe95041 100644
--- a/chrome/browser/ui/browser_window_state.cc
+++ b/chrome/browser/ui/browser_window_state.cc
@@ -10,6 +10,7 @@
 
 #include "base/command_line.h"
 #include "base/strings/string_number_conversions.h"
+#include "base/strings/string_piece.h"
 #include "build/chromeos_buildflags.h"
 #include "chrome/browser/buildflags.h"
 #include "chrome/browser/defaults.h"
@@ -30,21 +31,12 @@
 bool ParseCommaSeparatedIntegers(const std::string& str,
                                  int* ret_num1,
                                  int* ret_num2) {
-  size_t num1_size = str.find_first_of(',');
-  if (num1_size == std::string::npos)
-    return false;
-
-  size_t num2_pos = num1_size + 1;
-  size_t num2_size = str.size() - num2_pos;
-  int num1 = 0;
-  int num2 = 0;
-  if (!base::StringToInt(str.substr(0, num1_size), &num1) ||
-      !base::StringToInt(str.substr(num2_pos, num2_size), &num2))
-    return false;
-
-  *ret_num1 = num1;
-  *ret_num2 = num2;
-  return true;
+  const size_t comma = str.find(',');
+  return (comma != std::string::npos) &&
+         base::StringToInt(base::StringPiece(str.data(), comma), ret_num1) &&
+         base::StringToInt(
+             base::StringPiece(str.data() + comma + 1, str.size() - comma - 1),
+             ret_num2);
 }
 
 }  // namespace