4 From: Bram Moolenaar <Bram@moolenaar.net>
6 Content-Type: text/plain; charset=ISO-8859-1
7 Content-Transfer-Encoding: 8bit
10 Patch 7.0.140 (after 7.0.134)
11 Problem: Comparing recursively looped List or Dictionary doesn't work well.
12 Solution: Detect comparing a List or Dictionary with itself.
16 *** ../vim-7.0.139/src/eval.c Sun Oct 15 22:38:41 2006
17 --- src/eval.c Sun Oct 15 22:30:09 2006
22 listitem_T *item1, *item2;
26 if (list_len(l1) != list_len(l2))
37 if (dict_len(d1) != dict_len(d2))
42 static int recursive = 0; /* cach recursive loops */
45 ! /* Catch lists and dicts that have an endless loop by limiting
46 ! * recursiveness to 1000. */
47 ! if (tv1->v_type != tv2->v_type || recursive >= 1000)
53 static int recursive = 0; /* cach recursive loops */
56 ! if (tv1->v_type != tv2->v_type)
58 + /* Catch lists and dicts that have an endless loop by limiting
59 + * recursiveness to 1000. We guess they are equal then. */
60 + if (recursive >= 1000)
65 *** ../vim-7.0.139/src/version.c Tue Oct 17 13:39:36 2006
66 --- src/version.c Tue Oct 17 15:15:04 2006
70 { /* Add new patch number below this line */
76 hundred-and-one symptoms of being an internet addict:
77 54. You start tilting your head sideways to smile. :-)
79 /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
80 /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
81 \\\ download, build and distribute -- http://www.A-A-P.org ///
82 \\\ help me help AIDS victims -- http://ICCF-Holland.org ///