Index: jdmarker.c =================================================================== --- jdmarker.c.orig +++ jdmarker.c @@ -276,7 +276,7 @@ get_sof (j_decompress_ptr cinfo, boolean ((j_common_ptr) cinfo, JPOOL_IMAGE, cinfo->num_components * SIZEOF(jpeg_component_info)); - for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components; + for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components && ci < MAX_COMPS_IN_SCAN; ci++, compptr++) { compptr->component_index = ci; INPUT_BYTE(cinfo, compptr->component_id, return FALSE);