diff --git a/src/bin/psql/startup.c b/src/bin/psql/startup.c
index 4f3815a28a89a6d7c9a2b6ab6a1b277541fcce20..10713e9b15d6d5757410f75647caeaa363e51c1c 100644
--- a/src/bin/psql/startup.c
+++ b/src/bin/psql/startup.c
@@ -224,8 +224,12 @@ main(int argc, char *argv[])
 
 	if (options.action == ACT_LIST_DB)
 	{
-		int			success = listAllDbs(false);
+		int			success;
 
+		if (!options.no_psqlrc)
+			process_psqlrc(argv[0]);
+
+		success = listAllDbs(false);
 		PQfinish(pset.db);
 		exit(success ? EXIT_SUCCESS : EXIT_FAILURE);
 	}