From 5915f4445252a5a370be55ecbd2c8a47cfa68963 Mon Sep 17 00:00:00 2001 From: fangyidong Date: Sun, 1 Feb 2009 04:48:01 +0000 Subject: [PATCH] escape controls --- lib/json_simple-1.1.jar | Bin 16082 -> 16046 bytes src/org/json/simple/JSONValue.java | 12 ++---------- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/lib/json_simple-1.1.jar b/lib/json_simple-1.1.jar index a2b66071d0711777f4790914dc13e3457d9d5083..f395f41471a796876278a6c5667ded4632546893 100644 GIT binary patch delta 1894 zcmZ8ic|6qVA2;J@(70j@LybG*Y8vKe4m7#5%_`(5ga})5ji0k|?Qh-UYX`ZHh{8~^ zIf^o@bKOUUVbmyzS}W4AGvD1me!I`>^?ly&&-?v(zR&a5=RFbE7zekv6BH5?;IEUO zlpMIaAcY5pX@dN!=LiTKbv^)M5FI|=GlpCj0?9*R1wqi6hE;(=jHn#w004YOg4arn z*zZ)c78VfrC+pi~U_lw>&{Z_cgS^VBia4z`=#Ruq0cD%?DRb2@>X6;O{jX5^j=t>_2 zzf)&?cbTAcCOD7Fjp7z0UWdyeFNPE+h{zR>*|QiJCFiZgL=|BJMkT^P+t@XY*m<{m z>R5)faFwENhBk6`EIB1jw6scBWZoyY&2w3vWw=)0E$y6RpX2zxJ}ocpzSwz7E0#9A z7Td6L(E4#-X%k&1(!9qtVMTd7a%xfAUMg@?{^(n3h8xt<7WZ?_L!&8NK)qpzJW@5s5N@e$H=YZ`I0QMy2WfqHIuk=rZf*LG5y_lT^PBjz>4s3n zM;kXX!+rbuiig9=nGMi&nY#B|mx$7mwN(xS1#%HE+aC$sr&;wrqzIU!p6bgpP9=9- zDu+ssZAVG0SAS*UnhO%!!Y_13B@DjYV}7}+yubA}cf=%hICyv>M0#^AGM^O_S@w*% z)@;BywxL1Cb`{on>1eP$4QU!O*r94NDnI}APVe#Bh%&sxc8z{4n%OrrLYsRknn##Z zASsF;ISz=Ku6Ab&4a#qrjNfly%Up}qWe#>gpp~xuTDy56WwsTFKu-FQYU91Kh z73hcU^)6r`(~Z+*#fvOmdgPQnIVg`y$WW_(x)XK!9^*QW(ad0K{&unP@zj8grw9G{ z;b3xcRSwsgL$lcr>(qS#YyWlBvNB9MZR-)@wDpQlEJu&qSBB2^Z=ZcDXTM?bZo=^= zvSh5&uj@~yqozylw9LZ?Xk)(*MwcZz4wBWzawWSPb}WwK0b3nY40D<8?(y-gzBzZB zPF@dk&q?|yukOd{-w^$27N%#dIXo3~{_IlM>P?H42S%d{+O3E78(u4I7_F`ecjBkM z+)#vZkWOW9@RNv{@y(0kyV?nC1BrpF_diVP`s=^>1s*a)E8ooMSg`tb>`2GLkJq;F zV$m5{1X;fri zw1EH0N06{3lIhy68QRrK#+Bj=#}jk&q`!rKmKcHghaK&jevjH#xNC$d;@bO#e-?{7 z{PMmEywe?<6w%^5T=4-jSpBLjK_B8b@be-nxVgSMY+9-Q7B0X@GSq{Gidvr@nxVJi zj%ua2aU^DTyBX~YyM%#ul8X+zecAyz|0eYrx(T(~o-mWyhS*|kwWLSRCv^qoe^o#C zOVVR00~SP2hY;{6U2}!z9-rdximqX~j#e1y)CFvp_w|&|`e~?S9!_5Ekb(zNJxgjG zntjDv{d_BKU05SOYiXf+;D>#>=)IxYa$g?2c;dG3zuB{1ma6NBsY%K(**h3cO&(l| zR8YCO){U6F;6CR1eL)54&k(>?Z_k_q~WPLqg00mlP7fQcfGmO`KN|oR!3?Yq5Dos; zQGg>+0p!6%5{QjNTM$1HPl0Gn`U~?&c3{0ivj2BJoFJQ_`H}JOm;Y5u32aa}hk!D& z2G~?i!VNKa&J*6J_kSm<6OgiinTaw$la&FCNe97Z6L+cx6e1uX0~HX^`A72}znK8O zD8>W@wLtJLPyk90Qj+#|5U8vmKNn&ATm;5=b_$wjD*^{h!BhmaO;ONZHSmO|sXX|T TD4tY>2c;%cWs&m){%wB(s*Wud delta 1943 zcmZXVc{J2}AIArSX*8BGizN}VjNCRc24k1KnIcOGO@x_CSt^RT$k03pzniU+bu10h zSPvpgiW{0idA{d-&+GH~d_T)M-#^};npk!$jNl{&hJpkq zx!ODvrYT0-g#lem;5}Crg0Cq602R>_kcAbA0}G87aYZrV%P6Eo7`V9yDSQC{*qHQg zD(=~&yaibt1TvHYcn~G(S$|4Yz%L|>NL^&PTWTe?`dum=?e@TZ zy_lA>_LNTbPaHtbH1`k-O_13yxZMJTy#2K7?80q)?vl=zqb((g!m zk9G2|k7r!#4IFJp=r9^CCV2&4ZtE9t#A#wtQ@zfTda}EBB^_&h({*dS#8q>@{4is# zG+_h!3j}fZpn7_2A*;lvc#i>ip6@b0_ImnvWn>}MWPQ2z9^OA~11Q6DU*X9kJ0HCn z8e?CvgPdhY*xu&6#h~Y?c;tGIUl3ODZczYaOEt>)xqTR#6Cj`TIarHf5>Q; zb1&Ry@OIJRaISQ|?;&Iw=7x3O{bn7)F(cKnjKor(?OHrfxY$Rb}=irEf!NlJWTgD==ZY%L-VGcDdbD@x%UczFTAInaC4&}e^qV5 z!o~6j_6Cu|O73fT$v8EFL5a-Ctn>t#@wLoO^&cXT6mJz(K9nEVwR|SDOCE>sZccyP ztR=fp88Ft(%ozu<6jlYhfZ_YHCVYnU8LD z!dM$)Lbl0NavL1|USj)^RPBThIGs9e=gOtz+l1l{u|wSs&@<+fme;H>nS2^z%65ln z<=*ukF;Xwt4it(N_^R=9U@O}z>iybey=$#UP4=T$ep*^N;k*Q(CneYoeH0Jkr#^2~y5pp(3(UMN0elBxZN8?xhCY~5xi#t(av8tkBw9Qv* zYaqxsf~*vF*4Ml8@VDBT`|OV+$O7KbNX{*5r-6cz>E7@UOVC6mqR~_??z+jH?Rtt! z+9~q+y*NXC<X;_krB+yW;X{jGuZ(gPrWiJhFligixZU1cHrEwaZF^?xjJe)^NG4q`7cPPLmoe) zt&AQ#VN_Qc16?wj&wnA&I7@k{H*_X@_VoI9Bf`aO*;W43{6j@BGd z(^~zZ8;0JI7XL}?fi?MKLis+3m=?;n1kzqaXb@4BP@#S&OC}!N5CwrS5`Y|1h1ISm zClq|v8;wc0FtgUMNmSS)#MnTvIe;Q#bD_^SKK$RfGH?W^D72k%CPLD24nmIM9EH>{ z`I}cvoP_=}6T<&)kA0?px4mGhEGmfr{7{N|1Sb(ugqUD;K?JJ{S7>s4AbZ#A+P(U_ z_n%W5ZwhpnnhHDb?3Sw_flgBu0Bg2SO;85R@ku}SfIx`~AdvPyHM=a04?^wE(FGow z?G@HC&6Gu%YJ$-~yBgyE#%D#^n>>PpK=-sjAoZX6EC2`aM^y#0cJ5xYxVHP9&R`Ho R^QW9X;40oof@&-X{s#>LR+j(( diff --git a/src/org/json/simple/JSONValue.java b/src/org/json/simple/JSONValue.java index 18bde72..aba3c40 100644 --- a/src/org/json/simple/JSONValue.java +++ b/src/org/json/simple/JSONValue.java @@ -252,17 +252,9 @@ public class JSONValue { case '/': sb.append("\\/"); break; - case '\u0085': // Next Line - sb.append("\\u0085"); - break; - case '\u2028': // Line Separator - sb.append("\\u2028"); - break; - case '\u2029': // Paragraph Separator - sb.append("\\u2029"); - break; default: - if(ch>='\u0000' && ch<='\u001F'){ + //Reference: http://www.unicode.org/versions/Unicode5.1.0/ + if((ch>='\u0000' && ch<='\u001F') || (ch>='\u007F' && ch<='\u009F') || (ch>='\u2000' && ch<='\u20FF')){ String ss=Integer.toHexString(ch); sb.append("\\u"); for(int k=0;k<4-ss.length();k++){