mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2024-11-20 04:37:13 +00:00
Do not list active repositories as unadopted (#22034)
This fixes a bug where, when searching unadopted repositories, active repositories will be listed as well. This is because the size of the array of repository names to check is larger by one than the `IterateBufferSize`. For an `IterateBufferSize` of 50, the original code will pass 51 repository names but set the query to `LIMIT 50`. If all repositories in the query are active (i.e. not unadopted) one of them will be omitted from the result. Due to the `ORDER BY` clause it will be the oldest (or least recently modified) one. Bug found in 1.17.3. Co-authored-by: zeripath <art27@cantab.net> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
This commit is contained in:
parent
651fe4bb7d
commit
84285a1169
|
@ -337,7 +337,7 @@ func ListUnadoptedRepositories(query string, opts *db.ListOptions) ([]string, in
|
||||||
}
|
}
|
||||||
|
|
||||||
repoNamesToCheck = append(repoNamesToCheck, name)
|
repoNamesToCheck = append(repoNamesToCheck, name)
|
||||||
if len(repoNamesToCheck) > setting.Database.IterateBufferSize {
|
if len(repoNamesToCheck) >= setting.Database.IterateBufferSize {
|
||||||
if err = checkUnadoptedRepositories(userName, repoNamesToCheck, unadopted); err != nil {
|
if err = checkUnadoptedRepositories(userName, repoNamesToCheck, unadopted); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue