diff options
author | mark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-12-03 14:10:59 +0000 |
---|---|---|
committer | mark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-12-03 14:10:59 +0000 |
commit | d89eec809e2d25aee8d386186653699f5017b15b (patch) | |
tree | b8b0433f5766958907ea4cebb7b954e82fc1148a /tools/android | |
parent | 34b5946e889071a9c838a4b87d32437415148fed (diff) | |
download | chromium_src-d89eec809e2d25aee8d386186653699f5017b15b.zip chromium_src-d89eec809e2d25aee8d386186653699f5017b15b.tar.gz chromium_src-d89eec809e2d25aee8d386186653699f5017b15b.tar.bz2 |
Don't HANDLE_EINTR(close). Either IGNORE_EINTR(close) or just close.
It is incorrect to wrap close in HANDLE_EINTR on Linux. Correctness is
generally undefined on Mac, but as of r223369, it is incorrect in Chrome on
Mac.
To avoid new offenders, a PRESUBMIT check ensures that HANDLE_EINTR is not
used with close, and that IGNORE_EINTR is only used with close. Unnecessary
#includes of eintr_wrapper.h are also removed.
base/posix/einter_wrapper.h, PRESUBMIT.py, and ppapi/tests/test_broker.cc
contain non-mechanical changes. Variable naming within the latter is updated
per r178174. Missing #includes for <errno.h> in
content/zygote/zygote_main_linux.cc and tools/android/common/daemon.cc were
manually added. Mechanical changes were generated by running:
sed -E -i '' \
-e 's/((=|if|return|CHECK|EXPECT|ASSERT).*)HANDLE(_EINTR\(.*close)/\1IGNORE\3/' \
-e 's/(ignore_result|void ?)\(HANDLE_EINTR\((.*close\(.*)\)\)/\2/' \
-e 's/(\(void\) ?)?HANDLE_EINTR\((.*close\(.*)\)/\2/' \
$(git grep -El 'HANDLE_EINTR.*close')
sed -E -i '' -e '/#include.*eintr_wrapper\.h"/d' \
$(grep -EL '(HANDLE|IGNORE)_EINTR' \
$(git grep -El '#include.*eintr_wrapper\.h"'))
BUG=269623
R=agl@chromium.org, jln@chromium.org
TBR=OWNERS
Review URL: https://codereview.chromium.org/100253002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@238390 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools/android')
-rw-r--r-- | tools/android/common/adb_connection.cc | 2 | ||||
-rw-r--r-- | tools/android/common/daemon.cc | 4 | ||||
-rw-r--r-- | tools/android/forwarder/forwarder.cc | 2 | ||||
-rw-r--r-- | tools/android/forwarder2/common.cc | 2 | ||||
-rw-r--r-- | tools/android/forwarder2/host_forwarder_main.cc | 1 | ||||
-rw-r--r-- | tools/android/forwarder2/pipe_notifier.cc | 4 |
6 files changed, 7 insertions, 8 deletions
diff --git a/tools/android/common/adb_connection.cc b/tools/android/common/adb_connection.cc index 91c25fe..9985a3a 100644 --- a/tools/android/common/adb_connection.cc +++ b/tools/android/common/adb_connection.cc @@ -22,7 +22,7 @@ namespace { void CloseSocket(int fd) { if (fd >= 0) { int old_errno = errno; - (void) HANDLE_EINTR(close(fd)); + close(fd); errno = old_errno; } } diff --git a/tools/android/common/daemon.cc b/tools/android/common/daemon.cc index 9eafdbc..699c615 100644 --- a/tools/android/common/daemon.cc +++ b/tools/android/common/daemon.cc @@ -4,6 +4,7 @@ #include "tools/android/common/daemon.h" +#include <errno.h> #include <signal.h> #include <stdio.h> #include <sys/types.h> @@ -11,7 +12,6 @@ #include "base/command_line.h" #include "base/logging.h" -#include "base/posix/eintr_wrapper.h" namespace { @@ -25,7 +25,7 @@ void Exit(int unused) { void CloseFileDescriptor(int fd) { int old_errno = errno; - (void) HANDLE_EINTR(close(fd)); + close(fd); errno = old_errno; } diff --git a/tools/android/forwarder/forwarder.cc b/tools/android/forwarder/forwarder.cc index e77c806..fe49903 100644 --- a/tools/android/forwarder/forwarder.cc +++ b/tools/android/forwarder/forwarder.cc @@ -31,7 +31,7 @@ volatile bool g_killed = false; void CloseSocket(int fd) { if (fd >= 0) { int old_errno = errno; - (void) HANDLE_EINTR(close(fd)); + close(fd); errno = old_errno; } } diff --git a/tools/android/forwarder2/common.cc b/tools/android/forwarder2/common.cc index c97ed80..3b7387d 100644 --- a/tools/android/forwarder2/common.cc +++ b/tools/android/forwarder2/common.cc @@ -19,7 +19,7 @@ void PError(const char* msg) { void CloseFD(int fd) { const int errno_copy = errno; - if (HANDLE_EINTR(close(fd)) < 0) { + if (IGNORE_EINTR(close(fd)) < 0) { PError("close"); errno = errno_copy; } diff --git a/tools/android/forwarder2/host_forwarder_main.cc b/tools/android/forwarder2/host_forwarder_main.cc index 9d53900..185bcea 100644 --- a/tools/android/forwarder2/host_forwarder_main.cc +++ b/tools/android/forwarder2/host_forwarder_main.cc @@ -28,7 +28,6 @@ #include "base/memory/scoped_vector.h" #include "base/memory/weak_ptr.h" #include "base/pickle.h" -#include "base/posix/eintr_wrapper.h" #include "base/safe_strerror_posix.h" #include "base/strings/string_number_conversions.h" #include "base/strings/string_piece.h" diff --git a/tools/android/forwarder2/pipe_notifier.cc b/tools/android/forwarder2/pipe_notifier.cc index 3aba18b..9110fff 100644 --- a/tools/android/forwarder2/pipe_notifier.cc +++ b/tools/android/forwarder2/pipe_notifier.cc @@ -25,8 +25,8 @@ PipeNotifier::PipeNotifier() { } PipeNotifier::~PipeNotifier() { - (void) HANDLE_EINTR(close(receiver_fd_)); - (void) HANDLE_EINTR(close(sender_fd_)); + close(receiver_fd_); + close(sender_fd_); } bool PipeNotifier::Notify() { |