From f1697313c0f8cc1ceb5a171fafe18f8bf4a6c2e9 Mon Sep 17 00:00:00 2001 From: qianlifeng Date: Sat, 19 Jul 2014 08:15:51 +0800 Subject: [PATCH] Fix potential issues in control panel. --- Wox.Plugin.SystemPlugins/ControlPanel/ControlPanel.cs | 4 ++-- .../ControlPanel/ControlPanelList.cs | 7 ++++++- Wox/Helper/FontHelper.cs | 9 +++++++-- 3 files changed, 15 insertions(+), 5 deletions(-) diff --git a/Wox.Plugin.SystemPlugins/ControlPanel/ControlPanel.cs b/Wox.Plugin.SystemPlugins/ControlPanel/ControlPanel.cs index 9f9f10d70a..e2af713e16 100644 --- a/Wox.Plugin.SystemPlugins/ControlPanel/ControlPanel.cs +++ b/Wox.Plugin.SystemPlugins/ControlPanel/ControlPanel.cs @@ -51,7 +51,7 @@ namespace Wox.Plugin.SystemPlugins.ControlPanel foreach (ControlPanelItem item in controlPanelItems) { - if (!File.Exists(iconFolder + item.LocalizedString + fileType)) + if (!File.Exists(iconFolder + item.LocalizedString + fileType) && item.Icon != null) { item.Icon.ToBitmap().Save(iconFolder + item.LocalizedString + fileType); } @@ -101,7 +101,7 @@ namespace Wox.Plugin.SystemPlugins.ControlPanel if (item.InfoTip != null && (item.Score = matcher.Evaluate(item.InfoTip).Score) > 0) return true; if (item.LocalizedString != null && (item.Score = matcher.Evaluate(item.LocalizedString.Unidecode()).Score) > 0) return true; - + return false; } } diff --git a/Wox.Plugin.SystemPlugins/ControlPanel/ControlPanelList.cs b/Wox.Plugin.SystemPlugins/ControlPanel/ControlPanelList.cs index bfa7a38ef1..acbb4b37e6 100644 --- a/Wox.Plugin.SystemPlugins/ControlPanel/ControlPanelList.cs +++ b/Wox.Plugin.SystemPlugins/ControlPanel/ControlPanelList.cs @@ -298,7 +298,12 @@ namespace Wox.Plugin.SystemPlugins.ControlPanel args = args.Remove(x); } - return Convert.ToUInt32(args); + uint size; + if (uint.TryParse(args, out size)) + { + return size; + } + return 0; } private static bool IS_INTRESOURCE(IntPtr value) diff --git a/Wox/Helper/FontHelper.cs b/Wox/Helper/FontHelper.cs index 4aa340bb61..cdc30f1fb9 100644 --- a/Wox/Helper/FontHelper.cs +++ b/Wox/Helper/FontHelper.cs @@ -13,6 +13,8 @@ namespace Wox.Helper static FontWeightConverter fontWeightConverter = new FontWeightConverter(); public static FontWeight GetFontWeightFromInvariantStringOrNormal(string value) { + if (value == null) return FontWeights.Normal; + try { return (FontWeight) fontWeightConverter.ConvertFromInvariantString(value); @@ -24,7 +26,9 @@ namespace Wox.Helper static FontStyleConverter fontStyleConverter = new FontStyleConverter(); public static FontStyle GetFontStyleFromInvariantStringOrNormal(string value) - { + { + if (value == null) return FontStyles.Normal; + try { return (FontStyle)fontStyleConverter.ConvertFromInvariantString(value); @@ -37,7 +41,8 @@ namespace Wox.Helper static FontStretchConverter fontStretchConverter = new FontStretchConverter(); public static FontStretch GetFontStretchFromInvariantStringOrNormal(string value) - { + { + if (value == null) return FontStretches.Normal; try { return (FontStretch)fontStretchConverter.ConvertFromInvariantString(value);