Index: wp-includes/widgets.php
===================================================================
--- wp-includes/widgets.php	(revision 18670)
+++ wp-includes/widgets.php	(working copy)
@@ -998,7 +998,7 @@
 	if ( $deprecated !== true )
 		_deprecated_argument( __FUNCTION__, '2.8.1' );
 
-	global $wp_registered_widgets, $wp_registered_sidebars, $_wp_sidebars_widgets;
+	global $wp_registered_widgets, $wp_registered_sidebars, $_wp_sidebars_widgets, $sidebars_widgets;
 
 	// If loading from front page, consult $_wp_sidebars_widgets rather than options
 	// to see if wp_convert_widget_settings() has made manipulations in memory.
@@ -1219,9 +1219,6 @@
 		$_sidebars_widgets = $old_sidebars_widgets['data'];
 		remove_theme_mod( 'sidebars_widgets' );
 	} else {
-		if ( ! is_array( $sidebars_widgets ) )
-			$sidebars_widgets = wp_get_sidebars_widgets();
-
 		$sidebars = array_keys($wp_registered_sidebars);
 
 		unset( $sidebars_widgets['array_version'] );
@@ -1234,7 +1231,7 @@
 			return;
 
 		$_sidebars_widgets = array(
-			'wp_inactive_widgets' => $sidebars_widgets['wp_inactive_widgets']
+			'wp_inactive_widgets' => !empty( $sidebars_widgets['wp_inactive_widgets'] ) ? $sidebars_widgets['wp_inactive_widgets'] : array()
 		);
 
 		unset( $sidebars_widgets['wp_inactive_widgets'] );
