Skip to content

Commit

Permalink
Fix invalid repo urls after change username (go-gitea#10150)
Browse files Browse the repository at this point in the history
* Fix invalid repo urls after change username

* Update user.go

Co-authored-by: Lauris BH <lauris@nix.lv>
Co-authored-by: Antoine GIRARD <sapk@users.noreply.github.com>
  • Loading branch information
3 people authored Feb 8, 2020
1 parent 7d8a2d0 commit 74a4a1e
Showing 1 changed file with 11 additions and 1 deletion.
12 changes: 11 additions & 1 deletion models/user.go
Original file line number Diff line number Diff line change
Expand Up @@ -1044,13 +1044,23 @@ func ChangeUserName(u *User, newUserName string) (err error) {
} else if isExist {
return ErrUserAlreadyExist{newUserName}
}

sess := x.NewSession()
defer sess.Close()
if err = sess.Begin(); err != nil {
return err
}

if _, err = sess.Exec("UPDATE `repository` SET owner_name=? WHERE owner_name=?", newUserName, u.Name); err != nil {
return fmt.Errorf("Change repo owner name: %v", err)
}

// Do not fail if directory does not exist
if err = os.Rename(UserPath(u.Name), UserPath(newUserName)); err != nil && !os.IsNotExist(err) {
return fmt.Errorf("Rename user directory: %v", err)
}

return nil
return sess.Commit()
}

// checkDupEmail checks whether there are the same email with the user
Expand Down

0 comments on commit 74a4a1e

Please sign in to comment.