Blob Blame History Raw
diff -urNr boinc-client_release-7.16-7.16.1-orig/clientgui/AdvancedFrame.cpp boinc-client_release-7.16-7.16.1/clientgui/AdvancedFrame.cpp
--- boinc-client_release-7.16-7.16.1-orig/clientgui/AdvancedFrame.cpp	2019-07-31 00:46:06.000000000 +0200
+++ boinc-client_release-7.16-7.16.1/clientgui/AdvancedFrame.cpp	2019-08-06 12:42:34.676923030 +0200
@@ -362,7 +362,18 @@
         strMenuName,
         strMenuDescription
     );
-
+/* 
+   On Linux distributions, BOINC runs as a service. Users must not be able to
+   try stopping the service from exit menu entry.
+   This leads to unexpected behaviour, like:
+   - service being killed;
+   - service still running.
+   Moreover, the Manager will no longer be able to connect to the client, unless
+   the user connects to 127.0.0.1. Then if the Manager is connected to the client
+   by using 127.0.0.1 address, the "Exit from BOINC Manager" entry will not
+   show any frame asking the user if he wants to stop the service.
+*/
+#ifndef __WXGTK__
     strMenuDescription.Printf(
         _("Exit %s"), 
         pSkinAdvanced->GetApplicationName().c_str()
@@ -383,6 +394,7 @@
         strMenuName,
         strMenuDescription
     );
+#endif
 
 #ifdef __WXMAC__
     // wxWidgets actually puts this in the BOINCManager menu
diff -urNr boinc-client_release-7.16-7.16.1-orig/clientgui/sg_BoincSimpleFrame.cpp boinc-client_release-7.16-7.16.1/clientgui/sg_BoincSimpleFrame.cpp
--- boinc-client_release-7.16-7.16.1-orig/clientgui/sg_BoincSimpleFrame.cpp	2019-07-31 00:46:06.000000000 +0200
+++ boinc-client_release-7.16-7.16.1/clientgui/sg_BoincSimpleFrame.cpp	2019-08-06 12:47:49.361021118 +0200
@@ -154,6 +154,18 @@
         strMenuDescription
     );
 
+/* 
+   On Linux distributions, BOINC runs as a service. Users must not be able to
+   try stopping the service from exit menu entry.
+   This leads to unexpected behaviour, like:
+   - service being killed;
+   - service still running.
+   Moreover, the Manager will no longer be able to connect to the client, unless
+   the user connects to 127.0.0.1. Then if the Manager is connected to the client
+   by using 127.0.0.1 address, the "Exit from BOINC Manager" entry will not
+   show any frame asking the user if he wants to stop the service.
+*/
+#ifndef __WXGTK_
     strMenuDescription.Printf(
         _("Exit %s"),
         pSkinAdvanced->GetApplicationName().c_str()
@@ -169,6 +181,7 @@
         strMenuName,
         strMenuDescription
     );
+#endif
 
 #ifdef __WXMAC__
     // wxWidgets actually puts this in the BOINCManager menu