Grund: OpenOffice bzw. der UNO-Connector stürzt gerne beim Beenden mit
einem segmentation fault ab, auch wenn die Verbindung selber in
Ordnung war. Also zusätzlich zum Exit code eine Statusausgabe des
Scripts benutzen.
sub is_openoffice_running {
$main::lxdebug->enter_sub();
- system("./scripts/oo-uno-test-conn.py $main::openofficeorg_daemon_port " .
- "> /dev/null 2> /dev/null");
- my $res = $? == 0;
- $main::lxdebug->message(LXDebug->DEBUG2(), " is_openoffice_running(): $?\n");
+ my $output = `./scripts/oo-uno-test-conn.py $main::openofficeorg_daemon_port 2> /dev/null`;
+ chomp $output;
+
+ my $res = ($? == 0) || $output;
+ $main::lxdebug->message(LXDebug->DEBUG2(), " is_openoffice_running(): res $res\n");
$main::lxdebug->leave_sub();
try:
desktop = establish_connection(sys.argv[1])
except:
+ print "0"
sys.exit(2)
+
+ print "1"
sys.exit(0)
main()