Index: skinr.module
===================================================================
--- skinr.module	(revision 4531)
+++ skinr.module	(working copy)
@@ -625,7 +634,12 @@
   $all_skins = $skins = array();
   $base_theme = (!empty($themes[$theme]->info['base theme'])) ? $themes[$theme]->info['base theme'] : '';
   while ($base_theme) {
-    $all_skins[] = (!empty($themes[$base_theme]->info['skinr'])) ? (array)$themes[$base_theme]->info['skinr'] : array();
+    // Add in path info here.
+    $base_skins = (!empty($themes[$base_theme]->info['skinr'])) ? (array)$themes[$base_theme]->info['skinr'] : array();
+    $base_path  = $path_root = dirname($themes[$base_theme]->filename);
+    _skinr_add_paths_to_files($base_skins, $base_path);
+
+    $all_skins[] = $base_skins;
     $base_theme = (!empty($themes[$base_theme]->info['base theme'])) ? $themes[$base_theme]->info['base theme'] : '';
   }
   array_reverse($all_skins);
@@ -714,7 +728,12 @@
 
     // Inherit skins from parent theme, if inherit_skins is set to true.
     if (!empty($skinset['options']['inherit_skins'])) {
-      $skinr_info = array_merge(skinr_inherited_skins($info->name), $skinr_info);
+      // Add paths to $skinr_info.
+      _skinr_add_paths_to_files($skinr_info, $path_root);
+      // Paths get automatically added to base theme info.
+      $base_info  = skinr_inherited_skins($info->name);
+      // Merge base theme and current.
+      $skinr_info = array_merge($base_info, $skinr_info);
     }
 
     $defaults = skinr_skin_default();
@@ -734,25 +753,39 @@
         'stylesheets' => isset($skin['stylesheets']) ? $skin['stylesheets'] : $defaults['stylesheets'],
         'scripts' => isset($skin['scripts']) ? $skin['scripts'] : $defaults['scripts'],
       );
+    }
+  }
 
-      // Give the stylesheets proper path information.
-      $skinset['skins'][$id]['stylesheets'] = _skinr_add_path_to_files($skinset['skins'][$id]['stylesheets'], $path_root, 'css');
+  return $skinset;
+}
 
-      // Give the scripts proper path information.
-      $skinset['skins'][$id]['scripts'] = _skinr_add_path_to_files($skinset['skins'][$id]['scripts'], $path_root, 'js');
+function _skinr_add_paths_to_files(&$skinr_info, $path_root) {
+  foreach ($skinr_info as $id => $skin) {
+    if (!is_array($skin)) {
+      continue;
+    }
 
-      foreach ($skinset['skins'][$id]['options'] as $oid => $option) {
-        if (isset($option['stylesheets'])) {
-          $skinset['skins'][$id]['options'][$oid]['stylesheets'] = _skinr_add_path_to_files($option['stylesheets'], $path_root, 'css');
+    // Give the stylesheets proper path information.
+    if (!empty($skin['stylesheets'])) {
+      $skinr_info[$id]['stylesheets'] = _skinr_add_path_to_files($skin['stylesheets'], $path_root, 'css');
+    }
+
+    // Give the scripts proper path information.
+    if (!empty($skin['scripts'])) {
+      $skinr_info[$id]['scripts'] = _skinr_add_path_to_files($skin['scripts'], $path_root, 'js');
+    }
+
+    if (!empty($skin['options'])) {
+      foreach ($skin['options'] as $oid => $option) {
+        if (!empty($option['stylesheets'])) {
+          $skinr_info[$id]['options'][$oid]['stylesheets'] = _skinr_add_path_to_files($option['stylesheets'], $path_root, 'css');
         }
         if (isset($option['scripts'])) {
-          $skinset['skins'][$id]['options'][$oid]['scripts'] = _skinr_add_path_to_files($option['scripts'], $path_root, 'js');
+          $skinr_info[$id]['options'][$oid]['scripts'] = _skinr_add_path_to_files($option['scripts'], $path_root, 'js');
         }
       }
     }
   }
-
-  return $skinset;
 }
 
 /**
