]> granicus.if.org Git - vim/commitdiff
patch 7.4.776 v7.4.776
authorBram Moolenaar <Bram@vim.org>
Fri, 10 Jul 2015 17:16:34 +0000 (19:16 +0200)
committerBram Moolenaar <Bram@vim.org>
Fri, 10 Jul 2015 17:16:34 +0000 (19:16 +0200)
Problem:    Equivalence class for 'd' does not work correctly.
Solution:   Fix 0x1e0f and 0x1d0b. (Dominique Pelle)

src/regexp.c
src/regexp_nfa.c
src/version.c

index 4ce37c4268cd8eaeb7da75cad0adc7724860b497..45b8071abec51ff01f014e013229aebf11eb3718 100644 (file)
@@ -1011,10 +1011,10 @@ reg_equi_class(c)
                      REGMBC(0x107) REGMBC(0x109) REGMBC(0x10b)
                      REGMBC(0x10d)
                      return;
-           case 'd': CASEMBC(0x10f) CASEMBC(0x111) CASEMBC(0x1d0b)
-           CASEMBC(0x1e11)
+           case 'd': CASEMBC(0x10f) CASEMBC(0x111) CASEMBC(0x1e0b)
+           CASEMBC(0x1e0f) CASEMBC(0x1e11)
                      regmbc('d'); REGMBC(0x10f) REGMBC(0x111)
-                     REGMBC(0x1e0b) REGMBC(0x01e0f) REGMBC(0x1e11)
+                     REGMBC(0x1e0b) REGMBC(0x1e0f) REGMBC(0x1e11)
                      return;
            case 'e': case 0xe8: case 0xe9: case 0xea: case 0xeb:
            CASEMBC(0x113) CASEMBC(0x115) CASEMBC(0x117) CASEMBC(0x119)
index bb55a7159be8f8d041cf170339595d9bd44b7f2f..609da037152ad4f6d0b0e5b2d01f33c4bd507af8 100644 (file)
@@ -542,7 +542,6 @@ nfa_get_match_text(start)
     ret = alloc(len);
     if (ret != NULL)
     {
-       len = 0;
        p = start->out->out; /* skip first char, it goes into regstart */
        s = ret;
        while (p->c > 0)
@@ -946,10 +945,10 @@ nfa_emit_equi_class(c)
                    EMITMBC(0x10b) EMITMBC(0x10d)
                    return OK;
 
-           case 'd': CASEMBC(0x10f) CASEMBC(0x111) CASEMBC(0x1d0b)
-           CASEMBC(0x1e11)
-                   EMIT2('d'); EMITMBC(0x10f) EMITMBC(0x111) EMITMBC(0x1e0b)
-                   EMITMBC(0x01e0f) EMITMBC(0x1e11)
+           case 'd': CASEMBC(0x10f) CASEMBC(0x111) CASEMBC(0x1e0b)
+           CASEMBC(0x1e0f) CASEMBC(0x1e11)
+                   EMIT2('d'); EMITMBC(0x10f) EMITMBC(0x111)
+                   EMITMBC(0x1e0b) EMITMBC(0x1e0f) EMITMBC(0x1e11)
                    return OK;
 
            case 'e': case 0350: case 0351: case 0352: case 0353:
index 9a7aa784eb03e2ec86ea777a9a4cd514f567fb82..ddc86580b699ec7972d7ff2e6f05b344d8842439 100644 (file)
@@ -741,6 +741,8 @@ static char *(features[]) =
 
 static int included_patches[] =
 {   /* Add new patch number below this line */
+/**/
+    776,
 /**/
     775,
 /**/