diff options
author | Yixin Hao <haoyixin@live.cn> | 2015-08-21 15:27:38 +0800 |
---|---|---|
committer | Yixin Hao <haoyixin@live.cn> | 2015-08-21 15:27:38 +0800 |
commit | 50cd67cd4bf9e03a555cbf44bcd76ca12a315b97 (patch) | |
tree | 55a8e7dc63ae4a8171be2874fb3f2e285b1607ee /models | |
parent | 78b717f202dd989f3871fccd0bc8935fe709fac1 (diff) | |
parent | 461f715ae4699557571652d9d3baec9a4438796f (diff) |
Merge pull request #2 from gogits/develop
Update Develop
Diffstat (limited to 'models')
-rw-r--r-- | models/git_diff.go | 6 | ||||
-rw-r--r-- | models/publickey.go | 10 | ||||
-rw-r--r-- | models/repo.go | 7 |
3 files changed, 22 insertions, 1 deletions
diff --git a/models/git_diff.go b/models/git_diff.go index 9681b3f4..66985650 100644 --- a/models/git_diff.go +++ b/models/git_diff.go @@ -169,6 +169,12 @@ func ParsePatch(pid int64, maxlines int, cmd *exec.Cmd, reader io.Reader) (*Diff beg := len(DIFF_HEAD) a := line[beg : (len(line)-beg)/2+beg] + // In case file name is surrounded by double quotes(it happens only in git-shell). + if a[0] == '"' { + a = a[1 : len(a)-1] + a = strings.Replace(a, `\"`, `"`, -1) + } + curFile = &DiffFile{ Name: a[strings.Index(a, "/")+1:], Index: len(diff.Files) + 1, diff --git a/models/publickey.go b/models/publickey.go index 400486eb..e5516526 100644 --- a/models/publickey.go +++ b/models/publickey.go @@ -466,7 +466,15 @@ func deletePublicKey(e *xorm.Session, key *PublicKey) error { } // DeletePublicKey deletes SSH key information both in database and authorized_keys file. -func DeletePublicKey(key *PublicKey) (err error) { +func DeletePublicKey(id int64) (err error) { + key := &PublicKey{ID: id} + has, err := x.Id(key.ID).Get(key) + if err != nil { + return err + } else if !has { + return nil + } + sess := x.NewSession() defer sessionRelease(sess) if err = sess.Begin(); err != nil { diff --git a/models/repo.go b/models/repo.go index e4122966..f99d28cc 100644 --- a/models/repo.go +++ b/models/repo.go @@ -166,6 +166,13 @@ type Repository struct { Updated time.Time `xorm:"UPDATED"` } +func (repo *Repository) AfterSet(colName string, _ xorm.Cell) { + switch colName { + case "updated": + repo.Updated = regulateTimeZone(repo.Updated) + } +} + func (repo *Repository) getOwner(e Engine) (err error) { if repo.Owner == nil { repo.Owner, err = getUserByID(e, repo.OwnerID) |