diff --git a/modules/demux/aiff.c b/modules/demux/aiff.c
index e100cb41a171c72b9507475f589dee0376d24e7f..886412ca24f32a058217c3c2f527edffbf7eb837 100644
--- a/modules/demux/aiff.c
+++ b/modules/demux/aiff.c
@@ -114,7 +114,8 @@ static int Open( vlc_object_t *p_this )
         return VLC_EGENERIC;
 
     /* skip aiff header */
-    vlc_stream_Read( p_demux->s, NULL, 12 );
+    if( vlc_stream_Read( p_demux->s, NULL, 12 ) < 12 )
+        return VLC_EGENERIC;
 
     /* Fill p_demux field */
     DEMUX_INIT_COMMON(); p_sys = p_demux->p_sys;