From 70918067f45c20128b003a898bfb2d0188267ac0 Mon Sep 17 00:00:00 2001 From: "Rob Swindell (on Windows)" <rob@synchro.net> Date: Thu, 14 Sep 2023 21:25:17 -0700 Subject: [PATCH] Don't decrement user.xedit before calling uselect() This bug would leave the user's external editor setting decremented by one if they aborted (with Ctrl-C). Fixes issue #631 --- src/sbbs3/exec.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/sbbs3/exec.cpp b/src/sbbs3/exec.cpp index ad6b82cf6a..cb1f1cebc6 100644 --- a/src/sbbs3/exec.cpp +++ b/src/sbbs3/exec.cpp @@ -2021,8 +2021,7 @@ bool sbbs_t::select_editor(void) for(i=0;i<cfg.total_xedits;i++) uselect(1,i,text[ExternalEditorHeading],cfg.xedit[i]->name,cfg.xedit[i]->ar); - if(useron.xedit) useron.xedit--; - if((i=uselect(0,useron.xedit,0,0,0))>=0) { + if((i=uselect(0,useron.xedit ? (useron.xedit-1):0,0,0,0))>=0) { useron.xedit=i+1; if(useron.number > 0) putuserstr(useron.number, USER_XEDIT, cfg.xedit[i]->code); -- GitLab