summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--desktop/source/deployment/misc/dp_misc.cxx11
1 files changed, 8 insertions, 3 deletions
diff --git a/desktop/source/deployment/misc/dp_misc.cxx b/desktop/source/deployment/misc/dp_misc.cxx
index 2f8eb55c679c..17c4fb2a3e44 100644
--- a/desktop/source/deployment/misc/dp_misc.cxx
+++ b/desktop/source/deployment/misc/dp_misc.cxx
@@ -444,7 +444,7 @@ Reference<XInterface> resolveUnoURL(
Reference<bridge::XUnoUrlResolver> xUnoUrlResolver(
bridge::UnoUrlResolver::create( xLocalContext ) );
- for (;;)
+ for (int i = 0; i <= 20; ++i) // 10 seconds
{
if (abortChannel != 0 && abortChannel->isAborted()) {
throw ucb::CommandAbortedException(
@@ -454,10 +454,15 @@ Reference<XInterface> resolveUnoURL(
return xUnoUrlResolver->resolve( connectString );
}
catch (const connection::NoConnectException &) {
- TimeValue tv = { 0 /* secs */, 500000000 /* nanosecs */ };
- ::osl::Thread::wait( tv );
+ if (i < 20)
+ {
+ TimeValue tv = { 0 /* secs */, 500000000 /* nanosecs */ };
+ ::osl::Thread::wait( tv );
+ }
+ else throw;
}
}
+ return 0; // warning C4715
}
#ifdef WNT