From 642e5687b69bf62a6b5725a1415a2c072f0141eb Mon Sep 17 00:00:00 2001 From: Lovell Fuller Date: Sat, 11 Jul 2015 22:56:18 +0100 Subject: [PATCH] Guard against unexpected overlay band format #97 --- src/pipeline.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/pipeline.cc b/src/pipeline.cc index 674879ba..21b7334d 100755 --- a/src/pipeline.cc +++ b/src/pipeline.cc @@ -726,6 +726,16 @@ class PipelineWorker : public NanAsyncWorker { (baton->err).append("Overlay image is of an unsupported image format"); return Error(); } + if (image->BandFmt != VIPS_FORMAT_UCHAR && image->BandFmt != VIPS_FORMAT_FLOAT) { + (baton->err).append("Expected image band format to be uchar or float: "); + (baton->err).append(vips_enum_nick(VIPS_TYPE_BAND_FORMAT, image->BandFmt)); + return Error(); + } + if (overlayImage->BandFmt != VIPS_FORMAT_UCHAR && overlayImage->BandFmt != VIPS_FORMAT_FLOAT) { + (baton->err).append("Expected overlay image band format to be uchar or float: "); + (baton->err).append(vips_enum_nick(VIPS_TYPE_BAND_FORMAT, overlayImage->BandFmt)); + return Error(); + } if (!HasAlpha(overlayImage)) { (baton->err).append("Overlay image must have an alpha channel"); return Error();