mirror of
				https://github.com/go-gitea/gitea
				synced 2025-11-04 13:28:25 +00:00 
			
		
		
		
	[BugFix] remove nil inserts in models (#11096)
* Fix InsertReleases Nil Insert on Attachments * FIX "No element on slice when insert" & smal refactor * again * impruve * rm useles newline * Apply suggestions from code review Co-Authored-By: zeripath <art27@cantab.net> * process insert as a whole Co-authored-by: zeripath <art27@cantab.net>
This commit is contained in:
		@@ -64,15 +64,20 @@ func insertIssue(sess *xorm.Session, issue *Issue) error {
 | 
				
			|||||||
		})
 | 
							})
 | 
				
			||||||
		labelIDs = append(labelIDs, label.ID)
 | 
							labelIDs = append(labelIDs, label.ID)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if _, err := sess.Insert(issueLabels); err != nil {
 | 
						if len(issueLabels) > 0 {
 | 
				
			||||||
		return err
 | 
							if _, err := sess.Insert(issueLabels); err != nil {
 | 
				
			||||||
 | 
								return err
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	for _, reaction := range issue.Reactions {
 | 
						for _, reaction := range issue.Reactions {
 | 
				
			||||||
		reaction.IssueID = issue.ID
 | 
							reaction.IssueID = issue.ID
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if _, err := sess.Insert(issue.Reactions); err != nil {
 | 
					
 | 
				
			||||||
		return err
 | 
						if len(issue.Reactions) > 0 {
 | 
				
			||||||
 | 
							if _, err := sess.Insert(issue.Reactions); err != nil {
 | 
				
			||||||
 | 
								return err
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	cols := make([]string, 0)
 | 
						cols := make([]string, 0)
 | 
				
			||||||
@@ -151,8 +156,10 @@ func InsertIssueComments(comments []*Comment) error {
 | 
				
			|||||||
			reaction.IssueID = comment.IssueID
 | 
								reaction.IssueID = comment.IssueID
 | 
				
			||||||
			reaction.CommentID = comment.ID
 | 
								reaction.CommentID = comment.ID
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
		if _, err := sess.Insert(comment.Reactions); err != nil {
 | 
							if len(comment.Reactions) > 0 {
 | 
				
			||||||
			return err
 | 
								if _, err := sess.Insert(comment.Reactions); err != nil {
 | 
				
			||||||
 | 
									return err
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -196,12 +203,14 @@ func InsertReleases(rels ...*Release) error {
 | 
				
			|||||||
			return err
 | 
								return err
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		for i := 0; i < len(rel.Attachments); i++ {
 | 
							if len(rel.Attachments) > 0 {
 | 
				
			||||||
			rel.Attachments[i].ReleaseID = rel.ID
 | 
								for i := range rel.Attachments {
 | 
				
			||||||
		}
 | 
									rel.Attachments[i].ReleaseID = rel.ID
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		if _, err := sess.NoAutoTime().Insert(rel.Attachments); err != nil {
 | 
								if _, err := sess.NoAutoTime().Insert(rel.Attachments); err != nil {
 | 
				
			||||||
			return err
 | 
									return err
 | 
				
			||||||
 | 
								}
 | 
				
			||||||
		}
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -393,13 +393,16 @@ func (g *GiteaLocalUploader) CreateIssues(issues ...*base.Issue) error {
 | 
				
			|||||||
		iss = append(iss, &is)
 | 
							iss = append(iss, &is)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	err := models.InsertIssues(iss...)
 | 
						if len(iss) > 0 {
 | 
				
			||||||
	if err != nil {
 | 
							if err := models.InsertIssues(iss...); err != nil {
 | 
				
			||||||
		return err
 | 
								return err
 | 
				
			||||||
	}
 | 
							}
 | 
				
			||||||
	for _, is := range iss {
 | 
					
 | 
				
			||||||
		g.issues.Store(is.Index, is.ID)
 | 
							for _, is := range iss {
 | 
				
			||||||
 | 
								g.issues.Store(is.Index, is.ID)
 | 
				
			||||||
 | 
							}
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	return nil
 | 
						return nil
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -478,6 +481,9 @@ func (g *GiteaLocalUploader) CreateComments(comments ...*base.Comment) error {
 | 
				
			|||||||
		cms = append(cms, &cm)
 | 
							cms = append(cms, &cm)
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						if len(cms) == 0 {
 | 
				
			||||||
 | 
							return nil
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
	return models.InsertIssueComments(cms)
 | 
						return models.InsertIssueComments(cms)
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user