From 5dc02dab0e14aac09bcfd9c3591f44b94c41ccfd Mon Sep 17 00:00:00 2001 From: Saeid Saeidee Date: Wed, 8 Mar 2023 21:37:26 +0100 Subject: [PATCH] refactor: fix the error flow --- gorm.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gorm.go b/gorm.go index 1445e40b..d67d6685 100644 --- a/gorm.go +++ b/gorm.go @@ -347,13 +347,15 @@ func (db *DB) Callback() *callbacks { // AddError add error to db func (db *DB) AddError(err error) error { - if db.Error == nil { - db.Error = err - } else if err != nil { + if err != nil { if errTranslator, ok := db.Dialector.(ErrorTranslator); ok { err = errTranslator.Translate(err) } + } + if db.Error == nil { + db.Error = err + } else if err != nil { db.Error = fmt.Errorf("%v; %w", db.Error, err) } return db.Error