]> granicus.if.org Git - postgresql/commitdiff
/home/peter/commit-msg
authorPeter Eisentraut <peter_e@gmx.net>
Fri, 12 May 2000 16:13:44 +0000 (16:13 +0000)
committerPeter Eisentraut <peter_e@gmx.net>
Fri, 12 May 2000 16:13:44 +0000 (16:13 +0000)
src/bin/psql/help.c
src/bin/psql/mainloop.c

index f163f37871f54b27f5a7f910df29ffc4c8b4aa03..cce149869ffe731e4b43cd554bc314d52018d27a 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Copyright 2000 by PostgreSQL Global Development Group
  *
- * $Header: /cvsroot/pgsql/src/bin/psql/help.c,v 1.29 2000/05/11 18:41:00 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/help.c,v 1.30 2000/05/12 16:13:44 petere Exp $
  */
 #include "postgres.h"
 #include "help.h"
@@ -269,11 +269,11 @@ helpSQL(const char *topic)
 
                for (i = 0; i < items_per_column; i++)
                {
-                       printf("    %-25s%-25s",
+                       printf("  %-26s%-26s",
                                        VALUE_OR_NULL(QL_HELP[i].cmd),
                                        VALUE_OR_NULL(QL_HELP[i + items_per_column].cmd));
                        if (i + 2 * items_per_column < QL_HELP_COUNT)
-                               printf("%-25s",
+                               printf("%-26s",
                                        VALUE_OR_NULL(QL_HELP[i + 2 * items_per_column].cmd));
                        fputc('\n', stdout);
                }
@@ -283,10 +283,16 @@ helpSQL(const char *topic)
        {
                int                     i;
                bool            help_found = false;
+               size_t      len;
+
+               /* don't care about trailing spaces */
+               len = strlen(topic);
+               while (topic[len-1] == ' ')
+                       len--;
 
                for (i = 0; QL_HELP[i].cmd; i++)
                {
-                       if (strcasecmp(QL_HELP[i].cmd, topic) == 0 ||
+                       if (strncasecmp(topic, QL_HELP[i].cmd, len) == 0 ||
                                strcmp(topic, "*") == 0)
                        {
                                help_found = true;
@@ -298,7 +304,7 @@ helpSQL(const char *topic)
                }
 
                if (!help_found)
-                       printf("No help available for '%s'.\nTry \\h with no arguments to see available help.\n", topic);
+                       printf("No help available for '%-.*s'.\nTry \\h with no arguments to see available help.\n", (int)len, topic);
        }
 }
 
index 3e746a037f5828936bad030b7f9ede113353c747..bc229944444a716949eb79b33eeed0813b6ba995 100644 (file)
@@ -3,7 +3,7 @@
  *
  * Copyright 2000 by PostgreSQL Global Development Group
  *
- * $Header: /cvsroot/pgsql/src/bin/psql/mainloop.c,v 1.29 2000/04/14 23:43:44 petere Exp $
+ * $Header: /cvsroot/pgsql/src/bin/psql/mainloop.c,v 1.30 2000/05/12 16:13:44 petere Exp $
  */
 #include "postgres.h"
 #include "mainloop.h"
@@ -297,6 +297,7 @@ MainLoop(FILE *source)
                        else
                                bslash_count = 0;
 
+               rescan:
                        /* in quote? */
                        if (in_quote)
                        {
@@ -382,7 +383,8 @@ MainLoop(FILE *source)
                                        free(line);
                                        line = new;
                                        len = strlen(new);
-                                       continue;       /* reparse the just substituted */
+
+                                       goto rescan;    /* reparse the just substituted */
                                }
                                else
                                {