2009/3/5 Neil Jerram <n...@ossau.uklinux.net>:
>> Yes, it's an unrelated bug.  All of the places that raise errors (and
>> so exit non-locally) should exit the critical section first.
>
>> You're absolutely right.  I'll leave this part out, and generate a
>> separate patch for it.
>
> Here's the separate patch...

Err, OK, so I thought I'd look at the code more carefully.
I don't understand the patch.

libguile/scmsigs.c has a SCM_CRITICAL_SECTION_START
at line 339, which seems to be balanced by
SCM_CRITICAL_SECTION_END;
at lines 442 and 461, right before the return from
the subroutine.

So why insert this seemingly un-needed SCM_CRITICAL_SECTION_END,
and worse, nest it in an else block?

--linas


Reply via email to