bug-gnu-emacs
[Top][All Lists]
Advanced

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

bug#23424: 25.0.93; error in process sentinel with Melpa added to packag


From: Kaushal Modi
Subject: bug#23424: 25.0.93; error in process sentinel with Melpa added to package-archives
Date: Mon, 02 May 2016 16:22:28 +0000

Given the cause of the problem, how would you wish to improve the
error message?

  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>
  "end-of-file"
  (gdb) bt
  #0  Fsignal (error_symbol=20888, data="" at eval.c:1471
 
  Lisp Backtrace:
  "read-from-string" (0x82d6a0)
  0x62aa770 PVEC_COMPILED
  "apply" (0x82de30)
  "url-http-activate-callback" (0x82e400)
  "url-http-end-of-document-sentinel" (0x82e9b0)
  "url-http-async-sentinel" (0x82ef98)
  (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
  (gdb) xstring
  $47 = (struct Lisp_String *) 0x65194f0
  0

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

break Fsignal

bt

=====

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 :))
--

--
Kaushal Modi


reply via email to

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