forgejo/models
Lunny Xiao c40c753613
Check Mirror exists before linking its Repo (#20840) (#20842)
In MirrorRepositoryList.loadAttributes there is some code to load the Mirror entries
from the database. This assumes that every Repository which has IsMirror set has
a Mirror associated in the DB. This association is incorrect in the case of
Mirror repository under creation when there is no Mirror entry in the DB until
completion.

Unfortunately LoadAttributes makes this incorrect assumption and presumes that a
Mirror will always be loaded. This then causes a panic.

This PR simply double checks if there a Mirror before attempting to link back to
its Repo. Unfortunately it should be expected that there may be other cases where
this incorrect assumption causes further problems.

Fix #20804

Signed-off-by: Andrew Thornton <art27@cantab.net>

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>

Signed-off-by: Andrew Thornton <art27@cantab.net>
Co-authored-by: zeripath <art27@cantab.net>
2022-08-18 11:57:40 +03:00
..
admin Use a struct as test options (#19393) 2022-04-14 21:58:21 +08:00
appstate Sync gitea app path for git hooks and authorized keys when starting (#17335) 2021-10-21 17:22:43 +08:00
asymkey Move some repository related code into sub package (#19711) 2022-06-06 16:01:49 +08:00
auth WebAuthn CredentialID field needs to be increased in size (#20530) (#20555) 2022-07-30 20:16:25 +02:00
avatars format with gofumpt (#18184) 2022-01-20 18:46:10 +01:00
db Add migrate repo archiver and packages storage support on command line (#20757) (#20806) 2022-08-18 09:27:56 +08:00
fixtures Exclude Archived repos from Dashboard Milestones (#19882) 2022-06-04 19:30:01 +01:00
foreignreference Store the foreign ID of issues during migration (#18446) 2022-03-17 18:08:35 +01:00
git Add migrate repo archiver and packages storage support on command line (#20757) (#20806) 2022-08-18 09:27:56 +08:00
issues Display project in issue list (#20583) 2022-08-02 17:14:31 +03:00
migrations Fix v220 migration to be compatible for MSSQL 2008 r2 (#20702) (#20707) 2022-08-08 17:58:11 +02:00
organization Move tests as seperate sub packages to reduce duplicated file names (#19951) 2022-06-15 09:02:00 +02:00
packages Add Docker /v2/_catalog endpoint (#20469) (#20556) 2022-07-30 17:52:04 +02:00
perm Store read access in access for team repo's (#20275) (#20276) 2022-07-09 20:01:44 +02:00
project Use correct count for NumOpenIssues (#19980) 2022-06-16 10:51:34 +08:00
pull Delete related PullAutoMerge and ReviewState on User/Repo Deletion (#19649) 2022-05-08 15:46:34 +02:00
repo Check Mirror exists before linking its Repo (#20840) (#20842) 2022-08-18 11:57:40 +03:00
unit Fix incorrect translation key (#19744) 2022-05-19 09:59:28 +08:00
unittest Use git.HOME_PATH for Git HOME directory (#20114) (#20293) 2022-07-08 21:44:36 +08:00
user Add migrate repo archiver and packages storage support on command line (#20757) (#20806) 2022-08-18 09:27:56 +08:00
webhook Check webhooks slice length before calling xorm (#20642) (#20768) 2022-08-12 11:36:45 +03:00
action.go Refix indices on actions table (#20158) (#20198) 2022-07-02 15:31:51 +02:00
action_list.go Move almost all functions' parameter db.Engine to context.Context (#19748) 2022-05-20 22:08:52 +08:00
action_test.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
consistency.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
error.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
fixture_generation.go Move access and repo permission to models/perm/access (#19350) 2022-05-11 12:09:36 +02:00
fixture_test.go Decouple unit test code from business code (#17623) 2021-11-12 22:36:47 +08:00
main_test.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
migrate.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
migrate_test.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
notification.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
notification_test.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
org.go In code search, get code unit accessible repos in one (main) query (#19764) 2022-06-16 02:24:10 +03:00
org_team.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
org_team_test.go Move access and repo permission to models/perm/access (#19350) 2022-05-11 12:09:36 +02:00
org_test.go Move tests as seperate sub packages to reduce duplicated file names (#19951) 2022-06-15 09:02:00 +02:00
release.go improvement some release related code (#19867) 2022-06-03 02:13:58 -04:00
repo.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
repo_activity.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
repo_collaboration.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
repo_collaboration_test.go Move tests as seperate sub packages to reduce duplicated file names (#19951) 2022-06-15 09:02:00 +02:00
repo_test.go Move tests as seperate sub packages to reduce duplicated file names (#19951) 2022-06-15 09:02:00 +02:00
repo_transfer.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
repo_transfer_test.go Move repository model into models/repo (#17933) 2021-12-10 09:27:50 +08:00
statistic.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
task.go Move almost all functions' parameter db.Engine to context.Context (#19748) 2022-05-20 22:08:52 +08:00
token.go Use base32 for 2FA scratch token (#18384) 2022-01-26 12:10:10 +08:00
token_test.go A better go code formatter, and now make fmt can run in Windows (#17684) 2021-11-17 20:34:35 +08:00
upload.go Remove NewSession method from db.Engine interface (#17577) 2021-11-21 23:41:00 +08:00
user.go Move issues related files into models/issues (#19931) 2022-06-13 17:37:59 +08:00
user_heatmap.go Move organization related structs into sub package (#18518) 2022-03-29 14:29:02 +08:00
user_heatmap_test.go RSS/Atom support for Repos (#19055) 2022-03-13 17:40:47 +01:00