Fix core dump on \c.
This commit is contained in:
parent
656d88c611
commit
098dea8633
|
@ -7,7 +7,7 @@
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* IDENTIFICATION
|
* IDENTIFICATION
|
||||||
* $Header: /cvsroot/pgsql/src/bin/psql/Attic/psql.c,v 1.65 1997/05/24 01:45:17 momjian Exp $
|
* $Header: /cvsroot/pgsql/src/bin/psql/Attic/psql.c,v 1.66 1997/05/24 14:38:05 momjian Exp $
|
||||||
*
|
*
|
||||||
*-------------------------------------------------------------------------
|
*-------------------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
@ -1088,7 +1088,7 @@ HandleSlashCmds(PsqlSettings * settings,
|
||||||
optarg = NULL;
|
optarg = NULL;
|
||||||
|
|
||||||
blank_loc = strcspn(cmd, " \t");
|
blank_loc = strcspn(cmd, " \t");
|
||||||
if (blank_loc == 0)
|
if (blank_loc == 0 || !cmd[blank_loc])
|
||||||
optarg2 = NULL;
|
optarg2 = NULL;
|
||||||
else
|
else
|
||||||
optarg2 = cmd + blank_loc + strspn(cmd + blank_loc, " \t");
|
optarg2 = cmd + blank_loc + strspn(cmd + blank_loc, " \t");
|
||||||
|
@ -1114,10 +1114,12 @@ HandleSlashCmds(PsqlSettings * settings,
|
||||||
case 'c':{
|
case 'c':{
|
||||||
if (strncmp(cmd, "copy ", strlen("copy ")) == 0)
|
if (strncmp(cmd, "copy ", strlen("copy ")) == 0)
|
||||||
do_copy(optarg2, settings);
|
do_copy(optarg2, settings);
|
||||||
else if (strncmp(cmd, "connect ", strlen("connect ")) == 0) {
|
else if (strncmp(cmd, "connect ", strlen("connect ")) == 0 ||
|
||||||
|
strcmp(cmd, "connect") == 0 /* issue error message */) {
|
||||||
char *optarg3;
|
char *optarg3;
|
||||||
int blank_loc2;
|
int blank_loc2;
|
||||||
|
|
||||||
|
if (optarg2) {
|
||||||
blank_loc2 = strcspn(optarg2, " \t");
|
blank_loc2 = strcspn(optarg2, " \t");
|
||||||
if (blank_loc2 == 0 || *(optarg2 + blank_loc2) == '\0')
|
if (blank_loc2 == 0 || *(optarg2 + blank_loc2) == '\0')
|
||||||
optarg3 = NULL;
|
optarg3 = NULL;
|
||||||
|
@ -1126,12 +1128,14 @@ HandleSlashCmds(PsqlSettings * settings,
|
||||||
strspn(optarg2 + blank_loc2, " \t");
|
strspn(optarg2 + blank_loc2, " \t");
|
||||||
*(optarg2 + blank_loc2) = '\0';
|
*(optarg2 + blank_loc2) = '\0';
|
||||||
}
|
}
|
||||||
|
}
|
||||||
do_connect(optarg2, optarg3, settings);
|
do_connect(optarg2, optarg3, settings);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
char *optarg3;
|
char *optarg3;
|
||||||
int blank_loc2;
|
int blank_loc2;
|
||||||
|
|
||||||
|
if (optarg) {
|
||||||
blank_loc2 = strcspn(optarg, " \t");
|
blank_loc2 = strcspn(optarg, " \t");
|
||||||
if (blank_loc2 == 0 || *(optarg + blank_loc2) == '\0')
|
if (blank_loc2 == 0 || *(optarg + blank_loc2) == '\0')
|
||||||
optarg3 = NULL;
|
optarg3 = NULL;
|
||||||
|
@ -1140,6 +1144,7 @@ HandleSlashCmds(PsqlSettings * settings,
|
||||||
strspn(optarg + blank_loc2, " \t");
|
strspn(optarg + blank_loc2, " \t");
|
||||||
*(optarg + blank_loc2) = '\0';
|
*(optarg + blank_loc2) = '\0';
|
||||||
}
|
}
|
||||||
|
}
|
||||||
do_connect(optarg, optarg3, settings);
|
do_connect(optarg, optarg3, settings);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue