From eee8a50d9967e0af67c8df27a02e843589738276 Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Sat, 16 Mar 2002 00:38:15 +0000
Subject: [PATCH] getnodedat/putnodedat now keep file open and record locked.

---
 src/sbbs3/ctrl/MainFormUnit.cpp |  5 +++--
 src/sbbs3/ctrl/NodeFormUnit.cpp | 10 +++++-----
 2 files changed, 8 insertions(+), 7 deletions(-)

diff --git a/src/sbbs3/ctrl/MainFormUnit.cpp b/src/sbbs3/ctrl/MainFormUnit.cpp
index b3a3118b2b..6519aeb1ec 100644
--- a/src/sbbs3/ctrl/MainFormUnit.cpp
+++ b/src/sbbs3/ctrl/MainFormUnit.cpp
@@ -2364,10 +2364,11 @@ void __fastcall TMainForm::ReloadConfigExecute(TObject *Sender)
 
     node_t node;
     for(int i=0;i<cfg.sys_nodes;i++) {
-       	if(NodeForm->getnodedat(i+1,&node,true))
+    	int file;
+       	if(NodeForm->getnodedat(i+1,&node,&file))
             break;
         node.misc|=NODE_RRUN;
-        if(NodeForm->putnodedat(i+1,&node))
+        if(NodeForm->putnodedat(i+1,&node,file))
             break;
     }
 }
diff --git a/src/sbbs3/ctrl/NodeFormUnit.cpp b/src/sbbs3/ctrl/NodeFormUnit.cpp
index ec8437a097..bc24c86038 100644
--- a/src/sbbs3/ctrl/NodeFormUnit.cpp
+++ b/src/sbbs3/ctrl/NodeFormUnit.cpp
@@ -83,12 +83,12 @@ void __fastcall TNodeForm::FormShow(TObject *Sender)
     MainForm->ViewNodesButton->Down=true;
 }
 //---------------------------------------------------------------------------
-int __fastcall TNodeForm::getnodedat(int node_num, node_t* node, bool lockit)
+int __fastcall TNodeForm::getnodedat(int node_num, node_t* node, int* file)
 {
     char    errmsg[128];
     int     err;
 
-    if((err=::getnodedat(&MainForm->cfg,node_num,node,lockit))!=0) {
+    if((err=::getnodedat(&MainForm->cfg,node_num,node,file))!=0) {
         sprintf(errmsg,"getnodedat returned %d",err);
     	Application->MessageBox(errmsg
             ,"ERROR",MB_OK|MB_ICONEXCLAMATION);
@@ -97,13 +97,13 @@ int __fastcall TNodeForm::getnodedat(int node_num, node_t* node, bool lockit)
     return(err);
 }
 //---------------------------------------------------------------------------
-int __fastcall TNodeForm::putnodedat(int node_num, node_t* node)
+int __fastcall TNodeForm::putnodedat(int node_num, node_t* node, int file)
 {
     char    errmsg[128];
     int     err;
 
-    if((err=::putnodedat(&MainForm->cfg,node_num,node))!=0) {
-        sprintf(errmsg,"putnodedat returned %d",err);
+    if((err=::putnodedat(&MainForm->cfg,node_num,node, file))!=0) {
+        sprintf(errmsg,"putnodedat(%d) returned %d",file,err);
     	Application->MessageBox(errmsg
             ,"ERROR",MB_OK|MB_ICONEXCLAMATION);
     }
-- 
GitLab