|
Lines 156-172
Link Here
|
| 156 |
{ |
156 |
{ |
| 157 |
m_dontLoad.clear(); |
157 |
m_dontLoad.clear(); |
| 158 |
KConfig *config = kapp->config(); |
158 |
KConfig *config = kapp->config(); |
| 159 |
bool kde_running = !( getenv( "TDE_FULL_SESSION" ) == NULL || getenv( "TDE_FULL_SESSION" )[ 0 ] == '\0' ); |
159 |
bool tde_running = !( getenv( "TDE_FULL_SESSION" ) == NULL || getenv( "TDE_FULL_SESSION" )[ 0 ] == '\0' ); |
| 160 |
// not the same user like the one running the session (most likely we're run via sudo or something) |
160 |
// not the same user like the one running the session (most likely we're run via sudo or something) |
| 161 |
if( getenv( "TDE_SESSION_UID" ) != NULL && uid_t( atoi( getenv( "TDE_SESSION_UID" ))) != getuid()) |
161 |
if( getenv( "TDE_SESSION_UID" ) != NULL && uid_t( atoi( getenv( "TDE_SESSION_UID" ))) != getuid()) |
| 162 |
kde_running = false; |
162 |
tde_running = false; |
| 163 |
// Preload kded modules. |
163 |
// Preload kded modules. |
| 164 |
KService::List kdedModules = KServiceType::offers("KDEDModule"); |
164 |
KService::List kdedModules = KServiceType::offers("KDEDModule"); |
| 165 |
TQString version = getenv( "KDE_SESSION_VERSION" ); |
165 |
TQString version = getenv( "KDE_SESSION_VERSION" ); |
| 166 |
TQStringList blacklist; |
166 |
TQStringList blacklist; |
| 167 |
if ( version >= "4" ) |
167 |
if ( !(version == NULL) && version >= "4" ) |
| 168 |
{ |
168 |
{ |
| 169 |
kdDebug(7020) << "KDE4 is running." << endl; |
169 |
kdDebug(7020) << "KDE4 is running:" << endl; |
|
|
170 |
kdDebug(7020) << " KDE_SESSION_VERSION: " << version << endl; |
| 171 |
kdDebug(7020) << " Blacklisting mediamanager, medianotifier, kmilod, kwrited." << endl; |
| 170 |
blacklist << "mediamanager" << "medianotifier" << "kmilod" << "kwrited"; |
172 |
blacklist << "mediamanager" << "medianotifier" << "kmilod" << "kwrited"; |
| 171 |
} |
173 |
} |
| 172 |
for(KService::List::ConstIterator it = kdedModules.begin(); it != kdedModules.end(); ++it) |
174 |
for(KService::List::ConstIterator it = kdedModules.begin(); it != kdedModules.end(); ++it) |
|
Lines 193-203
Link Here
|
| 193 |
{ |
195 |
{ |
| 194 |
case 0: // always autoload |
196 |
case 0: // always autoload |
| 195 |
break; |
197 |
break; |
| 196 |
case 1: // autoload only in KDE |
198 |
case 1: // autoload only in TDE |
| 197 |
if( !kde_running ) |
199 |
if( !tde_running ) |
| 198 |
prevent_autoload = true; |
200 |
prevent_autoload = true; |
| 199 |
break; |
201 |
break; |
| 200 |
case 2: // autoload delayed, only in KDE |
202 |
case 2: // autoload delayed, only in TDE |
| 201 |
default: |
203 |
default: |
| 202 |
prevent_autoload = true; |
204 |
prevent_autoload = true; |
| 203 |
break; |
205 |
break; |
|
Lines 207-213
Link Here
|
| 207 |
} |
209 |
} |
| 208 |
else |
210 |
else |
| 209 |
{ |
211 |
{ |
| 210 |
if (autoload && kde_running) |
212 |
if (autoload && tde_running) |
| 211 |
loadModule(service, false); |
213 |
loadModule(service, false); |
| 212 |
} |
214 |
} |
| 213 |
bool dontLoad = false; |
215 |
bool dontLoad = false; |
|
Lines 918-924
Link Here
|
| 918 |
|
920 |
|
| 919 |
if (!KUniqueApplication::start()) |
921 |
if (!KUniqueApplication::start()) |
| 920 |
{ |
922 |
{ |
| 921 |
fprintf(stderr, "[kded] KDE Daemon (kded) already running.\n"); |
923 |
fprintf(stderr, "[kded] Daemon (kded) is already running.\n"); |
| 922 |
exit(0); |
924 |
exit(0); |
| 923 |
} |
925 |
} |
| 924 |
|
926 |
|