To comment on the following update, log in, then open the issue: http://www.openoffice.org/issues/show_bug.cgi?id=57125 Issue #:|57125 Summary:|dialog adaptions for Threading Framework Component:|gsl Version:|OOo 2.0 Platform:|All URL:| OS/Version:|All Status:|NEW Status whiteboard:| Keywords:| Resolution:| Issue type:|DEFECT Priority:|P3 Subcomponent:|code Assigned to:|kso Reported by:|kso
------- Additional comments from [EMAIL PROTECTED] Tue Nov 1 05:01:28 -0800 2005 ------- Dialogs that create threads that call back to VCL (general, call non-threadsafe code) will not work any longer with the new Threading Framework. Dialog::Execute() is a non-threadsafe VCL call and therefore must not leave the VCL apartment until Execute has returned. Thus, a thread will not be able to call back to VCL as long as the dialog is in Execute(). If the dialog logic is that Execute() only returns after the thread has delivered some data, we have a deadlock. All those dialogs and all of its callers must be rewritten to use a new interface for executing modal dialogs asynchronously. Idea: class Dialog { .... virtual void startExecuteModal( const Link & rEndDialogHdl ); ... }; With this new interface, VCL apartment will be left directly after starting the dialog, giving other threads the chance to call back to VCL apartment. Dialog results will be delivered asynchronously using the link supplied by the caller oo startExecuteModal(). Note that is currently not nessacery to change all dialogs to use the new interface. Only those who create threads are problematic in the context of the Threading Framework. --------------------------------------------------------------------- Please do not reply to this automatically generated notification from Issue Tracker. Please log onto the website and enter your comments. http://qa.openoffice.org/issue_handling/project_issues.html#notification --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]