Merge "minadbd: daemon_service_to_fd takes std::string_view." am: 72aa58dcf7
am: 29578b1117

Change-Id: I038edb2337aceaaa8586426d14a159c2806d9350
diff --git a/minadbd/Android.bp b/minadbd/Android.bp
index 370232b..a95d979 100644
--- a/minadbd/Android.bp
+++ b/minadbd/Android.bp
@@ -21,6 +21,8 @@
         "-Werror",
     ],
 
+    cpp_std: "experimental",
+
     include_dirs: [
         "system/core/adb",
     ],
diff --git a/minadbd/minadbd_services.cpp b/minadbd/minadbd_services.cpp
index e9c51da..9309ed7 100644
--- a/minadbd/minadbd_services.cpp
+++ b/minadbd/minadbd_services.cpp
@@ -23,6 +23,7 @@
 
 #include <functional>
 #include <string>
+#include <string_view>
 #include <thread>
 
 #include "adb.h"
@@ -49,14 +50,13 @@
   exit(result == 0 ? 0 : 1);
 }
 
-unique_fd daemon_service_to_fd(const char* name, atransport* /* transport */) {
-  if (!strncmp(name, "sideload:", 9)) {
-    // this exit status causes recovery to print a special error
-    // message saying to use a newer adb (that supports
-    // sideload-host).
+unique_fd daemon_service_to_fd(std::string_view name, atransport* /* transport */) {
+  if (name.starts_with("sideload:")) {
+    // This exit status causes recovery to print a special error message saying to use a newer adb
+    // (that supports sideload-host).
     exit(3);
-  } else if (!strncmp(name, "sideload-host:", 14)) {
-    std::string arg(name + 14);
+  } else if (name.starts_with("sideload-host:")) {
+    std::string arg(name.substr(strlen("sideload-host:")));
     return create_service_thread("sideload-host",
                                  std::bind(sideload_host_service, std::placeholders::_1, arg));
   }