From 53c677c353d4f7d0ade94afb26c8bdb3cc717c57 Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Sat, 6 Apr 2019 08:02:38 +0000
Subject: [PATCH] MsgBase.put_msg_header() now updates the internal (smbmsg_t)
 representation of the message header so that functions that need it (e.g.
 bbs.show_msg_header) don't use/show stale data. This change requires the
 updated smb_copymsgmem() which clear/sets message convenience pointers upon
 copying hfields from one message header to another.

---
 src/sbbs3/js_msgbase.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/sbbs3/js_msgbase.c b/src/sbbs3/js_msgbase.c
index 14f1f96e83..7f79cd8776 100644
--- a/src/sbbs3/js_msgbase.c
+++ b/src/sbbs3/js_msgbase.c
@@ -2043,6 +2043,11 @@ js_put_msg_header(JSContext *cx, uintN argc, jsval *arglist)
 		if((p->smb_result=smb_putmsg(&(p->smb), &msg))!=SMB_SUCCESS)
 			break;
 
+		if(mp != NULL) {
+			smb_freemsgmem(&mp->msg);
+			smb_copymsgmem(&(p->smb), &mp->msg, &msg);
+		}
+
 		JS_SET_RVAL(cx, arglist, JSVAL_TRUE);
 	} while(0);
 
-- 
GitLab