From aff970b5d3c71d3422852e49dbfcdbf5c8e8bbe0 Mon Sep 17 00:00:00 2001
From: Thomas Bruederli <thomas@roundcube.net>
Date: Thu, 09 Aug 2012 15:56:00 -0400
Subject: [PATCH] Replace some forgotten references to skins/default (#1488591)

---
 CHANGELOG                             |    1 +
 program/include/rcube_output_html.php |    2 +-
 skins/classic/ie6hacks.css            |    2 +-
 .htaccess                             |    2 +-
 program/include/rcube_config.php      |    8 +++++---
 5 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/.htaccess b/.htaccess
index 82afe76..25e153f 100644
--- a/.htaccess
+++ b/.htaccess
@@ -28,7 +28,7 @@
 
 <IfModule mod_rewrite.c>
 RewriteEngine On
-RewriteRule ^favicon\.ico$ skins/default/images/favicon.ico
+RewriteRule ^favicon\.ico$ skins/larry/images/favicon.ico
 # security rules
 RewriteRule .git - [F]
 RewriteRule ^/?(README(.md)?|INSTALL|LICENSE|SQL|bin|CHANGELOG)$ - [F]
diff --git a/CHANGELOG b/CHANGELOG
index 6da5d24..d09d975 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,6 +1,7 @@
 CHANGELOG Roundcube Webmail
 ===========================
 
+- Fix fallback to Larry skin when configured skin isn't available (#1488591)
 - Fix (workaround) delete operations with some versions of memcache (#1488592)
 - Fix (disable) request validation for spell and spell_html actions
 - Add new DB abstraction layer based on PHP PDO, supporting SQLite3 (#1488332)
diff --git a/program/include/rcube_config.php b/program/include/rcube_config.php
index aae3656..2fe0d97 100644
--- a/program/include/rcube_config.php
+++ b/program/include/rcube_config.php
@@ -26,6 +26,8 @@
  */
 class rcube_config
 {
+    const DEFAULT_SKIN = 'larry';
+
     private $prop = array();
     private $errors = array();
     private $userprefs = array();
@@ -81,13 +83,13 @@
                 $this->prop['skin'] = str_replace('skins/', '', unslashify($this->prop['skin_path']));
             }
             else {
-                $this->prop['skin'] = 'larry';
+                $this->prop['skin'] = self::DEFAULT_SKIN;
             }
         }
 
         // larry is the new default skin :-)
         if ($this->prop['skin'] == 'default')
-            $this->prop['skin'] = 'larry';
+            $this->prop['skin'] = self::DEFAULT_SKIN;
 
         // fix paths
         $this->prop['log_dir'] = $this->prop['log_dir'] ? realpath(unslashify($this->prop['log_dir'])) : INSTALL_PATH . 'logs';
@@ -254,7 +256,7 @@
 
         // larry is the new default skin :-)
         if ($prefs['skin'] == 'default') {
-            $prefs['skin'] = 'larry';
+            $prefs['skin'] = self::DEFAULT_SKIN;
         }
 
         $this->userprefs = $prefs;
diff --git a/program/include/rcube_output_html.php b/program/include/rcube_output_html.php
index 3bc93db..30512d2 100644
--- a/program/include/rcube_output_html.php
+++ b/program/include/rcube_output_html.php
@@ -149,7 +149,7 @@
         else {
             $skin_path = $this->config->get('skin_path');
             if (!$skin_path) {
-                $skin_path = 'skins/default';
+                $skin_path = 'skins/' . rcube_config::DEFAULT_SKIN;
             }
             $valid = !$skin;
         }
diff --git a/skins/classic/ie6hacks.css b/skins/classic/ie6hacks.css
index 53a2e5e..ac95386 100644
--- a/skins/classic/ie6hacks.css
+++ b/skins/classic/ie6hacks.css
@@ -7,7 +7,7 @@
 
 img
 {
-  behavior: url(skins/default/pngbehavior.htc);
+  behavior: url(skins/classic/pngbehavior.htc);
 }
 
 #logo

--
Gitblit v1.9.1