linterna-magica-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linterna-magica-commit] [174] Fixes exception in base64 encoding and de


From: Ivaylo Valkov
Subject: [linterna-magica-commit] [174] Fixes exception in base64 encoding and decoding of string objects made from JSONP data containing illegal XML data .Fixes some clips in Blip.tv.
Date: Fri, 05 Aug 2011 09:15:17 +0000

Revision: 174
          
http://svn.sv.gnu.org/viewvc/?view=rev&root=linterna-magica&revision=174
Author:   valkov
Date:     2011-08-05 09:15:16 +0000 (Fri, 05 Aug 2011)
Log Message:
-----------
Fixes exception in base64 encoding and decoding of string objects made from 
JSONP data containing illegal XML data.Fixes some clips in Blip.tv.

Modified Paths:
--------------
    trunk/src/lm_jsonp_requests.js

Modified: trunk/src/lm_jsonp_requests.js
===================================================================
--- trunk/src/lm_jsonp_requests.js      2011-08-01 19:05:32 UTC (rev 173)
+++ trunk/src/lm_jsonp_requests.js      2011-08-05 09:15:16 UTC (rev 174)
@@ -82,8 +82,14 @@
        {
            var hash = /#/i.test(receiver_location) ? "" : "#";
 
+           // Stringify
+           var data = json_parser.json_to_string(request_data);
+
+           // Protect against illegal XML characters 
+           data = encodeURI(data);
+
            // Pack the data
-           var packed_data =btoa(json_parser.json_to_string(request_data));
+           var packed_data = btoa(data);
 
            // If packed_data is null, native JSON is missing. At least
            // updates should have backup. For updates the JSON object
@@ -158,7 +164,7 @@
        jsonp_data = jsonp_data[1].split("lm_request_data=")[1].split("&")[0];
 
        // Unpack
-       jsonp_data = this.string_to_json(atob(jsonp_data));
+       jsonp_data = this.string_to_json(decodeURI(atob(jsonp_data)));
 
        data.parser_function.apply(this, [jsonp_data, data.user_data]);
     }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]