diff --git a/src/sbbs3/sbbscon.c b/src/sbbs3/sbbscon.c
index fd6fac15ea7560b230b417109194b60194d63389..182a795d8a9f30239365af16cc2ed38d2634b78b 100644
--- a/src/sbbs3/sbbscon.c
+++ b/src/sbbs3/sbbscon.c
@@ -1433,6 +1433,10 @@ int main(int argc, char** argv)
 	/* Read in configuration files */
     memset(&scfg,0,sizeof(scfg));
     SAFECOPY(scfg.ctrl_dir,bbs_startup.ctrl_dir);
+
+	if(chdir(scfg.ctrl_dir)!=0)
+		fprintf(stderr,"\n!ERROR %d changing directory to: %s\n", errno, scfg.ctrl_dir);
+
     scfg.size=sizeof(scfg);
 	SAFECOPY(error,UNKNOWN_LOAD_ERROR);
 	sprintf(str,"Loading configuration files from %s", scfg.ctrl_dir);