From 3e420c77605bb4fd12d6dbf947010bf3ae70c2c7 Mon Sep 17 00:00:00 2001
From: Oleksii Shevchuk
Date: Tue, 18 Apr 2017 11:27:29 +0300
Subject: [PATCH] NO! NO! NO! fix sessions -k
---
pupy/pupylib/PupyServer.py | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/pupy/pupylib/PupyServer.py b/pupy/pupylib/PupyServer.py
index 7e2549db..e03a017a 100644
--- a/pupy/pupylib/PupyServer.py
+++ b/pupy/pupylib/PupyServer.py
@@ -223,21 +223,24 @@ class PupyServer(threading.Thread):
#if the criteria is a simple id we return the good client
try:
indexes = set(
- int(x) for x in search_criteria.split(',')
+ int(x) for x in str(search_criteria).split(',')
)
return [
c for c in self.clients if c.desc['id'] in indexes
]
- except Exception:
+ except Exception, e:
pass
+ if not type(search_criteria) in (str, unicode):
+ return
+
l=set([])
if search_criteria=="*":
return self.clients
for c in self.clients:
take=False
- for sc in str(search_criteria).split():
+ for sc in search_criteria.split():
tab=sc.split(":",1)
if len(tab)==2 and tab[0] in [x for x in c.desc.iterkeys()]:#if the field is specified we search for the value in this field
take=True