diff --git a/binding/form_mapping.go b/binding/form_mapping.go index 235692d2..4d3a8042 100644 --- a/binding/form_mapping.go +++ b/binding/form_mapping.go @@ -273,6 +273,11 @@ func setByForm(value reflect.Value, field reflect.StructField, form map[string][ } return true, setArray(vs, value, field) + case reflect.Struct: + if _, ok := value.Interface().(multipart.FileHeader); ok && value.IsZero() { + return false, nil + } + fallthrough default: var val string if !ok {