From 2165717875ee15aea112f63744780cae26d6b4c4 Mon Sep 17 00:00:00 2001 From: Josh Gao Date: Wed, 1 Apr 2020 13:31:07 -0700 Subject: [PATCH] adb: fix use of wrong union variant. Also, prepare to add more compression flags. Bug: https://issuetracker.google.com/150827486 Test: none Change-Id: I5044e5d5944aff5c18241fd7439baa48e2e09980 --- adb/daemon/file_sync_service.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/adb/daemon/file_sync_service.cpp b/adb/daemon/file_sync_service.cpp index dcd640b57..3138ab497 100644 --- a/adb/daemon/file_sync_service.cpp +++ b/adb/daemon/file_sync_service.cpp @@ -558,11 +558,13 @@ static bool do_send_v2(int s, const std::string& path, std::vector& buffer } std::optional compression; + + uint32_t orig_flags = msg.send_v2_setup.flags; if (msg.send_v2_setup.flags & kSyncFlagBrotli) { msg.send_v2_setup.flags &= ~kSyncFlagBrotli; if (compression) { SendSyncFail(s, android::base::StringPrintf("multiple compression flags received: %d", - msg.recv_v2_setup.flags)); + orig_flags)); return false; } compression = CompressionType::Brotli; @@ -676,11 +678,12 @@ static bool do_recv_v2(borrowed_fd s, const char* path, std::vector& buffe } std::optional compression; + uint32_t orig_flags = msg.recv_v2_setup.flags; if (msg.recv_v2_setup.flags & kSyncFlagBrotli) { msg.recv_v2_setup.flags &= ~kSyncFlagBrotli; if (compression) { SendSyncFail(s, android::base::StringPrintf("multiple compression flags received: %d", - msg.recv_v2_setup.flags)); + orig_flags)); return false; } compression = CompressionType::Brotli;