--- a/gio/gthreadedresolver.c
+++ b/gio/gthreadedresolver.c
@@ -869,6 +869,8 @@ do_lookup_records (GTask         *task,
   records = g_resolver_records_from_res_query (lrd->rrname, rrtype, answer->data, len, herr, &error);
   g_byte_array_free (answer, TRUE);
 
+#ifdef HAVE_RES_NQUERY
+
 #if defined(HAVE_RES_NDESTROY)
   res_ndestroy (&res);
 #elif defined(HAVE_RES_NCLOSE)
@@ -877,6 +879,8 @@ do_lookup_records (GTask         *task,
 #error "Your platform has res_ninit() but not res_nclose() or res_ndestroy(). Please file a bug at https://bugzilla.gnome.org/enter_bug.cgi?product=glib"
 #endif
 
+#endif
+
 #else
 
   DNS_STATUS status;
