emacs-devel
[Top][All Lists]
Advanced

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

Re: Small patch for rng-valid.el


From: Lennart Borgman
Subject: Re: Small patch for rng-valid.el
Date: Wed, 13 May 2009 22:55:48 +0200

On Wed, May 13, 2009 at 4:34 PM, Jason Rumney <address@hidden> wrote:
> Lennart Borgman wrote:
>>
>> It seems like I just sent the wrong patch for rng-valid.el on 2 May.
>> Here is the patch I thought I sent. It contains only some error
>> checking and is very simple (the errors actually happens sometimes).
>
> Under what circumstances does the error happen? There is no bug report as
> far as I can see that mentions this problem, and a quick look at the code
> suggests that if rng-validate-up-to-date-end were ever to become nil, there
> would be errors happening throughout the code, so fixing this one place
> would not be sufficient.

There were two different situations that I tried to catch in this
patch. One was were the buffer is gone when a timer is about to run. I
guess there is no problem with that part of the patch.

The other situation is when rng-validate-upto-date-end is nil. And
yes, that is more problematic. I have seen it happen in
rng-after-change-function, but nowhere else. I believe it only has
happened to me when nxml-mode (or rather nxhtml-mode) is used together
with mumamo.el (but I am not sure of that). This might of course
depend on the way I handle this in mumamo. It takes me some time to
investigate this and I would prefer not to do it now since the
handling of parsing functions within a multi mode framework like
mumamo probably require some more general thoughts. (I believe that it
can has something to do with that I do not restart the parser
correctly when creating new chunks. The rng-after-change-function
seems to be set up to early, but fixing this can perhaps be
complicated.)

However the check for a non-nil rng-validate-up-to-date-end in
rng-after-change-function is very cheap so I see no good reason not to
add it there now. I have not looked at the other places where this
variable is used though.




reply via email to

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