OSDN Git Service

Get rid of perror(), substitute some better phrased error messages.
authorPeter Eisentraut <peter_e@gmx.net>
Tue, 9 Nov 2004 15:57:57 +0000 (15:57 +0000)
committerPeter Eisentraut <peter_e@gmx.net>
Tue, 9 Nov 2004 15:57:57 +0000 (15:57 +0000)
malloc() doesn't set errno, so most uses were buggy anyway.

src/bin/initdb/initdb.c
src/bin/psql/print.c
src/bin/scripts/common.c
src/interfaces/ecpg/preproc/ecpg.c
src/interfaces/libpq/fe-auth.c
src/interfaces/libpq/fe-print.c

index d9d8e0d..1c22863 100644 (file)
@@ -39,7 +39,7 @@
  * Portions Copyright (c) 1994, Regents of the University of California
  * Portions taken from FreeBSD.
  *
- * $PostgreSQL: pgsql/src/bin/initdb/initdb.c,v 1.65 2004/10/24 15:55:29 tgl Exp $
+ * $PostgreSQL: pgsql/src/bin/initdb/initdb.c,v 1.66 2004/11/09 15:57:52 petere Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -2472,7 +2472,8 @@ main(int argc, char *argv[])
 
                        if (chmod(pg_data, 0700) != 0)
                        {
-                               perror(pg_data);
+                               fprintf(stderr, _("%s: could not change permissions of directory »%s«: %s\n"),
+                                               progname, pg_data, strerror(errno));
                                exit_nicely();
                        }
                        else
@@ -2493,7 +2494,8 @@ main(int argc, char *argv[])
 
                default:
                        /* Trouble accessing directory */
-                       perror(pg_data);
+                       fprintf(stderr, _("%s: could not access directory »%s«: %s\n"),
+                                       progname, pg_data, strerror(errno));
                        exit_nicely();
        }
 
index ede51f2..1676b8b 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Copyright (c) 2000-2004, PostgreSQL Global Development Group
  *
- * $PostgreSQL: pgsql/src/bin/psql/print.c,v 1.52 2004/09/27 23:24:35 momjian Exp $
+ * $PostgreSQL: pgsql/src/bin/psql/print.c,v 1.53 2004/11/09 15:57:53 petere Exp $
  */
 #include "postgres_fe.h"
 #include "common.h"
@@ -227,14 +227,14 @@ print_aligned_text(const char *title, const char *const * headers,
                widths = calloc(col_count, sizeof(*widths));
                if (!widths)
                {
-                       perror("calloc");
+                       fprintf(stderr, gettext("out of memory\n"));
                        exit(EXIT_FAILURE);
                }
 
                head_w = calloc(col_count, sizeof(*head_w));
                if (!head_w)
                {
-                       perror("calloc");
+                       fprintf(stderr, gettext("out of memory\n"));
                        exit(EXIT_FAILURE);
                }
        }
@@ -253,7 +253,7 @@ print_aligned_text(const char *title, const char *const * headers,
                cell_w = calloc(cell_count, sizeof(*cell_w));
                if (!cell_w)
                {
-                       perror("calloc");
+                       fprintf(stderr, gettext("out of memory\n"));
                        exit(EXIT_FAILURE);
                }
        }
@@ -437,7 +437,7 @@ print_aligned_vertical(const char *title, const char *const * headers,
                head_w = calloc(col_count, sizeof(*head_w));
                if (!head_w)
                {
-                       perror("calloc");
+                       fprintf(stderr, gettext("out of memory\n"));
                        exit(EXIT_FAILURE);
                }
        }
@@ -461,7 +461,7 @@ print_aligned_vertical(const char *title, const char *const * headers,
                cell_w = calloc(cell_count, sizeof(*cell_w));
                if (!cell_w)
                {
-                       perror("calloc");
+                       fprintf(stderr, gettext("out of memory\n"));
                        exit(EXIT_FAILURE);
                }
        }
