From c9c25a982c621320d699bf7c9055aaa4015dcad2 Mon Sep 17 00:00:00 2001
From: Tom Lane <tgl@sss.pgh.pa.us>
Date: Wed, 12 May 2010 16:50:00 +0000
Subject: [PATCH] Clean up unnecessary unportability and compiler warnings by
 removing the cmp parameter for pg_scandir().  The code failed to support this
 anyway for Sun/Windows, so pretending we could accept a parameter other than
 NULL was just asking for trouble.

---
 contrib/pg_upgrade/file.c        | 8 ++++----
 contrib/pg_upgrade/pg_upgrade.h  | 4 ++--
 contrib/pg_upgrade/relfilenode.c | 4 ++--
 3 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/contrib/pg_upgrade/file.c b/contrib/pg_upgrade/file.c
index f9ed3d46133..a7aeda93f8d 100644
--- a/contrib/pg_upgrade/file.c
+++ b/contrib/pg_upgrade/file.c
@@ -239,8 +239,8 @@ copy_file(const char *srcfile, const char *dstfile, bool force)
  */
 int
 pg_scandir(migratorContext *ctx, const char *dirname,
-		 struct dirent *** namelist, int (*selector) (const struct dirent *),
-		   int (*cmp) (const void *, const void *))
+		   struct dirent ***namelist,
+		   int (*selector) (const struct dirent *))
 {
 #if defined(sun) || defined(WIN32)
 	return pg_scandir_internal(ctx, dirname, namelist, selector);
@@ -258,10 +258,10 @@ pg_scandir(migratorContext *ctx, const char *dirname,
 	 */
 #elif defined(freebsd) || defined(bsdi) || defined(darwin) || defined(openbsd)
 	/* no const */
-	return scandir(dirname, namelist, (int (*) (struct dirent *)) selector, cmp);
+	return scandir(dirname, namelist, (int (*) (struct dirent *)) selector, NULL);
 #else
 	/* use const */
-	return scandir(dirname, namelist, selector, cmp);
+	return scandir(dirname, namelist, selector, NULL);
 #endif
 }
 
diff --git a/contrib/pg_upgrade/pg_upgrade.h b/contrib/pg_upgrade/pg_upgrade.h
index b2780d73114..0fd12ef5b9d 100644
--- a/contrib/pg_upgrade/pg_upgrade.h
+++ b/contrib/pg_upgrade/pg_upgrade.h
@@ -330,8 +330,8 @@ typedef void *pageCnvCtx;
 
 int			dir_matching_filenames(const struct dirent *scan_ent);
 int			pg_scandir(migratorContext *ctx, const char *dirname,
-				struct dirent ***namelist, int (*selector) (const struct dirent *),
-				int (*cmp) (const void *, const void *));
+					   struct dirent ***namelist,
+					   int (*selector) (const struct dirent *));
 const char *copyAndUpdateFile(migratorContext *ctx,
 				  pageCnvCtx *pageConverter, const char *src,
 				  const char *dst, bool force);
diff --git a/contrib/pg_upgrade/relfilenode.c b/contrib/pg_upgrade/relfilenode.c
index 918447fcfaf..11bfadb1b22 100644
--- a/contrib/pg_upgrade/relfilenode.c
+++ b/contrib/pg_upgrade/relfilenode.c
@@ -140,7 +140,7 @@ transfer_single_new_db(migratorContext *ctx, pageCnvCtx *pageConverter,
 			 * Now copy/link any fsm and vm files, if they exist
 			 */
 			snprintf(scandir_file_pattern, sizeof(scandir_file_pattern), "%u_", maps[mapnum].old);
-			numFiles = pg_scandir(ctx, maps[mapnum].old_file, &namelist, dir_matching_filenames, NULL);
+			numFiles = pg_scandir(ctx, maps[mapnum].old_file, &namelist, dir_matching_filenames);
 
 			while (numFiles--)
 			{
@@ -168,7 +168,7 @@ transfer_single_new_db(migratorContext *ctx, pageCnvCtx *pageConverter,
 		 * copied.
 		 */
 		snprintf(scandir_file_pattern, sizeof(scandir_file_pattern), "%u.", maps[mapnum].old);
-		numFiles = pg_scandir(ctx, maps[mapnum].old_file, &namelist, dir_matching_filenames, NULL);
+		numFiles = pg_scandir(ctx, maps[mapnum].old_file, &namelist, dir_matching_filenames);
 
 		while (numFiles--)
 		{
-- 
GitLab