rendered paste bodyIndex: src/bzfs/BanCommands.cxx
===================================================================
--- src/bzfs/BanCommands.cxx (revision 17050)
+++ src/bzfs/BanCommands.cxx (working copy)
@@ -788,9 +788,13 @@
hostBanEvent.reason = reason.c_str();
hostBanEvent.duration = durationInt;
- worldEventManager.callEvents(bz_eHostBanEvent,&hostBanEvent);
+ worldEventManager.callEvents(bz_eHostBanModifyEvent,&hostBanEvent);
- // FIXME : add new plugin modification event
+ if ( t != hostBanEvent.bannerID ) {
+ playerData = GameKeeper::Player::getPlayerByIndex(hostBanEvent.bannerID);
+ if (!playerData)
+ return true;
+ }
// reload the banlist in case anyone else has added
clOptions->acl.load();
@@ -803,6 +807,9 @@
GameKeeper::Player::setAllNeedHostbanChecked(true);
+ hostBanEvent.eventType = bz_eHostBanNotifyEvent;
+ worldEventManager.callEvents(bz_eHostBanNotifyEvent,&hostBanEvent);
+
sendMessage(ServerPlayer, AdminPlayers, "Pattern added to the HOSTNAME banlist");
return true;
Index: include/bzfsAPI.h
===================================================================
--- include/bzfsAPI.h (revision 17050)
+++ include/bzfsAPI.h (working copy)
@@ -116,7 +116,8 @@
bz_eAllowSpawn,
bz_eListServerUpdateEvent,
bz_eBanEvent,
- bz_eHostBanEvent,
+ bz_eHostBanNotifyEvent,
+ bz_eHostBanModifyEvent,
bz_eIdBanEvent,
bz_eKickEvent,
bz_eKillEvent,
@@ -786,7 +787,7 @@
public:
bz_HostBanEventData_V1() : bz_EventData()
{
- eventType = bz_eHostBanEvent;
+ eventType = bz_eHostBanModifyEvent;
bannerID = -1;
duration = -1;
}