Mike Welsh
2653c5f5c3
audio: Handle gaps in MP3 SoundStreamBlock tags ( fix #3817 )
...
An MP3 "stream" sound can sometimes have frames without a
SoundStreamBlock tag, despite the SWF spec saying there should
at least be a tag with 0 samples on each frame. Ruffle would
stop the sound in this case, but the Flash Player may or may not
stop thje sound in the audio depending on the number of "empty"
frames. This could cause the audio to stutter as it continuously
stopped and restarted.
Handle this by keeping track of how many samples we've encountered
in MP3 blocks, and deducting the amount of samples consumed by each
timeline frame. Stop the sound if we run out of samples, as opposed
to when we hit a frame without a SoundStreamBlock.
Fixes #3817 .
2022-01-07 13:23:53 -08:00
Mike Welsh
b2f7c98f88
audio: Sync animation with embedded audio streams
...
This is a first pass at syncing animation and audio playback when
and embedded audio stream is playing.
Fixes #3020 , #3663 , #3958 .
2022-01-07 13:23:53 -08:00
relrelb
6b80b296fc
tests: Expand `mcl_loadclip`
2022-01-07 10:39:16 -08:00
relrelb
8c736b9756
avm1: Fix `MovieClipLoader` event arguments
...
The first argument of all events is the target MovieClip. It was
incorrect.
Also, `onLoadComplete` accepts an additional `httpStatus` argument.
Stub it to 0.
2022-01-07 10:39:16 -08:00
relrelb
e045a9502b
core: Small cleanup in `Loader`
...
Remove unnecessary calls to `introduce_loader_handle`, which are
dominated by `add_loader` that already calls it. As a result, `add_loader`
remained the only function to call `introduce_loader_handle`, so inline
it there.
2022-01-07 10:39:16 -08:00
relrelb
c05ff4cbc8
core: Unify `Loader::Xml` into `Loader::LoadVars`
...
Since they are identical (they both load the URL as a string, then
fire the `onHTTPStatus` and `onData` events). In fact, AVM1's
`XML.prototype.load` and `LoadVars.prototype.load` functions are
both defined as `ASnative(301, 0)`, so they invoke the same native
code under the hood.
2022-01-07 09:51:27 -08:00
dependabot[bot]
a9e86a73cf
build(deps): bump serde from 1.0.132 to 1.0.133
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.132 to 1.0.133.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.132...v1.0.133 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-03 23:28:57 +02:00
dependabot[bot]
6533511994
build(deps): bump quote from 1.0.10 to 1.0.14
...
Bumps [quote](https://github.com/dtolnay/quote ) from 1.0.10 to 1.0.14.
- [Release notes](https://github.com/dtolnay/quote/releases )
- [Commits](https://github.com/dtolnay/quote/compare/1.0.10...1.0.14 )
---
updated-dependencies:
- dependency-name: quote
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-03 22:50:58 +02:00
dependabot[bot]
86d2e1ddba
build(deps): bump clap from 3.0.0-rc.8 to 3.0.1
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.0.0-rc.8 to 3.0.1.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/clap_generate-v3.0.0-rc.8...clap_complete-v3.0.1 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-03 22:50:45 +02:00
Mike Welsh
3010c505aa
chore: Add error-report issue template
...
The `error-report` label was not being added to error reports
submitted by panics in the web player, despite the `labels` query
parameter in the URL. Users do not have triage/write access to the
repo, which is required by GitHub to add a label to an issue.
Add an issue template for error reports with the `error-report`
label. This template is now added to the issue URL, which
automatically adds the tag regardless of access level.
2022-01-02 13:59:54 -08:00
Mike Welsh
ab88f9a23e
tests: Add test case for #5598
2022-01-01 22:24:08 -08:00
Mike Welsh
34ed9cbbaa
core: Fix incorrect closing of paths in drawing API ( fix #5598 )
...
The path starting position was not being set correctly after a
moveTo command, which could cause stray strokes to appear in the
drawing.
Fixes #5598 , #5768 , #5957 .
2022-01-01 22:24:08 -08:00
relrelb
655adedc1c
xml: Remove `XmlNode::is_as2_compatible`
...
Now all `XmlNodeData` types are AS2-compatible, so `is_as2_compatible`
always returns `true`.
2022-01-02 07:36:49 +02:00
relrelb
30cd2aa4f1
xml: Remove `XmlNodeData::DocType`
...
`XmlNode::is_as2_compatible` returns `false` for `XmlNodeData::DocType`
nodes, which means they are not included in string representations of
XML documents, and they cannot be traversed using the DOM methods.
So don't create those when parsing an XML from string, but still
store the `DOCTYPE` declaration string on the `XmlDocument`, which
is accissible through the `.docTypeDecl` property.
2022-01-02 07:36:49 +02:00
relrelb
827bb6e48e
xml: Remove `XmlNodeData::Comment`
...
`XmlNode::is_as2_compatible` returns `false` for `XmlNodeData::Comment`
nodes, which means they are not included in string representations of
XML documents, and they cannot be traversed using the DOM methods.
So simply don't create those when parsing an XML from string.
2022-01-02 07:36:49 +02:00
dependabot[bot]
a55330a361
Merge pull request #5969 from ruffle-rs/dependabot/npm_and_yarn/web/wdio/cli-7.16.12
2022-01-02 00:34:05 +00:00
dependabot[bot]
200cdfafed
Merge pull request #5970 from ruffle-rs/dependabot/npm_and_yarn/web/typescript-eslint/eslint-plugin-5.8.1
2022-01-02 00:33:12 +00:00
dependabot[bot]
ef06f92a92
build(deps-dev): bump @wdio/cli from 7.16.10 to 7.16.12 in /web
...
Bumps [@wdio/cli](https://github.com/webdriverio/webdriverio ) from 7.16.10 to 7.16.12.
- [Release notes](https://github.com/webdriverio/webdriverio/releases )
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md )
- [Commits](https://github.com/webdriverio/webdriverio/compare/v7.16.10...v7.16.12 )
---
updated-dependencies:
- dependency-name: "@wdio/cli"
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 23:29:27 +00:00
dependabot[bot]
a9fe0846b9
Merge pull request #5971 from ruffle-rs/dependabot/npm_and_yarn/web/wdio/mocha-framework-7.16.11
2022-01-01 23:27:45 +00:00
dependabot[bot]
7b883bd400
build(deps-dev): bump @typescript-eslint/eslint-plugin in /web
...
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin ) from 5.5.0 to 5.8.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.8.1/packages/eslint-plugin )
---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 23:23:26 +00:00
dependabot[bot]
d85653e268
Merge pull request #5972 from ruffle-rs/dependabot/npm_and_yarn/web/eslint-8.6.0
2022-01-01 23:22:18 +00:00
dependabot[bot]
63bd17bc13
build(deps-dev): bump @wdio/mocha-framework in /web
...
Bumps [@wdio/mocha-framework](https://github.com/webdriverio/webdriverio ) from 7.16.6 to 7.16.11.
- [Release notes](https://github.com/webdriverio/webdriverio/releases )
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md )
- [Commits](https://github.com/webdriverio/webdriverio/compare/v7.16.6...v7.16.11 )
---
updated-dependencies:
- dependency-name: "@wdio/mocha-framework"
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 21:48:47 +00:00
dependabot[bot]
8d3d61ace5
build(deps-dev): bump @wdio/spec-reporter from 7.16.9 to 7.16.11 in /web
...
Bumps [@wdio/spec-reporter](https://github.com/webdriverio/webdriverio ) from 7.16.9 to 7.16.11.
- [Release notes](https://github.com/webdriverio/webdriverio/releases )
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md )
- [Commits](https://github.com/webdriverio/webdriverio/compare/v7.16.9...v7.16.11 )
---
updated-dependencies:
- dependency-name: "@wdio/spec-reporter"
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 23:47:54 +02:00
dependabot[bot]
83dd88e3f6
build(deps-dev): bump eslint from 8.4.0 to 8.6.0 in /web
...
Bumps [eslint](https://github.com/eslint/eslint ) from 8.4.0 to 8.6.0.
- [Release notes](https://github.com/eslint/eslint/releases )
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md )
- [Commits](https://github.com/eslint/eslint/compare/v8.4.0...v8.6.0 )
---
updated-dependencies:
- dependency-name: eslint
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 20:54:47 +00:00
dependabot[bot]
08707f0258
build(deps-dev): bump @typescript-eslint/parser in /web
...
Bumps [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser ) from 5.5.0 to 5.8.1.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.8.1/packages/parser )
---
updated-dependencies:
- dependency-name: "@typescript-eslint/parser"
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 22:53:33 +02:00
dependabot[bot]
f52ea138fc
build(deps-dev): bump webpack from 5.64.4 to 5.65.0 in /web
...
Bumps [webpack](https://github.com/webpack/webpack ) from 5.64.4 to 5.65.0.
- [Release notes](https://github.com/webpack/webpack/releases )
- [Commits](https://github.com/webpack/webpack/compare/v5.64.4...v5.65.0 )
---
updated-dependencies:
- dependency-name: webpack
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 22:53:12 +02:00
dependabot[bot]
1fd6fdca60
build(deps-dev): bump @types/chrome from 0.0.166 to 0.0.174 in /web
...
Bumps [@types/chrome](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/chrome ) from 0.0.166 to 0.0.174.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/chrome )
---
updated-dependencies:
- dependency-name: "@types/chrome"
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 22:52:56 +02:00
dependabot[bot]
c6e5946ba1
build(deps-dev): update webpack-dev-server requirement in /web
...
Updates the requirements on [webpack-dev-server](https://github.com/webpack/webpack-dev-server ) to permit the latest version.
- [Release notes](https://github.com/webpack/webpack-dev-server/releases )
- [Changelog](https://github.com/webpack/webpack-dev-server/blob/master/CHANGELOG.md )
- [Commits](https://github.com/webpack/webpack-dev-server/compare/v4.6.0...v4.7.2 )
---
updated-dependencies:
- dependency-name: webpack-dev-server
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 22:52:28 +02:00
dependabot[bot]
afd8568052
build(deps-dev): bump @wdio/static-server-service in /web
...
Bumps [@wdio/static-server-service](https://github.com/webdriverio/webdriverio ) from 7.16.6 to 7.16.11.
- [Release notes](https://github.com/webdriverio/webdriverio/releases )
- [Changelog](https://github.com/webdriverio/webdriverio/blob/main/CHANGELOG.md )
- [Commits](https://github.com/webdriverio/webdriverio/compare/v7.16.6...v7.16.11 )
---
updated-dependencies:
- dependency-name: "@wdio/static-server-service"
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-01-01 22:51:44 +02:00
relrelb
e477fca9e4
xml: Use OR patterns
...
This results in a slightly shorter code, and avoids some duplication.
2021-12-31 19:00:12 +02:00
relrelb
8bd144ec88
xml: Make `XmlDocumentData::root` non-`Option`
...
Since `XmlNode::document` doesn't exist anymore, so as the circular-
reference between `XmlDocument` and `XmlNode`.
2021-12-31 19:00:12 +02:00
relrelb
3676db47a3
xml: Remove unused `XmlNode::document`
2021-12-31 19:00:12 +02:00
relrelb
f7e80e3fb9
xml: Inline `XmlDocument::add_child_to_tree`
...
Include the XML root node itself as part of the stack, so appending
children to it is no longer considered a special case.
2021-12-31 09:35:09 +02:00
relrelb
e1198bd30c
xml: Inline `XmlDocument::process_event`
...
Now that `replace_with_str` is defined in `XmlDocument`, there is
no need anymore for a separate function that handles nodes which have
document-wide implications.
2021-12-31 09:35:09 +02:00
relrelb
7d148fb61d
xml: Move `XmlNode::replace_with_str` to `XmlDocument`
...
It only makes sense to call this method on document roots.
2021-12-31 09:35:09 +02:00
Adrian Wielgosik
fcab60de7e
core: register non-ascii fonts lazily
2021-12-31 01:10:48 +01:00
relrelb
0bab5f6d91
avm1: Use `XmlObject`
...
Previously Ruffle's AVM1 runtime incorrectly permitted calling `XML`
functions on `XMLNode` objects. For example:
```as
var xml = new XML("<a><b></b></a>");
trace(XML.prototype.createElement.call(xml.firstChild, "aaa")); // traces "undefined" in Flash, but "<aaa />" in Ruffle before this commit.
```
Disallow this by using the newly-reintroduced `XmlObject` for `XML` objects
(rather than `XmlNodeObject` that represents also `XMLNode` object), and check
for it in all `XML` builtins.
2021-12-30 22:13:14 +02:00
relrelb
b501b4697a
avm1: Re-introduce `XmlObject`
...
The newly-reintroduced `XmlObject` will represent `XML` document objects.
Currently it's unused, but the following commit will make use of it.
2021-12-30 22:13:14 +02:00
TÖRÖK Attila
09ca48e389
chore: Bump h263-rs git reference
2021-12-30 16:22:27 +01:00
TÖRÖK Attila
6f68938591
video/vp6: Fix keyframe detection on Vp6WithAlpha videos
2021-12-29 11:28:05 +01:00
dependabot[bot]
dc8ba4ee59
build(deps): bump clap from 3.0.0-rc.7 to 3.0.0-rc.8
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.0.0-rc.7 to 3.0.0-rc.8.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/clap_generate-v3.0.0-rc.7...clap_generate-v3.0.0-rc.8 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-12-27 22:32:31 +02:00
dependabot[bot]
56b340ebf5
build(deps): bump syn from 1.0.82 to 1.0.84
...
Bumps [syn](https://github.com/dtolnay/syn ) from 1.0.82 to 1.0.84.
- [Release notes](https://github.com/dtolnay/syn/releases )
- [Commits](https://github.com/dtolnay/syn/compare/1.0.82...1.0.84 )
---
updated-dependencies:
- dependency-name: syn
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-12-27 22:32:21 +02:00
relrelb
e547fd710d
xml: Remove `XmlName`
...
Instead use a much simpler approach using `XmlNode::local_name` and
`XmlNode::prefix`.
2021-12-27 20:53:34 +02:00
relrelb
6ca1ac05da
avm1: Rename `XmlObject` to `XmlNodeObject`
...
The name `XmlObject` will be re-used in a future PR for `XML`
document objects.
2021-12-27 20:53:34 +02:00
Moulins
74ab24c0c3
core: fix wide string handling in html::text_format
...
Closes #5839
2021-12-21 22:19:13 +02:00
Adrian Wielgosik
4230d1f19f
avm2: Add Mouse.hide(), Mouse.show()
2021-12-21 17:32:57 +01:00
dependabot[bot]
a99b23dcf5
build(deps): bump futures from 0.3.18 to 0.3.19
...
Bumps [futures](https://github.com/rust-lang/futures-rs ) from 0.3.18 to 0.3.19.
- [Release notes](https://github.com/rust-lang/futures-rs/releases )
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.18...0.3.19 )
---
updated-dependencies:
- dependency-name: futures
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-12-21 08:36:06 +02:00
dependabot[bot]
fd816f3a0a
build(deps): bump serde from 1.0.131 to 1.0.132
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.131 to 1.0.132.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.131...v1.0.132 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-12-21 08:35:54 +02:00
dependabot[bot]
c104b24cea
build(deps): bump bytemuck from 1.7.2 to 1.7.3
...
Bumps [bytemuck](https://github.com/Lokathor/bytemuck ) from 1.7.2 to 1.7.3.
- [Release notes](https://github.com/Lokathor/bytemuck/releases )
- [Changelog](https://github.com/Lokathor/bytemuck/blob/main/changelog.md )
- [Commits](https://github.com/Lokathor/bytemuck/compare/v1.7.2...v1.7.3 )
---
updated-dependencies:
- dependency-name: bytemuck
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-12-21 08:35:41 +02:00
dependabot[bot]
e369ca7a42
build(deps): bump clap from 3.0.0-rc.5 to 3.0.0-rc.7
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.0.0-rc.5 to 3.0.0-rc.7.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/clap_generate-v3.0.0-rc.5...clap_generate-v3.0.0-rc.7 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2021-12-21 08:35:30 +02:00