Re: [BUGS] Bug #756: suggestion: file with password instead of
От | Tom Lane |
---|---|
Тема | Re: [BUGS] Bug #756: suggestion: file with password instead of |
Дата | |
Msg-id | 9506.1031267396@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | Re: [BUGS] Bug #756: suggestion: file with password instead of (Bruce Momjian <pgman@candle.pha.pa.us>) |
Ответы |
Re: [BUGS] Bug #756: suggestion: file with password instead
Re: [BUGS] Bug #756: suggestion: file with password instead |
Список | pgsql-patches |
Bruce Momjian <pgman@candle.pha.pa.us> writes: > + #define PSQLHISTORY "/.psql_history" > ... > ! char *psql_history = (char *) malloc(strlen(home) + > ! strlen(PSQLHISTORY) + 1); > ! sprintf(psql_history, "%s" PSQLHISTORY, home); This seems like a really ugly coding practice. The sprintf is hard to read and absolutely dependent on the assumption that PSQLHISTORY contains no %. I'd suggest this pattern: #define PSQLHISTORY ".psql_history" > ... > ! char *psql_history = (char *) malloc(strlen(home) + > ! strlen(PSQLHISTORY) + 2); > ! sprintf(psql_history, "%s/%s", home, PSQLHISTORY); as being easier to read and safer. In PasswordFromFile(): > + /* Look for it in the home dir */ > + home = getenv("HOME"); > + if (home) > + { > + pgpassfile = malloc(strlen(home) + strlen(PGPASSFILE) + 1); > + if (!pgpassfile) > + { > + fprintf(stderr, gettext("%s: out of memory\n"), pset.progname); > + exit(EXIT_FAILURE); > + } > + } > + else > + return NULL; libpq has no business calling exit(). How about just "return NULL" like all the other failure cases in that routine? regards, tom lane
В списке pgsql-patches по дате отправления: