From 7396369ef190a049b3a779a54edd76ff118f3c28 Mon Sep 17 00:00:00 2001 From: Mystery Man Date: Fri, 21 Nov 2003 12:53:39 +0000 Subject: This commit was manufactured by cvs2svn to create tag 'MDK92-AMD64'. --- perl-install/install_steps_gtk.pm | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'perl-install/install_steps_gtk.pm') diff --git a/perl-install/install_steps_gtk.pm b/perl-install/install_steps_gtk.pm index 07b654c16..49b794b93 100644 --- a/perl-install/install_steps_gtk.pm +++ b/perl-install/install_steps_gtk.pm @@ -46,26 +46,29 @@ sub new($$) { install_gtk::createXconf($f, @{$o->{mouse}}{"XMOUSETYPE", "device"}, $o->{mouse}{wacom}[0], $Driver); mkdir '/var/log' if !-d '/var/log'; - local $SIG{CHLD} = sub { $ok = 0 if waitpid(-1, c::WNOHANG()) > 0 }; my @options = ( if_(arch() !~ /^sparc/ && arch() ne 'ppc' && $server ne 'Xnest', '-kb', '-allowMouseOpenFail', '-xf86config', $f), - ($wanted_DISPLAY, 'tty7', '-dpms', '-s', '240'), + ($wanted_DISPLAY, 'tty7', '-dpms', '-s', '240', '-dpi', '75'), ); push @options, $xpmac_opts !~ /ofonly/ ? ('-mode', '17', '-depth', '32') : '-mach64' if $server =~ /Xpmac/; push @options, '-fp', '/usr/X11R6/lib/X11/fonts:unscaled' if $server =~ /Xsun|Xpmac/; push @options, '-ac', '-geometry', $o->{vga16} ? '640x480' : '800x600' if $server eq 'Xnest'; - unless (fork()) { - exec $server, @options or exit 1; + if (!fork()) { + c::setsid(); + exec $server, @options or c::_exit(1); } + my $nb; foreach (1..60) { sleep 1; - log::l("Server died"), return 0 if !$ok; - if (c::Xtest($wanted_DISPLAY)) { + log::l("Server died"), return 0 if !fuzzy_pidofs(qr/\b$server\b/); + $nb++ if c::Xtest($wanted_DISPLAY); + if ($nb > 2) { #- one succeeded test is not enough :-( $ugtk2::force_focus = 1; + log::l("AFAIK X server is up"); return 1; } } @@ -121,7 +124,7 @@ sub new($$) { } OK: $ENV{DISPLAY} = $wanted_DISPLAY; - install_gtk::init_gtk(); + install_gtk::init_gtk($o); install_gtk::init_sizes(); install_gtk::install_theme($o); install_gtk::create_logo_window($o); -- cgit v1.2.1