From 16fa381fac4e95ba56c42eec2acc04f496d96e1f Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Wed, 1 Dec 2004 03:06:40 +0000 Subject: [PATCH] Use (float) typecast to insure ratios between 50-99% are calculated correctly (not rounded up to 100%). --- src/sbbs3/chk_ar.cpp | 6 +++--- src/sbbs3/userdat.c | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/sbbs3/chk_ar.cpp b/src/sbbs3/chk_ar.cpp index 632a438c6b..02d54185a0 100644 --- a/src/sbbs3/chk_ar.cpp +++ b/src/sbbs3/chk_ar.cpp @@ -394,7 +394,7 @@ bool sbbs_t::ar_exp(uchar **ptrptr, user_t* user) break; case AR_PCR: /* post/call ratio (by percentage) */ if(user->logons>user->posts - && (!user->posts || (100/(user->logons/user->posts))<(long)n)) + && (!user->posts || (100/((float)user->logons/user->posts))<(long)n)) result=_not; else result=!_not; @@ -406,7 +406,7 @@ bool sbbs_t::ar_exp(uchar **ptrptr, user_t* user) l=user->dlb; if(!l) l=1; if(user->dlb>user->ulb - && (!user->ulb || (100/(l/user->ulb))<n)) + && (!user->ulb || (100/((float)l/user->ulb))<n)) result=_not; else result=!_not; @@ -418,7 +418,7 @@ bool sbbs_t::ar_exp(uchar **ptrptr, user_t* user) i=user->dls; if(!i) i=1; if(user->dls>user->uls - && (!user->uls || (100/(i/user->uls))<n)) + && (!user->uls || (100/((float)i/user->uls))<n)) result=_not; else result=!_not; diff --git a/src/sbbs3/userdat.c b/src/sbbs3/userdat.c index 5cf266a645..836e5ae0dc 100644 --- a/src/sbbs3/userdat.c +++ b/src/sbbs3/userdat.c @@ -1523,7 +1523,7 @@ static BOOL ar_exp(scfg_t* cfg, uchar **ptrptr, user_t* user) if(user==NULL) result=not; else if(user->logons>user->posts - && (!user->posts || 100/(user->logons/user->posts)<(long)n)) + && (!user->posts || 100/((float)user->logons/user->posts)<(long)n)) result=not; else result=!not; @@ -1535,7 +1535,7 @@ static BOOL ar_exp(scfg_t* cfg, uchar **ptrptr, user_t* user) l=user->dlb; if(!l) l=1; if(user->dlb>user->ulb - && (!user->ulb || 100/(l/user->ulb)<n)) + && (!user->ulb || 100/((float)l/user->ulb)<n)) result=not; else result=!not; @@ -1548,7 +1548,7 @@ static BOOL ar_exp(scfg_t* cfg, uchar **ptrptr, user_t* user) i=user->dls; if(!i) i=1; if(user->dls>user->uls - && (!user->uls || 100/(i/user->uls)<n)) + && (!user->uls || 100/((float)i/user->uls)<n)) result=not; else result=!not; -- GitLab