From e0d60e5c156b4ab7bf00084d03f8c6bd98cca817 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Felix=20D=C3=B6rre?= Date: Sun, 1 Feb 2015 01:23:45 +0100 Subject: [PATCH] UPD: Forcing Update to be single-update or fail otherwise. --- src/org/cacert/gigi/database/GigiPreparedStatement.java | 7 +++++-- src/org/cacert/gigi/dbObjects/User.java | 4 +--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/org/cacert/gigi/database/GigiPreparedStatement.java b/src/org/cacert/gigi/database/GigiPreparedStatement.java index 81e5f4e3..55ed6ad3 100644 --- a/src/org/cacert/gigi/database/GigiPreparedStatement.java +++ b/src/org/cacert/gigi/database/GigiPreparedStatement.java @@ -23,9 +23,12 @@ public class GigiPreparedStatement { } } - public int executeUpdate() { + public void executeUpdate() { try { - return target.executeUpdate(); + int updated = target.executeUpdate(); + if (updated != 1) { + throw new Error("FATAL: multiple or no data updated: " + updated); + } } catch (SQLException e) { handleSQL(e); throw new Error(e); diff --git a/src/org/cacert/gigi/dbObjects/User.java b/src/org/cacert/gigi/dbObjects/User.java index 23636a91..b42b6d51 100644 --- a/src/org/cacert/gigi/dbObjects/User.java +++ b/src/org/cacert/gigi/dbObjects/User.java @@ -141,9 +141,7 @@ public class User extends CertificateOwner { ps = DatabaseConnection.getInstance().prepare("UPDATE users SET `password`=? WHERE id=?"); ps.setString(1, PasswordHash.hash(newPass)); ps.setInt(2, getId()); - if (ps.executeUpdate() != 1) { - throw new GigiApiException("Password update failed."); - } + ps.executeUpdate(); } public void setName(Name name) { -- 2.39.2