Make emacsclient refuse to create a frame inside an Emacs term buffer.
lib-src/emacsclient.c (main): Exit with failure if the terminal type is `eterm' (Emacs term buffer). git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-104
This commit is contained in:
parent
f70dd00951
commit
2fc0cf2aef
2 changed files with 33 additions and 9 deletions
|
@ -588,15 +588,35 @@ To start the server in Emacs, type \"M-x server-start\".\n",
|
|||
if (tty)
|
||||
{
|
||||
char *tty_name = ttyname (fileno (stdin));
|
||||
char *type = getenv ("TERM");
|
||||
|
||||
if (! tty_name)
|
||||
fail ();
|
||||
{
|
||||
fprintf (stderr, "%s: could not get terminal name\n", progname);
|
||||
fail ();
|
||||
}
|
||||
|
||||
if (! type)
|
||||
{
|
||||
fprintf (stderr, "%s: please set the TERM variable to your terminal type\n",
|
||||
progname);
|
||||
fail ();
|
||||
}
|
||||
|
||||
if (! strcmp (type, "eterm"))
|
||||
{
|
||||
/* This causes nasty, MULTI_KBOARD-related input lockouts. */
|
||||
fprintf (stderr, "%s: opening a frame in an Emacs term buffer"
|
||||
" is not supported\n", progname);
|
||||
fail ();
|
||||
}
|
||||
|
||||
init_signals ();
|
||||
|
||||
fprintf (out, "-tty ");
|
||||
quote_file_name (tty_name, out);
|
||||
fprintf (out, " ");
|
||||
quote_file_name (getenv("TERM"), out);
|
||||
quote_file_name (type, out);
|
||||
fprintf (out, " ");
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue