/* Nonzero means print newline to message log before next message. */
-int message_log_need_newline;
+static int message_log_need_newline;
#define min(a, b) ((a) < (b) ? (a) : (b))
#define max(a, b) ((a) > (b) ? (a) : (b))
t means infinite. nil means don't log at all. */
Lisp_Object Vmessage_log_max;
\f
+void
+message_log_maybe_newline ()
+{
+ if (message_log_need_newline)
+ message_dolog ("", 0, 1);
+}
+
+
/* Add a string to the message log, optionally terminated with a newline.
This function calls low-level routines in order to bypass text property
hooks, etc. which might not be safe to run. */
int oldpoint, oldbegv, oldzv;
oldbuf = current_buffer;
- Fset_buffer (Fget_buffer_create (build_string (" *Messages*")));
+ Fset_buffer (Fget_buffer_create (build_string ("*Messages*")));
oldpoint = PT;
oldbegv = BEGV;
oldzv = ZV;
ZV = oldzv;
TEMP_SET_PT (oldpoint);
set_buffer_internal (oldbuf);
+ message_log_need_newline = !nlflag;
}
}
int len;
{
/* First flush out any partial line written with print. */
- if (message_log_need_newline)
- message_dolog ("", 0, 1);
- message_log_need_newline = 0;
+ message_log_maybe_newline ();
if (m)
message_dolog (m, len, 1);
message2_nolog (m, len);