Sophie

Sophie

distrib > Mandriva > 2006.0 > i586 > media > main-src > by-pkgid > a6bc312ce50b5c8d0c51736e58ac32bc > files > 383

kdebase-3.4.2-55mdk.src.rpm

--- kdebase-3.4.2/kdesktop/init.cc--	2005-09-15 17:05:01.000000000 +0200
+++ kdebase-3.4.2/kdesktop/init.cc	2005-09-15 17:03:20.000000000 +0200
@@ -201,13 +201,29 @@ void testLocalInstallation()
     testDir( KGlobalSettings::autostartPath() );
     // we force the copying in case of a new release, to install new translations....
     copyDirectoryFile("directory.autostart", KGlobalSettings::autostartPath(), newRelease);
-
+	KConfig *config = kapp->config();
+	config->setGroup("Mandriva");
     if (emptyDesktop)
 	{
 		copyDesktopLinks();
 		if( QFileInfo("/dev/dsp").exists())
 		  KApplication::startServiceByDesktopName("kmix", QStringList(),
 							  0, 0, 0, "", true);
+		config->writeEntry("desktopDeviceCopied",true);
+		config->sync();
+	}
+	else
+	{
+		QString desktopPath = realDesktopPath();
+		const QString deviceElement = desktopPath + "/device.desktop";
+		const bool deviceDesktopExists = QFile::exists( deviceElement );
+		if( !deviceDesktopExists 
+			&& !config->readBoolEntry("desktopDeviceCopied",false))
+		{
+			copyFile( locate( "data", "kdesktop/DesktopLinks/device.desktop" ), desktopPath );
+			config->writeEntry("desktopDeviceCopied",true);
+			config->sync();
+		}
 	}
 
     // Take care of creating or updating trash.desktop