From a4ee277e175a0965fcd2d61f06c85ac9ee0617ac Mon Sep 17 00:00:00 2001
From: Bruce Momjian <bruce@momjian.us>
Date: Thu, 3 Jan 2002 06:09:02 +0000
Subject: [PATCH] droplang had same problem as createlang;  default are
 backwards and did not work.  Fixed to match createlang.

---
 doc/src/sgml/ref/droplang.sgml | 11 +++++------
 src/bin/scripts/droplang       | 35 +++++++++++++++++-----------------
 2 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/doc/src/sgml/ref/droplang.sgml b/doc/src/sgml/ref/droplang.sgml
index 27cea628fe3..02350ff2c5e 100644
--- a/doc/src/sgml/ref/droplang.sgml
+++ b/doc/src/sgml/ref/droplang.sgml
@@ -1,5 +1,5 @@
 <!--
-$Header: /cvsroot/pgsql/doc/src/sgml/ref/droplang.sgml,v 1.15 2001/12/08 03:24:36 thomas Exp $
+$Header: /cvsroot/pgsql/doc/src/sgml/ref/droplang.sgml,v 1.16 2002/01/03 06:09:01 momjian Exp $
 PostgreSQL documentation
 -->
 
@@ -23,8 +23,8 @@ PostgreSQL documentation
   <cmdsynopsis>
    <command>droplang</command>
    <arg rep="repeat"><replaceable>connection-options</replaceable></arg>
-   <arg><replaceable>langname</replaceable></arg>
-   <arg choice="plain"><replaceable>dbname</replaceable></arg>
+   <arg choice="plain"><replaceable>langname</replaceable></arg>
+   <arg><replaceable>dbname</replaceable></arg>
    <sbr>
    <command>droplang</command>
    <arg rep="repeat"><replaceable>connection-options</replaceable></arg>
@@ -45,9 +45,6 @@ PostgreSQL documentation
       <listitem>
        <para>
 	Specifies the name of the backend programming language to be removed.
-	<application>droplang</application> will prompt for
-	<replaceable class="parameter">langname</replaceable>
-	if it is not specified on the command line.
        </para>
       </listitem>
      </varlistentry>
@@ -57,6 +54,8 @@ PostgreSQL documentation
       <listitem>
        <para>
 	Specifies from which database the language should be removed.
+        The default is to create a database with the same name as the
+        current system user.
        </para>
       </listitem>
      </varlistentry>
diff --git a/src/bin/scripts/droplang b/src/bin/scripts/droplang
index efe94186aab..601775f3518 100644
--- a/src/bin/scripts/droplang
+++ b/src/bin/scripts/droplang
@@ -7,7 +7,7 @@
 # Portions Copyright (c) 1996-2001, PostgreSQL Global Development Group
 # Portions Copyright (c) 1994, Regents of the University of California
 #
-# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/droplang,v 1.18 2001/09/30 22:17:51 momjian Exp $
+# $Header: /cvsroot/pgsql/src/bin/scripts/Attic/droplang,v 1.19 2002/01/03 06:09:02 momjian Exp $
 #
 #-------------------------------------------------------------------------
 
@@ -111,7 +111,7 @@ if [ "$usage" ]; then
         echo "$CMDNAME removes a procedural language from a database."
 	echo
 	echo "Usage:"
-        echo "  $CMDNAME [options] [langname [dbname]]"
+        echo "  $CMDNAME [options] langname [dbname]"
         echo
 	echo "Options:"
 	echo "  -h, --host=HOSTNAME             Database server host"
@@ -121,14 +121,24 @@ if [ "$usage" ]; then
 	echo "  -d, --dbname=DBNAME             Database to remove language from"
 	echo "  -l, --list                      Show a list of currently installed languages"
         echo
-        echo "If 'langname' is not specified, you will be prompted interactively."
-        echo "A database name must be specified."
-        echo
 	echo "Report bugs to <pgsql-bugs@postgresql.org>."
 	exit 0
 fi
 
 
+if [ -z "$dbname" ]; then
+        if [ "$PGUSER" ]; then
+                dbname="$PGUSER"
+        else
+                dbname=`${PATHNAME}pg_id -u -n`
+        fi
+        [ "$?" -ne 0 ] && exit 1
+fi
+
+
+# ----------
+# List option, doesn't need langname
+# ----------
 if [ "$list" ]; then
 	sqlcmd="SELECT lanname as \"Name\", lanpltrusted as \"Trusted?\" FROM pg_language WHERE lanispl = TRUE"
 	if [ "$showsql" = yes ]; then
@@ -140,23 +150,14 @@ fi
 
 
 # ----------
-# Check that we have a database
+# We can't go any farther without a langname
 # ----------
-if [ -z "$dbname" ]; then
-	echo "$CMDNAME: missing required argument database name" 1>&2
+if [ -z "$langname" ]; then
+	echo "$CMDNAME: missing required argument language name" 1>&2
         echo "Try '$CMDNAME --help' for help." 1>&2
 	exit 1
 fi
 
-
-# ----------
-# If not given on the commandline, ask for the language
-# ----------
-if [ -z "$langname" ]; then
-	$ECHO_N "Language to remove from database $dbname: "$ECHO_C
-	read langname
-fi
-
 PSQL="${PATHNAME}psql -A -t -q $PSQLOPT -d $dbname -c"
 
 
-- 
GitLab