From 03b83d3fb9d6349a843d6ab67354ec82424b5785 Mon Sep 17 00:00:00 2001 From: Sebastian Frank <sebastian@webmakers.de> Date: Mon, 25 Jul 2022 10:24:56 +0200 Subject: [PATCH] nil lookup fix --- lookup.go | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/lookup.go b/lookup.go index dfc5f4d..78f0843 100644 --- a/lookup.go +++ b/lookup.go @@ -156,10 +156,14 @@ func Lookup(db *mgo.Database, structField string, results interface{}, selector object := objectIDs[objectID] field := elV.FieldByName(structField) - if fieldIsPtr { - field.Set(reflect.ValueOf(object)) - } else { - field.Set(reflect.ValueOf(object).Elem()) + if object != nil && field.CanSet() { + objectVal := reflect.ValueOf(object) + + if fieldIsPtr { + field.Set(objectVal) + } else { + field.Set(objectVal.Elem()) + } } }