mmsharing/mmshmanagercli/src/musmanagerserverstarter.cpp
branchRCL_3
changeset 21 33a5d2bbf6fc
parent 16 ce86b6d44a6d
equal deleted inserted replaced
20:2d2c7d1515f7 21:33a5d2bbf6fc
    18 
    18 
    19 // INCLUDES
    19 // INCLUDES
    20 #include "musmanagerserverstarter.h"
    20 #include "musmanagerserverstarter.h"
    21 #include "musmanageripccommon.h"
    21 #include "musmanageripccommon.h"
    22 #include "muslogger.h"
    22 #include "muslogger.h"
       
    23 
       
    24 const TInt KMusServerClosingWaitTimeoutInMicrosecs = 10000000; // 10 secs
    23 
    25 
    24 // ----------------------------------------------------------------------------
    26 // ----------------------------------------------------------------------------
    25 // MusManagerServerStarter::Start
    27 // MusManagerServerStarter::Start
    26 // ----------------------------------------------------------------------------
    28 // ----------------------------------------------------------------------------
    27 //
    29 //
    82     TInt err = KErrNone;
    84     TInt err = KErrNone;
    83     
    85     
    84     RSemaphore closingSemaphore;
    86     RSemaphore closingSemaphore;
    85     if ( closingSemaphore.OpenGlobal( KMusManagerServerClosingSemaphoreName ) == KErrNone )
    87     if ( closingSemaphore.OpenGlobal( KMusManagerServerClosingSemaphoreName ) == KErrNone )
    86         {
    88         {
    87         MUS_LOG( "mus: [MUSCLI]     Server is currently closing, wait" );
    89         MUS_LOG( "mus: [MUSCLI]     CreateServerProcess, wait for server closing" );
    88         // Don't wait forever if server is somehow horribly jammed
    90         // Don't wait forever if server is somehow horribly jammed
    89         const TInt KMusServerClosingWaitTimeoutInMicrosecs = 20000000; // 20 secs
    91         
    90         closingSemaphore.Wait(KMusServerClosingWaitTimeoutInMicrosecs);
    92         TInt waitErr = closingSemaphore.Wait( KMusServerClosingWaitTimeoutInMicrosecs );
       
    93         MUS_LOG1( "mus: [MUSCLI]    CreateServerProcess, waitErr( %d )",
       
    94                   waitErr );
       
    95         closingSemaphore.Close();
       
    96         if ( waitErr != KErrNone )
       
    97             {
       
    98             return waitErr;
       
    99             }
    91         }
   100         }
    92     closingSemaphore.Close();
       
    93     
   101     
    94     const TUidType serverUid( KNullUid, KNullUid, KServerUid3 );
   102     const TUidType serverUid( KNullUid, KNullUid, KServerUid3 );
    95     RProcess server;
   103     RProcess server;
    96     err = server.Create( KMusManagerServerName, KNullDesC() ,serverUid );
   104     err = server.Create( KMusManagerServerName, KNullDesC() ,serverUid );
    97     if ( err )
   105     if ( err )