@@ -897,6 +897,7 @@ private void writeLinuxDesktopFile(File dest, String appTitle, File appIcon, Fil
897897 private void addLinuxDesktopFile (File desktopDir , String filePrefix , String title , File pngIcon , File launcherFile ) throws IOException {
898898 if (desktopDir .exists ()) {
899899 File desktopFile = new File (desktopDir , filePrefix +".desktop" );
900+ File runAsAdminFile = new File (desktopDir , filePrefix +" (Run as Admin).desktop" );
900901 while (desktopFile .exists ()) {
901902 int index = 2 ;
902903 String baseName = desktopFile .getName ();
@@ -917,7 +918,8 @@ private void addLinuxDesktopFile(File desktopDir, String filePrefix, String titl
917918 writeLinuxDesktopFile (desktopFile , title , pngIcon , launcherFile , true );
918919 } else if (appInfo ().isAllowRunAsAdmin ()) {
919920 writeLinuxDesktopFile (desktopFile , title , pngIcon , launcherFile , false );
920- writeLinuxDesktopFile (desktopFile , title + " (Run as Admin)" , pngIcon , launcherFile , true );
921+ writeLinuxDesktopFile (runAsAdminFile , title + " (Run as Admin)" , pngIcon , launcherFile , true );
922+ runAsAdminFile .setExecutable (true );
921923 } else {
922924 writeLinuxDesktopFile (desktopFile , title , pngIcon , launcherFile , false );
923925 }
0 commit comments