Skip to content

Fix a bug user could change another user's primary email#36586

Merged
silverwind merged 4 commits intogo-gitea:mainfrom
lunny:lunny/fix_update_email
Feb 12, 2026
Merged

Fix a bug user could change another user's primary email#36586
silverwind merged 4 commits intogo-gitea:mainfrom
lunny:lunny/fix_update_email

Conversation

@lunny
Copy link
Copy Markdown
Member

@lunny lunny commented Feb 11, 2026

No description provided.

@GiteaBot GiteaBot added the lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. label Feb 11, 2026
@github-actions github-actions bot added the modifies/go Pull requests that update Go code label Feb 11, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Fixes an authorization bug in the user settings email flow where a user could attempt to set another user’s email record (by ID) as their primary email.

Changes:

  • Add ownership/existence check before making an email primary in EmailPost.
  • Add integration coverage for “email not found” and “email not owned by user” when setting primary email.
  • Add a new localized error message for the above failure cases.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.

File Description
routers/web/user/setting/account.go Validates the email ID belongs to the logged-in user before calling MakeActiveEmailPrimary.
tests/integration/user_settings_test.go Adds integration tests covering invalid/unowned email IDs for the PRIMARY action.
options/locale/locale_en-US.json Adds the new flash error string used by the handler.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@GiteaBot GiteaBot added lgtm/need 1 This PR needs approval from one additional maintainer to be merged. and removed lgtm/need 2 This PR needs two approvals by maintainers to be considered for merging. labels Feb 12, 2026
@GiteaBot GiteaBot added lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. and removed lgtm/need 1 This PR needs approval from one additional maintainer to be merged. labels Feb 12, 2026
@silverwind silverwind merged commit 8d26ea9 into go-gitea:main Feb 12, 2026
24 checks passed
@GiteaBot GiteaBot added this to the 1.26.0 milestone Feb 12, 2026
@lunny lunny deleted the lunny/fix_update_email branch February 12, 2026 20:43
@GiteaBot
Copy link
Copy Markdown
Collaborator

I was unable to create a backport for 1.25. @lunny, please send one manually. 🍵

go run ./contrib/backport 36586
...  // fix git conflicts if any
go run ./contrib/backport --continue

@GiteaBot GiteaBot added the backport/manual No power to the bots! Create your backport yourself! label Feb 12, 2026
lunny added a commit to lunny/gitea that referenced this pull request Feb 12, 2026
@lunny lunny added the backport/done All backports for this PR have been created label Feb 12, 2026
silverwind added a commit to silverwind/gitea that referenced this pull request Feb 14, 2026
* origin/main: (2555 commits)
  automate updating nix flakes (go-gitea#35641)
  Update AGENTS.md instructions (go-gitea#36627)
  use user id in noreply emails (go-gitea#36550)
  feat(db): Improve BuildCaseInsensitiveLike with lowercase (go-gitea#36598)
  [skip ci] Updated translations via Crowdin
  BUG: Fix workflow run jobs API returning null steps (go-gitea#36603)
  Refactor highlight and diff (go-gitea#36599)
  Fix bug when do LFS GC (go-gitea#36500)
  feature to be able to filter project boards by milestones (go-gitea#36321)
  Update emoji data for Unicode 16 (go-gitea#36596)
  Adapt monaco error matching pattern to recent webpack config change (go-gitea#36533)
  Fix a bug user could change another user's primary email (go-gitea#36586)
  fix(repo-editor): disable Monaco `editContext` to avoid bugs with lost focus (go-gitea#36585)
  Fine tune diff highlighting (go-gitea#36592)
  Add code editor setting dropdowns (go-gitea#36534)
  Update to go 1.26.0 and golangci-lint 2.9.0 (go-gitea#36588)
  Improve diff highlighting (go-gitea#36583)
  Fix markup code block layout (go-gitea#36578)
  Remove striped tables in UI (go-gitea#36509)
  Fix vertical alignment of `.commit-sign-badge` children (go-gitea#36570)
  ...

# Conflicts:
#	custom/conf/app.example.ini
#	docs/content/administration/config-cheat-sheet.en-us.md
#	docs/content/administration/config-cheat-sheet.zh-cn.md
#	modules/setting/security.go
#	routers/common/errpage.go
#	services/context/api.go
#	services/context/context.go
Sirherobrine23 pushed a commit to Sirherobrine23/gitea that referenced this pull request Mar 4, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport/done All backports for this PR have been created backport/manual No power to the bots! Create your backport yourself! backport/v1.25 lgtm/done This PR has enough approvals to get merged. There are no important open reservations anymore. modifies/go Pull requests that update Go code type/bug

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants