whatwg / whatwg/html

Figure out what sort of special-casing IE and Chrome do for data: (and what other URIs)?

Open
#656 14 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

interop topic: canvas
Dominant language
HTML
Stars
9.4k
Forks
3.2k
Avg merge
3d 9h
Merged PRs (30d)
38

Description

It looks like the "Check the usability of the image argument" algorithm from the spec returns "good" for data: images in IE and Chrome even when per current spec it should not. Testcase goes like so:

var img = new Image();
img.src = 'data:stuff'; // Need actual valid image data: URI here
var canvas = document.createElement('canvas');
var pattern = canvas.getContext("2d").createPattern(img, 'no-repeat');
canvas.getContext("2d").drawImage(img, 0, 0)

Per spec, pattern should be null here (modulo #655) and there should be nothing painted to the canvas. See https://bugzilla.mozilla.org/show_bug.cgi?id=1164458#c9 for the spec analysis. It sounds like IE and Chrome are doing something else instead. It would be good to understand what, exactly, this "something else" is...

@domenic @travisleithead @jacobrossi any idea who would have that info?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the “Check the usability of the image argument” algorithm and the supplied Image, data: URI, createPattern, and drawImage testcase. Reproduce it with a valid data: image in IE and Chrome, compare the result with the current specification and the linked Bugzilla analysis, and document the browser behavior or required specification change.

Written by the indexing model from the issue text.

Assessment

Tech stack
html
Domain
frontend, web-dev
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.