walk_fields_recursively fix