emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] master edc63bf: Fix assertion violations when displaying t


From: Eli Zaretskii
Subject: [Emacs-diffs] master edc63bf: Fix assertion violations when displaying thread-related error
Date: Mon, 17 Apr 2017 02:48:58 -0400 (EDT)

branch: master
commit edc63bf94f3cd3f52fab86fe7b92a3ec6a19de40
Author: Eli Zaretskii <address@hidden>
Commit: Eli Zaretskii <address@hidden>

    Fix assertion violations when displaying thread-related error
    
    * src/process.c (Faccept_process_output): Don't assume a thread's
    name is always a string.
---
 src/process.c | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/process.c b/src/process.c
index 2f2e5c1..b81c7b4 100644
--- a/src/process.c
+++ b/src/process.c
@@ -4563,8 +4563,16 @@ is nil, from any process) before the timeout expired.  
*/)
       /* Can't wait for a process that is dedicated to a different
         thread.  */
       if (!EQ (proc->thread, Qnil) && !EQ (proc->thread, Fcurrent_thread ()))
-       error ("Attempt to accept output from process %s locked to thread %s",
-              SDATA (proc->name), SDATA (XTHREAD (proc->thread)->name));
+       {
+         Lisp_Object proc_thread_name = XTHREAD (proc->thread)->name;
+
+         if (STRINGP (proc_thread_name))
+           error ("Attempt to accept output from process %s locked to thread 
%s",
+                  SDATA (proc->name), SDATA (proc_thread_name));
+         else
+           error ("Attempt to accept output from process %s locked to thread 
%p",
+                  SDATA (proc->name), XTHREAD (proc->thread));
+       }
     }
   else
     just_this_one = Qnil;



reply via email to

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