diff --git a/features.export.inc b/features.export.inc
index 5cf2a8c..cc054b6 100644
--- a/features.export.inc
+++ b/features.export.inc
@@ -1005,7 +1005,7 @@ function _features_linetrim($code) {
  * @param $component string name of component
  * @param bool $remove_empty if set, remove null or empty values for assoc arrays.
  */
-function features_sanitize(&$array, $component = NULL, $remove_empty = TRUE) {
+function features_sanitize(&$array, $component = NULL, $remove_empty = FALSE) {
   // make a deep copy of data to prevent problems when removing recursion later.
   $array = unserialize(serialize($array));
   if (isset($component)) {
@@ -1025,7 +1025,7 @@ function features_sanitize(&$array, $component = NULL, $remove_empty = TRUE) {
  * - Sort an array by its keys (assoc) or values (non-assoc)
  * @param bool $remove_empty if set, remove null or empty values for assoc arrays.
  */
-function _features_sanitize(&$array, $remove_empty = TRUE) {
+function _features_sanitize(&$array, $remove_empty = FALSE) {
   if (is_object($array)) {
     $array = get_object_vars($array);
   }
@@ -1042,7 +1042,7 @@ function _features_sanitize(&$array, $remove_empty = TRUE) {
     }
     foreach ($array as $k => $v) {
       if (is_array($v) or is_object($v)) {
-        _features_sanitize($array[$k]);
+        _features_sanitize($array[$k], $remove_empty);
         if ($remove_empty && $is_assoc && empty($array[$k])) {
           unset($array[$k]);
         }
