good morning!!!!

Skip to content
Snippets Groups Projects
Commit b0496850 authored by José Carlos Nieto's avatar José Carlos Nieto
Browse files

Adding single derefence in case user passed a pointer to struct instead of a struct.

parent 0e01268a
No related branches found
No related tags found
No related merge requests found
......@@ -32,7 +32,7 @@ var (
ErrExpectingPointer = errors.New(`Argument must be an address.`)
ErrExpectingSlicePointer = errors.New(`Argument must be a slice address.`)
ErrExpectingSliceMapStruct = errors.New(`Argument must be a slice address of maps or structs.`)
ErrExpectingMapOrStruct = errors.New(`Argument must be a map or struct address.`)
ErrExpectingMapOrStruct = errors.New(`Argument must be either a map or a struct.`)
ErrNoMoreRows = errors.New(`There are no more rows in this result set.`)
ErrNotConnected = errors.New(`You're currently not connected.`)
ErrMissingDatabaseName = errors.New(`Missing database name.`)
......
......@@ -260,6 +260,13 @@ func (self *T) FieldValues(item interface{}, convertFn func(interface{}) interfa
item_v := reflect.ValueOf(item)
item_t := item_v.Type()
if item_t.Kind() == reflect.Ptr {
// Single derefence. Just in case user passed a pointer to struct instead of a struct.
item = item_v.Elem().Interface()
item_v = reflect.ValueOf(item)
item_t = item_v.Type()
}
switch item_t.Kind() {
case reflect.Struct:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment