From edbbc471bcd9db9b366c32e9d16d965460cd3960 Mon Sep 17 00:00:00 2001 From: Lionel Elie Mamane Date: Tue, 17 Dec 2013 12:14:15 +0100 Subject: HSQLDB: correct syntax of change password from MySQL to HSQLDB Change-Id: Iacf60c456912f2e38c7a082e48c45164e79c1097 --- connectivity/source/drivers/hsqldb/HUser.cxx | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'connectivity') diff --git a/connectivity/source/drivers/hsqldb/HUser.cxx b/connectivity/source/drivers/hsqldb/HUser.cxx index 0dfcd2cefa30..e1c2a757d64a 100644 --- a/connectivity/source/drivers/hsqldb/HUser.cxx +++ b/connectivity/source/drivers/hsqldb/HUser.cxx @@ -272,10 +272,13 @@ void SAL_CALL OHSQLUser::changePassword( const OUString& /*oldPassword*/, const Reference xMeta = m_xConnection->getMetaData(); - OUString sAlterPwd = "SET PASSWORD FOR " + - ::dbtools::quoteName(xMeta->getIdentifierQuoteString(), m_Name) + - "@\"%\" = PASSWORD('" + newPassword + "')"; + if( m_Name != xMeta->getUserName() ) + { + ::dbtools::throwGenericSQLException("HSQLDB can only change password of the current user.", *this); + } + OUString sAlterPwd = "SET PASSWORD " + + ::dbtools::quoteName(xMeta->getIdentifierQuoteString(), newPassword); Reference xStmt = m_xConnection->createStatement(); if ( xStmt.is() ) -- cgit