diff --git a/libavcodec/dfa.c b/libavcodec/dfa.c
index f222a594596673c87b0393a44a5b9e16cd976b4c..eaa79be49a84eb1ab33a932504a1b348e97731f1 100644
--- a/libavcodec/dfa.c
+++ b/libavcodec/dfa.c
@@ -339,7 +339,7 @@ static int dfa_decode_frame(AVCodecContext *avctx,
             tmp_buf = buf;
             for (i = 0; i < pal_elems; i++) {
                 s->pal[i] = bytestream_get_be24(&tmp_buf) << 2;
-                s->pal[i] |= (s->pal[i] >> 6) & 0x333;
+                s->pal[i] |= (s->pal[i] >> 6) & 0x30303;
             }
             s->pic.palette_has_changed = 1;
         } else if (chunk_type <= 9) {