From d4de42b3530d681369299f938e89be8de7847c10 Mon Sep 17 00:00:00 2001 From: Mark Pizzolato Date: Tue, 9 Oct 2018 19:03:47 -0700 Subject: [PATCH] SCP: Properly synchronize debug output data during duplicate line detection --- scp.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/scp.c b/scp.c index 041f2cea..39260537 100644 --- a/scp.c +++ b/scp.c @@ -12232,6 +12232,7 @@ if (sim_deb_switches & SWMASK ('F')) { /* filtering disabled? */ _debug_fwrite (buf, len); /* output now. */ return; /* done */ } +AIO_LOCK; if (debug_line_offset + len + 1 > debug_line_bufsize) { debug_line_bufsize += MAX(1024, debug_line_offset + len + 1); debug_line_buf = (char *)realloc (debug_line_buf, debug_line_bufsize); @@ -12298,6 +12299,7 @@ while ((eol = strchr (debug_line_buf, '\n')) || flush) { memmove (debug_line_buf, eol + 1, debug_line_offset); debug_line_buf[debug_line_offset] = '\0'; } +AIO_UNLOCK; } static void _sim_debug_write (const char *buf, size_t len)