@@ -485,7 +485,7 @@ print_aligned_vertical(const char *title, const char *const * headers,
        divider = malloc(hwidth + dwidth + 10);
        if (!divider)
        {
-               perror("malloc");
+               fprintf(stderr, gettext("out of memory\n"));
                exit(EXIT_FAILURE);
        }
        divider[0] = '\0';
@@ -514,7 +514,7 @@ print_aligned_vertical(const char *title, const char *const * headers,
 
                                if (!record_str)
                                {
-                                       perror("malloc");
+                                       fprintf(stderr, gettext("out of memory\n"));
                                        exit(EXIT_FAILURE);
                                }
 
@@ -532,7 +532,7 @@ print_aligned_vertical(const char *title, const char *const * headers,
 
                                        if (!div_copy)
                                        {
-                                               perror("malloc");
+                                               fprintf(stderr, gettext("out of memory\n"));
                                                exit(EXIT_FAILURE);
                                        }
 
@@ -1153,7 +1153,7 @@ printQuery(const PGresult *result, const printQueryOpt *opt, FILE *fout)
        headers = calloc(nfields + 1, sizeof(*headers));
        if (!headers)
        {
-               perror("calloc");
+               fprintf(stderr, gettext("out of memory\n"));
                exit(EXIT_FAILURE);
        }
 
@@ -1165,7 +1165,7 @@ printQuery(const PGresult *result, const printQueryOpt *opt, FILE *fout)
        cells = calloc(ncells + 1, sizeof(*cells));
        if (!cells)
        {
-               perror("calloc");
+               fprintf(stderr, gettext("out of memory\n"));
                exit(EXIT_FAILURE);
        }
 
@@ -1186,14 +1186,14 @@ printQuery(const PGresult *result, const printQueryOpt *opt, FILE *fout)
                footers = calloc(2, sizeof(*footers));
                if (!footers)
                {
-                       perror("calloc");
+                       fprintf(stderr, gettext("out of memory\n"));
                        exit(EXIT_FAILURE);
                }
 
                footers[0] = malloc(100);
                if (!footers[0])
                {
-                       perror("malloc");
+                       fprintf(stderr, gettext("out of memory\n"));
                        exit(EXIT_FAILURE);
                }
                if (PQntuples(result) == 1)
@@ -1208,7 +1208,7 @@ printQuery(const PGresult *result, const printQueryOpt *opt, FILE *fout)
        align = calloc(nfields + 1, sizeof(*align));
        if (!align)
        {
-               perror("calloc");
+               fprintf(stderr, gettext("out of memory\n"));
                exit(EXIT_FAILURE);
        }
 
index a52b30f..8b23d28 100644 (file)
@@ -5,7 +5,7 @@
  * Portions Copyright (c) 1996-2004, PostgreSQL Global Development Group
  * Portions Copyright (c) 1994, Regents of the University of California
  *
- * $PostgreSQL: pgsql/src/bin/scripts/common.c,v 1.12 2004/10/16 03:10:16 momjian Exp $
+ * $PostgreSQL: pgsql/src/bin/scripts/common.c,v 1.13 2004/11/09 15:57:54 petere Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -30,7 +30,8 @@ get_user_name(const char *progname)
        pw = getpwuid(getuid());
        if (!pw)
        {
-               perror(progname);
+               fprintf(stderr, _("%s: could not obtain information about current user: %s"),
+                               progname, strerror(errno));
                exit(1);
        }
        return pw->pw_name;
@@ -40,7 +41,8 @@ get_user_name(const char *progname)
 
        if (!GetUserName(username, &len))
        {
-               perror(progname);
+               fprintf(stderr, _("%s: could not get current user name: %s"),
+                               progname, strerror(errno));
                exit(1);
        }
        return username;
index 9d06482..d106928 100644 (file)
@@ -1,4 +1,4 @@
-/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/ecpg.c,v 1.90 2004/08/29 05:07:00 momjian Exp $ */
+/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/ecpg.c,v 1.91 2004/11/09 15:57:55 petere Exp $ */
 
 /* New main for ecpg, the PostgreSQL embedded SQL precompiler. */
 /* (C) Michael Meskes <meskes@postgresql.org> Feb 5th, 1998 */
@@ -154,7 +154,8 @@ main(int argc, char *const argv[])
                                        yyout = fopen(optarg, PG_BINARY_W);
 
                                if (yyout == NULL)
-                                       perror(optarg);
+                                       fprintf(stderr, "%s: could not open file \"%s\": %s\n",
+                                                       progname, optarg, strerror(errno));
                                else
                                        out_option = 1;
                                break;
@@ -304,7 +305,8 @@ main(int argc, char *const argv[])
                                        yyout = fopen(output_filename, PG_BINARY_W);
                                        if (yyout == NULL)
                                        {
-                                               perror(output_filename);
+                                               fprintf(stderr, "%s: could not open file \"%s\": %s\n",
+                                                               progname, output_filename, strerror(errno));
                                                free(output_filename);
                                                free(input_filename);
                                                continue;
@@ -313,7 +315,8 @@ main(int argc, char *const argv[])
                        }
 
                        if (yyin == NULL)
-                               perror(argv[fnr]);
+                               fprintf(stderr, "%s: could not open file \"%s\": %s\n",
+                                               progname, argv[fnr], strerror(errno));
                        else
                        {
                                struct cursor *ptr;
index 8447756..fa586ce 100644 (file)
@@ -10,7 +10,7 @@
  * exceed INITIAL_EXPBUFFER_SIZE (currently 256 bytes).
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/interfaces/libpq/fe-auth.c,v 1.94 2004/10/16 03:10:17 momjian Exp $
+ *       $PostgreSQL: pgsql/src/interfaces/libpq/fe-auth.c,v 1.95 2004/11/09 15:57:57 petere Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -527,7 +527,7 @@ pg_password_sendauth(PGconn *conn, const char *password, AuthRequest areq)
                                if (!(crypt_pwd = malloc(MD5_PASSWD_LEN + 1)) ||
                                        !(crypt_pwd2 = malloc(MD5_PASSWD_LEN + 1)))
                                {
-                                       perror("malloc");
+                                       fprintf(stderr, libpq_gettext("out of memory\n"));
                                        return STATUS_ERROR;
                                }
                                if (!EncryptMD5(password, conn->pguser,
index bd89e82..832af2b 100644 (file)
@@ -10,7 +10,7 @@
  * didn't really belong there.
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/interfaces/libpq/fe-print.c,v 1.54 2004/08/29 05:07:00 momjian Exp $
+ *       $PostgreSQL: pgsql/src/interfaces/libpq/fe-print.c,v 1.55 2004/11/09 15:57:57 petere Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -110,17 +110,17 @@ PQprint(FILE *fout,
                nTups = PQntuples(res);
                if (!(fieldNames = (const char **) calloc(nFields, sizeof(char *))))
                {
-                       perror("calloc");
+                       fprintf(stderr, libpq_gettext("out of memory\n"));
                        exit(1);
                }
                if (!(fieldNotNum = (unsigned char *) calloc(nFields, 1)))
                {
-                       perror("calloc");
+                       fprintf(stderr, libpq_gettext("out of memory\n"));
                        exit(1);
                }
                if (!(fieldMax = (int *) calloc(nFields, sizeof(int))))
                {
-                       perror("calloc");
+                       fprintf(stderr, libpq_gettext("out of memory\n"));
                        exit(1);
                }
                for (numFieldName = 0;
@@ -205,7 +205,7 @@ PQprint(FILE *fout,
                {
                        if (!(fields = (char **) calloc(nFields * (nTups + 1), sizeof(char *))))
                        {
-                               perror("calloc");
+                               fprintf(stderr, libpq_gettext("out of memory\n"));
                                exit(1);
                        }
                }
@@ -392,7 +392,7 @@ do_field(const PQprintOpt *po, const PGresult *res,
                                fieldMax[j] = plen;
                        if (!(fields[i * nFields + j] = (char *) malloc(plen + 1)))
                        {
-                               perror("malloc");
+                               fprintf(stderr, libpq_gettext("out of memory\n"));
                                exit(1);
                        }
                        strcpy(fields[i * nFields + j], pval);
@@ -463,7 +463,7 @@ do_header(FILE *fout, const PQprintOpt *po, const int nFields, int *fieldMax,
                border = malloc(tot + 1);
                if (!border)
                {
-                       perror("malloc");
+                       fprintf(stderr, libpq_gettext("out of memory\n"));
                        exit(1);
                }
                p = border;