diff
--- a/jdct.c
+++ b/jdct.c
@@ -23,6 +23,9 @@
    cinfo->comps_in_scan = n;
 
    for (i = 0; i < cinfo->num_components; i++)
+       if (i >= MAX_COMPS_IN_SCAN)
+           break;
+
        cinfo->cur_comp_info[MIN(i, MAX_COMPS_IN_SCAN - 1)] = NULL; 
    
    /* Initialize the scan parameters.  We'll use the same values for all

