| 1195 | } |
| 1196 | |
| 1197 | void AdminCache::SetAdminFlag(AdminId id, AdminFlag flag, bool enabled) |
| 1198 | { |
| 1199 | AdminUser *pUser = (AdminUser *)m_pMemory->GetAddress(id); |
| 1200 | if (!pUser || pUser->magic != USR_MAGIC_SET) |
| 1201 | { |
| 1202 | return; |
| 1203 | } |
| 1204 | |
| 1205 | if (flag < Admin_Reservation |
| 1206 | || flag >= AdminFlags_TOTAL) |
| 1207 | { |
| 1208 | return; |
| 1209 | } |
| 1210 | |
| 1211 | FlagBits bits = (1<<(FlagBits)flag); |
| 1212 | |
| 1213 | if (enabled) |
| 1214 | { |
| 1215 | pUser->flags |= bits; |
| 1216 | pUser->eflags |= bits; |
| 1217 | } else { |
| 1218 | pUser->flags &= ~bits; |
| 1219 | pUser->eflags &= ~bits; |
| 1220 | } |
| 1221 | |
| 1222 | pUser->serialchange++; |
| 1223 | } |
| 1224 | |
| 1225 | bool AdminCache::GetAdminFlag(AdminId id, AdminFlag flag, AccessMode mode) |
| 1226 | { |
no test coverage detected