1.1 --- a/core/AdminCache.cpp Thu Jun 07 05:53:32 2007 +0000
1.2 +++ b/core/AdminCache.cpp Thu Jun 07 05:53:50 2007 +0000
1.3 @@ -951,7 +951,12 @@
1.4 {
1.5 return ((pUser->flags & bit) == bit);
1.6 } else if (mode == Access_Effective) {
1.7 - return ((pUser->eflags & bit) == bit);
1.8 + bool has_bit = ((pUser->eflags & bit) == bit);
1.9 + if (!has_bit && flag != Admin_Root && ((pUser->eflags & ADMFLAG_ROOT) == ADMFLAG_ROOT))
1.10 + {
1.11 + has_bit = true;
1.12 + }
1.13 + return has_bit;
1.14 }
1.15
1.16 return false;