patchGnash - The GNU Flash player - Patches: patch #9264, Patch to implement player...

 
 

You are not allowed to post comments on this tracker with your current authentication level.

patch #9264: Patch to implement player FSCommand call via `MovieClip.getURL()`

Submitter:  Nutchanon Wetchasit <nachanon>
Submitted:  Sun 19 Feb 2017 06:03:00 AM UTC
   
 
Category:  ActionScript Priority:  5 - Normal
Status:  Done Privacy:  Public
Assigned to:  strk Open/Closed:  Closed

Wed 22 Feb 2017 06:36:04 PM UTC, comment #3: 

Second patch pushed with commit:0b6fb32a7e0fdedc76dd5a6d9bbf752b7cca8c45

Thank you !

Sandro Santilli <strk>
Group Member
Wed 22 Feb 2017 05:54:58 PM UTC, comment #2: 

Patch 2 of 2.
See the attached `0002_movieclip-geturl-add-fscommand-tests.patch`.

This patch adds following tests to Gnash testsuite:

  • MakeSWF-based test SWF, issuing non-predefined FSCommand from timeline ActionScript via `MovieClip.getURL()`, with various kind of command name and parameters.
  • Automatic shell-based container emulation tests (with external termination) for checking SWF's FSCommand execution.
  • Semi-automatic JavaScript-based tests in HTML container for checking SWF's FSCommand execution in real browser environment and proprietary player.


These checks (both shell-based and JavaScript-based ones) run on SWF version 5 to 8, since `MovieClip.getURL()` is available on Flash 5 onward.

Notes:

  • The test contain XFAILED cases on...
    • `undefined` FSCommand parameter passing: Flash passes "", but Gnash passes "undefined".
    • "<>" string FSCommand parameter passing: Flash correctly passes "<>", but libgnashplugin won't even call the function (fault of Gnash-libgnashplugin protocol).
  • I used non-predefined (i.e. external) FSCommand, as it is easier to check the FSCommand call and parameter from container's side; in contrast to predefined/internal ones, which likely require a full-blown movierunner-based test to verify result.
  • I created a new test instead of integrating these checks into the existing `extcomm` test, to avoid giving a false impression that the associated HTML test runner is able to run ExternalInterface checks.
  • For the record: the `fscommand()` directive is available since Flash 3.


Gnash: 0.8.11dev (patched against git e9eb84e 19-Feb-2017)
Flash Player: 11.0.202.491 (NPAPI binary)
Browser: Iceweasel 10.0.12 (debian)
System: Debian GNU/Linux 7.0 Wheezy i386


(file #39811)

Nutchanon Wetchasit <nachanon>
Sun 19 Feb 2017 04:29:07 PM UTC, comment #1: 

Pushed with commit e9eb84e128f7f0ba4558d00cf794027bf9125a7d

Sandro Santilli <strk>
Group Member
Sun 19 Feb 2017 06:03:00 AM UTC, original submission:  

Patch 1 of 2.
See the attached `0001_movieclip-geturl-add-fscommand-scheme.patch`.

Current Gnash handles `FSCommand:` URL scheme in its GETURL instruction implementation, but does not do the same in `MovieClip.getURL()` function. This results in ignored container command and weird errors from external protocol handler when running SWF which tries to issue FSCommand from `MovieClip.getURL()`.

This patch adds a special case inside `MovieClip.getURL()` for handling URL which starts with `FSCommand:` in the same way as current implementation in GETURL instruction; fixing bug #46944.

Automated tests will follow.

Gnash: 0.8.11dev (patched against git e90fc76 31-Jan-2017)
System: Debian GNU/Linux 7.0 Wheezy i386

Nutchanon Wetchasit <nachanon>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attached Files
file #39811:  0002_movieclip-geturl-add-fscommand-tests.patch added by nachanon (31KiB - text/x-diff - Patch for adding tests on FSCommand URL scheme in `MovieClip.getURL()`)
file #39786:  0001_movieclip-geturl-add-fscommand-scheme.patch added by nachanon (1KiB - text/x-diff - Patch for implementing FSCommand URL scheme in `MovieClip.getURL()`)

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by strk (Posted a comment)
  • -email is unavailable- added by nachanon (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

     

    Follow 6 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2017-02-22 strk StatusReady For Test Done
        Open/ClosedOpen Closed
    2017-02-22 nachanon Attached File- Added 0002_movieclip-geturl-add-fscommand-tests.patch, #39811
    2017-02-19 strk StatusNone Ready For Test
        Assigned toNone strk
    2017-02-19 nachanon Attached File- Added 0001_movieclip-geturl-add-fscommand-scheme.patch, #39786

    Back to the top

    Powered by Savane 3.13-d3ae.
    Corresponding source code