Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit c68ace0

Browse files
committedFeb 1, 2016
Python: Fixing error message handling. Fixes issue #1497
1 parent 7b85992 commit c68ace0

File tree

1 file changed

+14
-12
lines changed

1 file changed

+14
-12
lines changed
 

‎py/selenium/webdriver/remote/errorhandler.py

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -100,18 +100,20 @@ def check_response(self, response):
100100
if value_json and isinstance(value_json, basestring):
101101
import json
102102
try:
103-
value = json.loads(value_json)
104-
status = value.get('error', None)
105-
if status is None:
106-
status = value["status"]
107-
try:
108-
message = value["value"]["message"]
109-
except TypeError:
110-
message = None
111-
else:
112-
message = value.get('message', None)
103+
value = json.loads(value_json)
104+
status = value.get('error', None)
105+
if status is None:
106+
status = value["status"]
107+
message = value["value"]
108+
if not isinstance(message, basestring):
109+
try:
110+
message = message['message']
111+
except TypeError:
112+
message = None
113+
else:
114+
message = value.get('message', None)
113115
except ValueError:
114-
pass
116+
pass
115117

116118
exception_class = ErrorInResponseException
117119
if status in ErrorCode.NO_SUCH_ELEMENT:
@@ -191,4 +193,4 @@ def check_response(self, response):
191193
raise exception_class(message, screen, stacktrace)
192194

193195
def _value_or_default(self, obj, key, default):
194-
return obj[key] if key in obj else default
196+
return obj[key] if key in obj else default

0 commit comments

Comments
 (0)
Please sign in to comment.