From ba134bd27abe099efcd748773c410b3aa78521fc Mon Sep 17 00:00:00 2001 From: Lunny Xiao Date: Tue, 27 Dec 2016 10:02:14 +0800 Subject: [PATCH] fix 500 when delete orgnization and resolved #486 --- models/org.go | 13 +++++++------ models/user.go | 6 ++++-- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/models/org.go b/models/org.go index b302288ca..43a3e094f 100644 --- a/models/org.go +++ b/models/org.go @@ -213,12 +213,9 @@ func Organizations(opts *SearchUserOptions) ([]*User, error) { // DeleteOrganization completely and permanently deletes everything of organization. func DeleteOrganization(org *User) (err error) { - if err := DeleteUser(org); err != nil { - return err - } - sess := x.NewSession() - defer sessionRelease(sess) + defer sess.Close() + if err = sess.Begin(); err != nil { return err } @@ -235,7 +232,11 @@ func DeleteOrganization(org *User) (err error) { return fmt.Errorf("deleteUser: %v", err) } - return sess.Commit() + if err = sess.Commit(); err != nil { + return err + } + + return RewriteAllPublicKeys() } // ________ ____ ___ diff --git a/models/user.go b/models/user.go index 803cb3b03..d48397ef7 100644 --- a/models/user.go +++ b/models/user.go @@ -891,8 +891,10 @@ func deleteUser(e *xorm.Session, u *User) error { } avatarPath := u.CustomAvatarPath() - if err := os.Remove(avatarPath); err != nil { - return fmt.Errorf("Fail to remove %s: %v", avatarPath, err) + if com.IsExist(avatarPath) { + if err := os.Remove(avatarPath); err != nil { + return fmt.Errorf("Fail to remove %s: %v", avatarPath, err) + } } return nil