diff --git a/exec/imapservice.js b/exec/imapservice.js index db476ef28d83dc8d07e829b5afa05589fd795bac..dc0df24dfa7511282036ee2d62c92cb8530ec84d 100644 --- a/exec/imapservice.js +++ b/exec/imapservice.js @@ -1219,7 +1219,7 @@ function send_updates() } } -function get_base_code() +function get_base_code(base) { var base_code; @@ -1244,7 +1244,7 @@ function read_index(base) index.subnum=base.subnum; index.total=base.total_msgs; - index.code = get_base_code(); + index.code = get_base_code(base); for(i=0; i<index.total; i++) { idx=base.get_msg_index(true,i); if(idx==null) @@ -1539,7 +1539,7 @@ var authenticated_command_handlers = { if(base.cfg != undefined && orig_ptrs[base.subnum]==undefined) orig_ptrs[base.subnum]=msg_area.sub[base.cfg.code].scan_ptr; - base_code = get_base_code(); + base_code = get_base_code(base); if (saved_config[base_code] != undefined) old_saved = saved_config[base_code]; read_cfg(base_code, true); @@ -2011,7 +2011,7 @@ var selected_command_handlers = { var data_items=parse_data_items(args[2]); var i; - read_cfg(get_base_code(), true); + read_cfg(get_base_code(base), true); apply_seen(); for(i in seq) { send_fetch_response(seq[i], data_items, false); @@ -2062,7 +2062,7 @@ var selected_command_handlers = { } seq=parse_seq_set(args[2],true); data_items=parse_data_items(args[3]); - read_cfg(get_base_code(), true); + read_cfg(get_base_code(base), true); apply_seen(); for(i in seq) { send_fetch_response(seq[i], data_items, true); @@ -2150,7 +2150,7 @@ client.socket.send("* OK Give 'er\r\n"); var waited=0; while(1) { line=client.socket.recvline(10240, 1); - if(line != null) { + if(line != null && line != '') { waited = 0; debug_log("RECV: "+line, true); parse_command(line);