all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Eli Zaretskii <eliz@gnu.org>
To: emacs-devel@gnu.org
Subject: multi-tty breakage on MS-Windows
Date: Sat, 08 Sep 2007 12:56:35 +0300	[thread overview]
Message-ID: <uhcm5scoc.fsf@gnu.org> (raw)

I've just built the current CVS HEAD on MS-Windows, and immediately
saw two problems:

  . emacsclient is incompatible with Emacs 22.1's server: it causes
    Emacs 22.1 to spew all kinds of weirdo error messages; here are a
    few examples:

     File no longer exists: -env, write buffer to file? (y or n) 
     File no longer exists: -file, write buffer to file? (y or n) 
     File no longer exists: -dir, write buffer to file? (y or n) 
     Use M-x make-directory RET RET to create the directory and its parents [3 times]
     error in process filter: basic-save-buffer-2: d:/gnu/emacs/windir=C:/USERPROFILE=C:/Documents and Settings/TMPDIR=D:/usr/TMP=C:/DOCUME~1/Zaretzky/LOCALS~1/TEMP=C:/DOCUME~1/Zaretzky/LOCALS~1/SystemRoot=C:/: no such directory

    Is this incompatibility an absolute must?

  . "emacs -nw" crashes on startup; backtrace attached below.

 emacs.exe caused an Access Violation at location 01095c7c in module emacs.exe Reading from location 00000148.

 Registers:
 eax=00000000 ebx=00000003 ecx=01717a00 edx=00000001 esi=00000052 edi=00000000
 eip=01095c7c esp=0082e6d0 ebp=0082e798 iopl=0         nv up ei pl nz na pe nc
 cs=001b  ss=0023  ds=0023  es=0023  fs=003b  gs=0000             efl=00000202

 Call stack:
 01095C7C  emacs.exe:01095C7C  update_frame_line  dispnew.c:5781
	 ...

	   tem = (nlen - nsp) - (olen - osp);
 >	  if (endmatch && tem
	       && (!FRAME_CHAR_INS_DEL_OK (f)
		   || endmatch <= char_ins_del_cost (f)[tem]))
	 ...

 010969DF  emacs.exe:010969DF  update_frame  dispnew.c:5286
	 ...
	   /* Update the individual lines as needed.  Do bottom line first.  */
	   if (MATRIX_ROW_ENABLED_P (desired_matrix, desired_matrix->nrows - 1))
 >	    update_frame_line (f, desired_matrix->nrows - 1);

	   /* Now update the rest of the lines.  */
	 ...

 0102F2BE  emacs.exe:0102F2BE  echo_area_display  xdisp.c:8770
	 ...
	     }
	   else
 >	    update_frame (f, 1, 1);

	   /* If cursor is in the echo area, make sure that the next
	 ...

 0102FAF1  emacs.exe:0102FAF1  message2_nolog  xdisp.c:7517
	 ...
	       do_pending_window_change (0);
	       echo_area_display (1);
 >	      do_pending_window_change (0);
	       if (FRAME_TERMINAL (f)->frame_up_to_date_hook != 0 && ! gc_in_progress)
	 (*FRAME_TERMINAL (f)->frame_up_to_date_hook) (f);
	 ...

 0102FBE0  emacs.exe:0102FBE0  message1_nolog  xdisp.c:7650
	 ...
	      char *m;
	 {
 >	  message2_nolog (m, (m ? strlen (m) : 0), 0);
	 }

	 ...

 01066102  emacs.exe:01066102  Fgarbage_collect  alloc.c:5156
	 ...

	   if (garbage_collection_messages)
 >	    message1_nolog ("Garbage collecting...");

	   BLOCK_INPUT;
	 ...

 0100B496  emacs.exe:0100B496  Feval  eval.c:2259
	 ...
	     {
	       GCPRO1 (form);
 >	      Fgarbage_collect ();
	       UNGCPRO;
	     }
	 ...

 010763C3  emacs.exe:010763C3  readevalloop  lread.c:1562
	 ...

	       /* Now eval what we just read.  */
 >	      val = (*evalfun) (val);

	       if (printflag)
	 ...

 01077090  emacs.exe:01077090  Fload  lread.c:1031
	 ...
	   readevalloop (Qget_file_char, stream, hist_file_name,
	 Feval, 0, Qnil, Qnil, Qnil, Qnil);
 >	  unbind_to (count, Qnil);

	   /* Run any eval-after-load forms for this file */
	 ...

 0100CC22  emacs.exe:0100CC22  do_autoload  eval.c:2208
	 ...

	   /* Save the old autoloads, in case we ever do an unload.  */
 >	  queue = Vautoload_queue;
	   while (CONSP (queue))
	     {
	 ...

 0100B3D7  emacs.exe:0100B3D7  Feval  eval.c:2290
	 ...

	   /* Optimize for no indirection.  */
 >	  fun = original_fun;
	   if (SYMBOLP (fun) && !EQ (fun, Qunbound)
	       && (fun = XSYMBOL (fun)->function, SYMBOLP (fun)))
	 ...

 010763C3  emacs.exe:010763C3  readevalloop  lread.c:1562
	 ...

	       /* Now eval what we just read.  */
 >	      val = (*evalfun) (val);

	       if (printflag)
	 ...

 01076A75  emacs.exe:01076A75  Feval_buffer  lread.c:1627
	 ...
	   readevalloop (buf, 0, filename, Feval,
	 !NILP (printflag), unibyte, Qnil, Qnil, Qnil);
 >	  unbind_to (count, Qnil);

	   return Qnil;
	 ...

 0100C233  emacs.exe:0100C233  Ffuncall  eval.c:3050
	 ...
	   goto done;
	 case 5:
 >	  val = (*XSUBR (fun)->function) (internal_args[0], internal_args[1],
	   internal_args[2], internal_args[3],
	   internal_args[4]);
	 ...

 01110643  emacs.exe:01110643  Fbyte_code  bytecode.c:679
	 ...
	       }
	 #endif
 >	    TOP = Ffuncall (op + 1, &TOP);
	     AFTER_POTENTIAL_GC ();
	     break;
	 ...

 0100BB87  emacs.exe:0100BB87  funcall_lambda  eval.c:3228
	 ...
	     }

 >	  return unbind_to (count, val);
	 }

	 ...

 0100C07C  emacs.exe:0100C07C  Ffuncall  eval.c:3105
	 ...
	  done:
	   CHECK_CONS_LIST ();
 >	  lisp_eval_depth--;
	   if (backtrace.debug_on_exit)
	     val = call_debugger (Fcons (Qexit, Fcons (val, Qnil)));
	 ...

 0100C414  emacs.exe:0100C414  call4  eval.c:2892
	 ...
	   RETURN_UNGCPRO (Ffuncall (5, &fn));
	 #endif /* not NO_ARG_ARRAY */
 >	}

	 /* Call function fn with 5 arguments arg1, arg2, arg3, arg4, arg5 */
	 ...

 01077358  emacs.exe:01077358  Fload  lread.c:986
	 ...
		NILP (noerror) ? Qnil : Qt,
		NILP (nomessage) ? Qnil : Qt);
 >	  return unbind_to (count, val);
	 }
	     }
	 ...

 0100C233  emacs.exe:0100C233  Ffuncall  eval.c:3050
	 ...
	   goto done;
	 case 5:
 >	  val = (*XSUBR (fun)->function) (internal_args[0], internal_args[1],
	   internal_args[2], internal_args[3],
	   internal_args[4]);
	 ...

 01110643  emacs.exe:01110643  Fbyte_code  bytecode.c:679
	 ...
	       }
	 #endif
 >	    TOP = Ffuncall (op + 1, &TOP);
	     AFTER_POTENTIAL_GC ();
	     break;
	 ...

 0100BB87  emacs.exe:0100BB87  funcall_lambda  eval.c:3228
	 ...
	     }

 >	  return unbind_to (count, val);
	 }

	 ...

 0100C07C  emacs.exe:0100C07C  Ffuncall  eval.c:3105
	 ...
	  done:
	   CHECK_CONS_LIST ();
 >	  lisp_eval_depth--;
	   if (backtrace.debug_on_exit)
	     val = call_debugger (Fcons (Qexit, Fcons (val, Qnil)));
	 ...

 01110643  emacs.exe:01110643  Fbyte_code  bytecode.c:679
	 ...
	       }
	 #endif
 >	    TOP = Ffuncall (op + 1, &TOP);
	     AFTER_POTENTIAL_GC ();
	     break;
	 ...

 0100B7AB  emacs.exe:0100B7AB  Feval  eval.c:2373
	 ...
	   goto done;
	 case 3:
 >	  val = (*XSUBR (fun)->function) (argvals[0], argvals[1],
	   argvals[2]);
	   goto done;
	 ...

 0100DAF4  emacs.exe:0100DAF4  internal_lisp_condition_case  eval.c:1437
	 ...
	   handlerlist = &h;

 >	  val = Feval (bodyform);
	   catchlist = c.next;
	   handlerlist = h.next;
	 ...

 01110C23  emacs.exe:01110C23  Fbyte_code  bytecode.c:869
	 ...
	     body = POP;
	     BEFORE_POTENTIAL_GC ();
 >	    TOP = internal_lisp_condition_case (TOP, body, handlers);
	     AFTER_POTENTIAL_GC ();
	     break;
	 ...

 0100BB87  emacs.exe:0100BB87  funcall_lambda  eval.c:3228
	 ...
	     }

 >	  return unbind_to (count, val);
	 }

	 ...

 0100C07C  emacs.exe:0100C07C  Ffuncall  eval.c:3105
	 ...
	  done:
	   CHECK_CONS_LIST ();
 >	  lisp_eval_depth--;
	   if (backtrace.debug_on_exit)
	     val = call_debugger (Fcons (Qexit, Fcons (val, Qnil)));
	 ...

 01110643  emacs.exe:01110643  Fbyte_code  bytecode.c:679
	 ...
	       }
	 #endif
 >	    TOP = Ffuncall (op + 1, &TOP);
	     AFTER_POTENTIAL_GC ();
	     break;
	 ...

 0100BB87  emacs.exe:0100BB87  funcall_lambda  eval.c:3228
	 ...
	     }

 >	  return unbind_to (count, val);
	 }

	 ...

 0100BE04  emacs.exe:0100BE04  apply_lambda  eval.c:3147
	 ...
	     }
	   backtrace_list->evalargs = 0;
 >	  tem = funcall_lambda (fun, XINT (numargs), arg_vector);

	   /* Do the debug-on-exit now, while arg_vector still exists.  */
	 ...

 0100B4CC  emacs.exe:0100B4CC  Feval  eval.c:2434
	 ...
	   CHECK_CONS_LIST ();

 >	  lisp_eval_depth--;
	   if (backtrace.debug_on_exit)
	     val = call_debugger (Fcons (Qexit, Fcons (val, Qnil)));
	 ...

 010512C1  emacs.exe:010512C1  top_level_2  keyboard.c:1415
	 ...
	 {
	   return Feval (Vtop_level);
 >	}

	 Lisp_Object
	 ...

 0100A3E5  emacs.exe:0100A3E5  internal_condition_case  eval.c:1495
	 ...

	   val = (*bfun) ();
 >	  catchlist = c.next;
	   handlerlist = h.next;
	   return val;
	 ...

 010512F3  emacs.exe:010512F3  top_level_1  keyboard.c:1427
	 ...
	   else
	     message ("Bare Emacs (standard Lisp code not loaded)");
 >	  return Qnil;
	 }

	 ...

 0100A31A  emacs.exe:0100A31A  internal_catch  eval.c:1229
	 ...
	   /* Call FUNC.  */
	   if (! _setjmp (c.jmp))
 >	    c.val = (*func) (arg);

	   /* Throw works by a longjmp that comes right here.  */
	 ...

 01051098  emacs.exe:01051098  command_loop  keyboard.c:1384
	 ...
		 any_kboard_state ();
	 #endif
 >	internal_catch (Qtop_level, command_loop_2, Qnil);
	 executing_kbd_macro = Qnil;

	 ...

 0105114A  emacs.exe:0105114A  recursive_edit_1  keyboard.c:994
	 ...

	   val = command_loop ();
 >	  if (EQ (val, Qt))
	     Fsignal (Qquit, Qnil);
	   /* Handle throw from read_minibuf when using minibuffer
	 ...

 0105126B  emacs.exe:0105126B  Frecursive_edit  keyboard.c:1056
	 ...

	   recursive_edit_1 ();
 >	  return unbind_to (count, Qnil);
	 }

	 ...

 010029C6  emacs.exe:010029C6  main  emacs.c:1781
	 ...
	   /* NOTREACHED */
	   return 0;
 >	}

	 /* Sort the args so we can find the most important ones
	 ...

 010011E7  emacs.exe:010011E7
 01001238  emacs.exe:01001238
 7C816D4F  kernel32.dll:7C816D4F  RegisterWaitForInputIdle

             reply	other threads:[~2007-09-08  9:56 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-09-08  9:56 Eli Zaretskii [this message]
2007-09-08 15:32 ` multi-tty breakage on MS-Windows Dan Nicolaescu
2007-09-08 16:29   ` Eli Zaretskii
2007-09-08 17:24     ` Dan Nicolaescu
2007-09-08 17:48       ` martin rudalics
     [not found]       ` <E1IUCJC-0000YJ-0c@fencepost.gnu.org>
2007-09-10  3:35         ` Dan Nicolaescu
2007-09-10  4:44           ` dhruva
2007-09-10 23:54           ` Richard Stallman
2007-09-08 19:48     ` Stephen J. Turnbull
2007-09-09 20:05       ` Richard Stallman
2007-09-22 13:00     ` Eli Zaretskii
2007-09-22 21:16       ` Jason Rumney
2007-09-23  4:16         ` Eli Zaretskii
2007-09-23 11:37           ` Jason Rumney
2007-09-23 13:18             ` dhruva
2007-09-23 13:28               ` Jason Rumney
2007-09-25  9:01       ` Jason Rumney
2007-09-26 15:24         ` Eli Zaretskii
2007-09-09 19:51   ` Stefan Monnier
2007-09-09 20:03     ` David Kastrup
2007-09-10  3:21       ` Eli Zaretskii
  -- strict thread matches above, loose matches on Subject: below --
2007-09-08 18:18 Angelo Graziosi
2007-09-09 21:18 Angelo Graziosi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=uhcm5scoc.fsf@gnu.org \
    --to=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.