diff --git a/gio/giomodule.c b/gio/giomodule.c
index 1f2e0bc..7a91131 100644
--- a/gio/giomodule.c
+++ b/gio/giomodule.c
@@ -551,7 +551,10 @@ _g_io_modules_ensure_loaded (void)
     {
       loaded_dirs = TRUE;
 
-      g_io_modules_scan_all_in_directory (GIO_MODULE_DIR);
+      if ((module_path = g_getenv ("GIO_MODULE_DIR")) == NULL) {
+         module_path = GIO_MODULE_DIR;
+      }
+      g_io_modules_scan_all_in_directory (module_path);
 
       module_path = g_getenv ("GIO_EXTRA_MODULES");
 
