diff options
| author | Tom Lane | 2022-11-30 18:01:41 +0000 |
|---|---|---|
| committer | Tom Lane | 2022-11-30 18:01:41 +0000 |
| commit | ae9939020dda40af579678489b11ef20fe3cca05 (patch) | |
| tree | 366963bb27ac53b5d8adeac4ad61a7365678bc02 | |
| parent | 4df5462f345b5e50cedf42300cad8616c7df3f6d (diff) | |
Reject missing database name in pg_regress and cohorts.
Writing "pg_regress --dbname= ..." led to a crash, because
we weren't expecting there to be no database name supplied.
It doesn't seem like a great idea to run regression tests
in whatever is the user's default database; so rather than
supporting this case let's explicitly reject it.
Per report from Xing Guo. Back-patch to all supported
branches.
Discussion: https://postgr.es/m/CACpMh+A8cRvtvtOWVAZsCM1DU81GK4DL26R83y6ugZ1osV=ifA@mail.gmail.com
| -rw-r--r-- | src/test/regress/pg_regress.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c index 931872ba45a..25683a78413 100644 --- a/src/test/regress/pg_regress.c +++ b/src/test/regress/pg_regress.c @@ -2277,6 +2277,17 @@ regression_main(int argc, char *argv[], init_function ifunc, test_function tfunc optind++; } + /* + * We must have a database to run the tests in; either a default name, or + * one supplied by the --dbname switch. + */ + if (!(dblist && dblist->str && dblist->str[0])) + { + fprintf(stderr, _("%s: no database name was specified\n"), + progname); + exit(2); + } + if (config_auth_datadir) { #ifdef ENABLE_SSPI |
