fixed memory leak in func (stmt *Statement) ParseWithSpecialTableName

This commit is contained in:
Nikitin Aleksandr 2025-04-14 12:48:08 +03:00
parent a9d27293de
commit 5d5f13686b

View File

@ -491,11 +491,14 @@ func (stmt *Statement) Parse(value interface{}) (err error) {
func (stmt *Statement) ParseWithSpecialTableName(value interface{}, specialTableName string) (err error) {
if stmt.Schema, err = schema.ParseWithSpecialTableName(value, stmt.DB.cacheStore, stmt.DB.NamingStrategy, specialTableName); err == nil && stmt.Table == "" {
if tables := strings.Split(stmt.Schema.Table, "."); len(tables) == 2 {
tables := strings.Split(stmt.Schema.Table, ".")
if len(tables) == 2 {
stmt.TableExpr = &clause.Expr{SQL: stmt.Quote(stmt.Schema.Table)}
stmt.Table = tables[1]
tables = nil
return
}
tables = nil
stmt.Table = stmt.Schema.Table
}