Merge "adb: fix shell_service_protocol_test for Windows."

This commit is contained in:
David Pursell 2015-09-12 01:30:20 +00:00 committed by Gerrit Code Review
commit 7b749acd5f
3 changed files with 10 additions and 5 deletions

View file

@ -133,8 +133,6 @@ LOCAL_SRC_FILES := \
$(LIBADB_TEST_SRCS) \
$(LIBADB_TEST_linux_SRCS) \
shell_service_protocol.cpp \
LOCAL_SRC_FILES_linux := \
shell_service_protocol_test.cpp \
LOCAL_SANITIZE := $(adb_target_sanitize)
@ -155,11 +153,9 @@ LOCAL_SRC_FILES := \
$(LIBADB_TEST_SRCS) \
services.cpp \
shell_service_protocol.cpp \
LOCAL_SRC_FILES_linux := \
$(LIBADB_TEST_linux_SRCS) \
shell_service_protocol_test.cpp \
LOCAL_SRC_FILES_linux := $(LIBADB_TEST_linux_SRCS)
LOCAL_SRC_FILES_darwin := $(LIBADB_TEST_darwin_SRCS)
LOCAL_SRC_FILES_windows := $(LIBADB_TEST_windows_SRCS)
LOCAL_SANITIZE := $(adb_host_sanitize)

View file

@ -72,13 +72,17 @@ class ShellProtocolTest : public ::testing::Test {
read_protocol_->buffer_end_ = read_protocol_->data() + size;
}
#if !defined(_WIN32)
static sig_t saved_sigpipe_handler_;
#endif
int read_fd_ = -1, write_fd_ = -1;
ShellProtocol *read_protocol_ = nullptr, *write_protocol_ = nullptr;
};
#if !defined(_WIN32)
sig_t ShellProtocolTest::saved_sigpipe_handler_ = nullptr;
#endif
namespace {

View file

@ -1121,6 +1121,11 @@ bip_buffer_write( BipBuffer bip, const void* src, int len )
BIPD(( "bip_buffer_write: enter %d->%d len %d", bip->fdin, bip->fdout, len ));
BIPDUMP( src, len );
if (bip->closed) {
errno = EPIPE;
return -1;
}
EnterCriticalSection( &bip->lock );
while (!bip->can_write) {