diff --git a/src/sbbs3/writemsg.cpp b/src/sbbs3/writemsg.cpp index 385757a847e4100fa7aa1faba68f8c3aa2c3de3c..9dbfc7f7ae1f6be0a1365ffc3e238caec67f5502 100644 --- a/src/sbbs3/writemsg.cpp +++ b/src/sbbs3/writemsg.cpp @@ -604,7 +604,7 @@ bool sbbs_t::writemsg(const char *fname, const char *top, char *subj, long mode, rioctl(IOSM|PAUSE|ABORT); checkline(); - if(!online && flength(msgtmp) > 0) { // save draft message due to disconnection + if(!online && (flength(msgtmp) > 0) && (useron.number > 0) && !(useron.rest & FLAG('G'))) { // save draft message due to disconnection if(mv(msgtmp, draft, /* copy: */true) == 0) { user_set_property(&cfg, useron.number, draft_desc, "subject", subj); user_set_time_property(&cfg, useron.number, draft_desc, "created", time(NULL));