You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
forgejo/services/repository
zeripath 41fcf7b7de
Prevent dangling archiver goroutine (#19516)
Within doArchive there is a service goroutine that performs the
archiving function.  This goroutine reports its error using a `chan
error` called `done`. Prior to this PR this channel had 0 capacity
meaning that the goroutine would block until the `done` channel was
cleared - however there are a couple of ways in which this channel might
not be read.

The simplest solution is to add a single space of capacity to the
goroutine which will mean that the goroutine will always complete and
even if the `done` channel is not read it will be simply garbage
collected away.

(The PR also contains two other places when setting up the indexers
which do not leak but where the blocking of the sending goroutine is
also unnecessary and so we should just add a small amount of capacity
and let the sending goroutine complete as soon as it can.)

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

Co-authored-by: 6543 <6543@obermui.de>
2 years ago
..
archiver Prevent dangling archiver goroutine (#19516) 2 years ago
files RepoAssignment ensure to close before overwrite (#19449) 2 years ago
adopt.go Remove `git.Command.Run` and `git.Command.RunInDir*` (#19280) 2 years ago
adopt_test.go format with gofumpt (#18184) 2 years ago
avatar.go Some repository refactors (#17950) 3 years ago
avatar_test.go Some repository refactors (#17950) 3 years ago
branch.go Use full output of git show-ref --tags to get tags for PushUpdateAddTag (#19235) 2 years ago
cache.go Move repository model into models/repo (#17933) 3 years ago
check.go Remove `git.Command.Run` and `git.Command.RunInDir*` (#19280) 2 years ago
fork.go Remove `git.Command.Run` and `git.Command.RunInDir*` (#19280) 2 years ago
fork_test.go Make git.OpenRepository accept Context (#19260) 2 years ago
hooks.go Make git.OpenRepository accept Context (#19260) 2 years ago
main_test.go Use a struct as test options (#19393) 2 years ago
push.go Make git.OpenRepository accept Context (#19260) 2 years ago
repository.go Add Package Registry (#16510) 2 years ago
template.go Some repository refactors (#17950) 3 years ago
transfer.go Move organization related structs into sub package (#18518) 2 years ago
transfer_test.go Move organization related structs into sub package (#18518) 2 years ago