From 14b9bd163ced1e25874eaae0fe9fbfe723f5b91f Mon Sep 17 00:00:00 2001 From: Jinzhu Date: Wed, 10 Mar 2021 19:32:56 +0800 Subject: [PATCH] Don't panic when using nil pointer, close #4168 --- callbacks.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/callbacks.go b/callbacks.go index ba7dae04..3e6723a1 100644 --- a/callbacks.go +++ b/callbacks.go @@ -96,7 +96,7 @@ func (p *processor) Execute(db *DB) { if stmt.Dest != nil { stmt.ReflectValue = reflect.ValueOf(stmt.Dest) for stmt.ReflectValue.Kind() == reflect.Ptr { - if stmt.ReflectValue.IsNil() { + if stmt.ReflectValue.IsNil() && stmt.ReflectValue.CanAddr() { stmt.ReflectValue.Set(reflect.New(stmt.ReflectValue.Type().Elem())) break }