show decode errors reliably.

This commit is contained in:
Jason Miller
2018-07-04 13:34:45 -04:00
committed by Surma
parent d22a343378
commit 77a6d21924

View File

@@ -155,7 +155,7 @@ export default class App extends Component<Props, State> {
// changed.
if (source !== prevState.source || image.encoderState !== prevImage.encoderState) {
if (prevImage.downloadUrl) URL.revokeObjectURL(prevImage.downloadUrl);
this.updateImage(i);
this.updateImage(i).catch(console.error);
}
}
}
@@ -230,7 +230,13 @@ export default class App extends Component<Props, State> {
return;
}
const bmp = await createImageBitmap(file);
let bmp;
try {
bmp = await createImageBitmap(file);
} catch (err) {
this.setState({ error: `Encoding error (type=${image.encoderState.type}): ${err}` });
throw err;
}
images = this.state.images.slice() as [EncodedImage, EncodedImage];
@@ -243,7 +249,7 @@ export default class App extends Component<Props, State> {
loadedCounter: loadingCounter,
};
this.setState({ images, error: '' });
this.setState({ images });
}
render({ }: Props, { loading, error, images }: State) {