]> git.ipfire.org Git - thirdparty/plymouth.git/commitdiff
[set-default-theme] More fixes to the fallback logic
authorRay Strode <rstrode@redhat.com>
Fri, 14 May 2010 14:56:00 +0000 (10:56 -0400)
committerRay Strode <rstrode@redhat.com>
Fri, 14 May 2010 14:56:00 +0000 (10:56 -0400)
It still wasn't properly falling back in the event the
configured theme was uninstalled.

scripts/plymouth-set-default-theme.in

index 463124669a689f667c80f16c2f720bfaca12a26b..105cdd803fb84f9370e4d272f18640c6960ddb3a 100755 (executable)
@@ -63,10 +63,11 @@ function get_default_theme ()
                 THEME_NAME=$(read_theme_name_from_file ${PLYMOUTH_POLICYDIR}/plymouthd.defaults)
         fi
 
-        if [ -z "$THEME_NAME" -o ! -r "${PLYMOUTH_DATADIR}/plymouth/themes/$THEME_NAME/$THEME_NAME.plymouth" ]; then
+        if [ -z "$THEME_NAME" -o ! -r "${PLYMOUTH_DATADIR}/plymouth/themes/$THEME_NAME/$THEME_NAME.plymouth" \
+             -a -L "${PLYMOUTH_DATADIR}/plymouth/themes/default.plymouth" ]; then
                 THEME_NAME=$(basename $(readlink ${PLYMOUTH_DATADIR}/plymouth/themes/default.plymouth) .plymouth)
         fi
-        if [ -z "$THEME_NAME" ]; then
+        if [ -z "$THEME_NAME" -o ! -r "${PLYMOUTH_DATADIR}/plymouth/themes/$THEME_NAME/$THEME_NAME.plymouth" ]; then
                 THEME_NAME="text"
         fi