[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#7723: Process list gone wild
From: |
Lennart Borgman |
Subject: |
bug#7723: Process list gone wild |
Date: |
Sat, 25 Dec 2010 16:29:31 +0100 |
On Sat, Dec 25, 2010 at 1:33 PM, Eli Zaretskii <eliz@gnu.org> wrote:
>> From: Lennart Borgman <lennart.borgman@gmail.com>
>> Date: Fri, 24 Dec 2010 13:17:40 +0100
>> Cc: 7723@debbugs.gnu.org
>>
>> I think the problem is missing error handling in the C code.
>
> Maybe. But with the information you presented, I cannot see what
> error handling is needed and where. The error message probably comes
> from one of the calls to `insert' made by list-processes, but it's not
> clear which one. The offending value, viz.:
>
> ("c:/emacs/EmacsW32/nxhtml/etc/wds/DesktopSearch.rb" "c:/" "journey")
>
> looks like the command-line arguments of some process, is that right?
Yes, it is from a call to start-process.
> If so, there's a loop in list_processes_1, a subroutine of
> list-processes, that should have walked this list inserting its
> elements one by one. Unless you provide more information from the C
> level, I cannot figure out why did that fail and what to o to fix
> that.
As I have said before: all calls to the system must be carefully checked.
> If you can reproduce this, put a breakpoint inside list_processes_1,
> and see which of the calls to Finsert signals the error and why.
It is not reproducible, of course. It could be something Emacs can not
fix - or it might be that Emacs does not check a return value (or
condition) from the system somewhere. A thing you will never notice
unless some extreme condition is there on the host system.