From c101742d2ca271fb6bbafc1e547614bffe32966d Mon Sep 17 00:00:00 2001 From: Jaex Date: Sun, 22 Nov 2015 03:31:48 +0200 Subject: [PATCH] Update personal path before debug helper init otherwise in portable build logger will save to incorrect folder --- ShareX.HelpersLib/Logger.cs | 2 +- ShareX/Program.cs | 70 ++++++++++++++++++++----------------- 2 files changed, 39 insertions(+), 33 deletions(-) diff --git a/ShareX.HelpersLib/Logger.cs b/ShareX.HelpersLib/Logger.cs index e77a6c89d..2ed8a2606 100644 --- a/ShareX.HelpersLib/Logger.cs +++ b/ShareX.HelpersLib/Logger.cs @@ -93,7 +93,7 @@ private void WriteLineInternal(string message) { if (!string.IsNullOrEmpty(LogFilePath)) { - File.AppendAllText(LogFilePath, message, Encoding.UTF8); + File.AppendAllText(LogFilePath, message + Environment.NewLine, Encoding.UTF8); } } catch (Exception e) diff --git a/ShareX/Program.cs b/ShareX/Program.cs index e80f545b5..dcf3c8958 100644 --- a/ShareX/Program.cs +++ b/ShareX/Program.cs @@ -243,8 +243,6 @@ public static string ScreenshotsFolder [STAThread] private static void Main(string[] args) { - DebugHelper.Init(LogsFilePath); - Application.ThreadException += Application_ThreadException; AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; @@ -259,6 +257,10 @@ private static void Main(string[] args) if (CheckAdminTasks()) return; // If ShareX opened just for be able to execute task as Admin + UpdatePersonalPath(); + + DebugHelper.Init(LogsFilePath); + IsMultiInstance = CLI.IsCommandExist("multi", "m"); if (IsMultiInstance || ApplicationInstanceManager.CreateSingleInstance(SingleInstanceCallback, args)) @@ -281,36 +283,6 @@ private static void Run() Application.SetCompatibleTextRenderingDefault(false); IsSilentRun = CLI.IsCommandExist("silent", "s"); - IsSandbox = CLI.IsCommandExist("sandbox"); - - if (!IsSandbox) - { - IsPortable = CLI.IsCommandExist("portable", "p"); - - if (IsPortable) - { - CustomPersonalPath = PortablePersonalFolder; - } - else - { - IsPortable = File.Exists(PortableCheckFilePath); - CheckPersonalPathConfig(); - } - - if (!Directory.Exists(PersonalFolder)) - { - try - { - Directory.CreateDirectory(PersonalFolder); - } - catch (Exception e) - { - MessageBox.Show(Resources.Program_Run_Unable_to_create_folder_ + string.Format(" \"{0}\"\r\n\r\n{1}", PersonalFolder, e), - "ShareX - " + Resources.Program_Run_Error, MessageBoxButtons.OK, MessageBoxIcon.Error); - CustomPersonalPath = ""; - } - } - } #if STEAM IsFirstTimeConfig = CLI.IsCommandExist("SteamConfig"); @@ -444,6 +416,40 @@ public static void BackupSettings() Helpers.BackupFileWeekly(HistoryFilePath, BackupFolder); } + private static void UpdatePersonalPath() + { + IsSandbox = CLI.IsCommandExist("sandbox"); + + if (!IsSandbox) + { + IsPortable = CLI.IsCommandExist("portable", "p"); + + if (IsPortable) + { + CustomPersonalPath = PortablePersonalFolder; + } + else + { + IsPortable = File.Exists(PortableCheckFilePath); + CheckPersonalPathConfig(); + } + + if (!Directory.Exists(PersonalFolder)) + { + try + { + Directory.CreateDirectory(PersonalFolder); + } + catch (Exception e) + { + MessageBox.Show(Resources.Program_Run_Unable_to_create_folder_ + string.Format(" \"{0}\"\r\n\r\n{1}", PersonalFolder, e), + "ShareX - " + Resources.Program_Run_Error, MessageBoxButtons.OK, MessageBoxIcon.Error); + CustomPersonalPath = ""; + } + } + } + } + private static void CheckPersonalPathConfig() { string customPersonalPath = ReadPersonalPathConfig();