Apache OpenOffice (AOO) Bugzilla – Full Text Issue Listing |
Summary: | Extension Manager does not join spawned uno process (-> smoketestoo_native fails) | ||
---|---|---|---|
Product: | General | Reporter: | Stephan Bergmann <stephan.bergmann.secondary> |
Component: | code | Assignee: | AOO issues mailing list <issues> |
Status: | CLOSED OBSOLETE | QA Contact: | |
Severity: | Trivial | ||
Priority: | P2 | CC: | issues, oooforum |
Version: | DEV300m77 | ||
Target Milestone: | --- | ||
Hardware: | All | ||
OS: | All | ||
Issue Type: | DEFECT | Latest Confirmation in: | --- |
Developer Difficulty: | --- |
Description
Stephan Bergmann
2010-05-05 14:36:29 UTC
. The separate uno process dies when the remote bridge dies. That is, the reader threads fails to read data from the remote connection, because it was closed on the other end (soffice.bin). The uno process is a listener at the bridge and is notified when this happens. The main function is blocked by a condition which is set when the notification occurs. Then the main threads can leave the main function an the process can eventually terminate. However, it is undetermined when the process dies and frees its resources. The best solution would therefore to use system functions, such as WaitForMultipleObjects (Windows), waitpid (Linux), to make sure that all child processes are terminated before the office process terminates itself. One possible solution is to dispose the remote bridges in the extension manager when it is disposed and join the uno processes. The disposing call should block as long as there are uno processes alive. It is still unclear what this means when there are services from the uno process still in use by soffice. raising prio, as this affects build stability Issue 116159 implements a workaround for the failing smoketestoo_native. That workaround should be removed again when this issue is fixed. retargeted to 3.x . |