changeset 311:74559e12a59f

sql.Result.RowsAffected is a driver specific feature. Check for it after handling errors.
author Sascha L. Teichmann <sascha.teichmann@intevation.de>
date Wed, 01 Aug 2018 17:29:52 +0200
parents 4bee4ba6dc58
children 0745b4d336c4
files controllers/pwreset.go controllers/user.go
diffstat 2 files changed, 6 insertions(+), 5 deletions(-) [+]
line wrap: on
line diff
--- a/controllers/pwreset.go	Wed Aug 01 16:57:40 2018 +0200
+++ b/controllers/pwreset.go	Wed Aug 01 17:29:52 2018 +0200
@@ -361,7 +361,7 @@
 
 	passwordResetRequests.delete(hash)
 
-	if n, err2 := res.RowsAffected(); err2 != nil && n == 0 {
+	if n, err2 := res.RowsAffected(); err2 == nil && n == 0 {
 		err = JSONError{
 			Code:    http.StatusNotFound,
 			Message: "User not found",
--- a/controllers/user.go	Wed Aug 01 16:57:40 2018 +0200
+++ b/controllers/user.go	Wed Aug 01 17:29:52 2018 +0200
@@ -111,16 +111,17 @@
 		)
 	}
 
-	if n, _ := res.RowsAffected(); n == 0 {
+	if err != nil {
+		return
+	}
+
+	if n, err2 := res.RowsAffected(); err2 == nil && n == 0 {
 		err = JSONError{
 			Code:    http.StatusNotFound,
 			Message: fmt.Sprintf("Cannot find user %s.", user),
 		}
 		return
 	}
-	if err != nil {
-		return
-	}
 
 	if user != newUser.User {
 		// Running in a go routine should not be necessary.