diff --git a/contrib/pg_upgrade/util.c b/contrib/pg_upgrade/util.c
index f6582f5e3852462c63196217ed3d75ee33a93ab4..66c6acded0f49000f400da1ca9d5cbdab8477cf3 100644
--- a/contrib/pg_upgrade/util.c
+++ b/contrib/pg_upgrade/util.c
@@ -230,7 +230,7 @@ getErrorText(int errNum)
 #ifdef WIN32
 	_dosmaperr(GetLastError());
 #endif
-	return strdup(strerror(errNum));
+	return pg_strdup(strerror(errNum));
 }