From 0f4378913ffbe4e91ea9ee199a1c51c299e45875 Mon Sep 17 00:00:00 2001 From: John Date: Wed, 14 Sep 2016 15:23:08 +0000 Subject: [PATCH] The logic that handles backslashes in RO return values did not account for the Unicode hard space character. --- PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs b/PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs index 3f76a867..26780259 100644 --- a/PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs +++ b/PROMS/VEPROMS.CSLA.Library/Config/ROFSTLookup.cs @@ -226,7 +226,9 @@ namespace VEPROMS.CSLA.Library private string ReplaceUnicode(string s2, bool DoCaret) { string orig = s2; + s2 = s2.Replace( @"\u160?",""); // convert hard spaces bug fix: B2016-206 s2 = s2.Replace(@"\", @"\u9586?"); // convert backslashes to a backslash symbol + s2 = s2.Replace("", @"\u160?"); // convert hard spaces bug fix: B2016-206 s2 = s2.Replace("`", @"\'b0"); // convert backquote to degree - left over from DOS days. s2 = s2.Replace("\xf8", @"\'b0"); // convert \xf8 to degree. s2 = s2.Replace("\xa0", @"\u160?"); // hardspace @@ -886,7 +888,7 @@ namespace VEPROMS.CSLA.Library myHdr.myDbs[i].dbiTitle = Encoding.Default.GetString(ab, iPtr, StringLength(ab, iPtr)); iPtr = BitConverter.ToInt32(ab, offset + 26) + hdrOffset + 6; myHdr.myDbs[i].dbiAP = Encoding.Default.GetString(ab, iPtr, StringLength(ab, iPtr)); - dicRoDBs.Add(string.Format("{0:X4}",TableID), myHdr.myDbs[i].dbiTitle); + dicRoDBs.Add(string.Format("{0:X4}", TableID), myHdr.myDbs[i].dbiTitle); } } #endregion