Closed
Bug 1389090
Opened 8 years ago
Closed 3 years ago
After calling canvas.transferControlToOffscreen(), resizing canvas throws a NS_ERROR_FAILURE
Categories
(Core :: Graphics: CanvasWebGL, defect, P3)
Tracking
()
RESOLVED
DUPLICATE
of bug 1747476
| Tracking | Status | |
|---|---|---|
| firefox57 | --- | wontfix |
People
(Reporter: jujjyl, Unassigned)
References
Details
(Whiteboard: gfx-noted)
STR:
Enable gfx.offscreencanvas.enabled;true in about:config and
> <html><meta charset="utf-8"><body>
> <canvas id="canvas">
> <script>
> var canvas = document.getElementById("canvas");
> var offscreen = canvas.transferControlToOffscreen();
> canvas.width = 1000;
> </script></body></html>
Resizing the canvas on the last line gives an error "NS_ERROR_FAILURE: " thrown to the page console. Chrome Canary seems to be happy about this and does not produce errors.
| Reporter | ||
Comment 1•8 years ago
|
||
Discussing with Justin Novosad, his thinking is that the correct pattern to change the size of the canvas would be
> var offscreen = canvas.transferControlToOffscreen();
> offscreen.width = 1000;
and that
> canvas.width = 1000;
should throw an exception. If that is the case (the spec is a bit in flux with respect to this), then this bugzilla entry would turn to just changing the current exception string from "NS_ERROR_FAILURE: " to something more readable, like "Attempting to change the size of a Canvas element that has been transferred to OffscreenCanvas. Use the OffscreenCanvas object instead to change its size." or something similar.
Comment 2•8 years ago
|
||
(In reply to Jukka Jylänki from comment #1)
> Discussing with Justin Novosad, his thinking is that the correct pattern to
> change the size of the canvas would be
>
> > var offscreen = canvas.transferControlToOffscreen();
> > offscreen.width = 1000;
>
> and that
>
> > canvas.width = 1000;
>
> should throw an exception. If that is the case (the spec is a bit in flux
> with respect to this), then this bugzilla entry would turn to just changing
> the current exception string from "NS_ERROR_FAILURE: " to something more
> readable, like "Attempting to change the size of a Canvas element that has
> been transferred to OffscreenCanvas. Use the OffscreenCanvas object instead
> to change its size." or something similar.
Follow the pattern to change the size of canvas, it still gets "NS_ERROR_FAILURE: " at https://codepen.io/daoshengmu/pen/qXPqvE. I agree we should add more readable messages for users.
Priority: -- → P3
Whiteboard: gfx-noted
| Reporter | ||
Updated•8 years ago
|
Blocks: offscreen-canvas
| Reporter | ||
Comment 3•8 years ago
|
||
The spec bug for mandating the thrown exception is at https://github.com/whatwg/html/pull/2951
Offscreen canvas not in 57.
status-firefox57:
--- → wontfix
Comment 5•3 years ago
•
|
||
We now throw InvalidStateError with a better message.
Status: NEW → RESOLVED
Closed: 3 years ago
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•