bug-librejs
[Top][All Lists]
Advanced

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

Re: [Bug-librejs] Possible issues with dynamically created base64 encode


From: Ivaylo Valkov
Subject: Re: [Bug-librejs] Possible issues with dynamically created base64 encoded free software JavaScript
Date: Sat, 08 Sep 2012 09:38:53 +0300

В 16:41 -0400 на 21.08.2012 (вт), Loic J. Duros написа:
> Hi:

Hi again,


> On 08/04/2012 02:27 PM, Ivaylo Valkov wrote:
> > Hello,
> >
> > I'm trying to make Linterna Mágica [1] work with LibreJS. Linterna
> > Mágica is a userscript that plays flash video clips without flash
> > plugin. It is of course written in JavaScript.
> [...]
>
> > I've made some changes to the code in my working copy and at least
> > theoretically Linterna Mágica should work with LibreJS, but it
> > doesn't.  It seems the problem comes from the dynamically created
> > script tag with base64 encoded data.
> 

> 
> Yes, the problem is the dataURI, I assume. 

Thank you for the confirmation.


>  The problem I assume is that a dataURI is neither, so I'll check and see how 
> we could get a fix for that.

It was reported to me [1], and I can confirm that LibreJS 4.8 works with
Linterna Mágica 0.0.12-1. Both at the latest versions. Which I find
strange. 

The dynamically created script that is injected into the page is
instantly removed from the DOM:


$ grep -n "var head" -A4 -B2 src/lm_inject_script_in_page.js
47-      var inject_data = function()
48-      {
49:          var head = document.getElementsByTagName("head")[0];
50-          head.appendChild(script);
51-          head.removeChild(script);
52-      }
53-

It seams this prevents LibteJS to detect and parse the script, but the
browser executes it. When the removeChild statement is commented the
script is blocked as it should be.

[1] http://identi.ca/conversation/95807438#notice-96531804

Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

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