Skip to content

Commit

Permalink
Merge pull request #7 from KyleSanderson/master
Browse files Browse the repository at this point in the history
Fix Handle leaks, incorrect translations being used, and two things.
  • Loading branch information
ErikMinekus committed Jul 17, 2013
2 parents 22a0948 + 6afbc82 commit 300c3a8
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 17 deletions.
25 changes: 16 additions & 9 deletions game/addons/sourcemod/scripting/sb_bans.sp
Original file line number Diff line number Diff line change
Expand Up @@ -447,14 +447,13 @@ public Action:Command_BanIp(client, args)
client,
iTargets,
1,
COMMAND_FILTER_CONNECTED|COMMAND_FILTER_NO_MULTI,
COMMAND_FILTER_CONNECTED|COMMAND_FILTER_NO_MULTI|COMMAND_FILTER_NO_BOTS,
sTargets,
sizeof(sTargets),
tn_is_ml) > 0)
{
iTarget = iTargets[0];
if(!IsFakeClient(iTarget) && CanUserTarget(client, iTarget))
GetClientIP(iTarget, sIp, sizeof(sIp));
GetClientIP(iTarget, sIp, sizeof(sIp));
}

BanIdentity(sIp, iTime, BANFLAG_IP, sArg[iLen], "sm_banip", client);
Expand Down Expand Up @@ -484,15 +483,13 @@ public Action:Command_AddBan(client, args)
client,
iTargets,
1,
COMMAND_FILTER_CONNECTED|COMMAND_FILTER_NO_MULTI,
COMMAND_FILTER_CONNECTED|COMMAND_FILTER_NO_MULTI|COMMAND_FILTER_NO_BOTS,
sTargets,
sizeof(sTargets),
tn_is_ml) > 0)
{
iTarget = iTargets[0];

if(!IsFakeClient(iTarget) && CanUserTarget(client, iTarget))
GetClientAuthString(iTarget, sAuth, sizeof(sAuth));
GetClientAuthString(iTarget, sAuth, sizeof(sAuth), false);
}

BanIdentity(sAuth, iTime, BANFLAG_AUTHID, sArg[iLen], "sm_addban", client);
Expand All @@ -515,6 +512,7 @@ public Action:Command_Unban(client, args)
decl String:sArg[24];
GetCmdArgString(sArg, sizeof(sArg));
ReplaceString(sArg, sizeof(sArg), "\"", "");
TrimString(sArg);

RemoveBan(sArg, strncmp(sArg, "STEAM_", 6) == 0 ? BANFLAG_AUTHID : BANFLAG_IP, "sm_unban", client);
return Plugin_Handled;
Expand Down Expand Up @@ -640,6 +638,8 @@ public Action:Timer_ProcessQueue(Handle:timer, any:data)
iType, sAuth, sIp, sEscapedName, sEscapedReason, iLength, g_iServerId, iAdminId, sAdminIp, iTime);
SB_Query(Query_AddedFromQueue, sQuery, hPack);
}

CloseHandle(hQuery);
}

public Action:Timer_ProcessTemp(Handle:timer)
Expand Down Expand Up @@ -739,7 +739,7 @@ public MenuHandler_Reason(Handle:menu, MenuAction:action, param1, param2)
if(g_iBanTarget[param1] != -1)
{
decl String:sKickMessage[128];
Format(sKickMessage, sizeof(sKickMessage), "%t", "Banned Check Site", g_sWebsite);
Format(sKickMessage, sizeof(sKickMessage), "%T", "Banned Check Site", g_iBanTarget[param1], g_sWebsite);
BanClient(g_iBanTarget[param1], g_iBanTime[param1], BANFLAG_AUTO, sInfo, sKickMessage, "sm_ban", param1);
}

Expand Down Expand Up @@ -1171,7 +1171,14 @@ bool:HasLocalBan(const String:sAuth[], const String:sIp[] = "", bool:bType = tru
sAuth[0] ? sAuth : "none", sIp[0] ? sIp : "none", GetTime(), GetTime());

