2d.imageData.put.dirty.outside

putImageData() handles dirty rectangles outside the canvas correctly

Actual output:

FAIL (fallback content)

Expected output: