diff --git a/includes/features.field.inc b/includes/features.field.inc index 1936826..046b58a 100755 --- a/includes/features.field.inc +++ b/includes/features.field.inc @@ -213,6 +213,15 @@ function features_field_load($identifier) { unset($field_info['bundles']); unset($instance_info['id']); unset($instance_info['field_id']); + + // Fix weights that FieldAPI seems to store sometimes as integers and + // sometimes as strings. This prevents the feature incorrectly reporting + // as overridden and 'feature ping-pong'. + $instance_info['widget']['weight'] = (int) $instance_info['widget']['weight']; + foreach ($instance_info['display'] as &$view_mode_settings) { + $view_mode_settings['weight'] = (int) $view_mode_settings['weight']; + } + return array( 'field_config' => $field_info, 'field_instance' => $instance_info,