index
:
gogs.git
Gogs is a painless self-hosted Git service
log msg
author
committer
range
buildscript
main
mygogs
about
summary
refs
log
tree
commit
diff
path:
root
/
models
diff options
context:
1
2
3
4
5
6
7
8
9
10
15
20
25
30
35
40
space:
include
ignore
mode:
unified
ssdiff
stat only
author
无闻 <u@gogs.io>
2015-08-15 17:27:20 +0800
committer
无闻 <u@gogs.io>
2015-08-15 17:27:20 +0800
commit
ce8864c69a8dd6466ad5a39faf5402cd3280d0a2
(
patch
)
tree
13353384ee96f96ea94dace0276d9424019ad92d
/
models
parent
c7d5e1f182c35bdf8e57c5c605cf8c0970255f40
(
diff
)
parent
1d52793faf91b93e52b27c56e7be3fd9ca373d54
(
diff
)
Merge pull request #1475 from donbowman/master
Fix race condition on ssh key delete, and revert re-revert of hard line break
Diffstat
(limited to 'models')
-rw-r--r--
models/publickey.go
6
1 files changed, 3 insertions, 3 deletions
diff --git a/models/publickey.go b/models/publickey.go
index 70da8057..400486eb 100644
--- a/
models/publickey.go
+++ b/
models/publickey.go
@@ -386,9 +386,6 @@ func ListPublicKeys(uid int64) ([]*PublicKey, error) {
// rewriteAuthorizedKeys finds and deletes corresponding line in authorized_keys file.
func rewriteAuthorizedKeys(key *PublicKey, p, tmpP string) error {
- sshOpLocker.Lock()
- defer sshOpLocker.Unlock()
-
fr, err := os.Open(p)
if err != nil {
return err
@@ -444,6 +441,9 @@ func UpdatePublicKey(key *PublicKey) error {
}
func deletePublicKey(e *xorm.Session, key *PublicKey) error {
+ sshOpLocker.Lock()
+ defer sshOpLocker.Unlock()
+
has, err := e.Get(key)
if err != nil {
return err