patch 7.4.1505
Problem: When channel log is enabled get too many "looking for messages"
log entries.
Solution: Only give the message after another message.
diff --git a/src/channel.c b/src/channel.c
index f0207bc..e7c25ac 100644
--- a/src/channel.c
+++ b/src/channel.c
@@ -136,6 +136,8 @@
}
}
+static int did_log_msg = TRUE;
+
void
ch_log(channel_T *ch, char *msg)
{
@@ -145,6 +147,7 @@
fputs(msg, log_fd);
fputc('\n', log_fd);
fflush(log_fd);
+ did_log_msg = TRUE;
}
}
@@ -157,6 +160,7 @@
fprintf(log_fd, msg, nr);
fputc('\n', log_fd);
fflush(log_fd);
+ did_log_msg = TRUE;
}
}
@@ -169,6 +173,7 @@
fprintf(log_fd, msg, name);
fputc('\n', log_fd);
fflush(log_fd);
+ did_log_msg = TRUE;
}
}
@@ -181,6 +186,7 @@
fprintf(log_fd, msg, name, nr);
fputc('\n', log_fd);
fflush(log_fd);
+ did_log_msg = TRUE;
}
}
@@ -193,6 +199,7 @@
fputs(msg, log_fd);
fputc('\n', log_fd);
fflush(log_fd);
+ did_log_msg = TRUE;
}
}
@@ -205,6 +212,7 @@
fprintf(log_fd, msg, nr);
fputc('\n', log_fd);
fflush(log_fd);
+ did_log_msg = TRUE;
}
}
@@ -217,6 +225,7 @@
fprintf(log_fd, msg, arg);
fputc('\n', log_fd);
fflush(log_fd);
+ did_log_msg = TRUE;
}
}
@@ -2352,6 +2361,7 @@
ignored = (int)fwrite(buf, len, 1, log_fd);
fprintf(log_fd, "'\n");
fflush(log_fd);
+ did_log_msg = TRUE;
}
if (part == PART_SOCK)
@@ -2541,7 +2551,13 @@
int r;
int part = PART_SOCK;
- ch_log(NULL, "looking for messages on channels");
+ /* Only do this message when another message was given, otherwise we get
+ * lots of them. */
+ if (did_log_msg)
+ {
+ ch_log(NULL, "looking for messages on channels");
+ did_log_msg = FALSE;
+ }
while (channel != NULL)
{
if (channel->ch_refcount == 0 && !channel_still_useful(channel))
diff --git a/src/version.c b/src/version.c
index 1ba0ab0..9c94df8 100644
--- a/src/version.c
+++ b/src/version.c
@@ -744,6 +744,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 1505,
+/**/
1504,
/**/
1503,