emacs-devel
[Top][All Lists]
Advanced

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

Re: transpose-regions


From: Kim F. Storm
Subject: Re: transpose-regions
Date: Fri, 23 Mar 2007 12:50:27 +0100
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.96 (gnu/linux)

Andreas Schwab <address@hidden> writes:

> Chong Yidong <address@hidden> writes:
>
>> The problem seems to be that a cons cell that has already been
>> garbage-collected is being passed to Fcopy_sequence during
>> copy_properties(), in intervals.c:106.  Where did this cons cell come
>> from?
>>
>>   target->plist = Fcopy_sequence (source->plist);
>>
>> Is the garbage collector somehow failing to account for cons cells
>> assigned to interval plists?
>
> Unlikely, what would be a too obvious bug to remain unnoticed until now
> (and mark_interval indeed does mark the plist).  More likely that the
> whole interval is not being marked in the first place.  The function uses
> the local variables tmp_interval[12] that are copies of the buffer
> intervals, perhaps they need to be protected from GC?

There's only a need to GC around a called function if that
function can actually do GC, i.e. if calling the function may
eventually call Feval or run byte code.  Where is that possible?

Besided, a native windows build uses conservative stack marking,
so it is not necessary to explicitly protect from GC (on that
platform).   ut was this a native or a cygwin build?

Perhaps the conservative stack marking does not work properly on 
WindowsME  (does anything work properly on ME?)

-- 
Kim F. Storm <address@hidden> http://www.cua.dk





reply via email to

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