View | Details | Raw Unified | Return to issue 77087
Collapse All | Expand All

(-)source/deployment/inc/dp_misc.h (-1 / +1 lines)
Lines 102-108 class AbortChannel; Link Here
102
//==============================================================================
102
//==============================================================================
103
DESKTOP_DEPLOYMENTMISC_DLLPUBLIC
103
DESKTOP_DEPLOYMENTMISC_DLLPUBLIC
104
::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface> resolveUnoURL(
104
::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface> resolveUnoURL(
105
    ::rtl::OUString const & connectString,
105
    oslProcess process, ::rtl::OUString const & connectString,
106
    ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext> const & xLocalContext,
106
    ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext> const & xLocalContext,
107
    AbortChannel * abortChannel = 0 );
107
    AbortChannel * abortChannel = 0 );
108
108
(-)source/deployment/misc/dp_misc.cxx (-4 / +7 lines)
Lines 46-52 Link Here
46
#include "osl/file.hxx"
46
#include "osl/file.hxx"
47
#include "osl/pipe.hxx"
47
#include "osl/pipe.hxx"
48
#include "osl/security.hxx"
48
#include "osl/security.hxx"
49
#include "osl/thread.hxx"
50
#include "osl/mutex.hxx"
49
#include "osl/mutex.hxx"
51
#include "com/sun/star/ucb/CommandAbortedException.hpp"
50
#include "com/sun/star/ucb/CommandAbortedException.hpp"
52
#include "com/sun/star/bridge/UnoUrlResolver.hpp"
51
#include "com/sun/star/bridge/UnoUrlResolver.hpp"
Lines 317-323 OUString generateRandomPipeId() Link Here
317
316
318
//==============================================================================
317
//==============================================================================
319
Reference<XInterface> resolveUnoURL(
318
Reference<XInterface> resolveUnoURL(
320
    OUString const & connectString,
319
    oslProcess process, OUString const & connectString,
321
    Reference<XComponentContext> const & xLocalContext,
320
    Reference<XComponentContext> const & xLocalContext,
322
    AbortChannel * abortChannel )
321
    AbortChannel * abortChannel )
323
{
322
{
Lines 333-341 Reference<XInterface> resolveUnoURL( Link Here
333
        try {
332
        try {
334
            return xUnoUrlResolver->resolve( connectString );
333
            return xUnoUrlResolver->resolve( connectString );
335
        }
334
        }
336
        catch (connection::NoConnectException &) {
335
        catch (connection::NoConnectException & e) {
337
            TimeValue tv = { 0 /* secs */, 500000000 /* nanosecs */ };
336
            TimeValue tv = { 0 /* secs */, 500000000 /* nanosecs */ };
338
            ::osl::Thread::wait( tv );
337
            if (osl_joinProcessWithTimeout(process, &tv) !=
338
                osl_Process_E_TimedOut)
339
            {
340
                throw RuntimeException(e.Message, e.Context);
341
            }
339
        }
342
        }
340
    }
343
    }
341
}
344
}
(-)source/deployment/registry/component/dp_component.cxx (-1 / +2 lines)
Lines 891-897 Reference<XComponentContext> raise_uno_p Link Here
891
        comphelper::containerToSequence(args) );
891
        comphelper::containerToSequence(args) );
892
    try {
892
    try {
893
        return Reference<XComponentContext>(
893
        return Reference<XComponentContext>(
894
            resolveUnoURL( connectStr, xContext, abortChannel.get() ),
894
            resolveUnoURL(
895
                hProcess, connectStr, xContext, abortChannel.get() ),
895
            UNO_QUERY_THROW );
896
            UNO_QUERY_THROW );
896
    }
897
    }
897
    catch (...) {
898
    catch (...) {
(-)source/pkgchk/unopkg/unopkg_misc.cxx (-2 / +2 lines)
Lines 405-411 Reference<XComponentContext> connectToOf Link Here
405
                ::rtl::OUStringToOString( args[ 2 ], textenc ).getStr() );
405
                ::rtl::OUStringToOString( args[ 2 ], textenc ).getStr() );
406
    }
406
    }
407
    
407
    
408
    ::dp_misc::raiseProcess( appURL, args );
408
    oslProcess p = ::dp_misc::raiseProcess( appURL, args );
409
    
409
    
410
    if (verbose)
410
    if (verbose)
411
        printf( "Ok.  Connecting..." );
411
        printf( "Ok.  Connecting..." );
Lines 417-423 Reference<XComponentContext> connectToOf Link Here
417
                         ";urp;StarOffice.ComponentContext") );
417
                         ";urp;StarOffice.ComponentContext") );
418
    Reference<XComponentContext> xRet(
418
    Reference<XComponentContext> xRet(
419
        ::dp_misc::resolveUnoURL(
419
        ::dp_misc::resolveUnoURL(
420
            buf.makeStringAndClear(), xLocalComponentContext ),
420
            p, buf.makeStringAndClear(), xLocalComponentContext ),
421
        UNO_QUERY_THROW );
421
        UNO_QUERY_THROW );
422
    if (verbose)
422
    if (verbose)
423
        printf( "Ok.\n" );
423
        printf( "Ok.\n" );

Return to issue 77087