Commit f9b58dbe authored by rswindell's avatar rswindell

Removed a bunch of duplicate user aliases from log messages now that

sbbs::lputs() will log the current user alias already, logline()->lputs() would
create log messages with the user alias twice.
parent 281cfdb5
......@@ -213,8 +213,8 @@ int sbbs_t::bulkmailhdr(smb_t* smb, smbmsg_t* msg, uint usernum)
lncntr=0;
bprintf(text[Emailing],user.alias,usernum);
sprintf(str,"%s bulk-mailed %s #%d"
,useron.alias,user.alias,usernum);
sprintf(str,"bulk-mailed %s #%d"
,user.alias,usernum);
logline("E+",str);
useron.emails++;
logon_emails++;
......
......@@ -708,7 +708,7 @@ bool sbbs_t::sysop_page(void)
|| (cfg.sys_chat_ar[0] && chk_ar(cfg.sys_chat_ar,&useron,&client))
|| useron.exempt&FLAG('C')) {
sprintf(str,"%s paged sysop for chat",useron.alias);
sprintf(str,"paged sysop for chat");
logline("C",str);
ftouch(syspage_semfile);
......@@ -823,8 +823,8 @@ void sbbs_t::privchat(bool local)
,cfg.node_num,thisnode.misc&NODE_ANON
? text[UNKNOWN_USER] : useron.alias);
putnmsg(&cfg,n,str);
sprintf(str,"%s paged %s on node %d to private chat"
,useron.alias,username(&cfg,node.useron,tmp),n);
sprintf(str,"paged %s on node %d to private chat"
,username(&cfg,node.useron,tmp),n);
logline("C",str);
}
......@@ -1439,8 +1439,8 @@ void sbbs_t::nodemsg()
break;
}
putsmsg(&cfg,usernumber,buf);
sprintf(str,"%s sent telegram to %s #%u"
,useron.alias,username(&cfg,usernumber,tmp),usernumber);
sprintf(str,"sent telegram to %s #%u"
,username(&cfg,usernumber,tmp),usernumber);
logline("C",str);
logline(nulstr,logbuf);
bprintf(text[MsgSentToUser],"Telegram"
......@@ -1472,8 +1472,8 @@ void sbbs_t::nodemsg()
if(!(node.misc&NODE_ANON))
bprintf(text[MsgSentToUser],"Message"
,username(&cfg,usernumber,tmp),usernumber);
sprintf(str,"%s sent message to %s on node %d:"
,useron.alias,username(&cfg,usernumber,tmp),i);
sprintf(str,"sent message to %s on node %d:"
,username(&cfg,usernumber,tmp),i);
logline("C",str);
logline(nulstr,line);
}
......@@ -1494,7 +1494,7 @@ void sbbs_t::nodemsg()
&& (SYSOP || !(node.misc&NODE_POFF)))
putnmsg(&cfg,i,buf);
}
sprintf(str,"%s sent message to all nodes",useron.alias);
SAFECOPY(str,"sent message to all nodes");
logline("C",str);
logline(nulstr,line);
}
......
......@@ -169,8 +169,7 @@ bool sbbs_t::chksyspass(const char* sys_pw)
SAFEPRINTF3(str2,"%s #%u System password attempt: '%s'"
,useron.alias,useron.number,str);
else
SAFEPRINTF2(str2,"%s #%u System password verification failure"
,useron.alias,useron.number);
SAFECOPY(str2,"System password verification failure");
logline(LOG_NOTICE,"S!",str2);
return(false);
}
......
......@@ -60,8 +60,7 @@ void sbbs_t::downloadfile(file_t* f)
logon_dls++;
}
bprintf(text[FileNBytesSent],f->name,ultoac(length,tmp));
sprintf(str,"%s downloaded %s from %s %s"
,useron.alias
sprintf(str,"downloaded %s from %s %s"
,f->name,cfg.lib[cfg.dir[f->dir]->lib]->sname
,cfg.dir[f->dir]->sname);
logline("D-",str);
......@@ -387,16 +386,14 @@ bool sbbs_t::checkprotresult(prot_t* prot, int error, file_t* f)
if(!success) {
bprintf(text[FileNotSent],f->name);
if(f->dir<cfg.total_dirs)
sprintf(str,"%s attempted to download %s (%s) from %s %s"
,useron.alias
sprintf(str,"attempted to download %s (%s) from %s %s"
,f->name,ultoac(f->size,tmp)
,cfg.lib[cfg.dir[f->dir]->lib]->sname,cfg.dir[f->dir]->sname);
else if(f->dir==cfg.total_dirs)
sprintf(str,"%s attempted to download QWK packet"
,useron.alias);
SAFECOPY(str,"attempted to download QWK packet");
else if(f->dir==cfg.total_dirs+1)
sprintf(str,"%s attempted to download attached file: %s"
,useron.alias,f->name);
sprintf(str,"attempted to download attached file: %s"
,f->name);
logline(LOG_NOTICE,"D!",str);
return(false);
}
......@@ -492,14 +489,14 @@ bool sbbs_t::sendfile(char* fname, char prot, const char* desc)
ultoac(length, bytes);
bprintf(text[FileNBytesSent], getfname(fname), bytes);
char str[128];
SAFEPRINTF4(str, "%s downloaded %s: %s (%s bytes)"
,useron.alias, desc == NULL ? "file" : desc, fname, bytes);
SAFEPRINTF3(str, "downloaded %s: %s (%s bytes)"
,desc == NULL ? "file" : desc, fname, bytes);
logline("D-",str);
autohangup();
} else {
char str[128];
bprintf(text[FileNotSent], getfname(fname));
sprintf(str,"%s attempted to download attached file: %s", useron.alias, fname);
sprintf(str,"attempted to download attached file: %s", fname);
logline(LOG_NOTICE,"D!",str);
}
return result;
......
......@@ -342,8 +342,8 @@ bool sbbs_t::email(int usernumber, const char *top, const char *subj, long mode)
logon_emails++;
user_sent_email(&cfg, &useron, 1, usernumber==1);
bprintf(text[Emailed],username(&cfg,usernumber,tmp),usernumber);
safe_snprintf(str,sizeof(str),"%s sent e-mail to %s #%d"
,useron.alias,username(&cfg,usernumber,tmp),usernumber);
safe_snprintf(str,sizeof(str),"sent e-mail to %s #%d"
,username(&cfg,usernumber,tmp),usernumber);
logline("E+",str);
if(mode&WM_FILE && online==ON_REMOTE)
autohangup();
......
......@@ -270,7 +270,7 @@ bool sbbs_t::netmail(const char *into, const char *title, long mode)
}
}
lprintf(LOG_DEBUG, "Node %d NetMail subject: %s", cfg.node_num, subj);
lprintf(LOG_DEBUG, "NetMail subject: %s", subj);
p=subj;
if((SYSOP || useron.exempt&FLAG('F'))
&& !strnicmp(p,"CR:",3)) { /* Crash over-ride by sysop */
......@@ -353,12 +353,10 @@ bool sbbs_t::netmail(const char *into, const char *title, long mode)
if(!(useron.exempt&FLAG('S')))
subtract_cdt(&cfg,&useron,cfg.netmail_cost);
if(mode&WM_FILE)
SAFEPRINTF3(str,"%s sent NetMail file attachment to %s (%s)"
,useron.alias
SAFEPRINTF2(str,"sent NetMail file attachment to %s (%s)"
,to, smb_faddrtoa(&dest_addr,tmp));
else
SAFEPRINTF3(str,"%s sent NetMail to %s (%s)"
,useron.alias
SAFEPRINTF2(str,"sent NetMail to %s (%s)"
,to, smb_faddrtoa(&dest_addr,tmp));
logline("EN",str);
......
......@@ -614,8 +614,7 @@ bool sbbs_t::removefile(file_t* f)
char str[256];
if(removefiledat(&cfg,f)) {
SAFEPRINTF4(str,"%s removed %s from %s %s"
,useron.alias
SAFEPRINTF3(str,"removed %s from %s %s"
,f->name
,cfg.lib[cfg.dir[f->dir]->lib]->sname,cfg.dir[f->dir]->sname);
logline("U-",str);
......@@ -647,8 +646,7 @@ bool sbbs_t::movefile(file_t* f, int newdir)
addfiledat(&cfg,f);
bprintf(text[MovedFile],f->name
,cfg.lib[cfg.dir[f->dir]->lib]->sname,cfg.dir[f->dir]->sname);
sprintf(str,"%s moved %s to %s %s",f->name
,useron.alias
sprintf(str,"moved %s to %s %s",f->name
,cfg.lib[cfg.dir[f->dir]->lib]->sname,cfg.dir[f->dir]->sname);
logline(nulstr,str);
if(!f->altpath) { /* move actual file */
......@@ -1214,8 +1212,7 @@ int sbbs_t::listfileinfo(uint dirnum, char *filespec, long mode)
if(remove(str))
bprintf(text[CouldntRemoveFile],str);
else {
sprintf(tmp,"%s deleted %s"
,useron.alias
sprintf(tmp,"deleted %s"
,str);
logline(nulstr,tmp);
}
......@@ -1233,8 +1230,7 @@ int sbbs_t::listfileinfo(uint dirnum, char *filespec, long mode)
if(remove(str))
bprintf(text[CouldntRemoveFile],str);
else {
sprintf(tmp,"%s deleted %s"
,useron.alias
sprintf(tmp,"deleted %s"
,str);
logline(nulstr,tmp);
}
......
......@@ -292,8 +292,7 @@ bool sbbs_t::inetmail(const char *into, const char *subj, long mode)
useron.etoday++;
putuserrec(&cfg,useron.number,U_ETODAY,5,ultoa(useron.etoday,tmp,10));
sprintf(str,"%s sent Internet Mail to %s (%s)"
,useron.alias
sprintf(str,"sent Internet Mail to %s (%s)"
,name,addr);
logline("EN",str);
return(true);
......@@ -491,8 +490,7 @@ bool sbbs_t::qnetmail(const char *into, const char *subj, long mode)
useron.etoday++;
putuserrec(&cfg,useron.number,U_ETODAY,5,ultoa(useron.etoday,tmp,10));
sprintf(str,"%s sent QWK NetMail to %s (%s)"
,useron.alias
sprintf(str,"sent QWK NetMail to %s (%s)"
,to,fulladdr);
logline("EN",str);
return(true);
......
......@@ -380,13 +380,11 @@ BOOL sbbs_t::newuser()
console&=~(CON_R_ECHOX|CON_L_ECHOX);
if(!strcmp(str,useron.pass)) break;
if(cfg.sys_misc&SM_ECHO_PW)
SAFEPRINTF3(tmp,"%s FAILED Password verification: '%s' instead of '%s'"
,useron.alias
SAFEPRINTF2(tmp,"FAILED Password verification: '%s' instead of '%s'"
,str
,useron.pass);
else
SAFEPRINTF(tmp,"%s FAILED Password verification"
,useron.alias);
SAFECOPY(tmp,"FAILED Password verification");
logline(LOG_NOTICE,nulstr,tmp);
if(++c==4) {
logline(LOG_NOTICE,"N!","Couldn't figure out password.");
......@@ -404,7 +402,7 @@ BOOL sbbs_t::newuser()
getstr(str,50,K_UPPER);
if(strcmp(str,cfg.new_magic)) {
bputs(text[FailedMagicWord]);
SAFEPRINTF2(tmp,"%s failed magic word: '%s'",useron.alias,str);
SAFEPRINTF(tmp,"failed magic word: '%s'",str);
logline("N!",tmp);
hangup();
}
......
......@@ -364,8 +364,8 @@ bool sbbs_t::postmsg(uint subnum, smbmsg_t *remsg, long wm_mode)
user_posted_msg(&cfg, &useron, 1);
bprintf(text[Posted],cfg.grp[cfg.sub[subnum]->grp]->sname
,cfg.sub[subnum]->lname);
sprintf(str,"%s posted on %s %s"
,useron.alias,cfg.grp[cfg.sub[subnum]->grp]->sname,cfg.sub[subnum]->lname);
sprintf(str,"posted on %s %s"
,cfg.grp[cfg.sub[subnum]->grp]->sname,cfg.sub[subnum]->lname);
logline("P+",str);
signal_sub_sem(&cfg,subnum);
......
......@@ -301,7 +301,7 @@ void sbbs_t::qwk_success(ulong msgcnt, char bi, char prepack)
}
if(!prepack) {
sprintf(str,"%s downloaded QWK packet",useron.alias);
SAFECOPY(str, "downloaded QWK packet");
logline("D-",str);
posts_read+=msgcnt;
......
......@@ -462,11 +462,10 @@ bool sbbs_t::qwk_import_msg(FILE *qwk_fp, char *hdrblk, ulong blocks
bprintf("\r\n!%s\r\n",smb.last_error);
if(!fromhub) {
if(subnum==INVALID_SUB) {
SAFEPRINTF2(str,"%s duplicate e-mail attempt (%s)",useron.alias,smb.last_error);
SAFEPRINTF(str,"duplicate e-mail attempt (%s)", smb.last_error);
logline(LOG_NOTICE,"E!",str);
} else {
SAFEPRINTF4(str,"%s duplicate message attempt in %s %s (%s)"
,useron.alias
SAFEPRINTF3(str,"duplicate message attempt in %s %s (%s)"
,cfg.grp[cfg.sub[subnum]->grp]->sname
,cfg.sub[subnum]->lname
,smb.last_error);
......
......@@ -181,14 +181,11 @@ void sbbs_t::readmail(uint usernumber, int which, long lm_mode)
domsg=0;
}
if(which==MAIL_SENT) {
sprintf(str,"%s read sent mail",useron.alias);
logline("E",str);
logline("E","read sent mail");
} else if(which==MAIL_ALL) {
sprintf(str,"%s read all mail",useron.alias);
logline("S+",str);
logline("S+","read all mail");
} else {
sprintf(str,"%s read mail",useron.alias);
logline("E",str);
logline("E","read mail");
}
const char* menu_file = (which == MAIL_ALL ? "allmail" : which==MAIL_SENT ? "sentmail" : "mailread");
if(useron.misc&RIP)
......@@ -350,8 +347,7 @@ void sbbs_t::readmail(uint usernumber, int which, long lm_mode)
bprintf(text[FileNBytesSent]
,fd.name,ultoac(length,tmp));
sprintf(str3
,"%s downloaded attached file: %s"
,useron.alias
,"downloaded attached file: %s"
,fd.name);
logline("D-",str3);
}
......
......@@ -1004,8 +1004,7 @@ int sbbs_t::scanposts(uint subnum, long mode, const char *find)
errormsg(WHERE,ERR_WRITE,smb.file,i,smb.last_error);
smb_unlockmsghdr(&smb,&msg);
if(i==0 && msg.idx.attr&MSG_DELETE) {
sprintf(str,"%s removed post from %s %s"
,useron.alias
sprintf(str,"removed post from %s %s"
,cfg.grp[cfg.sub[subnum]->grp]->sname,cfg.sub[subnum]->lname);
logline("P-",str);
if(!stricmp(cfg.sub[subnum]->misc&SUB_NAME
......
......@@ -80,8 +80,8 @@ void sbbs_t::scansubs(long mode)
found=listsub(usrsub[curgrp][i],SCAN_FIND,0,str);
subs_scanned++;
}
sprintf(tmp,"%s searched %lu sub-boards for '%s'"
,useron.alias,subs_scanned,str);
sprintf(tmp,"searched %lu sub-boards for '%s'"
,subs_scanned,str);
logline(nulstr,tmp);
if(!found)
CRLF;
......@@ -185,8 +185,8 @@ void sbbs_t::scanallsubs(long mode)
}
if(!found)
CRLF;
sprintf(tmp,"%s searched %lu sub-boards for '%s'"
,useron.alias,subs_scanned,str);
sprintf(tmp,"searched %lu sub-boards for '%s'"
,subs_scanned,str);
logline(nulstr,tmp);
return;
}
......
......@@ -246,8 +246,8 @@ int sbbs_t::text_sec()
fexistcase(str);
attr(LIGHTGRAY);
printfile(str,0);
sprintf(str,"%s read text file: %s"
,useron.alias,file[i]);
sprintf(str,"read text file: %s"
,file[i]);
logline("T-",str);
pause();
sys_status&=~SS_ABORT;
......
......@@ -128,8 +128,8 @@ void sbbs_t::temp_xfer()
break;
if(!checkfname(str))
break;
SAFEPRINTF3(tmp2,"%s added %s to %s"
,useron.alias,str,f.name);
SAFEPRINTF2(tmp2,"added %s to %s"
,str,f.name);
logline(nulstr,tmp2);
SAFEPRINTF2(tmp2,"%s%s",cfg.temp_dir,str);
SAFEPRINTF2(str,"%s%s",cfg.temp_dir,f.name);
......@@ -414,7 +414,7 @@ void sbbs_t::extract(uint dirnum)
errormsg(WHERE,ERR_EXEC,cmdstr(excmd,path,str,NULL),i);
return;
}
SAFEPRINTF3(tmp,"%s extracted %s from %s",useron.alias,str,path);
SAFEPRINTF2(tmp,"extracted %s from %s", str,path);
logline(nulstr,tmp);
CRLF;
break;
......
......@@ -360,8 +360,8 @@ bool sbbs_t::unpack_rep(char* repfile)
putuserrec(&cfg,useron.number,U_ETODAY,5
,ultoa(useron.etoday,tmp,10));
bprintf(text[Emailed],username(&cfg,usernum,tmp),usernum);
SAFEPRINTF3(str,"%s sent QWK e-mail to %s #%d"
,useron.alias,username(&cfg,usernum,tmp),usernum);
SAFEPRINTF2(str,"sent QWK e-mail to %s #%d"
,username(&cfg,usernum,tmp),usernum);
logline("E+",str);
if(cfg.node_num) {
for(k=1;k<=cfg.sys_nodes;k++) { /* Tell user, if online */
......@@ -389,7 +389,7 @@ bool sbbs_t::unpack_rep(char* repfile)
/**************************/
if((n=resolve_qwkconf(confnum))==INVALID_SUB) {
bprintf(text[QWKInvalidConferenceN],confnum);
SAFEPRINTF2(str,"%s: Invalid QWK conference number %ld",useron.alias,confnum);
SAFEPRINTF(str,"Invalid QWK conference number %ld", confnum);
logline(LOG_NOTICE,"P!",str);
errors++;
continue;
......@@ -535,8 +535,8 @@ bool sbbs_t::unpack_rep(char* repfile)
user_posted_msg(&cfg, &useron, 1);
bprintf(text[Posted],cfg.grp[cfg.sub[n]->grp]->sname
,cfg.sub[n]->lname);
SAFEPRINTF3(str,"%s posted QWK message on %s %s"
,useron.alias,cfg.grp[cfg.sub[n]->grp]->sname,cfg.sub[n]->lname);
SAFEPRINTF2(str,"posted QWK message on %s %s"
,cfg.grp[cfg.sub[n]->grp]->sname,cfg.sub[n]->lname);
signal_sub_sem(&cfg,n);
logline("P+",str);
if(!(useron.rest&FLAG('Q')))
......
......@@ -69,8 +69,7 @@ bool sbbs_t::uploadfile(file_t *f)
mv(tmp,path,0);
if(!fexistcase(path)) {
bprintf(text[FileNotReceived],f->name);
sprintf(str,"%s attempted to upload %s to %s %s (Not received)"
,useron.alias
sprintf(str,"attempted to upload %s to %s %s (Not received)"
,f->name
,cfg.lib[cfg.dir[f->dir]->lib]->sname,cfg.dir[f->dir]->sname);
logline(LOG_NOTICE,"U!",str);
......@@ -100,8 +99,7 @@ bool sbbs_t::uploadfile(file_t *f)
fclose(stream);
}
if(external(cmdstr(cfg.ftest[i]->cmd,path,f->desc,NULL),EX_OFFLINE)) {
sprintf(str,"%s attempted to upload %s to %s %s (%s Errors)"
,useron.alias
sprintf(str,"attempted to upload %s to %s %s (%s Errors)"
,f->name
,cfg.lib[cfg.dir[f->dir]->lib]->sname,cfg.dir[f->dir]->sname,cfg.ftest[i]->ext);
logline(LOG_NOTICE,"U!",str);
......@@ -142,8 +140,7 @@ bool sbbs_t::uploadfile(file_t *f)
if((length=(long)flength(path))==0L) {
bprintf(text[FileZeroLength],f->name);
remove(path);
sprintf(str,"%s attempted to upload %s to %s %s (Zero length)"
,useron.alias
sprintf(str,"attempted to upload %s to %s %s (Zero length)"
,f->name
,cfg.lib[cfg.dir[f->dir]->lib]->sname,cfg.dir[f->dir]->sname);
logline(LOG_NOTICE,"U!",str);
......@@ -213,8 +210,7 @@ bool sbbs_t::uploadfile(file_t *f)
if(f->misc&FM_EXTDESC)
putextdesc(&cfg,f->dir,f->datoffset,ext);
sprintf(str,"%s uploaded %s to %s %s"
,useron.alias
sprintf(str,"uploaded %s to %s %s"
,f->name,cfg.lib[cfg.dir[f->dir]->lib]->sname
,cfg.dir[f->dir]->sname);
if(cfg.dir[f->dir]->upload_sem[0])
......
......@@ -1063,8 +1063,7 @@ void sbbs_t::maindflts(user_t* user)
now=time(NULL);
putuserrec(&cfg,user->number,U_PWMOD,8,ultoa((ulong)now,tmp,16));
bputs(text[PasswordChanged]);
SAFEPRINTF(str,"%s changed password",useron.alias);
logline(LOG_NOTICE,nulstr,str);
logline(LOG_NOTICE,nulstr,"changed password");
}
SAFEPRINTF2(str,"%suser/%04u.sig",cfg.data_dir,user->number);
if(fexist(str) && yesno(text[ViewSignatureQ]))
......
......@@ -1061,8 +1061,8 @@ bool sbbs_t::editfile(char *fname, bool msg)
return false;
l=process_edited_file(msgtmp, path, /* mode: */WM_EDIT, &lines,maxlines);
if(l>0) {
SAFEPRINTF4(str,"%s created or edited file: %s (%ld bytes, %u lines)"
,useron.alias, path, l, lines);
SAFEPRINTF3(str,"created or edited file: %s (%ld bytes, %u lines)"
,path, l, lines);
logline(LOG_NOTICE,nulstr,str);
}
rioctl(IOSM|PAUSE|ABORT);
......@@ -1109,8 +1109,8 @@ bool sbbs_t::editfile(char *fname, bool msg)
bprintf(text[SavedNBytes],l,lines);
fclose(stream);
free(buf);
SAFEPRINTF4(str,"%s created or edited file: %s (%ld bytes, %u lines)"
,useron.alias, fname, l, lines);
SAFEPRINTF3(str,"created or edited file: %s (%ld bytes, %u lines)"
,fname, l, lines);
logline(nulstr,str);
return true;
}
......@@ -1217,8 +1217,7 @@ void sbbs_t::forwardmail(smbmsg_t *msg, int usernumber)
copyfattach(usernumber,useron.number,msg->subj);
bprintf(text[Forwarded],username(&cfg,usernumber,str),usernumber);
SAFEPRINTF3(str,"%s forwarded mail to %s #%d"
,useron.alias
SAFEPRINTF2(str,"forwarded mail to %s #%d"
,username(&cfg,usernumber,tmp)
,usernumber);
logline("E+",str);
......@@ -1525,8 +1524,7 @@ bool sbbs_t::movemsg(smbmsg_t* msg, uint subnum)
bprintf("\r\nMoved to %s %s\r\n\r\n"
,cfg.grp[usrgrp[newgrp]]->sname,cfg.sub[newsub]->lname);
safe_snprintf(str,sizeof(str),"%s moved message from %s %s to %s %s"
,useron.alias
safe_snprintf(str,sizeof(str),"moved message from %s %s to %s %s"
,cfg.grp[cfg.sub[subnum]->grp]->sname,cfg.sub[subnum]->sname
,cfg.grp[newgrp]->sname,cfg.sub[newsub]->sname);
logline("M+",str);
......
......@@ -792,8 +792,7 @@ int sbbs_t::external(const char* cmdline, long mode, const char* startup_dir)
gettimeleft();
if(!online && !(mode&EX_OFFLINE)) { // Tell VXD/VDD and external that user hung-up
if(was_online) {
sprintf(str,"%s hung-up in external program",useron.alias);
logline(LOG_NOTICE,"X!",str);
logline(LOG_NOTICE,"X!","hung-up in external program");
hungup=time(NULL);
if(!native) {
if(nt)
......@@ -1836,8 +1835,7 @@ int sbbs_t::external(const char* cmdline, long mode, const char* startup_dir)
gettimeleft();
if(!online && !(mode&EX_OFFLINE)) {
sprintf(str,"%s hung-up in external program",useron.alias);
logline(LOG_NOTICE,"X!",str);
logline(LOG_NOTICE,"X!","hung-up in external program");
break;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment