summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--adb/Android.mk6
-rw-r--r--adb/adb_auth_host.cpp5
-rw-r--r--adb/sysdeps_win32.cpp3
-rw-r--r--base/include/base/logging.h13
-rw-r--r--base/logging.cpp6
5 files changed, 9 insertions, 24 deletions
diff --git a/adb/Android.mk b/adb/Android.mk
index 4ffb589e3..f3a482283 100644
--- a/adb/Android.mk
+++ b/adb/Android.mk
@@ -96,9 +96,6 @@ LOCAL_STATIC_LIBRARIES := libcrypto_static
ifeq ($(HOST_OS),windows)
LOCAL_C_INCLUDES += development/host/windows/usb/api/
- # Windows.h defines an awful ERROR macro that collides with base/logging.h.
- # Suppress it with NOGDI.
- LOCAL_CFLAGS += -DNOGDI
endif
include $(BUILD_HOST_STATIC_LIBRARY)
@@ -165,9 +162,6 @@ ifeq ($(HOST_OS),darwin)
endif
ifeq ($(HOST_OS),windows)
- # Windows.h defines an awful ERROR macro that collides with base/logging.h.
- # Suppress it with NOGDI.
- LOCAL_CFLAGS += -DNOGDI
LOCAL_LDLIBS += -lws2_32 -lgdi32
EXTRA_STATIC_LIBS := AdbWinApi
endif
diff --git a/adb/adb_auth_host.cpp b/adb/adb_auth_host.cpp
index 558151615..61a377737 100644
--- a/adb/adb_auth_host.cpp
+++ b/adb/adb_auth_host.cpp
@@ -16,11 +16,6 @@
#define TRACE_TAG TRACE_AUTH
-#ifdef _WIN32
-// This blocks some definitions we need on Windows.
-#undef NOGDI
-#endif
-
#include "sysdeps.h"
#include "adb_auth.h"
diff --git a/adb/sysdeps_win32.cpp b/adb/sysdeps_win32.cpp
index b7962b92b..a21272fb4 100644
--- a/adb/sysdeps_win32.cpp
+++ b/adb/sysdeps_win32.cpp
@@ -16,9 +16,6 @@
#define TRACE_TAG TRACE_SYSDEPS
-// For whatever reason this blocks the definition of ToAscii...
-#undef NOGDI
-
#include "sysdeps.h"
#include <winsock2.h> /* winsock.h *must* be included before windows.h. */
diff --git a/base/include/base/logging.h b/base/include/base/logging.h
index 4a15f4305..283a7bc90 100644
--- a/base/include/base/logging.h
+++ b/base/include/base/logging.h
@@ -13,18 +13,15 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-
#ifndef BASE_LOGGING_H
#define BASE_LOGGING_H
-#ifdef ERROR
-#error ERROR is already defined. If this is Windows code, #define NOGDI before \
-including anything.
-#endif
-
+// NOTE: For Windows, you must include logging.h after windows.h to allow the
+// following code to suppress the evil ERROR macro:
#ifdef _WIN32
-#ifndef NOGDI
-#define NOGDI // Suppress the evil ERROR macro.
+// windows.h includes wingdi.h which defines an evil macro ERROR.
+#ifdef ERROR
+#undef ERROR
#endif
#endif
diff --git a/base/logging.cpp b/base/logging.cpp
index 7a08c39f2..34229a2f8 100644
--- a/base/logging.cpp
+++ b/base/logging.cpp
@@ -14,6 +14,10 @@
* limitations under the License.
*/
+#ifdef _WIN32
+#include <windows.h>
+#endif
+
#include "base/logging.h"
#include <libgen.h>
@@ -34,8 +38,6 @@
#ifndef _WIN32
#include <mutex>
-#else
-#include <windows.h>
#endif
#include "base/macros.h"