? submithandlers-906764-HEAD.patch
Index: skinr.handlers.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/skinr/skinr.handlers.inc,v
retrieving revision 1.4
diff -u -p -r1.4 skinr.handlers.inc
--- skinr.handlers.inc	2 Jun 2010 13:16:58 -0000	1.4
+++ skinr.handlers.inc	5 Nov 2010 18:40:38 -0000
@@ -105,14 +105,14 @@ function skinr_data_handler(&$form, $for
 function skinr_submit_handler(&$form, $form_state, $module, $form_settings) {
   if (isset($form_state['values']['skinr_settings'][$module . '_group'])) {
     foreach ($form_state['values']['skinr_settings'][$module . '_group'] as $theme_name => $theme) {
-      if ((isset($theme['widgets']) && count($theme['widgets'])) || isset($theme['_additional'])) {
+      if ((!empty($theme['widgets']) && is_array($theme['widgets'])) || isset($theme['_additional'])) {
         $skinr = new stdClass();
         $skinr->theme = $theme_name;
         $skinr->module = $module;
         $skinr->sid = skinr_handler('form_index_handler', 'submit', $form_settings['index_handler'], $form, $form_state);
         $skinr->skins = array();
 
-        if (isset($theme['widgets']) && is_array($theme['widgets'])) {
+       if (!empty($theme['widgets']) && is_array($theme['widgets'])) {
           foreach ($theme['widgets'] as $skin_id => $skin_value) {
             $skinr->skins[$skin_id] = $skin_value;
           }
Index: modules/panels.skinr.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/skinr/modules/panels.skinr.inc,v
retrieving revision 1.14
diff -u -p -r1.14 panels.skinr.inc
--- modules/panels.skinr.inc	29 Oct 2010 06:24:37 -0000	1.14
+++ modules/panels.skinr.inc	5 Nov 2010 18:40:39 -0000
@@ -213,7 +213,7 @@ function panels_skinr_data_handler(&$for
  */
 function panels_skinr_submit_handler_settings(&$form, $form_state, $module, $form_settings) {
   foreach ($form_state['values']['skinr_settings'][$module . '_group'] as $theme_name => $theme) {
-    if ((isset($theme['widgets']) && count($theme['widgets'])) || isset($theme['_additional'])) {
+    if ((!empty($theme['widgets']) && is_array($theme['widgets'])) || isset($theme['_additional'])) {
       $hook  = $module;
       $sid   = skinr_handler('form_index_handler', 'submit', $form_settings['index_handler'], $form, $form_state);
 
@@ -222,7 +222,7 @@ function panels_skinr_submit_handler_set
 
       $value = array();
 
-      if (is_array($theme['widgets'])) {
+      if (!empty($theme['widgets']) && is_array($theme['widgets'])) {
         foreach ($theme['widgets'] as $skin_id => $skin_value) {
           $value[$skin_id] = $skin_value;
         }
Index: modules/views.skinr.inc
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/skinr/modules/views.skinr.inc,v
retrieving revision 1.8
diff -u -p -r1.8 views.skinr.inc
--- modules/views.skinr.inc	2 Jun 2010 13:16:58 -0000	1.8
+++ modules/views.skinr.inc	5 Nov 2010 18:40:39 -0000
@@ -196,11 +196,11 @@ function views_skinr_data_handler(&$form
  */
 function views_skinr_submit_handler_display(&$form, $form_state, $module, $form_settings) {
   foreach ($form_state['values']['skinr_settings'][$module .'_group'] as $theme_name => $theme) {
-    if ((isset($theme['widgets']) && count($theme['widgets'])) || isset($theme['_additional'])) {
+    if ((!empty($theme['widgets']) && is_array($theme['widgets'])) || isset($theme['_additional'])) {
       $sid   = skinr_handler('form_index_handler', 'submit', $form_settings['index_handler'], $form, $form_state);
       $value = array();
 
-      if (is_array($theme['widgets'])) {
+      if (!empty($theme['widgets']) && is_array($theme['widgets'])) {
         foreach ($theme['widgets'] as $skin_id => $skin_value) {
           $value[$skin_id] = $skin_value;
         }
