Index: frmts/gtiff/geotiff.cpp
===================================================================
--- frmts/gtiff/geotiff.cpp	(révision 11968)
+++ frmts/gtiff/geotiff.cpp	(copie de travail)
@@ -382,6 +382,7 @@
     CPLErr		eErr = CE_None;
 
     poGDS->SetDirectory();
+    poGDS->FlushBlockBuf();
 
     if( TIFFIsTiled(poGDS->hTIFF) )
         nBlockBufSize = TIFFTileSize( poGDS->hTIFF );
@@ -982,6 +983,7 @@
     CPLErr		eErr = CE_None;
 
     poGDS->SetDirectory();
+    poGDS->FlushBlockBuf();
 
     nBlockBufSize = 4 * nBlockXSize * nBlockYSize;
     nBlockId = nBlockXOff + nBlockYOff * nBlocksPerRow;
@@ -1199,6 +1201,7 @@
     CPLErr		eErr = CE_None;
 
     poGDS->SetDirectory();
+    poGDS->FlushBlockBuf();
 
     if( TIFFIsTiled(poGDS->hTIFF) )
         nBlockBufSize = TIFFTileSize( poGDS->hTIFF );
@@ -1434,6 +1437,7 @@
     CPLErr		eErr = CE_None;
 
     poGDS->SetDirectory();
+    poGDS->FlushBlockBuf();
 
     if( TIFFIsTiled(poGDS->hTIFF) )
         nBlockBufSize = TIFFTileSize( poGDS->hTIFF );

