From 080d792a4007f7de86f115a8bb02c66e47725729 Mon Sep 17 00:00:00 2001 From: Jonathan Lipps Date: Thu, 30 Jan 2014 16:45:13 -0800 Subject: [PATCH] make sure we don't send status objects back to appium#start (fix #1706) --- lib/devices/ios/safari.js | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/lib/devices/ios/safari.js b/lib/devices/ios/safari.js index f2f5940ba..4e817d4ac 100644 --- a/lib/devices/ios/safari.js +++ b/lib/devices/ios/safari.js @@ -2,6 +2,7 @@ var IOS = require('./ios.js') , logger = require('../../server/logger.js').get('appium') + , status = require("../../server/status.js") , _ = require('underscore'); var Safari = function (args) { @@ -58,9 +59,13 @@ Safari.prototype.navToLatestAvailableWebview = function (cb) { if (parseInt(this.iOSSDKVersion, 10) >= 7 && !this.udid) { logger.info("We're on iOS7 simulator: clicking apple button to get into a webview"); this.findAndAct('xpath', '//window[2]/scrollview[1]/button[1]', 0, 'click', [], function (err, res) { - if (this.checkSuccess(err, res, cb)) { - navToView(); + if (err || res.status !== status.codes.Success.code) { + var msg = "Could not successfully navigate to a working Safari " + + "webview. Original error: " + (err ? err.message : "unknown"); + logger.error(msg); + return cb(new Error(msg)); } + navToView(); }.bind(this)); } else { navToView();