From a8ea0b177ace4423e6e5eeca8e8fa6ce87a8affe Mon Sep 17 00:00:00 2001 From: daheige Date: Sat, 6 Feb 2021 18:00:45 +0800 Subject: [PATCH] feat: Optimize loop assignment --- statement.go | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/statement.go b/statement.go index de1b300f..da1d31f1 100644 --- a/statement.go +++ b/statement.go @@ -438,12 +438,13 @@ func (stmt *Statement) clone() *Statement { SkipHooks: stmt.SkipHooks, } - for k, c := range stmt.Clauses { - newStmt.Clauses[k] = c + // Optimize loop assignment + if len(stmt.Clauses) > 0 { + newStmt.Clauses = stmt.Clauses } - for k, p := range stmt.Preloads { - newStmt.Preloads[k] = p + if len(stmt.Preloads) > 0 { + newStmt.Preloads = stmt.Preloads } if len(stmt.Joins) > 0 {