diff --git a/CHANGELOG.txt b/CHANGELOG.txt
index b85cf7e2ae1cb08f4fb13e0130d532bd1c64fa78..bedadb622e376e2d06317501077ae9ab9de434f9 100644
--- a/CHANGELOG.txt
+++ b/CHANGELOG.txt
@@ -1,5 +1,7 @@
 Skinr 6.x-1.x, xxxx-xx-xx
 -------------------------
+Issue #1129746 by moonray, Peter Bowey, setvik: Skinr_process_info_files() calls
+  the slow _system_theme_data().
 Issue #943782 by moonray, Dane Powell, rfay, Alexander Allen, Jacine |
   Melissamcewen: _system_theme_data() causes PHP notices, but
   system_theme_data() causes themes to be disabled on update.
diff --git a/skinr.module b/skinr.module
index a58c05ddd043a599c9349a733106471453ab397e..d91a5a7e06b8a053d124446b2017a7d358e88882 100644
--- a/skinr.module
+++ b/skinr.module
@@ -330,7 +330,7 @@ function skinr_preprocess(&$vars, $hook) {
   }
 
   // Add any base themes.
-  $themes = array_keys(system_find_base_themes(system_theme_data(), $data['current_theme']));
+  $themes = array_keys(system_find_base_themes(list_themes(), $data['current_theme']));
   // Add the current theme.
   $themes[] = $data['current_theme'];
 
@@ -580,7 +580,7 @@ function skinr_process_info_files() {
   static $cache = NULL;
 
   if (is_null($cache)) {
-    $themes = system_theme_data();
+    $themes = list_themes();
 
     foreach ($themes as $theme) {
       $cache[$theme->name] = array(
