aboutsummaryrefslogtreecommitdiff
path: root/models
diff options
context:
space:
mode:
authorYixin Hao <haoyixin@live.cn>2015-08-21 15:27:38 +0800
committerYixin Hao <haoyixin@live.cn>2015-08-21 15:27:38 +0800
commit50cd67cd4bf9e03a555cbf44bcd76ca12a315b97 (patch)
tree55a8e7dc63ae4a8171be2874fb3f2e285b1607ee /models
parent78b717f202dd989f3871fccd0bc8935fe709fac1 (diff)
parent461f715ae4699557571652d9d3baec9a4438796f (diff)
Merge pull request #2 from gogits/develop
Update Develop
Diffstat (limited to 'models')
-rw-r--r--models/git_diff.go6
-rw-r--r--models/publickey.go10
-rw-r--r--models/repo.go7
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)