diff --git a/Plugins/Flow.Launcher.Plugin.Program/Programs/Win32.cs b/Plugins/Flow.Launcher.Plugin.Program/Programs/Win32.cs index f6dddb7ba..3e32502ed 100644 --- a/Plugins/Flow.Launcher.Plugin.Program/Programs/Win32.cs +++ b/Plugins/Flow.Launcher.Plugin.Program/Programs/Win32.cs @@ -301,25 +301,19 @@ namespace Flow.Launcher.Plugin.Program.Programs var parser = new FileIniDataParser(); var data = parser.ReadFile(path); var urlSection = data["InternetShortcut"]; - if (urlSection != null) + var url = urlSection?["URL"]; + foreach(var protocol in Main._settings.GetProtocols()) { - var url = urlSection["URL"]; - if(url != null) + if(url.StartsWith(protocol)) { - foreach(var protocol in Main._settings.GetProtocols()) - { - if(url.StartsWith(protocol)) - { - program.LnkResolvedPath = url; - program.Valid = true; - break; - } - } + program.LnkResolvedPath = url; + program.Valid = true; + break; } } - var iconPath = urlSection["IconFile"]; - if (Path.GetExtension(iconPath).Equals(".ico", StringComparison.OrdinalIgnoreCase)) + var iconPath = urlSection?["IconFile"]; + if (iconPath != null && Path.GetExtension(iconPath).Equals(".ico", StringComparison.OrdinalIgnoreCase)) { program.IcoPath = iconPath; }