new Handle:hQuery = SQL_Query(g_hSQLiteDB, sQuery);
return hQuery && SQL_GetRowCount(hQuery);
new bool:bResult = false;
if (hQuery != INVALID_HANDLE)
{
bResult = SQL_GetRowCount(hQuery);
CloseHandle(hQuery);
}

return bResult;
}

InsertLocalBan(iType, const String:sAuth[], const String:sIp[], const String:sName[], const String:sReason[], iLength, iAdminId, const String:sAdminIp[], iTime, bool:bQueued = false)
Expand Down
15 changes: 7 additions & 8 deletions game/addons/sourcemod/scripting/sb_viewbans.sp
Original file line number Diff line number Diff line change
Expand Up @@ -233,7 +233,7 @@ public MenuHandler_BanList(Handle:menu, MenuAction:action, param1, param2)
GetMenuItem(menu, param2, sBanID, sizeof(sBanID));
// TODO: Deal with passing the target id
new iTarget;
new Handle:hPanel = BuildPlayerBanInfoPanel(iTarget, StringToInt(sBanID));
new Handle:hPanel = BuildPlayerBanInfoPanel(iTarget, StringToInt(sBanID), param1);
SendPanelToClient(hPanel, param1, PanelHandler_BanInfo, MENU_TIME_FOREVER);
CloseHandle(hPanel);
}
Expand Down Expand Up @@ -307,7 +307,7 @@ stock Handle:BuildPlayerMenu(iClient)
{
decl String:sTitle[128];
new Handle:hMenu = CreateMenu(MenuHandler_SelectPlayer);
Format(sTitle, sizeof(sTitle), "%t:", "Select player");
Format(sTitle, sizeof(sTitle), "%T:", "Select player", iClient);
SetMenuTitle(hMenu, sTitle);
SetMenuExitBackButton(hMenu, true);
AddTargetsToMenu2(hMenu, iClient, COMMAND_FILTER_NO_BOTS|COMMAND_FILTER_CONNECTED);
Expand All @@ -320,7 +320,7 @@ stock Handle:BuildPlayerBanListMenu(iTarget)
new Handle:hMenu = CreateMenu(MenuHandler_BanList);
decl String:sTargetName[64], String:sTitle[128];
GetClientName(iTarget, sTargetName, sizeof(sTargetName));
Format(sTitle, sizeof(sTitle), "%t:", "Player ban list", sTargetName);
Format(sTitle, sizeof(sTitle), "%T:", "Player ban list", iTarget, sTargetName);
SetMenuTitle(hMenu, sTitle);
SetMenuExitBackButton(hMenu, true);

Expand All @@ -336,13 +336,13 @@ stock Handle:BuildPlayerBanListMenu(iTarget)
return hMenu;
}

stock Handle:BuildPlayerBanInfoPanel(iTarget, iBanID)
stock Handle:BuildPlayerBanInfoPanel(iTarget, iBanID, client = 0)
{
// Create the panel and set the panel options.
new Handle:hPanel = CreatePanel();
decl String:sTargetName[64], String:sTitle[128];
GetClientName(iTarget, sTargetName, sizeof(sTargetName));
Format(sTitle, sizeof(sTitle), "%t:", "Player ban info", sTargetName);
Format(sTitle, sizeof(sTitle), "%T:", "Player ban info", client, sTargetName);
SetPanelTitle(hPanel, sTitle);

// Create all the string variables we will need
Expand Down Expand Up @@ -438,9 +438,8 @@ stock SendChatToAdmins(iTarget)

stock PrintBans(iClient, iTarget)
{
decl String:sAuth[64], String:sTargetName[64], String:sReplyBuffer[256];
decl String:sAuth[64], String:sTargetName[64];
GetClientAuthString(iTarget, sAuth, sizeof(sAuth));
GetClientName(iTarget, sTargetName, sizeof(sTargetName));
Format(sReplyBuffer, sizeof(sReplyBuffer), "%t", "Player bans", sTargetName, sAuth, g_iPlayerBans[iTarget]);
PrintToChat(iClient, "[SM] %s", sReplyBuffer);
PrintToChat(iClient, "[SM] %t", "Player bans", sTargetName, sAuth, g_iPlayerBans[iTarget]);
}

0 comments on commit 300c3a8

Please sign in to comment.