This is an automated email from the ASF dual-hosted git repository.

gregdove pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/royale-asjs.git

commit 4df32cadec52776f5f33db408ff83cff79262265
Author: greg-dove <greg.d...@gmail.com>
AuthorDate: Tue Oct 22 14:10:51 2019 +1300

    Don't change the current XML settings for decoding value via 
SimpleXMLDecoder
---
 .../MXRoyale/src/main/royale/mx/rpc/http/AbstractOperation.as      | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git 
a/frameworks/projects/MXRoyale/src/main/royale/mx/rpc/http/AbstractOperation.as 
b/frameworks/projects/MXRoyale/src/main/royale/mx/rpc/http/AbstractOperation.as
index fc4926a..78fd56b 100644
--- 
a/frameworks/projects/MXRoyale/src/main/royale/mx/rpc/http/AbstractOperation.as
+++ 
b/frameworks/projects/MXRoyale/src/main/royale/mx/rpc/http/AbstractOperation.as
@@ -1039,16 +1039,21 @@ package mx.rpc.http
                                if (/*resultFormat == RESULT_FORMAT_XML || 
*/resultFormat == RESULT_FORMAT_OBJECT 
                                        || resultFormat == RESULT_FORMAT_ARRAY)
                                {
-                                       
+                                       var oldSettings:Object = XML.settings();
                                        try{
+                                               
XML.setSettings(XML.defaultSettings());
                                                var temp:XMLList = new 
XMLList(String(body));
                                                var tmp:XML = new 
XML('<root>'+temp.toXMLString()+'</root>');
                                        } catch(parseError:Error)
                                        {
+                                               //restore whatever settings 
were active
+                                               XML.setSettings(oldSettings);
                                                var fault:Fault = new 
Fault(ERROR_DECODING, parseError.message);
                                                
dispatchRpcEvent(FaultEvent.createEvent(fault, token, message));
                                                return false;
                                        }
+                                       //restore whatever settings were active
+                                       XML.setSettings(oldSettings);
                                        if (resultFormat == 
RESULT_FORMAT_OBJECT || resultFormat == RESULT_FORMAT_ARRAY)
                                        {
                                                var decoded:Object;

Reply via email to