From 2d79eb2c0ec87b45b5e09e48d67e65322b6d7154 Mon Sep 17 00:00:00 2001 From: Mark Vejvoda Date: Fri, 28 Dec 2012 14:52:24 +0000 Subject: [PATCH] - attempt to fix stupid VC++ issue with special characters and certain locales --- .../platform/common/platform_common.cpp | 51 ++++++++++++------- 1 file changed, 34 insertions(+), 17 deletions(-) diff --git a/source/shared_lib/sources/platform/common/platform_common.cpp b/source/shared_lib/sources/platform/common/platform_common.cpp index 9c842957..5e12bab1 100644 --- a/source/shared_lib/sources/platform/common/platform_common.cpp +++ b/source/shared_lib/sources/platform/common/platform_common.cpp @@ -1803,11 +1803,16 @@ string replaceAllHTMLEntities(string& context) { replaceAll(context,"&","&"); replaceAll(context,"<","<"); replaceAll(context,">",">"); - replaceAll(context,"Œ","Œ"); - replaceAll(context,"œ","œ"); - replaceAll(context,"Š","Š"); - replaceAll(context,"š","š"); - replaceAll(context,"Ÿ","Ÿ"); + //replaceAll(context,"Œ","Œ"); + replaceAll(context,"Œ","\xC5\x92\0"); + //replaceAll(context,"œ","œ"); + replaceAll(context,"œ","\xC5\x93\0"); + //replaceAll(context,"Š","Š"); + replaceAll(context,"Š","\xC5\xA0\0"); + //replaceAll(context,"š","š"); + replaceAll(context,"š","\xC5\xA1\0"); + //replaceAll(context,"Ÿ","Ÿ"); + replaceAll(context,"Ÿ","\xC5\xB8\0"); replaceAll(context,"ˆ","ˆ"); replaceAll(context,"˜","˜"); replaceAll(context," "," "); @@ -1815,18 +1820,30 @@ string replaceAllHTMLEntities(string& context) { replaceAll(context," "," "); replaceAll(context,"–","-"); replaceAll(context,"—","-"); - replaceAll(context,"‘","‘"); - replaceAll(context,"’","’"); - replaceAll(context,"‚","‚"); - replaceAll(context,"“","“"); - replaceAll(context,"”","”"); - replaceAll(context,"„","„"); - replaceAll(context,"†","†"); - replaceAll(context,"‡","‡"); - replaceAll(context,"‰","‰"); - replaceAll(context,"‹","‹"); - replaceAll(context,"›","›"); - replaceAll(context,"€","€"); + //replaceAll(context,"‘","‘"); + replaceAll(context,"‘","\xE2\x80\x98\0"); + //replaceAll(context,"’","’"); + replaceAll(context,"’","\xE2\x80\x99\0"); + //replaceAll(context,"‚","‚"); + replaceAll(context,"‚","\xE2\x80\x9A\0"); + //replaceAll(context,"“","“"); + replaceAll(context,"“","\xE2\x80\x9C\0"); + //replaceAll(context,"”","”"); + replaceAll(context,"”","\xE2\x80\x9D\0"); + //replaceAll(context,"„","„"); + replaceAll(context,"„","\xE2\x80\x9E\0"); + //replaceAll(context,"†","†"); + replaceAll(context,"†","\xE2\x80\xA0\0"); + //replaceAll(context,"‡","‡"); + replaceAll(context,"‡","\xE2\x80\xA1\0"); + //replaceAll(context,"‰","‰"); + replaceAll(context,"‰","\xE2\x80\xB0\0"); + //replaceAll(context,"‹","‹"); + replaceAll(context,"‹","\xE2\x80\xB9\0"); + //replaceAll(context,"›","›"); + replaceAll(context,"›","\xE2\x80\xBA\0"); + //replaceAll(context,"€","€"); + replaceAll(context,"€","\xE2\x82\xAC\0"); return context; }