From 25ada8ed88b3f886c8ab457ee1027ce2c388c9da Mon Sep 17 00:00:00 2001
From: echicken <>
Date: Wed, 29 Aug 2012 16:22:49 +0000
Subject: [PATCH] Added 'max' argument (only sort up to 'max' messages in a sub
 before returning threads.)

---
 exec/load/msgutils.js | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/exec/load/msgutils.js b/exec/load/msgutils.js
index 9ee28e1025..86d0408054 100644
--- a/exec/load/msgutils.js
+++ b/exec/load/msgutils.js
@@ -360,7 +360,9 @@ function expand_body(body, sys_misc, mode)
 		}
 	}
 */
-function getMessageThreads(sub) {
+function getMessageThreads(sub, max) {
+	if(max === undefined)
+		max = 0;
 	var threads = { thread : {}, dates : [], order : [] };
 	var threadedMessages = [];
 	var subjects = {};
@@ -369,6 +371,7 @@ function getMessageThreads(sub) {
 	var md5subject;
 	var msgBase = new MsgBase(sub);
 	msgBase.open();
+	var n = 0;
 	for(var m = msgBase.first_msg; m <= msgBase.last_msg; m++) {
 		header = msgBase.get_msg_header(m);
 		if(
@@ -433,6 +436,9 @@ function getMessageThreads(sub) {
 		}
 		subjects[md5subject] = header.number;
 		threadedMessages.push(header.number);
+		n++;
+		if(max > 0 && n >= max)
+			break;
 	}
 	msgBase.close();
 	
-- 
GitLab