--- vcl/unx/source/plugadapt/salplug.cxx	2005-06-21 09:49:05.563280678 +0200
+++ vcl/unx/source/plugadapt/salplug.cxx	2005-06-21 10:19:57.119254553 +0200
@@ -464,9 +464,11 @@ SalInstance *CreateSalInstance()
     if( pUsePlugin && *pUsePlugin )
         pInst = tryInstance( OUString::createFromAscii( pUsePlugin ) );
 
-    // fallback to gen
-    if( ! pInst )
-        pInst = tryInstance( OUString( RTL_CONSTASCII_USTRINGPARAM( "gen" ) ) );
+    // fallback, try everything
+    const char* pPlugin[] = { "gtk", "kde", "gen", 0 };
+
+    for ( int i = 0; !pInst && pPlugin[ i ]; ++i )
+        pInst = tryInstance( OUString::createFromAscii( pPlugin[ i ] ) );
 
     if( ! pInst )
     {
