summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2015-01-04 13:20:36 -0800
committerPaul Eggert <eggert@cs.ucla.edu>2015-01-04 13:21:03 -0800
commitbf90e9ac7caec15b0f111e0bb67e311233f3a795 (patch)
treefea081a587642f7d542ff0ec008310d38b575304 /src
parentcde73794f61fec2a5a8676c2e36ec6634e72cdc5 (diff)
downloademacs-bf90e9ac7caec15b0f111e0bb67e311233f3a795.tar.gz
emacs-bf90e9ac7caec15b0f111e0bb67e311233f3a795.tar.bz2
emacs-bf90e9ac7caec15b0f111e0bb67e311233f3a795.zip
'temacs -nw' should not call missing functions
Without this patch, "temacs -nw" fails with the diagnostic "emacs: Symbol's function definition is void: frame-windows-min-size" and messes up the tty's state. * lib-src/make-docfile.c (write_globals): Declare Fframe_windows_min_size with ATTRIBUTE_CONST, too. Sort. * src/frame.c (Fframe_windows_min_size): New placeholder function. (syms_of_frame): Define it. * src/window.c (Fwindow__sanitize_window_sizes): New placeholder. (syms_of_window): Define it.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog9
-rw-r--r--src/frame.c17
-rw-r--r--src/window.c9
3 files changed, 33 insertions, 2 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 592a7f1e3bf..8cf269680de 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,14 @@
2015-01-04 Paul Eggert <eggert@cs.ucla.edu>
+ 'temacs -nw' should not call missing functions
+ Without this patch, "temacs -nw" fails with the diagnostic
+ "emacs: Symbol's function definition is void: frame-windows-min-size"
+ and messes up the tty's state.
+ * frame.c (Fframe_windows_min_size): New placeholder function.
+ (syms_of_frame): Define it.
+ * window.c (Fwindow__sanitize_window_sizes): New placeholder.
+ (syms_of_window): Define it.
+
Less 'make' chatter for lisp dir
* Makefile.in (%.elc): Adjust to compile-onefile change in
../lisp/Makefile.in.
diff --git a/src/frame.c b/src/frame.c
index 5a0d142afbb..9394ae481f5 100644
--- a/src/frame.c
+++ b/src/frame.c
@@ -334,10 +334,22 @@ predicates which report frame's specific UI-related capabilities. */)
return type;
}
+/* Placeholder used by temacs -nw before window.el is loaded. */
+DEFUN ("frame-windows-min-size", Fframe_windows_min_size,
+ Sframe_windows_min_size, 4, 4, 0,
+ doc: /* */)
+ (Lisp_Object frame, Lisp_Object horizontal,
+ Lisp_Object ignore, Lisp_Object pixelwise)
+{
+ return make_number (0);
+}
+
static int
-frame_windows_min_size (Lisp_Object frame, Lisp_Object horizontal, Lisp_Object ignore, Lisp_Object pixelwise)
+frame_windows_min_size (Lisp_Object frame, Lisp_Object horizontal,
+ Lisp_Object ignore, Lisp_Object pixelwise)
{
- return XINT (call4 (Qframe_windows_min_size, frame, horizontal, ignore, pixelwise));
+ return XINT (call4 (Qframe_windows_min_size, frame, horizontal,
+ ignore, pixelwise));
}
@@ -5081,6 +5093,7 @@ even if this option is non-nil. */);
defsubr (&Sframep);
defsubr (&Sframe_live_p);
defsubr (&Swindow_system);
+ defsubr (&Sframe_windows_min_size);
defsubr (&Smake_terminal_frame);
defsubr (&Shandle_switch_frame);
defsubr (&Sselect_frame);
diff --git a/src/window.c b/src/window.c
index 938f1a3268f..45dfb9ea1c2 100644
--- a/src/window.c
+++ b/src/window.c
@@ -3014,6 +3014,14 @@ resize_root_window (Lisp_Object window, Lisp_Object delta, Lisp_Object horizonta
return call5 (Qwindow_resize_root_window, window, delta, horizontal, ignore, pixelwise);
}
+/* Placeholder used by temacs -nw before window.el is loaded. */
+DEFUN ("window--sanitize-window-sizes", Fwindow__sanitize_window_sizes,
+ Swindow__sanitize_window_sizes, 2, 2, 0,
+ doc: /* */)
+ (Lisp_Object frame, Lisp_Object horizontal)
+{
+ return Qnil;
+}
Lisp_Object
sanitize_window_sizes (Lisp_Object frame, Lisp_Object horizontal)
@@ -7563,6 +7571,7 @@ displayed after a scrolling operation to be somewhat inaccurate. */);
defsubr (&Sset_window_display_table);
defsubr (&Snext_window);
defsubr (&Sprevious_window);
+ defsubr (&Swindow__sanitize_window_sizes);
defsubr (&Sget_buffer_window);
defsubr (&Sdelete_other_windows_internal);
defsubr (&Sdelete_window_internal);