Description

Basically, the sidebars_widgets options was getting updated properly but was then rendered broken on the next page load.

I've traced it down to the code in wp_get_sidebars_widgets() and wp_set_sidebars_widgets(). The array version gets unset in wp_get_sidebars_widgets(), but you forget to re-add it in wp_set_sidebars_widgets().