equal
deleted
inserted
replaced
109 TVersion ver ( KNSmlDmCallbackServerVersionMajor, |
109 TVersion ver ( KNSmlDmCallbackServerVersionMajor, |
110 KNSmlDmCallbackServerVersionMinor, 0 ); |
110 KNSmlDmCallbackServerVersionMinor, 0 ); |
111 |
111 |
112 result = CreateSession( KNSmlDmCallbackServerName, ver ); |
112 result = CreateSession( KNSmlDmCallbackServerName, ver ); |
113 if(result!=KErrNone) |
113 if(result!=KErrNone) |
114 { |
114 { |
115 TRAPD(error, result = LaunchServerL()); |
115 TRAPD(error, result = LaunchServerL()); |
116 if ( (error == KErrNone) && ( result == KErrNone ) ) |
116 if ( (error == KErrNone) && ( result == KErrNone ) ) |
117 { |
117 { |
118 result = CreateSession( KNSmlDmCallbackServerName, ver ); |
118 result = CreateSession( KNSmlDmCallbackServerName, ver ); |
119 } |
119 } |
|
120 else if ( result == KErrAlreadyExists ) |
|
121 { |
|
122 TInt retryCount = 3; |
|
123 |
|
124 while ( result != KErrNone && retryCount ) |
|
125 { |
|
126 result = CreateSession( KNSmlDmCallbackServerName, ver ); |
|
127 if( result != KErrNone ) |
|
128 { |
|
129 // wait 1.5 seconds to give the server a chance to reach its serviceable state |
|
130 User::After( 1500000 ); |
|
131 --retryCount; |
|
132 } |
|
133 } |
120 } |
134 } |
|
135 } |
|
136 User::LeaveIfError( result ); |
121 return result; |
137 return result; |
122 } |
138 } |
123 |
139 |
124 |
140 |
125 // --------------------------------------------------------------------------- |
141 // --------------------------------------------------------------------------- |