summaryrefslogtreecommitdiffstats
path: root/perl-install
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2005-10-21 09:40:56 +0000
committerPascal Rigaux <pixel@mandriva.com>2005-10-21 09:40:56 +0000
commiteeb44e50a2461bb8efb6b38411d603aee8604feb (patch)
tree6bd5f1fc4a57b68410d425de85d3dd16fd9114aa /perl-install
parenteed918ce0535f74d8ae193f73da2b25ab7474456 (diff)
downloaddrakx-eeb44e50a2461bb8efb6b38411d603aee8604feb.tar
drakx-eeb44e50a2461bb8efb6b38411d603aee8604feb.tar.gz
drakx-eeb44e50a2461bb8efb6b38411d603aee8604feb.tar.bz2
drakx-eeb44e50a2461bb8efb6b38411d603aee8604feb.tar.xz
drakx-eeb44e50a2461bb8efb6b38411d603aee8604feb.zip
simplify (and make it more robust)
Diffstat (limited to 'perl-install')
-rw-r--r--perl-install/Xconfig/card.pm8
1 files changed, 4 insertions, 4 deletions
diff --git a/perl-install/Xconfig/card.pm b/perl-install/Xconfig/card.pm
index db945cbab..b96ae9807 100644
--- a/perl-install/Xconfig/card.pm
+++ b/perl-install/Xconfig/card.pm
@@ -63,8 +63,9 @@ sub to_raw_X {
$raw_X->get_ServerLayout->{Xinerama} = { commented => !$card->{Xinerama}, Option => 1 }
if defined $card->{Xinerama};
- # handle Xorg <-> nvidia switch when packages are installed:
- $raw_X->remove_load_module($card->{REMOVE_GLX}) if $card->{REMOVE_GLX};
+ # cleanup previous special nvidia libglx
+ $raw_X->remove_load_module($_) foreach @{$card->{REMOVE_GLX}};
+
if ($card->{DRI_GLX_SPECIAL}) {
$raw_X->remove_load_module('glx'); # this doesn't duplicate the above glx line
# This loads the NVIDIA GLX extension module.
@@ -338,7 +339,6 @@ sub install_server {
$card->{Driver} = 'nvidia';
$card->{DRI_GLX_SPECIAL} = $libglx;
$card->{Options}{IgnoreEDID} = 1;
- $card->{REMOVE_GLX} = $old_nvidia_libglx;
}
}
if ($card->{Driver2} eq 'fglrx' &&
@@ -347,7 +347,7 @@ sub install_server {
log::explanations("Using specific ATI fglrx and DRI drivers");
$card->{Driver} = 'fglrx';
}
- $card->{REMOVE_GLX} ||= $new_nvidia_libglx;
+ $card->{REMOVE_GLX} = [ $old_nvidia_libglx, $new_nvidia_libglx ];
libgl_config($card);