diff --git a/binder_service_android.cc b/binder_service_android.cc
index 88bc1f2..9d040d6 100644
--- a/binder_service_android.cc
+++ b/binder_service_android.cc
@@ -34,6 +34,16 @@
   return Status::fromServiceSpecificError(
       1, android::String8{error->GetMessage().c_str()});
 }
+
+vector<string> ToVecString(const vector<android::String16>& inp) {
+  vector<string> out;
+  out.reserve(inp.size());
+  for (const auto& e : inp) {
+    out.emplace_back(android::String8{e}.string());
+  }
+  return out;
+}
+
 }  // namespace
 
 namespace chromeos_update_engine {
@@ -99,11 +109,7 @@
     int64_t payload_size,
     const vector<android::String16>& header_kv_pairs) {
   const string payload_url{android::String8{url}.string()};
-  vector<string> str_headers;
-  str_headers.reserve(header_kv_pairs.size());
-  for (const auto& header : header_kv_pairs) {
-    str_headers.emplace_back(android::String8{header}.string());
-  }
+  vector<string> str_headers = ToVecString(header_kv_pairs);
 
   brillo::ErrorPtr error;
   if (!service_delegate_->ApplyPayload(
@@ -118,11 +124,7 @@
     int64_t payload_offset,
     int64_t payload_size,
     const vector<android::String16>& header_kv_pairs) {
-  vector<string> str_headers;
-  str_headers.reserve(header_kv_pairs.size());
-  for (const auto& header : header_kv_pairs) {
-    str_headers.emplace_back(android::String8{header}.string());
-  }
+  vector<string> str_headers = ToVecString(header_kv_pairs);
 
   brillo::ErrorPtr error;
   if (!service_delegate_->ApplyPayload(
