From 6779a02cf95d176ceeed1778daa32cd4c2094aac Mon Sep 17 00:00:00 2001 From: Sean Kaim Date: Tue, 21 Jun 2016 15:30:07 -0400 Subject: [PATCH] MR-872: Prevent outofbounds ex parsing args --- CHANGELOG.TXT | 1 + mRemoteV1/Tools/ArgumentParser.cs | 6 +----- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.TXT b/CHANGELOG.TXT index b912cad8e..affb067ce 100644 --- a/CHANGELOG.TXT +++ b/CHANGELOG.TXT @@ -42,6 +42,7 @@ Fixes: ------ + MR-872: Crash in External Tools when arguments aren't quoted MR-854: crashes when right clicking on connection tab MR-852: Option "Allow only a single instance of the application" non-functional MR-836: Trying to delete a folder of connections only deletes 2 connections at a time diff --git a/mRemoteV1/Tools/ArgumentParser.cs b/mRemoteV1/Tools/ArgumentParser.cs index d79e5be47..d0dff544c 100644 --- a/mRemoteV1/Tools/ArgumentParser.cs +++ b/mRemoteV1/Tools/ArgumentParser.cs @@ -124,11 +124,7 @@ namespace mRemoteNG.Tools if (haveReplacement) { - char trailing = '\0'; - if (tokenEnd + 2 <= input.Length) - trailing = input.Substring(tokenEnd + 1, 1).ToCharArray()[0]; - else - trailing = string.Empty.ToCharArray()[0]; + var trailing = tokenEnd + 2 <= input.Length ? input.Substring(tokenEnd + 1, 1).ToCharArray()[0] : '\0'; if (escape == EscapeType.All) {