diff --git a/src/common/gifdecod.cpp b/src/common/gifdecod.cpp index 74d9adfbec..1668bc295b 100644 --- a/src/common/gifdecod.cpp +++ b/src/common/gifdecod.cpp @@ -305,8 +305,9 @@ int wxGIFDecoder::getcode(wxInputStream& stream, int bits, int ab_fin) * an end-of-image symbol (ab_fin) they come up with * a zero-length subblock!! We catch this here so * that the decoder sees an ab_fin code. + * We also need to check if the file doesn't end unexpectedly. */ - if (m_restbyte == 0) + if (stream.Eof() || m_restbyte == 0) { code = ab_fin; break; @@ -860,7 +861,7 @@ wxGIFErrorCode wxGIFDecoder::LoadGIF(wxInputStream& stream) // get initial code size from first byte in raster data bits = stream.GetC(); - if (bits == 0) + if (stream.Eof() || bits <= 0) return wxGIF_INVFORMAT; // decode image diff --git a/tests/Makefile.in b/tests/Makefile.in index 1adca31cda..e6c858fdae 100644 --- a/tests/Makefile.in +++ b/tests/Makefile.in @@ -582,7 +582,7 @@ data-image-sample: data-images: @mkdir -p image - @for f in bitfields.bmp bitfields-alpha.bmp 8bpp-colorsused-large.bmp 8bpp-colorsused-negative.bmp rle4-delta-320x240.bmp rle8-delta-320x240.bmp rle8-delta-320x240-expected.bmp horse_grey.bmp horse_grey_flipped.bmp horse_rle4.bmp horse_rle4_flipped.bmp horse_rle8.bmp horse_rle8_flipped.bmp horse_bicubic_50x50.png horse_bicubic_100x100.png horse_bicubic_150x150.png horse_bicubic_300x300.png horse_bilinear_50x50.png horse_bilinear_100x100.png horse_bilinear_150x150.png horse_bilinear_300x300.png horse_box_average_50x50.png horse_box_average_100x100.png horse_box_average_150x150.png horse_box_average_300x300.png cross_bicubic_256x256.png cross_bilinear_256x256.png cross_box_average_256x256.png cross_nearest_neighb_256x256.png paste_input_background.png paste_input_black.png paste_input_overlay_transparent_border_opaque_square.png paste_input_overlay_transparent_border_semitransparent_circle.png paste_input_overlay_transparent_border_semitransparent_square.png paste_result_background_plus_circle_plus_square.png paste_result_background_plus_overlay_transparent_border_opaque_square.png paste_result_background_plus_overlay_transparent_border_semitransparent_square.png paste_result_no_background_square_over_circle.png wx.png toucan.png toucan_hue_0.538.png toucan_sat_-0.41.png toucan_bright_-0.259.png toucan_hsv_0.538_-0.41_-0.259.png toucan_light_46.png toucan_dis_240.png toucan_grey.png toucan_mono_255_255_255.png width-times-height-overflow.bmp width_height_32_bit_overflow.pgm; do \ + @for f in bitfields.bmp bitfields-alpha.bmp 8bpp-colorsused-large.bmp 8bpp-colorsused-negative.bmp rle4-delta-320x240.bmp rle8-delta-320x240.bmp rle8-delta-320x240-expected.bmp horse_grey.bmp horse_grey_flipped.bmp horse_rle4.bmp horse_rle4_flipped.bmp horse_rle8.bmp horse_rle8_flipped.bmp horse_bicubic_50x50.png horse_bicubic_100x100.png horse_bicubic_150x150.png horse_bicubic_300x300.png horse_bilinear_50x50.png horse_bilinear_100x100.png horse_bilinear_150x150.png horse_bilinear_300x300.png horse_box_average_50x50.png horse_box_average_100x100.png horse_box_average_150x150.png horse_box_average_300x300.png cross_bicubic_256x256.png cross_bilinear_256x256.png cross_box_average_256x256.png cross_nearest_neighb_256x256.png paste_input_background.png paste_input_black.png paste_input_overlay_transparent_border_opaque_square.png paste_input_overlay_transparent_border_semitransparent_circle.png paste_input_overlay_transparent_border_semitransparent_square.png paste_result_background_plus_circle_plus_square.png paste_result_background_plus_overlay_transparent_border_opaque_square.png paste_result_background_plus_overlay_transparent_border_semitransparent_square.png paste_result_no_background_square_over_circle.png wx.png toucan.png toucan_hue_0.538.png toucan_sat_-0.41.png toucan_bright_-0.259.png toucan_hsv_0.538_-0.41_-0.259.png toucan_light_46.png toucan_dis_240.png toucan_grey.png toucan_mono_255_255_255.png width-times-height-overflow.bmp width_height_32_bit_overflow.pgm bad_truncated.gif; do \ if test ! -f image/$$f -a ! -d image/$$f ; \ then x=yep ; \ else x=`find $(srcdir)/image/$$f -newer image/$$f -print` ; \ diff --git a/tests/image/bad_truncated.gif b/tests/image/bad_truncated.gif new file mode 100644 index 0000000000..3568c77dcd Binary files /dev/null and b/tests/image/bad_truncated.gif differ diff --git a/tests/image/image.cpp b/tests/image/image.cpp index d524e66e8d..d84692fd34 100644 --- a/tests/image/image.cpp +++ b/tests/image/image.cpp @@ -1257,6 +1257,14 @@ TEST_CASE_METHOD(ImageHandlersInit, "wxImage::GIFComment", "[image]") #endif //wxUSE_PALETTE } +TEST_CASE_METHOD(ImageHandlersInit, "wxImage::BadGIF", "[image][gif][error]") +{ + wxImage image("image/bad_truncated.gif"); + REQUIRE( image.IsOk() ); + + CHECK( image.GetSize() == wxSize(1200, 800) ); +} + #endif // wxUSE_GIF TEST_CASE_METHOD(ImageHandlersInit, "wxImage::DibPadding", "[image]") diff --git a/tests/makefile.gcc b/tests/makefile.gcc index 138bf16b3b..37665d2386 100644 --- a/tests/makefile.gcc +++ b/tests/makefile.gcc @@ -294,10 +294,10 @@ ifeq ($(SHARED),1) LIBTYPE_SUFFIX = dll endif ifeq ($(MONOLITHIC),0) -EXTRALIBS_FOR_BASE = +EXTRALIBS_FOR_BASE = endif ifeq ($(MONOLITHIC),1) -EXTRALIBS_FOR_BASE = +EXTRALIBS_FOR_BASE = endif ifeq ($(MONOLITHIC),1) __LIB_PNG_IF_MONO_p = $(__LIB_PNG_p) @@ -356,13 +356,13 @@ ifeq ($(USE_RTTI),0) __RTTIFLAG = -fno-rtti endif ifeq ($(USE_RTTI),1) -__RTTIFLAG = +__RTTIFLAG = endif ifeq ($(USE_EXCEPTIONS),0) __EXCEPTIONSFLAG = -fno-exceptions endif ifeq ($(USE_EXCEPTIONS),1) -__EXCEPTIONSFLAG = +__EXCEPTIONSFLAG = endif ifeq ($(WXUNIV),1) __WXUNIV_DEFINE_p = -D__WXUNIVERSAL__ @@ -471,17 +471,17 @@ endif endif ifeq ($(BUILD),release) ifeq ($(DEBUG_INFO),default) -__DEBUGINFO = +__DEBUGINFO = endif endif ifeq ($(DEBUG_INFO),0) -__DEBUGINFO = +__DEBUGINFO = endif ifeq ($(DEBUG_INFO),1) __DEBUGINFO = -g endif ifeq ($(USE_THREADS),0) -__THREADSFLAG = +__THREADSFLAG = endif ifeq ($(USE_THREADS),1) __THREADSFLAG = -mthreads @@ -496,7 +496,7 @@ $(OBJS): all: $(OBJS)\test.exe $(__test_drawing___depname) $(__test_drawingplugin___depname) $(__test_gui___depname) $(__test_allheaders___depname) data data-image-sample data-images fr ja -clean: +clean: -if exist $(OBJS)\*.o del $(OBJS)\*.o -if exist $(OBJS)\*.d del $(OBJS)\*.d -if exist $(OBJS)\test.exe del $(OBJS)\test.exe @@ -542,23 +542,23 @@ $(OBJS)\test_allheaders.exe: $(TEST_ALLHEADERS_OBJECTS) $(OBJS)\test_allheaders_ @-del $@.rsp endif -data: +data: if not exist $(OBJS) mkdir $(OBJS) for %%f in (testdata.conf horse.svg) do if not exist $(OBJS)\%%f copy .\%%f $(OBJS) -data-image-sample: +data-image-sample: if not exist $(OBJS) mkdir $(OBJS) for %%f in (horse.ani horse.bmp horse.cur horse.gif horse.ico horse.jpg horse.pcx horse.png horse.pnm horse.tga horse.tif horse.xpm) do if not exist $(OBJS)\%%f copy .\%%f $(OBJS) -data-images: +data-images: if not exist image mkdir image - for %%f in (bitfields.bmp bitfields-alpha.bmp 8bpp-colorsused-large.bmp 8bpp-colorsused-negative.bmp rle4-delta-320x240.bmp rle8-delta-320x240.bmp rle8-delta-320x240-expected.bmp horse_grey.bmp horse_grey_flipped.bmp horse_rle4.bmp horse_rle4_flipped.bmp horse_rle8.bmp horse_rle8_flipped.bmp horse_bicubic_50x50.png horse_bicubic_100x100.png horse_bicubic_150x150.png horse_bicubic_300x300.png horse_bilinear_50x50.png horse_bilinear_100x100.png horse_bilinear_150x150.png horse_bilinear_300x300.png horse_box_average_50x50.png horse_box_average_100x100.png horse_box_average_150x150.png horse_box_average_300x300.png cross_bicubic_256x256.png cross_bilinear_256x256.png cross_box_average_256x256.png cross_nearest_neighb_256x256.png paste_input_background.png paste_input_black.png paste_input_overlay_transparent_border_opaque_square.png paste_input_overlay_transparent_border_semitransparent_circle.png paste_input_overlay_transparent_border_semitransparent_square.png paste_result_background_plus_circle_plus_square.png paste_result_background_plus_overlay_transparent_border_opaque_square.png paste_result_background_plus_overlay_transparent_border_semitransparent_square.png paste_result_no_background_square_over_circle.png wx.png toucan.png toucan_hue_0.538.png toucan_sat_-0.41.png toucan_bright_-0.259.png toucan_hsv_0.538_-0.41_-0.259.png toucan_light_46.png toucan_dis_240.png toucan_grey.png toucan_mono_255_255_255.png width-times-height-overflow.bmp width_height_32_bit_overflow.pgm) do if not exist image\%%f copy .\image\%%f image + for %%f in (bitfields.bmp bitfields-alpha.bmp 8bpp-colorsused-large.bmp 8bpp-colorsused-negative.bmp rle4-delta-320x240.bmp rle8-delta-320x240.bmp rle8-delta-320x240-expected.bmp horse_grey.bmp horse_grey_flipped.bmp horse_rle4.bmp horse_rle4_flipped.bmp horse_rle8.bmp horse_rle8_flipped.bmp horse_bicubic_50x50.png horse_bicubic_100x100.png horse_bicubic_150x150.png horse_bicubic_300x300.png horse_bilinear_50x50.png horse_bilinear_100x100.png horse_bilinear_150x150.png horse_bilinear_300x300.png horse_box_average_50x50.png horse_box_average_100x100.png horse_box_average_150x150.png horse_box_average_300x300.png cross_bicubic_256x256.png cross_bilinear_256x256.png cross_box_average_256x256.png cross_nearest_neighb_256x256.png paste_input_background.png paste_input_black.png paste_input_overlay_transparent_border_opaque_square.png paste_input_overlay_transparent_border_semitransparent_circle.png paste_input_overlay_transparent_border_semitransparent_square.png paste_result_background_plus_circle_plus_square.png paste_result_background_plus_overlay_transparent_border_opaque_square.png paste_result_background_plus_overlay_transparent_border_semitransparent_square.png paste_result_no_background_square_over_circle.png wx.png toucan.png toucan_hue_0.538.png toucan_sat_-0.41.png toucan_bright_-0.259.png toucan_hsv_0.538_-0.41_-0.259.png toucan_light_46.png toucan_dis_240.png toucan_grey.png toucan_mono_255_255_255.png width-times-height-overflow.bmp width_height_32_bit_overflow.pgm bad_truncated.gif) do if not exist image\%%f copy .\image\%%f image -fr: +fr: if not exist $(OBJS)\intl\fr mkdir $(OBJS)\intl\fr for %%f in (internat.po internat.mo) do if not exist $(OBJS)\intl\fr\%%f copy .\intl\fr\%%f $(OBJS)\intl\fr -ja: +ja: if not exist $(OBJS)\intl\ja mkdir $(OBJS)\intl\ja for %%f in (internat.po internat.mo) do if not exist $(OBJS)\intl\ja\%%f copy .\intl\ja\%%f $(OBJS)\intl\ja diff --git a/tests/makefile.vc b/tests/makefile.vc index 3d76c9ebbb..54dc4cbb3d 100644 --- a/tests/makefile.vc +++ b/tests/makefile.vc @@ -409,19 +409,19 @@ WIN32_DPI_LINKFLAG = /MANIFEST:EMBED \ /MANIFESTINPUT:./../include/wx/msw/wx_dpi_aware_pmv2.manifest !endif !if "$(MONOLITHIC)" == "0" -EXTRALIBS_FOR_BASE = +EXTRALIBS_FOR_BASE = !endif !if "$(MONOLITHIC)" == "1" -EXTRALIBS_FOR_BASE = +EXTRALIBS_FOR_BASE = !endif !if "$(BUILD)" == "debug" && "$(DEBUG_INFO)" == "default" __DEBUGINFO_2 = $(__DEBUGRUNTIME_3) !endif !if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default" -__DEBUGINFO_2 = +__DEBUGINFO_2 = !endif !if "$(DEBUG_INFO)" == "0" -__DEBUGINFO_2 = +__DEBUGINFO_2 = !endif !if "$(DEBUG_INFO)" == "1" __DEBUGINFO_2 = $(__DEBUGRUNTIME_3) @@ -442,10 +442,10 @@ __test_drawing___depname = $(OBJS)\test_drawing.exe __DEBUGINFO_19 = $(__DEBUGRUNTIME_3) !endif !if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default" -__DEBUGINFO_19 = +__DEBUGINFO_19 = !endif !if "$(DEBUG_INFO)" == "0" -__DEBUGINFO_19 = +__DEBUGINFO_19 = !endif !if "$(DEBUG_INFO)" == "1" __DEBUGINFO_19 = $(__DEBUGRUNTIME_3) @@ -463,10 +463,10 @@ __test_drawingplugin___depname = $(OBJS)\test_drawingplugin.dll __DEBUGINFO_37 = $(__DEBUGRUNTIME_3) !endif !if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default" -__DEBUGINFO_37 = +__DEBUGINFO_37 = !endif !if "$(DEBUG_INFO)" == "0" -__DEBUGINFO_37 = +__DEBUGINFO_37 = !endif !if "$(DEBUG_INFO)" == "1" __DEBUGINFO_37 = $(__DEBUGRUNTIME_3) @@ -484,10 +484,10 @@ __test_gui___depname = $(OBJS)\test_gui.exe __DEBUGINFO_51 = $(__DEBUGRUNTIME_3) !endif !if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default" -__DEBUGINFO_51 = +__DEBUGINFO_51 = !endif !if "$(DEBUG_INFO)" == "0" -__DEBUGINFO_51 = +__DEBUGINFO_51 = !endif !if "$(DEBUG_INFO)" == "1" __DEBUGINFO_51 = $(__DEBUGRUNTIME_3) @@ -529,10 +529,10 @@ __test_allheaders___depname = $(OBJS)\test_allheaders.exe __DEBUGINFO_68 = $(__DEBUGRUNTIME_3) !endif !if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default" -__DEBUGINFO_68 = +__DEBUGINFO_68 = !endif !if "$(DEBUG_INFO)" == "0" -__DEBUGINFO_68 = +__DEBUGINFO_68 = !endif !if "$(DEBUG_INFO)" == "1" __DEBUGINFO_68 = $(__DEBUGRUNTIME_3) @@ -551,10 +551,10 @@ __WXLIB_XML_p = \ __DEBUGINFO = /Zi !endif !if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default" -__DEBUGINFO = +__DEBUGINFO = !endif !if "$(DEBUG_INFO)" == "0" -__DEBUGINFO = +__DEBUGINFO = !endif !if "$(DEBUG_INFO)" == "1" __DEBUGINFO = /Zi @@ -563,10 +563,10 @@ __DEBUGINFO = /Zi __DEBUGINFO_5 = /DEBUG !endif !if "$(BUILD)" == "release" && "$(DEBUG_INFO)" == "default" -__DEBUGINFO_5 = +__DEBUGINFO_5 = !endif !if "$(DEBUG_INFO)" == "0" -__DEBUGINFO_5 = +__DEBUGINFO_5 = !endif !if "$(DEBUG_INFO)" == "1" __DEBUGINFO_5 = /DEBUG @@ -575,10 +575,10 @@ __DEBUGINFO_5 = /DEBUG ____DEBUGRUNTIME = /D_DEBUG !endif !if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default" -____DEBUGRUNTIME = +____DEBUGRUNTIME = !endif !if "$(DEBUG_RUNTIME_LIBS)" == "0" -____DEBUGRUNTIME = +____DEBUGRUNTIME = !endif !if "$(DEBUG_RUNTIME_LIBS)" == "1" ____DEBUGRUNTIME = /D_DEBUG @@ -587,10 +587,10 @@ ____DEBUGRUNTIME = /D_DEBUG ____DEBUGRUNTIME_0 = /d _DEBUG !endif !if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default" -____DEBUGRUNTIME_0 = +____DEBUGRUNTIME_0 = !endif !if "$(DEBUG_RUNTIME_LIBS)" == "0" -____DEBUGRUNTIME_0 = +____DEBUGRUNTIME_0 = !endif !if "$(DEBUG_RUNTIME_LIBS)" == "1" ____DEBUGRUNTIME_0 = /d _DEBUG @@ -599,16 +599,16 @@ ____DEBUGRUNTIME_0 = /d _DEBUG __DEBUGRUNTIME = d !endif !if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default" -__DEBUGRUNTIME = +__DEBUGRUNTIME = !endif !if "$(DEBUG_RUNTIME_LIBS)" == "0" -__DEBUGRUNTIME = +__DEBUGRUNTIME = !endif !if "$(DEBUG_RUNTIME_LIBS)" == "1" __DEBUGRUNTIME = d !endif !if "$(BUILD)" == "debug" && "$(DEBUG_RUNTIME_LIBS)" == "default" -__DEBUGRUNTIME_3 = +__DEBUGRUNTIME_3 = !endif !if "$(BUILD)" == "release" && "$(DEBUG_RUNTIME_LIBS)" == "default" __DEBUGRUNTIME_3 = /opt:ref /opt:icf @@ -617,7 +617,7 @@ __DEBUGRUNTIME_3 = /opt:ref /opt:icf __DEBUGRUNTIME_3 = /opt:ref /opt:icf !endif !if "$(DEBUG_RUNTIME_LIBS)" == "1" -__DEBUGRUNTIME_3 = +__DEBUGRUNTIME_3 = !endif !if "$(BUILD)" == "debug" __OPTIMIZEFLAG = /Od @@ -638,7 +638,7 @@ __RTTIFLAG = /GR- __RTTIFLAG = /GR !endif !if "$(USE_EXCEPTIONS)" == "0" -__EXCEPTIONSFLAG = +__EXCEPTIONSFLAG = !endif !if "$(USE_EXCEPTIONS)" == "1" __EXCEPTIONSFLAG = /EHsc @@ -659,19 +659,19 @@ __NO_VC_CRTDBG_p_0 = /d __NO_VC_CRTDBG__ __TARGET_CPU_COMPFLAG_p = /DTARGET_CPU_COMPFLAG=0 !endif !if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "X64" -__TARGET_CPU_COMPFLAG_p = +__TARGET_CPU_COMPFLAG_p = !endif !if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "x64" -__TARGET_CPU_COMPFLAG_p = +__TARGET_CPU_COMPFLAG_p = !endif !if "$(TARGET_CPU)" == "" __TARGET_CPU_COMPFLAG_p_0 = /d TARGET_CPU_COMPFLAG=0 !endif !if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "X64" -__TARGET_CPU_COMPFLAG_p_0 = +__TARGET_CPU_COMPFLAG_p_0 = !endif !if "$(TARGET_CPU)" == "" && "$(VISUALSTUDIOPLATFORM)" == "x64" -__TARGET_CPU_COMPFLAG_p_0 = +__TARGET_CPU_COMPFLAG_p_0 = !endif !if "$(WXUNIV)" == "1" __WXUNIV_DEFINE_p = /D__WXUNIVERSAL__ @@ -782,7 +782,7 @@ $(OBJS): all: $(OBJS)\test.exe $(__test_drawing___depname) $(__test_drawingplugin___depname) $(__test_gui___depname) $(__test_allheaders___depname) data data-image-sample data-images fr ja -clean: +clean: -if exist $(OBJS)\*.obj del $(OBJS)\*.obj -if exist $(OBJS)\*.res del $(OBJS)\*.res -if exist $(OBJS)\*.pch del $(OBJS)\*.pch @@ -835,23 +835,23 @@ $(OBJS)\test_allheaders.exe: $(OBJS)\test_allheaders_dummy.obj $(TEST_ALLHEADER << !endif -data: +data: if not exist $(OBJS) mkdir $(OBJS) for %f in (testdata.conf horse.svg) do if not exist $(OBJS)\%f copy .\%f $(OBJS) -data-image-sample: +data-image-sample: if not exist $(OBJS) mkdir $(OBJS) for %f in (horse.ani horse.bmp horse.cur horse.gif horse.ico horse.jpg horse.pcx horse.png horse.pnm horse.tga horse.tif horse.xpm) do if not exist $(OBJS)\%f copy .\%f $(OBJS) -data-images: +data-images: if not exist image mkdir image - for %f in (bitfields.bmp bitfields-alpha.bmp 8bpp-colorsused-large.bmp 8bpp-colorsused-negative.bmp rle4-delta-320x240.bmp rle8-delta-320x240.bmp rle8-delta-320x240-expected.bmp horse_grey.bmp horse_grey_flipped.bmp horse_rle4.bmp horse_rle4_flipped.bmp horse_rle8.bmp horse_rle8_flipped.bmp horse_bicubic_50x50.png horse_bicubic_100x100.png horse_bicubic_150x150.png horse_bicubic_300x300.png horse_bilinear_50x50.png horse_bilinear_100x100.png horse_bilinear_150x150.png horse_bilinear_300x300.png horse_box_average_50x50.png horse_box_average_100x100.png horse_box_average_150x150.png horse_box_average_300x300.png cross_bicubic_256x256.png cross_bilinear_256x256.png cross_box_average_256x256.png cross_nearest_neighb_256x256.png paste_input_background.png paste_input_black.png paste_input_overlay_transparent_border_opaque_square.png paste_input_overlay_transparent_border_semitransparent_circle.png paste_input_overlay_transparent_border_semitransparent_square.png paste_result_background_plus_circle_plus_square.png paste_result_background_plus_overlay_transparent_border_opaque_square.png paste_result_background_plus_overlay_transparent_border_semitransparent_square.png paste_result_no_background_square_over_circle.png wx.png toucan.png toucan_hue_0.538.png toucan_sat_-0.41.png toucan_bright_-0.259.png toucan_hsv_0.538_-0.41_-0.259.png toucan_light_46.png toucan_dis_240.png toucan_grey.png toucan_mono_255_255_255.png width-times-height-overflow.bmp width_height_32_bit_overflow.pgm) do if not exist image\%f copy .\image\%f image + for %f in (bitfields.bmp bitfields-alpha.bmp 8bpp-colorsused-large.bmp 8bpp-colorsused-negative.bmp rle4-delta-320x240.bmp rle8-delta-320x240.bmp rle8-delta-320x240-expected.bmp horse_grey.bmp horse_grey_flipped.bmp horse_rle4.bmp horse_rle4_flipped.bmp horse_rle8.bmp horse_rle8_flipped.bmp horse_bicubic_50x50.png horse_bicubic_100x100.png horse_bicubic_150x150.png horse_bicubic_300x300.png horse_bilinear_50x50.png horse_bilinear_100x100.png horse_bilinear_150x150.png horse_bilinear_300x300.png horse_box_average_50x50.png horse_box_average_100x100.png horse_box_average_150x150.png horse_box_average_300x300.png cross_bicubic_256x256.png cross_bilinear_256x256.png cross_box_average_256x256.png cross_nearest_neighb_256x256.png paste_input_background.png paste_input_black.png paste_input_overlay_transparent_border_opaque_square.png paste_input_overlay_transparent_border_semitransparent_circle.png paste_input_overlay_transparent_border_semitransparent_square.png paste_result_background_plus_circle_plus_square.png paste_result_background_plus_overlay_transparent_border_opaque_square.png paste_result_background_plus_overlay_transparent_border_semitransparent_square.png paste_result_no_background_square_over_circle.png wx.png toucan.png toucan_hue_0.538.png toucan_sat_-0.41.png toucan_bright_-0.259.png toucan_hsv_0.538_-0.41_-0.259.png toucan_light_46.png toucan_dis_240.png toucan_grey.png toucan_mono_255_255_255.png width-times-height-overflow.bmp width_height_32_bit_overflow.pgm bad_truncated.gif) do if not exist image\%f copy .\image\%f image -fr: +fr: if not exist $(OBJS)\intl\fr mkdir $(OBJS)\intl\fr for %f in (internat.po internat.mo) do if not exist $(OBJS)\intl\fr\%f copy .\intl\fr\%f $(OBJS)\intl\fr -ja: +ja: if not exist $(OBJS)\intl\ja mkdir $(OBJS)\intl\ja for %f in (internat.po internat.mo) do if not exist $(OBJS)\intl\ja\%f copy .\intl\ja\%f $(OBJS)\intl\ja diff --git a/tests/test.bkl b/tests/test.bkl index 0b8e222333..e687968c45 100644 --- a/tests/test.bkl +++ b/tests/test.bkl @@ -409,6 +409,8 @@ width-times-height-overflow.bmp width_height_32_bit_overflow.pgm + + bad_truncated.gif