wir arbeiten z. Zt. mit Ubuntu 10.4 und OO 3.2.
Demnächst wechseln wir auf Ubuntu 12.04 mit LibreOffice 3.5.4.2.
In meiner Anwendung öffne aus einer Calc-Datei eine weitere Calc-Datei und schließe die aufrufende Datei dann wieder. Beides passiert in einem Makro, dass an das Ereignis 'Dokument öffnen' gebunden ist.
Es ist dann nur noch die aufgerufene Datei offen.
Unter OO 3.2 hat das immer einwandfrei geklappt. Unter LO 3.5 schmiert der LO-Prozess ab (falls ein weiteres LO-Dokument oder die IDE offen ist, klappt es übrigens).
Ich habe es mit
Code: Alles auswählen
ThisComponent.Close(True)
Code: Alles auswählen
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
dispatcher.executeDispatch(document, ".uno:CloseDoc", "", 0, Array())
Aus dem Terminal heraus gestartet, gibt es auch eine Fehlermeldung, mit der ich allerdings nichts anfangen kann:
Wann hat sich das Verhalten geändert, erst mit LO oder auch schon unter OO >3.2?soffice.bin: tpp.c:63: __pthread_tpp_change_priority: Zusicherung >>new_prio == -1 || (new_prio >= __sched_fifo_min_prio && new_prio <= __sched_fifo_max_prio)<< nicht erfüllt.
Ist es ein Bug oder hat die Änderung einen Grund?
Kann ich die Funktionalität auch anders erreichen?
Ich habe mal zwei Dateien angehängt, mit denen man das Verhalten nachstellen kann.
Gruß
Thomas