Subject: Re: bug#23424: 25.0.93; error in process sentinel with Melpa added to package-archives

From: Eli Zaretskii <[email-masked]>
Date: Mon, 02 May 2016 18:49:04 +0300

> From: Kaushal Modi <[email-masked]>
> Date: Mon, 02 May 2016 15:19:02 +0000
> 
> I can recreate this error in "emacs -Q" after evaluating the below and then doing M-x list-packages.
> 
> =====
> 
> (require 'package)
> (add-to-list 'package-archives '("melpa" . "http://melpa.org/packages/") t)
> 
> =====
> 
> Here is the error I get:
> 
> =====
> 
> Importing package-keyring.gpg...done
> error in process filter: End of file during parsing
> 
> =====

Here's the problem: Emacs tries to read from an empty string, and
fails.  The backtrace is below.

> As an additional request (hopefully minor), can this process filter error be improved to give more info as to
> which file caused it?

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=0) 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=0) at eval.c:1471
  #1  0x0121cf5d in xsignal (error_symbol=20888, data=0) at eval.c:1577
  #2  0x0121cf9a in xsignal0 (error_symbol=20888) at eval.c:1586
  #3  0x01262e25 in end_of_file_error () at lread.c:1736
  #4  0x01267417 in read1 (readcharfun=-9223372036748765968, pch=0x82c3bc,
      first_in_list=false) at lread.c:3094
  #5  0x01264604 in read0 (readcharfun=-9223372036748765968) at lread.c:2137
  #6  0x01268c64 in read_list (flag=false, readcharfun=-9223372036748765968)
      at lread.c:3629
  #7  0x01265049 in read1 (readcharfun=-9223372036748765968, pch=0x82c70c,
      first_in_list=true) at lread.c:2484
  #8  0x01268a8e in read_list (flag=false, readcharfun=-9223372036748765968)
      at lread.c:3585
  #9  0x01265049 in read1 (readcharfun=-9223372036748765968, pch=0x82ca1c,
      first_in_list=false) at lread.c:2484
  #10 0x01268a8e in read_list (flag=true, readcharfun=-9223372036748765968)
      at lread.c:3585
  #11 0x012684f6 in read_vector (readcharfun=-9223372036748765968,
      bytecodeflag=false) at lread.c:3495
  #12 0x0126506e in read1 (readcharfun=-9223372036748765968, pch=0x82cdbc,
      first_in_list=false) at lread.c:2487
  #13 0x01264604 in read0 (readcharfun=-9223372036748765968) at lread.c:2137
  #14 0x01268c64 in read_list (flag=false, readcharfun=-9223372036748765968)
      at lread.c:3629
  #15 0x01265049 in read1 (readcharfun=-9223372036748765968, pch=0x82d10c,
      first_in_list=false) at lread.c:2484
  #16 0x01268a8e in read_list (flag=false, readcharfun=-9223372036748765968)
      at lread.c:3585
  #17 0x01265049 in read1 (readcharfun=-9223372036748765968, pch=0x82d41c,
      first_in_list=false) at lread.c:2484
  #18 0x01264604 in read0 (readcharfun=-9223372036748765968) at lread.c:2137
  #19 0x01264526 in read_internal_start (stream=-9223372036748765968, start=0,
      end=0) at lread.c:2110
  #20 0x0126427b in Fread_from_string (string=-9223372036748765968, start=0,
      end=0) at lread.c:2073
  #21 0x01221a0c in Ffuncall (nargs=2, args=0x82d698) at eval.c:2700
  #22 0x012826e1 in exec_byte_code (bytestr=-9223372036759330616,
      vector=-6917529027537623584, maxdepth=4611686018427387924,
      args_template=4611686018427388161, nargs=1, args=0x82de40)
      at bytecode.c:880
  #23 0x01222972 in funcall_lambda (fun=-6917529027537623184, nargs=1,
      arg_vector=0x82de38) at eval.c:2855
  #24 0x01221f3b in Ffuncall (nargs=2, args=0x82de30) at eval.c:2742
  #25 0x0122018e in Fapply (nargs=2, args=0x82de30) at eval.c:2278
  #26 0x0122180d in Ffuncall (nargs=3, args=0x82de28) at eval.c:2673
  #27 0x012826e1 in exec_byte_code (bytestr=-9223372036754479384,
      vector=-6917529027537762864, maxdepth=4611686018427387912,
      args_template=0, nargs=0, args=0x0) at bytecode.c:880
  #28 0x01222fd4 in funcall_lambda (fun=-6917529027537762616, nargs=0,
      arg_vector=0x82e400) at eval.c:2921
  #29 0x01221f3b in Ffuncall (nargs=1, args=0x82e3f8) at eval.c:2742
  #30 0x012826e1 in exec_byte_code (bytestr=-9223372036754478168,
      vector=-6917529027537762424, maxdepth=4611686018427387909,
      args_template=0, nargs=0, args=0x0) at bytecode.c:880
  #31 0x01222fd4 in funcall_lambda (fun=-6917529027537762152, nargs=2,
      arg_vector=0x82e9b0) at eval.c:2921
  #32 0x01221f3b in Ffuncall (nargs=3, args=0x82e9a8) at eval.c:2742
  #33 0x012826e1 in exec_byte_code (bytestr=-9223372036754110784,
      vector=-6917529027537760712, maxdepth=4611686018427387918,
      args_template=0, nargs=0, args=0x0) at bytecode.c:880
  #34 0x01222fd4 in funcall_lambda (fun=-6917529027537760416, nargs=2,
      arg_vector=0x82ef98) at eval.c:2921
  #35 0x01221f3b in Ffuncall (nargs=3, args=0x82ef90) at eval.c:2742
  #36 0x01220805 in Fapply (nargs=2, args=0x82f050) at eval.c:2321
  #37 0x01221047 in apply1 (fn=58089576, arg=-4611686018321073728)
      at eval.c:2537
  #38 0x012942bd in read_process_output_call (fun_and_args=-4611686018321073712)
      at process.c:5224
  #39 0x0121c61a in internal_condition_case_1 (
      bfun=0x12941d4 <read_process_output_call>, arg=-4611686018321073712,
      handlers=21168, hfun=0x1297822 <exec_sentinel_error_handler>)
      at eval.c:1333
  #40 0x01297ace in exec_sentinel (proc=-6917529027537622792,
      reason=-9223372036749244816) at process.c:6577
  #41 0x01297deb in status_notify (deleting_process=0x0, wait_proc=0x0)
      at process.c:6679
  #42 0x012929b0 in wait_reading_process_output (time_limit=30, nsecs=0,
      read_kbd=-1, do_display=true, wait_for_cell=0, wait_proc=0x0,
      just_wait_proc=0) at process.c:4661
  #43 0x0101126c in sit_for (timeout=4611686018427387934, reading=true,
      display_option=1) at dispnew.c:5762
  #44 0x01158765 in read_char (commandflag=1, map=-4611686018321074016,
      prev_event=0, used_mouse_menu=0x82f62f, end_time=0x0) at keyboard.c:2706
  #45 0x0116cff6 in read_key_sequence (keybuf=0x82f7c0, bufsize=30, prompt=0,
      dont_downcase_last=false, can_return_switch_frame=true,
      fix_current_buffer=true, prevent_redisplay=false) at keyboard.c:9055
  #46 0x01153df2 in command_loop_1 () at keyboard.c:1357
  #47 0x0121c56e in internal_condition_case (bfun=0x1153820 <command_loop_1>,
      handlers=21168, hfun=0x1152a9d <cmd_error>) at eval.c:1309
  #48 0x011532b7 in command_loop_2 (ignore=0) at keyboard.c:1099
  #49 0x0121b6eb in internal_catch (tag=56728, func=0x115327b <command_loop_2>,
      arg=0) at eval.c:1074
  #50 0x01153235 in command_loop () at keyboard.c:1078
  #51 0x011524ab in recursive_edit_1 () at keyboard.c:684
  #52 0x01152771 in Frecursive_edit () at keyboard.c:755
  #53 0x0114ff7b in main (argc=2, argv=0xa427e0) at emacs.c:1606

  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