https://bz.apache.org/ooo/show_bug.cgi?id=128617

--- Comment #20 from Arrigo Marchiori <[email protected]> ---
The update check can be started using the dispatch framework. The dispatch URL
is stored inside the configuration file
main/extensions/source/update/check/Addons.xcu, node
"org.openoffice.Office.Addons/AddonUI/OfficeHelp/UpdateCheckJob".

The command URL is defined in file
main/extensions/source/update/check/Addons.xcu as
"vnd.sun.star.job:alias=UpdateCheck".  This means that job "UpdateCheck" is
started from the set org.openoffice.Office.Jobs

Such job is defined in main/extensions/source/update/check/Jobs.xcu and is
configured to launch service "com.sun.star.setup.UpdateCheck" with certain
parameters.                                                                     

Service "com.sun.star.setup.UpdateCheck" is implemented by class
UpdateCheckJob, defined in file
main/extensions/source/update/check/updatecheckjob.cxx                          

Here is how the update process works today:

 - the UpdateCheckJob::execute() method launches an InitUpdateCheckJobThread,
that (as the name suggests) spawns a thread.

 - method InitUpdateCheckJobThread::run() obtains the UpdateCheck() singleton,
initialize()'s it and uses it to show the dialog.

We have to redesign this part: the dialog must be instantiated in the main
thread, and the secondary thread must only be used for HTTP queries.

I am not sure we could totally remove the separate thread: the
InitUpdateCheckJobThread instance is also istantiated for the background check,
that should run at every execution...

...or can we just get rid of that? The popup seems to be crashing AOO as well
on MacOS.

-- 
You are receiving this mail because:
You are the assignee for the issue.

Reply via email to