diff --git a/src/sbbs3/mailsrvr.c b/src/sbbs3/mailsrvr.c index bf62e04e2b0afbd75fd2ae4729920229894ca39a..36d304823092477c9c4ed7423c287a1d97be11c1 100644 --- a/src/sbbs3/mailsrvr.c +++ b/src/sbbs3/mailsrvr.c @@ -2352,15 +2352,14 @@ static void sendmail_thread(void* arg) server=startup->relay_server; port=startup->relay_port; } else { - sprintf(to,"%.*s",(int)sizeof(to)-1,(char*)msg.to_net.addr); - p=strrchr(to,'>'); /* Truncate '>' */ - if(p!=NULL) *p=0; - - p=strrchr(to,':'); /* non-standard SMTP port */ + p=strrchr((char*)msg.to_net.addr,':'); /* non-standard SMTP port */ if(p!=NULL) { *p=0; port=atoi(p+1); } + sprintf(to,"%.*s",(int)sizeof(to)-1,(char*)msg.to_net.addr); + p=strrchr(to,'>'); /* Truncate '>' */ + if(p!=NULL) *p=0; p=strrchr(to,'@'); if(p==NULL) {