diff --git a/libvips/foreign/vips2jpeg.c b/libvips/foreign/vips2jpeg.c index e2172cf3..f645fa6b 100644 --- a/libvips/foreign/vips2jpeg.c +++ b/libvips/foreign/vips2jpeg.c @@ -845,8 +845,7 @@ write_jpeg_block( VipsRegion *region, VipsRect *area, void *a ) write->row_pointer[i] = (JSAMPROW) VIPS_REGION_ADDR( region, 0, area->top + i ); - /* We are running in a background thread. We need to catch any - * longjmp()s from jpeg_write_scanlines() here. + /* Catch any longjmp()s from jpeg_write_scanlines() here. */ if( setjmp( write->eman.jmp ) ) return( -1 ); diff --git a/test/test_foreign.py b/test/test_foreign.py index 52e95165..85b66834 100755 --- a/test/test_foreign.py +++ b/test/test_foreign.py @@ -50,6 +50,10 @@ class TestForeign(unittest.TestCase): self.cmyk = self.colour.bandjoin(self.mono) self.cmyk = self.cmyk.copy(interpretation = Vips.Interpretation.CMYK) + # this will load via libMagick as a colour image + im = Vips.Image.new_from_file(self.gif_file) + self.onebit = im[1] > 128 + # we have test files for formats which have a clear standard def file_loader(self, loader, test_file, validate): im = Vips.call(loader, test_file) @@ -144,6 +148,11 @@ class TestForeign(unittest.TestCase): self.save_load("%s.tif", self.colour) self.save_load("%s.tif", self.cmyk) + self.save_load("%s.tif", self.onebit) + self.save_load("%s.tif[squash]", self.onebit) + self.save_load("%s.tif[miniswhite]", self.onebit) + self.save_load("%s.tif[squash,miniswhite]", self.onebit) + self.save_load_file("test.tif", "[tile]", self.colour, 0) self.save_load_file("test.tif", "[tile,pyramid]", self.colour, 0) self.save_load_file("test.tif",