gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] [bug #46131] Gnash's `ExternalInterface.call()` did not c


From: Nutchanon Wetchasit
Subject: [Gnash-commit] [bug #46131] Gnash's `ExternalInterface.call()` did not correctly pass return value from JavaScript function
Date: Mon, 05 Oct 2015 14:08:34 +0000
User-agent: Mozilla/5.0 (X11; Linux i686; rv:25.5) Gecko/20150606 Firefox/31.9 PaleMoon/25.5.0

URL:
  <http://savannah.gnu.org/bugs/?46131>

                 Summary: Gnash's `ExternalInterface.call()` did not correctly
pass return value from JavaScript function
                 Project: Gnash - The GNU Flash player
            Submitted by: nachanon
            Submitted on: Mon 05 Oct 2015 09:08:33 PM ICT
                Category: core
                Severity: 3 - Normal
                 Release: master
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any

    _______________________________________________________

Details:

This is a spin-off from bug #46115 (host container message delimiter issue),
and bug #37223 (JavaScript-to-Flash ExternalInterface issue).

While I was testing on Gnash's container-player communication issue,
I have found that while Gnash's implementation of `ExternalInterface.call()`
calls JavaScript function with correct (String) arguments;
return value from JavaScript, however, *is passed to ActionScript as
`undefined`*.

I have created a minimal Flash file (Flash 8) using MTASC, to demonstrate
the issue by calling a simple JavaScript function from ActionScript side.

Following is a trace log from `flash2js.html` on browser with Adobe Flash
Player:

flash2js: calling JavaScript function "flash_call"...
flash2js: OK: JavaScript function correctly returned "Too"


You'd see that JavaScript is called and its String return value is passed
correctly.

Following is a trace log from  `flash2js.html` on browser with Gnash:

TRACE: flash2js: calling JavaScript function "flash_call"...
TRACE: flash2js: failed: expected return value "Too", got "undefined"


You'd see that JavaScript's return value is passed to ActionScript code as
`undefined`.

Test Flash file, build scripts, debug logs, plugin-player communication logs,
and screenshots are attached as `flash2js.zip`.

Note: This problem is likely to be originated from the player itself
(not libgnashplugin), as the return value string is correctly shown up
in container-to-player communication log.

Gnash: 0.8.11dev (git f0f66ce 23-Sep-2015) NPAPI
Flash Player: 11.2.202.491 NPAPI binary
Browser: Iceweasel 10.0.12 (debian)
System: Debian GNU/Linux 7.0 Wheezy i386



    _______________________________________________________

File Attachments:


-------------------------------------------------------
Date: Mon 05 Oct 2015 09:08:33 PM ICT  Name: flash2js.zip  Size: 6kB   By:
nachanon
Test Flash file, source code, logs, and screenshots
<http://savannah.gnu.org/bugs/download.php?file_id=35074>

    _______________________________________________________

Reply to this item at:

  <http://savannah.gnu.org/bugs/?46131>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.gnu.org/




reply via email to

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