From 334f3766c17d53d797c0885ba37fbb3a63918416 Mon Sep 17 00:00:00 2001
From: "Stephen R. van den Berg" <srb@cuci.nl>
Date: Tue, 12 Aug 2008 09:09:03 +0200
Subject: [PATCH] pgsql String.secure needs a real string

Rev: lib/modules/Sql.pmod/pgsql.pike:1.27
Rev: lib/modules/Sql.pmod/pgsqls.pike:1.6
---
 lib/modules/Sql.pmod/pgsql.pike  | 4 +++-
 lib/modules/Sql.pmod/pgsqls.pike | 4 +++-
 2 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/lib/modules/Sql.pmod/pgsql.pike b/lib/modules/Sql.pmod/pgsql.pike
index 29253b8d0e..0b1d4f4765 100644
--- a/lib/modules/Sql.pmod/pgsql.pike
+++ b/lib/modules/Sql.pmod/pgsql.pike
@@ -192,7 +192,9 @@ protected string _sprintf(int type, void|mapping flags) {
 //!   @[Postgres.postgres], @[Sql.Sql], @[postgres->select_db]
 protected void create(void|string _host, void|string _database,
  void|string _user, void|string _pass, void|mapping(string:mixed) _options) {
-  pass = _pass; _pass = "CENSORED"; String.secure(pass);
+  pass = _pass; _pass = "CENSORED";
+  if(pass)
+    String.secure(pass);
   user = _user; database = _database; host = _host || PGSQL_DEFAULT_HOST;
   options = _options || ([]);
   if(search(host,":")>=0 && sscanf(_host,"%s:%d",host,port)!=2)
diff --git a/lib/modules/Sql.pmod/pgsqls.pike b/lib/modules/Sql.pmod/pgsqls.pike
index 94bbdd66cc..0edae426a2 100644
--- a/lib/modules/Sql.pmod/pgsqls.pike
+++ b/lib/modules/Sql.pmod/pgsqls.pike
@@ -17,7 +17,9 @@ inherit Sql.pgsql;
 protected void create(void|string _host, void|string _db,
  void|string _user, void|string _pass, void|mapping(string:mixed) _options) {
   string pass;
-  pass = _pass; _pass = "CENSORED"; String.secure(pass);
+  pass = _pass; _pass = "CENSORED";
+  if(pass)
+    String.secure(pass);
   if(!_options)
     _options = ([]);
 
-- 
GitLab