diff --git a/Code/IO/otbJPEG2000ImageIO.cxx b/Code/IO/otbJPEG2000ImageIO.cxx
index 3081da0644f7aec6cad8c79e467089841e94176b..cda6bed77f93b14fb8e4a0e59c1cb93e00891206 100644
--- a/Code/IO/otbJPEG2000ImageIO.cxx
+++ b/Code/IO/otbJPEG2000ImageIO.cxx
@@ -835,6 +835,12 @@ ITK_THREAD_RETURN_TYPE JPEG2000ImageIO::ThreaderCallback( void *arg )
 
   total = std::min((unsigned int)tiles->size(),threadCount);
 
+  if(total == 0)
+    {
+    return ITK_THREAD_RETURN_VALUE;
+    }
+
+
   unsigned int tilesPerThread = tiles->size()/total;
 
   if(tilesPerThread == 0)