bug-gnu-emacs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#11077: 24.0.94; avl-tree--enter-balance: (wrong-type-argument arrayp


From: Stefan Monnier
Subject: bug#11077: 24.0.94; avl-tree--enter-balance: (wrong-type-argument arrayp nil)
Date: Tue, 27 Mar 2012 16:44:18 -0400
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.94 (gnu/linux)

>> I have to run the body of the outer loop multiple times or increase
>> the repeat count of the inner loop to trigger the error.  I am not
>> running out of virtual memory, though.  Adding `do (garbage-collect)'
>> to the outer loop does not help either.

> This seems to be a bug caused by inconsistencies in the tree generated
> by a specific dataset.  This recipe triggers the error right away:

This was a simple paren-typo.  Thank you for catching it,


        Stefan


=== modified file 'lisp/emacs-lisp/avl-tree.el'
--- lisp/emacs-lisp/avl-tree.el 2012-01-19 07:21:25 +0000
+++ lisp/emacs-lisp/avl-tree.el 2012-03-27 20:40:27 +0000
@@ -295,9 +295,9 @@
                (if (> (* sgn b2) 0) (- sgn) 0)
              (avl-tree--node-balance p1)
                (if (< (* sgn b2) 0) sgn 0)
-             (avl-tree--node-branch node branch) p2
-             (avl-tree--node-balance
-              (avl-tree--node-branch node branch)) 0))
+                (avl-tree--node-branch node branch) p2))
+      (setf (avl-tree--node-balance
+             (avl-tree--node-branch node branch)) 0)
       nil))))
 
 (defun avl-tree--do-enter (cmpfun root branch data &optional updatefun)





reply via email to

[Prev in Thread] Current Thread [Next in Thread]