diff --git a/contrib/dblink/dblink.c b/contrib/dblink/dblink.c
index f6c95ef1dcdedc2eb7e871b12fffc0c87d86adfa..1841284917abbdee9ea47fb7ae10a6a8c62b24cc 100644
--- a/contrib/dblink/dblink.c
+++ b/contrib/dblink/dblink.c
@@ -310,10 +310,10 @@ dblink_open(PG_FUNCTION_ARGS)
 			conname = GET_STR(PG_GETARG_TEXT_P(0));
 			curname = GET_STR(PG_GETARG_TEXT_P(1));
 			sql = GET_STR(PG_GETARG_TEXT_P(2));
+			rcon = getConnectionByName(conname);
+			if (rcon)
+				conn = rcon->con;
 		}
-		rcon = getConnectionByName(conname);
-		if (rcon)
-			conn = rcon->con;
 	}
 	else if (PG_NARGS() == 4)
 	{