From ab97332acbef54c1122f2608254441fa99534def Mon Sep 17 00:00:00 2001
From: rswindell <>
Date: Thu, 22 May 2003 11:39:21 +0000
Subject: [PATCH] Added stop-semaphore-file support (data/newslink.stop).

---
 exec/newslink.js | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/exec/newslink.js b/exec/newslink.js
index e630c4c2e9..9081282a5e 100644
--- a/exec/newslink.js
+++ b/exec/newslink.js
@@ -216,6 +216,9 @@ if(slave) {
 	readln();
 }
 
+var stop_semaphore=system.data_dir+"newslink.stop";
+file_remove(stop_semaphore);
+
 /******************************/
 /* Export and Import Messages */
 /******************************/
@@ -230,6 +233,9 @@ for(i in area) {
 		break;
 	}
 
+	if(file_exists(stop_semaphore))
+		break;
+
 //	printf("%s\r\n",area[i].toString());
 	
 	sub = area[i][1];
@@ -288,7 +294,7 @@ for(i in area) {
 	if(debug)
 		print("exporting local messages");
 	last_msg=msgbase.last_msg;
-	for(;socket.is_connected && ptr<=last_msg;ptr++) {
+	for(;socket.is_connected && ptr<=last_msg && !file_exists(stop_semaphore);ptr++) {
 		console.line_counter = 0;
 		hdr = msgbase.get_msg_header(
 			/* retrieve by offset? */	false,
@@ -433,7 +439,7 @@ for(i in area) {
 		ptr++;
 	}
 
-	for(;socket.is_connected && ptr<=last_msg;ptr++) {
+	for(;socket.is_connected && ptr<=last_msg && !file_exists(stop_semaphore);ptr++) {
 		console.line_counter = 0;
 		writeln(format("ARTICLE %lu",ptr));
 		rsp = readln();
@@ -546,6 +552,9 @@ for(i in area) {
 	}
 	delete ptr_file;
 	delete msgbase;
+
+//	if(flags.indexOf('b')>=0)	// binary newsgroup
+//		load("binarydecoder.js",sub);
 }
 
 writeln("quit");
-- 
GitLab