lib/ts_bm: reset initial match offset for every block of text
[platform/kernel/linux-starfive.git] / lib / ts_bm.c
index 1f22342..c8ecbf7 100644 (file)
@@ -60,10 +60,12 @@ static unsigned int bm_find(struct ts_config *conf, struct ts_state *state)
        struct ts_bm *bm = ts_config_priv(conf);
        unsigned int i, text_len, consumed = state->offset;
        const u8 *text;
-       int shift = bm->patlen - 1, bs;
+       int bs;
        const u8 icase = conf->flags & TS_IGNORECASE;
 
        for (;;) {
+               int shift = bm->patlen - 1;
+
                text_len = conf->get_next_block(consumed, &text, conf, state);
 
                if (unlikely(text_len == 0))