@@ -219,7 +219,7 @@ func firefoxMarionette() {
219
219
Shutdown (errors .New ("Failed to connect to Firefox's Marionette within 30 seconds" ))
220
220
}
221
221
marionette = conn
222
- readMarionette ()
222
+ go readMarionette ()
223
223
sendFirefoxCommand ("WebDriver:NewSession" , map [string ]interface {}{})
224
224
}
225
225
@@ -258,7 +258,8 @@ func readMarionette() {
258
258
buffer := make ([]byte , 4096 )
259
259
count , err := marionette .Read (buffer )
260
260
if err != nil {
261
- Shutdown (err )
261
+ Log ("Error reading from Marionette connection" )
262
+ return
262
263
}
263
264
Log ("FF-MRNT: " + string (buffer [:count ]))
264
265
}
@@ -270,15 +271,16 @@ func sendFirefoxCommand(command string, args map[string]interface{}) {
270
271
message := fmt .Sprintf ("%d:%s" , len (marshalled ), marshalled )
271
272
fmt .Fprintf (marionette , message )
272
273
ffCommandCount ++
273
- readMarionette ()
274
+ go readMarionette ()
274
275
}
275
276
276
277
func setDefaultFirefoxPreferences () {
277
278
for key , value := range defaultFFPrefs {
278
279
setFFPreference (key , value )
279
280
}
280
- for key , value := range viper .GetStringMapString ("firefox-config" ) {
281
- setFFPreference (key , value )
281
+ for _ , pref := range viper .GetStringSlice ("firefox.preferences" ) {
282
+ parts := strings .SplitN (pref , "=" , 2 )
283
+ setFFPreference (parts [0 ], parts [1 ])
282
284
}
283
285
}
284
286
0 commit comments