Aaron Hill
2383e6850f
avm2: Continue to process event when a handler produces an error
...
An exception thrown by one event handler shoud not prevent other event
handlers from running on this same event. Some SWFs like Wonderputt
depend on this behavior, as they have buggy event handlers that throw
errors.
2022-08-03 22:29:41 +03:00
Aaron Hill
ad19c29c03
Remove `null` from `getChildByName` for missing child
...
This matches the behavior of Flash - no error is produced.
2022-08-03 21:45:59 +03:00
Daniel Jacobs
992e34764e
web: Fix metadata test by adding uncompressedLength
2022-08-03 09:17:24 +03:00
Daniel Jacobs
7105c1e803
web: Clarify uncompressed length is in bytes in metadata
2022-08-03 09:17:24 +03:00
Daniel Jacobs
ce95f01de3
web: Include uncompressed length of SWF in metadata
2022-08-03 09:17:24 +03:00
relrelb
7040397c3d
web: Fix `sign-addon` upgrade
...
`sign-addon` 5.0.0 switched to ES Modules. Therefore, it no longer
can be `require`d. As a workaround, use `await import` instead.
In the long-term, it might be worth to convert the `sign_xpi.js`
script itself to ES Modules.
2022-08-03 00:44:03 +03:00
dependabot[bot]
039f33228e
build(deps-dev): bump sign-addon from 4.1.0 to 5.0.0 in /web
...
Bumps [sign-addon](https://github.com/mozilla/sign-addon ) from 4.1.0 to 5.0.0.
- [Release notes](https://github.com/mozilla/sign-addon/releases )
- [Commits](https://github.com/mozilla/sign-addon/compare/4.1.0...5.0.0 )
---
updated-dependencies:
- dependency-name: sign-addon
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-03 00:44:03 +03:00
dependabot[bot]
dcf6243c47
build(deps): bump rfd from 0.9.1 to 0.10.0
...
Bumps [rfd](https://github.com/PolyMeilex/rfd ) from 0.9.1 to 0.10.0.
- [Release notes](https://github.com/PolyMeilex/rfd/releases )
- [Changelog](https://github.com/PolyMeilex/rfd/blob/master/CHANGELOG.md )
- [Commits](https://github.com/PolyMeilex/rfd/compare/0.9.1...0.10.0 )
---
updated-dependencies:
- dependency-name: rfd
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 23:52:23 +03:00
dependabot[bot]
d0535f4cb8
build(deps): bump clap from 3.2.15 to 3.2.16
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.2.15 to 3.2.16.
- [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/v3.2.15...v3.2.16 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 23:06:07 +03:00
dependabot[bot]
f7f84418f9
build(deps): bump proc-macro2 from 1.0.41 to 1.0.42
...
Bumps [proc-macro2](https://github.com/dtolnay/proc-macro2 ) from 1.0.41 to 1.0.42.
- [Release notes](https://github.com/dtolnay/proc-macro2/releases )
- [Commits](https://github.com/dtolnay/proc-macro2/compare/1.0.41...1.0.42 )
---
updated-dependencies:
- dependency-name: proc-macro2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 22:37:35 +03:00
dependabot[bot]
bb96025800
build(deps): bump enum-map from 2.4.0 to 2.4.1
...
Bumps [enum-map](https://github.com/xfix/enum-map ) from 2.4.0 to 2.4.1.
- [Release notes](https://github.com/xfix/enum-map/releases )
- [Changelog](https://github.com/xfix/enum-map/blob/master/CHANGELOG.md )
- [Commits](https://github.com/xfix/enum-map/compare/v2.4.0...v2.4.1 )
---
updated-dependencies:
- dependency-name: enum-map
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 20:34:41 +03:00
dependabot[bot]
3b7f6976a4
build(deps): bump serde from 1.0.140 to 1.0.141
...
Bumps [serde](https://github.com/serde-rs/serde ) from 1.0.140 to 1.0.141.
- [Release notes](https://github.com/serde-rs/serde/releases )
- [Commits](https://github.com/serde-rs/serde/compare/v1.0.140...v1.0.141 )
---
updated-dependencies:
- dependency-name: serde
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 19:34:44 +03:00
dependabot[bot]
9a90466bb2
build(deps-dev): bump @wdio/spec-reporter from 7.19.5 to 7.20.8 in /web
...
Bumps [@wdio/spec-reporter](https://github.com/webdriverio/webdriverio ) from 7.19.5 to 7.20.8.
- [Release notes](https://github.com/webdriverio/webdriverio/releases )
- [Changelog](https://github.com/webdriverio/webdriverio/blob/v7.20.8/CHANGELOG.md )
- [Commits](https://github.com/webdriverio/webdriverio/compare/v7.19.5...v7.20.8 )
---
updated-dependencies:
- dependency-name: "@wdio/spec-reporter"
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 18:54:42 +03:00
dependabot[bot]
0597ee3999
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.30.3 to 5.32.0.
- [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.32.0/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-08-02 17:46:11 +03:00
dependabot[bot]
2a47857c1a
build(deps-dev): bump eslint from 8.18.0 to 8.21.0 in /web
...
Bumps [eslint](https://github.com/eslint/eslint ) from 8.18.0 to 8.21.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.18.0...v8.21.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-08-02 16:12:30 +03:00
dependabot[bot]
ce932c83a5
build(deps-dev): bump typedoc from 0.23.3 to 0.23.10 in /web
...
Bumps [typedoc](https://github.com/TypeStrong/TypeDoc ) from 0.23.3 to 0.23.10.
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases )
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md )
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.23.3...v0.23.10 )
---
updated-dependencies:
- dependency-name: typedoc
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 15:05:09 +03:00
dependabot[bot]
1a5a253be8
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.27.1 to 5.32.0.
- [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.32.0/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-08-02 14:30:09 +03:00
dependabot[bot]
9d7651af28
build(deps-dev): bump eslint-plugin-jsdoc from 39.3.2 to 39.3.4 in /web
...
Bumps [eslint-plugin-jsdoc](https://github.com/gajus/eslint-plugin-jsdoc ) from 39.3.2 to 39.3.4.
- [Release notes](https://github.com/gajus/eslint-plugin-jsdoc/releases )
- [Commits](https://github.com/gajus/eslint-plugin-jsdoc/compare/v39.3.2...v39.3.4 )
---
updated-dependencies:
- dependency-name: eslint-plugin-jsdoc
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 12:15:35 +03:00
dependabot[bot]
5279f5f52b
build(deps-dev): bump prettier from 2.6.2 to 2.7.1 in /web
...
Bumps [prettier](https://github.com/prettier/prettier ) from 2.6.2 to 2.7.1.
- [Release notes](https://github.com/prettier/prettier/releases )
- [Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md )
- [Commits](https://github.com/prettier/prettier/compare/2.6.2...2.7.1 )
---
updated-dependencies:
- dependency-name: prettier
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-08-02 09:21:13 +03:00
dependabot[bot]
a71fbc97b3
build(deps-dev): bump @wdio/static-server-service in /web
...
Bumps [@wdio/static-server-service](https://github.com/webdriverio/webdriverio ) from 7.20.3 to 7.20.7.
- [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.20.3...v7.20.7 )
---
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-08-02 09:01:01 +03:00
dependabot[bot]
2ba82c92bc
build(deps-dev): bump @wdio/mocha-framework in /web
...
Bumps [@wdio/mocha-framework](https://github.com/webdriverio/webdriverio ) from 7.20.3 to 7.20.7.
- [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.20.3...v7.20.7 )
---
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-08-01 23:17:27 +03:00
Adrian Wielgosik
e214dd5ce5
avm2: Implement BitmapData.scroll/copyPixels, stub lock()
2022-08-01 22:31:42 +03:00
Adrian Wielgosik
17f090d1d5
avm2: Stub Loader.contentLoaderInfo
2022-08-01 22:31:42 +03:00
TÖRÖK Attila
820196d066
audio: Handle AudioCompression::UncompressedUnknownEndian in AudioMixer::make_seekable_decoder()
...
The same way as it is done in decoders::make_decoder().
2022-08-01 21:39:01 +03:00
relrelb
6f35d90146
ci: Run cargo in locked mode
...
As a follow-up for #7010 , run cargo in locked mode on Web CI as well,
in order to validate that `Cargo.lock` is up-to-date and gain a slight
speed-up.
2022-08-01 19:46:21 +03:00
Aaron Hill
2ce6679643
avm2: Store PropertyClass in `VtableData`
...
Calling `get_trait` copies the returned `Property`, so the caching
we performed in `PropertyClass` was never actually getting used.
Instead, we now store our `PropertyClass` values in a `Vec`
indexed by slot id. `set_property` and `init_property` now perform
coercions by going through the `VTable,` which writes the updated
`PropertyClass` back into the array.
2022-07-30 17:58:50 -07:00
Calvin304
01a0d702af
avm2: Fix parsing of methods with more than 127 arguments
...
this change follows section 4.5 of https://www.adobe.com/content/dam/acom/en/devnet/pdf/avm2overview.pdf (dead link, use an archive)
2022-07-30 16:52:56 -07:00
Adrian Wielgosik
5be7f425f0
avm2: Migrate all Events to AS, remove EventData.
2022-07-30 12:34:12 -07:00
Mike Welsh
9e96b075d1
ci: Build web tests with --all-features
2022-07-30 19:07:39 +02:00
Mike Welsh
8c4dcf29ee
web: Rollback to web-sys 0.3.58
2022-07-30 19:07:39 +02:00
Mike Welsh
d092861c15
chore: Appease clippy
...
Fix `assertions_on_result_states` lints.
2022-07-29 19:32:41 -07:00
relrelb
e500885a37
tests: Add `biturshift`
...
Also add a SWF8 variant to test its special behavior.
2022-07-29 14:44:21 -07:00
relrelb
d01a03b4ca
avm1: Correct `ActionURShift`
...
In SWF8 and SWF9, unsigned right shift actually has a signed result.
2022-07-29 14:44:21 -07:00
Ali MJ Al-Nasrawy
67fbc84ba3
don't rely on a rustc bug
...
context: https://github.com/rust-lang/rust/pull/98835
2022-07-29 15:27:46 -05:00
Aaron Hill
0d3e046b0e
avm2: Allow classes to reference their own type from a static variable
...
FP allows code like
`class Foo { static var INSTANCE: Foo = new Foo(); }`
However, this breaks our current property type coercion setup -
we cannot resolve the type `Foo` when setting the property `INSTANCE`,
since `Foo` is still being constructed.
Fortunately, we can perform this 'coercion' by just checking if
the object's class name and domain match the type name and domain
of the property.
2022-07-29 13:24:37 -07:00
relrelb
286dccc274
wgpu: Introduce `create_shape_pipeline`
...
It is essentially a unification of `create_color_pipeline`, `create_bitmap_pipeline`
and `create_gradient_pipeline`.
2022-07-29 11:00:48 -07:00
relrelb
2827be1f80
web: Remove some unused dependencies
...
Both `byteorder` and `fnv` are no longer used since #4273 .
2022-07-29 09:42:04 -07:00
relrelb
79f36964b4
web: Bump wasm-bindgen to 0.2.82
...
As usual, also bump its helper crates (`js-sys`, `web-sys` and
`wasm-bindgen-futures`) to the latest versions.
2022-07-29 09:40:14 -07:00
Mike Welsh
30b185cbd4
audio: Reset symphonia decoder on loop
2022-07-28 21:25:33 -07:00
TÖRÖK Attila
7249db9052
audio: Fix crash/gap at the end of MP3 loops
2022-07-28 21:25:33 -07:00
Mike Welsh
ffb57467eb
audio: Add `AudioBackend::position_resolution`
...
This returns the approximate interval that the audio backend
updates the sound position information. This is used for syncing
animation to embedded "stream" audio tracks, and fixes some
stuttering in cases where the syncing was being too strict.
2022-07-28 21:25:33 -07:00
Mike Welsh
405c7194b0
audio: Remove `AudioBackend::preload_sound_stream` fns
...
No longer necessary now that web audio mixing is done on Rust side.
2022-07-28 21:25:33 -07:00
Mike Welsh
9fb46c71ad
web: Use `AudioBufferSourceNode` for web audio
...
On web:
* Mix audio on the Rust side, piping to `AudioBufferSourceNode`.
* Decode MP3 using `symphonia`.
2022-07-28 21:25:33 -07:00
Aaron Hill
f2deeb4de8
Fix typo
2022-07-27 22:38:49 -07:00
Aaron Hill
49d1a985ca
avm2: Store `LoaderInfo` object on `MovieClip` and `Stage`
...
Previously, we would create a fresh `LoaderInfo` object each
time the `loaderInfo` property was accessed. However, users can
add event handlers to a `LoaderInfo`, so we need to create and
store exactly one `LoaderInfo` object per movie (and stage).
To verify that we're correctly handling the storage of `LoaderInfo`,
I've implemented firing the "init" event. This required a new
`on_frame_exit` hook, so that we can properly fire the "init"
event after the "exitFrame" for the initial frame but before
the "enterFrame" of the next frame.
2022-07-27 22:38:49 -07:00
dependabot[bot]
df07f610e7
build(deps): bump clap from 3.2.14 to 3.2.15
...
Bumps [clap](https://github.com/clap-rs/clap ) from 3.2.14 to 3.2.15.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/v3.2.15/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/v3.2.14...v3.2.15 )
---
updated-dependencies:
- dependency-name: clap
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-07-25 23:35:39 +03:00
dependabot[bot]
2d2dd17fab
build(deps): bump embed-resource from 1.7.2 to 1.7.3
...
Bumps [embed-resource](https://github.com/nabijaczleweli/rust-embed-resource ) from 1.7.2 to 1.7.3.
- [Release notes](https://github.com/nabijaczleweli/rust-embed-resource/releases )
- [Commits](https://github.com/nabijaczleweli/rust-embed-resource/compare/v1.7.2...v1.7.3 )
---
updated-dependencies:
- dependency-name: embed-resource
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
2022-07-25 23:35:27 +03:00
EmperorBale
dde2895f98
wstr: Use `extend_from_slice` instead of manually pushing to output.
2022-07-25 10:52:56 -07:00
EmperorBale
026fcfff62
wstr: Ascii character detection in the UTF-8 decoder should use `<`, not `<=`
2022-07-25 10:52:56 -07:00
EmperorBale
ae5e2be8a3
chore: Simplify code for UTF-8 decoding
2022-07-25 10:52:56 -07:00