Given the cause of the problem, how would you wish to improve the
Thread 1 hit Breakpoint 3, Fsignal (error_symbol=20888, data="" at eval.c:1471
1471 = (NILP (error_symbol) ? Fcar (data) : error_symbol);
$44 = 20888
$45 = (struct Lisp_Symbol *) 0x2b2ad00 <lispsym+20888>
#0 Fsignal (error_symbol=20888, data="" at eval.c:1471
(gdb) frame 20
#20 0x0126427b in Fread_from_string (string=-9223372036748765968, start=0,
end=0) at lread.c:2073
2073 ret = read_internal_start (string, start, end);
(gdb) p string
$46 = -9223372036748765968
$47 = (struct Lisp_String *) 0x65194f0
Hi Eli, I don't have C coding experience to be able to provide an answer that makes sense or is practically possible. I was just curious to know if it were possible to add more info to the process sentinel error message..
So here's my try at a suggestion on how that error message could possible be improved:
For instance.. an action to fetch an XYZ url was started. But for whatever reason (like empty string detection), that XYZ url fetch action was incomplete. So may be the error said: Unable to fetch XYZ url (instead of providing the lower level error of empty string to the user).
But then again, how do we define what's upper level and what's lower level error? :)
I aim to just brain-storm on possible error message improvement. Hope this helps.
Thanks for replicating the error in gdb. Without you paraphrasing what that backtrace meant, I wouldn't have known what to make out of that long backtrace.
I tried a brief attempt at recreating the same, but it didn't work.. I got the "error in process filter" to happen in emacs, but the gdb interface just showed this:
Temporary breakpoint 2 at 0x578c80: file sysdep.c, line 915.
(gdb) r -Q
Starting program: /home/kmodi/downloads/git/emacs/src/emacs -Q
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
[New Thread 0x7fffed75f700 (LWP 9860)]
(emacs:9848): GLib-GIO-CRITICAL **: g_settings_schema_source_lookup: assertion 'source != NULL' failed
I was expecting the (gdb) prompt to show up where I could type "break Fsignal" (I am assuming that's how you set breakpoint at Fsignal?). But it didn't.. looks like that prompt was lost after "GLib-GIO-CRITICAL **: g_settings_schema_source_lookup: assertion 'source != NULL' failed" showed up.
( I am totally exposing my level of experience with gdb and C debug with that :))