diff --git a/ChangeLog b/ChangeLog
index 4f8d604b194869a322c965a182752f9d37bc5060..0f370796f1e8ac34d9998bf49c9ef6b96b9ce201 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,4 +1,9 @@
-2015-12-22 Benno Schulenberg  <bensberg@justemail.net>
+2015-12-23  Christian Weisgerber  <naddy@mips.inka.de>
+	* configure.ac: AC_CHECK_HEADERS_ONCE() is very special and cannot be
+	conditionalized.  Use plain AC_CHECK_HEADERS() instead, to not check
+	for magic.h and zlib.h when configuring with --disable-libmagic.
+
+2015-12-22  Benno Schulenberg  <bensberg@justemail.net>
 	* src/color.c (precalc_multicolorinfo, alloc_multidata_if_needed):
 	Move these two functions to the file where they belong.  And make
 	the checking for an impatient user into a separate routine.
diff --git a/configure.ac b/configure.ac
index fe72c21d83e18ce468a8b067b72f76b5f97e158c..ae89cc6558fa55e312283f02e5ce4e714797e4c9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -657,9 +657,9 @@ AC_MSG_RESULT(no),
 AC_MSG_WARN([*** Can't check for macro redefinability when cross-compiling]))
 
 AS_IF([test "x$enable_libmagic" != "xno"], [
-  AC_CHECK_HEADERS_ONCE([magic.h])
+  AC_CHECK_HEADERS([magic.h])
   AC_CHECK_LIB(magic, magic_open)
-  AC_CHECK_HEADERS_ONCE([zlib.h])
+  AC_CHECK_HEADERS([zlib.h])
   AC_CHECK_LIB(z, inflate)
 ])