Ticket #4540: echelon_escape_like2.patch
File echelon_escape_like2.patch, 1.6 KB (added by , 7 years ago) |
---|
-
source/tools/XpartaMuPP/EcheLOn.py
27 27 from sleekxmpp.xmlstream.matcher import StanzaPath 28 28 29 29 from sqlalchemy import func 30 from sqlalchemy_utils import escape_like 30 31 31 32 from LobbyRanking import session as db, Game, Player, PlayerInfo 32 33 from ELO import get_rating_adjustment … … 45 46 Retrieves the profile for the specified JID 46 47 """ 47 48 stats = {} 48 player = db.query(Player).filter(Player.jid.ilike( str(JID)))49 player = db.query(Player).filter(Player.jid.ilike(escape_like(str(JID)), "*")) 49 50 50 51 if not player.first(): 51 52 return … … 109 110 dict.values(gamereport['playerStates']))): 110 111 return None 111 112 112 players = map(lambda jid: db.query(Player).filter(Player.jid.ilike( str(jid))).first(),113 players = map(lambda jid: db.query(Player).filter(Player.jid.ilike(escape_like(str(jid)), "*")).first(), 113 114 dict.keys(gamereport['playerStates'])) 114 115 115 116 winning_jid = list(dict.keys({jid: state for jid, state in … … 154 155 game = Game(map=gamereport['mapName'], duration=int(gamereport['timeElapsed']), teamsLocked=bool(gamereport['teamsLocked']), matchID=gamereport['matchID']) 155 156 game.players.extend(players) 156 157 game.player_info.extend(playerInfos) 157 game.winner = db.query(Player).filter(Player.jid.ilike( str(winning_jid))).first()158 game.winner = db.query(Player).filter(Player.jid.ilike(escape_like(str(winning_jid)), "*")).first() 158 159 db.add(game) 159 160 db.commit() 160 161 return game