diff --git a/uppsrc/Core/Util.cpp b/uppsrc/Core/Util.cpp index 6bcc5c88b..fe38320e8 100644 --- a/uppsrc/Core/Util.cpp +++ b/uppsrc/Core/Util.cpp @@ -387,7 +387,7 @@ String GetIniKey(const char *id, const String& def) { static VectorMap key; if(!s_ini_loaded) { s_ini_loaded = true; - key = LoadIniFile(sIniFile ? sIniFile : ~ConfigFile("q.ini")); + key = LoadIniFile(*sIniFile ? sIniFile : ~ConfigFile("q.ini")); #ifdef PLATFORM_WIN32 if(key.GetCount() == 0) key = LoadIniFile("C:\\Q.INI"); diff --git a/uppsrc/CtrlLib/Update.cpp b/uppsrc/CtrlLib/Update.cpp index 82f697414..d7a0fee44 100644 --- a/uppsrc/CtrlLib/Update.cpp +++ b/uppsrc/CtrlLib/Update.cpp @@ -114,19 +114,21 @@ void SelfUpdate() { char dst[512]; UpdateFile("UPDATER.EXE"); ::GetModuleFileName(NULL, dst, 512); - String src = GetIniKey("UPDATE"); - if(src.IsEmpty()) return; - src = AppendFileName(src, GetFileNamePos(dst)); - int dummy; - if(NoUpdate(dst, src, dummy)) return; - String commandline; - const Vector& cmd = CommandLine(); - for(int i = 0; i < cmd.GetCount(); i++) { - commandline += ' '; - commandline += FixArg(cmd[i]); + { + String src = GetIniKey("UPDATE"); + if(src.IsEmpty()) return; + src = AppendFileName(src, GetFileNamePos(dst)); + int dummy; + if(NoUpdate(dst, src, dummy)) return; + String commandline; + const Vector& cmd = CommandLine(); + for(int i = 0; i < cmd.GetCount(); i++) { + commandline += ' '; + commandline += FixArg(cmd[i]); + } + if(WinExec(GetExeDirFile("updater.exe") + " " + GetFileName(dst) + commandline, SW_SHOWNORMAL) <= 31) + return; } - if(WinExec(GetExeDirFile("updater.exe") + " " + GetFileName(dst) + commandline, SW_SHOWNORMAL) <= 31) - return; exit(0); }