From: Nathan Bird Date: Mon, 24 Aug 2009 13:53:50 +0000 (-0400) Subject: From "Michael Pheasant " X-Git-Url: http://git.kpe.io/?a=commitdiff_plain;h=d515348f04ea6a045ff639308269e89e22370036;p=clsql.git From "Michael Pheasant " Database-list ignores a supplied database name and instead uses "mysql". It is possible that a mysql userid has permissions to issue "show databases" but no permission to connect to db "mysql". database-list gives an error in this scenario. The following patch overcomes this by using the user-supplied db name or else "mysql" if nil supplied. --- diff --git a/db-mysql/mysql-sql.lisp b/db-mysql/mysql-sql.lisp index 36fc90a..155b597 100644 --- a/db-mysql/mysql-sql.lisp +++ b/db-mysql/mysql-sql.lisp @@ -475,8 +475,7 @@ (defmethod database-list (connection-spec (type (eql :mysql))) (destructuring-bind (host name user password &optional port) connection-spec - (declare (ignore name)) - (let ((database (database-connect (list host "mysql" user password port) type))) + (let ((database (database-connect (list host (or name "mysql") user password port) type))) (unwind-protect (progn (setf (slot-value database 'clsql-sys::state) :open)