summaryrefslogtreecommitdiff
path: root/adb/client/file_sync_client.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'adb/client/file_sync_client.cpp')
-rw-r--r--adb/client/file_sync_client.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/adb/client/file_sync_client.cpp b/adb/client/file_sync_client.cpp
index 697d9ea14..f0f9a8068 100644
--- a/adb/client/file_sync_client.cpp
+++ b/adb/client/file_sync_client.cpp
@@ -894,7 +894,8 @@ static bool copy_local_dir_remote(SyncConnection& sc, std::string lpath,
//
// TODO(b/25457350): We don't preserve permissions on directories.
// TODO: Find all of the leaves and `mkdir -p` them instead?
- if (CanUseFeature(sc.Features(), kFeatureShell2)) {
+ if (!CanUseFeature(sc.Features(), kFeatureFixedPushMkdir) &&
+ CanUseFeature(sc.Features(), kFeatureShell2)) {
SilentStandardStreamsCallbackInterface cb;
std::string cmd = "mkdir";
for (const auto& dir : directory_list) {