Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Obfuscated parameter names "oldTrack" and "newTrack" for "adaptation" and "variantchangeds" events #3710

Closed
Pereverzev-Alexander opened this issue Oct 21, 2021 · 1 comment
Assignees
Labels
priority: P1 Big impact or workaround impractical; resolve before feature release status: archived Archived and locked; will not be updated type: bug Something isn't working correctly
Milestone

Comments

@Pereverzev-Alexander
Copy link

Have you read the FAQ and checked for duplicate open issues?
Yes

What version of Shaka Player are you using?
3.2.0.compiled and 3.2.1.compiled

Can you reproduce the issue with our latest release version?
Yes

Can you reproduce the issue with the latest code from master?
Not checked

Are you using the demo app or your own custom app?
Own custom app

If custom app, can you reproduce the issue using our demo app?
No

What browser and OS are you using?
Ubuntu 21.04, Firefox 93.0, Chrome 90.0.4430.72

What are the manifest and license server URIs?
Manifest: https://dash.akamaized.net/akamai/bbb_30fps/bbb_30fps.mpd

What did you do?

  1. Add a listener to the "adaptation" event
  2. Start stream playback
  3. When the event is triggered, the event handler gets a obfuscated name for the parameters oldTrack and newTrack: ("zf" and "yf" instead of "oldTrack" and "newTrack")

The same problem for variantchanged event.

Example of received event parameters:
{
bubbles: false
cancelable: false
currentTarget: W {rc: pd, qc: W, l: 0, g: null, oc: null, …}
defaultPrevented: false
g: false
isTrusted: false
target: W {rc: pd, qc: W, l: 0, g: null, oc: null, …}
timeStamp: 5425.795000001017
type: "adaptation"
yf: {id: 8, active: false, type: "variant", bandwidth: 1950771, language: "und", …}
zf: {id: 6, active: false, type: "variant", bandwidth: 1321829, language: "und", …}
}

What did you expect to happen?
Expected event parameter names:
{
oldTrack: {id: 6, active: false, type: "variant", bandwidth: 1321829, language: "und", …}
newTrack: {id: 8, active: false, type: "variant", bandwidth: 1950771, language: "und", …}
bubbles: false
cancelable: false
currentTarget: W {rc: pd, qc: W, l: 0, g: null, oc: null, …}
defaultPrevented: false
g: false
isTrusted: false
target: W {rc: pd, qc: W, l: 0, g: null, oc: null, …}
timeStamp: 5425.795000001017
type: "adaptation"
}

@Pereverzev-Alexander Pereverzev-Alexander added the type: bug Something isn't working correctly label Oct 21, 2021
@shaka-bot shaka-bot added this to the v3.3 milestone Oct 21, 2021
@theodab theodab added the priority: P1 Big impact or workaround impractical; resolve before feature release label Oct 21, 2021
@theodab theodab self-assigned this Oct 21, 2021
@theodab
Copy link
Collaborator

theodab commented Oct 26, 2021

Thanks for the report!

@shaka-bot shaka-bot added the status: archived Archived and locked; will not be updated label Dec 25, 2021
@shaka-project shaka-project locked and limited conversation to collaborators Dec 25, 2021
joeyparrish pushed a commit that referenced this issue Jan 5, 2022
Previously, many events were being defined with a data dictionary
that used variable-type keys (e.g. {key: value}). This worked fine
in uncompiled mode, but in compiled mode it lead to those properties
being obfuscated.
This changes the FakeEvent constructor to take a map rather than an
object, so the compiler will force the keys to be strings.

Closes #3710

Backported to v3.0.x

Change-Id: I67b1a391540a5ee21f0aaf940ae054d26f4c10a4
joeyparrish pushed a commit that referenced this issue Jan 5, 2022
Previously, many events were being defined with a data dictionary
that used variable-type keys (e.g. {key: value}). This worked fine
in uncompiled mode, but in compiled mode it lead to those properties
being obfuscated.
This changes the FakeEvent constructor to take a map rather than an
object, so the compiler will force the keys to be strings.

Closes #3710

Backported to v3.1.x

Change-Id: I67b1a391540a5ee21f0aaf940ae054d26f4c10a4
joeyparrish pushed a commit that referenced this issue Jan 5, 2022
Previously, many events were being defined with a data dictionary
that used variable-type keys (e.g. {key: value}). This worked fine
in uncompiled mode, but in compiled mode it lead to those properties
being obfuscated.
This changes the FakeEvent constructor to take a map rather than an
object, so the compiler will force the keys to be strings.

Closes #3710

Backported to v3.2.x

Change-Id: I67b1a391540a5ee21f0aaf940ae054d26f4c10a4
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
priority: P1 Big impact or workaround impractical; resolve before feature release status: archived Archived and locked; will not be updated type: bug Something isn't working correctly
Projects
None yet
Development

No branches or pull requests

3 participants