diff --git a/MagickCore/quantize.c b/MagickCore/quantize.c
index 4a1e5e2..290e003 100644
--- a/MagickCore/quantize.c
+++ b/MagickCore/quantize.c
@@ -3118,8 +3118,7 @@
     span;
 
   cube_info->next_threshold=0.0;
-  if ((cube_info->colors > cube_info->maximum_colors) && 
-      (cube_info->nodes > 256))
+  if (cube_info->colors > cube_info->maximum_colors)
     {
       MagickRealType
         *quantize_error;
@@ -3135,8 +3134,9 @@
             quantize_error);
           qsort(quantize_error,cube_info->nodes,sizeof(MagickRealType),
             MagickRealTypeCompare);
-          cube_info->next_threshold=quantize_error[MagickMax((ssize_t)
-            cube_info->nodes-110*(cube_info->maximum_colors+1)/100,0)];
+          if (cube_info->nodes > (110*(cube_info->maximum_colors+1)/100))
+            cube_info->next_threshold=quantize_error[cube_info->nodes-110*
+              (cube_info->maximum_colors+1)/100];
           quantize_error=(MagickRealType *) RelinquishMagickMemory(
             quantize_error);
         }