Lack of "saw" values now reported as "INVALID"; tweak a comment.
authorWayne Davison <wayne@opencoder.net>
Sun, 28 Jun 2020 06:13:25 +0000 (23:13 -0700)
committerWayne Davison <wayne@opencoder.net>
Sun, 28 Jun 2020 06:14:35 +0000 (23:14 -0700)
cleanup.c
compat.c

index ab981ec7b92c3539e11c76a3af2c2dd3950b5e71..a2d6b384f4dfef9a03c0cbdbe2e758ae19f084d2 100644 (file)
--- a/cleanup.c
+++ b/cleanup.c
@@ -222,7 +222,7 @@ NORETURN void _exit_cleanup(int code, const char *file, int line)
                 * we don't want to output a duplicate error. */
                if ((exit_code && line > 0)
                 || am_daemon || (logfile_name && (am_server || !INFO_GTE(STATS, 1)))) {
-#ifdef HAVE_USLEEP /* Try for a teeny delay if both sender & receiver are sending a msg at the same time. */
+#ifdef HAVE_USLEEP /* A tiny delay just in case both sender & receiver are sending a msg at the same time. */
                        if (am_server && exit_code)
                                usleep(50);
 #endif
index 00b13c8786c8a9eb17a18d34445a79887da90158..527201ace54e1a07e01bf0e5d0d3defcc8d4167f 100644 (file)
--- a/compat.c
+++ b/compat.c
@@ -366,7 +366,7 @@ static void recv_negotiate_str(int f_in, struct name_num_obj *nno, char *tmpbuf,
                rprintf(FERROR, "%s list: %s\n", am_server ? "Client" : "Server", tmpbuf);
                /* Recreate our original list from the saw values. This can't overflow our huge
                 * buffer because we don't have enough valid entries to get anywhere close. */
-               for (j = 1; j <= nno->saw_len; j++) {
+               for (j = 1, *cp = '\0'; j <= nno->saw_len; j++) {
                        struct name_num_item *nni;
                        for (nni = nno->list; nni->name; nni++) {
                                if (nno->saw[nni->num] == j) {
@@ -376,6 +376,8 @@ static void recv_negotiate_str(int f_in, struct name_num_obj *nno, char *tmpbuf,
                                }
                        }
                }
+               if (!*tmpbuf)
+                       strlcpy(cp, " INVALID", MAX_NSTR_STRLEN);
                rprintf(FERROR, "%s list:%s\n", am_server ? "Server" : "Client", tmpbuf);
        }