desktop/source/app/app.cxx | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-)
New commits: commit 74ac65c49cc1d53b1aa93c2b7c720255867aace2 Author: Andrea Pescetti <pesce...@apache.org> Date: Tue Sep 6 19:13:44 2016 +0000 #i114963# Enable IPC before OpenClients to allow client connections when printing. Patch By: aptit...@btconnect.com (cherry picked from commit 602bd18953b23b7aa939cc118d2aa7cb24b172be) Conflicts: desktop/source/app/app.cxx diff --git a/desktop/source/app/app.cxx b/desktop/source/app/app.cxx index da825bf..0f039a9 100644 --- a/desktop/source/app/app.cxx +++ b/desktop/source/app/app.cxx @@ -1931,9 +1931,21 @@ class ExitTimer : public Timer IMPL_LINK_NOARG_TYPED(Desktop, OpenClients_Impl, void*, void) { try { - OpenClients(); - + // #114963# + // Enable IPC thread before OpenClients + // + // This is because it is possible for another client to connect during the OpenClients() call. + // This can happen on Windows when document is printed (not opened) and another client wants to print (when printing multiple documents). + // If the IPC thread is enabled after OpenClients, then the client will not be processed because the application will exit after printing. i.e RequestHandler::AreRequestsPending() will always return false + // + // ALSO: + // + // Multiple clients may request simultaneous connections. + // When this server closes down it attempts to recreate the pipe (in RequestHander::Disable()). + // It's possible that the client has a pending connection request. + // When the IPC thread is not running, this connection locks (because maPipe.accept()) is never called RequestHandler::SetReady(); + OpenClients(); CloseSplashScreen(); CheckFirstRun( ); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits