diff options
Diffstat (limited to 'mbbsd/register.c')
-rw-r--r-- | mbbsd/register.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/mbbsd/register.c b/mbbsd/register.c index 3db22103..3af845f5 100644 --- a/mbbsd/register.c +++ b/mbbsd/register.c @@ -717,15 +717,17 @@ new_register(void) #endif #ifdef DBCSAWARE -# ifdef DBCSAWARE_SKIP_EVIL_REPEATS_CHECK - if(u_detectDBCSAwareEvilClient()) - newuser.uflag &= ~UF_DBCSAWARE; - else - newuser.uflag |= UF_DBCSAWARE; -# else - // since we check for repeats, safe to set DBCS aware to user - newuser.uflag |= UF_DBCSAWARE; +# ifndef DBCSAWARE_SKIP_EVIL_REPEATS_CHECK + newuser.uflag |= UF_DBCS_DROP_REPEAT; # endif + // if we check for repeats, safe to set DBCS aware to user; + // otherwise use detection + if ((newuser.uflag & UF_DBCS_DROP_REPEAT) || + u_detectDBCSAwareEvilClient() ) { + newuser.uflag |= UF_DBCSAWARE; + } else { + newuser.uflag &= ~UF_DBCSAWARE; + } #endif more("etc/register", NA); |