diff --git a/bazaar/Updater/Updater.cpp b/bazaar/Updater/Updater.cpp index 93c066d35..6ddc706dc 100644 --- a/bazaar/Updater/Updater.cpp +++ b/bazaar/Updater/Updater.cpp @@ -27,6 +27,7 @@ String Updater::GetPlatformRoot(void) #endif } +/////////////////////////////////////////////////////////////////////////////////////// // constructor Updater::Updater() { @@ -207,10 +208,9 @@ bool Updater::START_Updater(String const &operation) if(chmod(~tempName, 0755) != 0) return true; - // note the -k to gksu -- it makes it preserve the environment - String params = "-k -u root \"" + tempName + "\""; - if(SysStart("gksu", params, environ) == -1) - return true; + // executes the file asking for password + return SysStartAdmin(tempName, "", environ); + #else // for windows, simply execute the file if(SysStart(tempName, "", environ) == -1) diff --git a/bazaar/Updater/Updater.upp b/bazaar/Updater/Updater.upp index a399322fd..da05293ec 100644 --- a/bazaar/Updater/Updater.upp +++ b/bazaar/Updater/Updater.upp @@ -2,8 +2,8 @@ description "Web Installer/Updater module\377"; uses CtrlLib, - SysExec, - Web; + Web, + SysExecGui; file Updater.iml, diff --git a/bazaar/Updater/init b/bazaar/Updater/init index 4a5258ced..9b3d8a121 100644 --- a/bazaar/Updater/init +++ b/bazaar/Updater/init @@ -1,6 +1,6 @@ #ifndef _Updater_icpp_init_stub #define _Updater_icpp_init_stub #include "CtrlLib/init" -#include "SysExec/init" #include "Web/init" +#include "SysExecGui/init" #endif