diff --git a/libavcodec/faxcompr.c b/libavcodec/faxcompr.c
index f53c64b47bf704e1c73e1b5891f74d0da162f317..b5f6598bbe7f4ceb66e593f982a0cf53c376873f 100644
--- a/libavcodec/faxcompr.c
+++ b/libavcodec/faxcompr.c
@@ -238,12 +238,10 @@ static void put_line(uint8_t *dst, int size, int width, const int *runs)
     while(pix_left > 0){
         run = runs[run_idx++];
         mode = ~mode;
-        if(!run){
-            continue;
-        }
         pix_left -= run;
         for(; run > 16; run -= 16)
             put_sbits(&pb, 16, mode);
+        if(run)
         put_sbits(&pb, run, mode);
     }
 }