[Glitch] Fix image uploads being perfectly white when canvas read access is blocked

Port 111a0628fc to glitch-soc

Signed-off-by: Thibaut Girka <thib@sitedethib.com>
master
ThibG 5 years ago committed by Thibaut Girka
parent a4b15e2cf0
commit 381dbb6569
  1. 8
      app/javascript/flavours/glitch/util/resize_image.js

@ -67,6 +67,14 @@ const processImage = (img, { width, height, orientation, type = 'image/png' }) =
context.drawImage(img, 0, 0, width, height);
// The Tor Browser and maybe other browsers may prevent reading from canvas
// and return an all-white image instead. Assume reading failed if the resized
// image is perfectly white.
const imageData = context.getImageData(0, 0, width, height);
if (imageData.every(value => value === 255)) {
throw 'Failed to read from canvas';
}
canvas.toBlob(resolve, type);
});

Loading…
Cancel
Save