diff --git a/resources/static/dialog/controllers/actions.js b/resources/static/dialog/controllers/actions.js
index 9e253e9ae89924c3918bbc39caa337acf1a9a83f..74ada70ab9569905c6b1422e6dc1591e1dd1b7e2 100644
--- a/resources/static/dialog/controllers/actions.js
+++ b/resources/static/dialog/controllers/actions.js
@@ -155,9 +155,9 @@ BrowserID.Modules.Actions = (function() {
       user.logoutUser(self.publish.bind(self, "logged_out"), self.getErrorDialog(errors.logoutUser));
     },
 
-    doSyncThenPickEmail: function() {
+    doSyncThenPickEmail: function(options) {
       var self = this;
-      user.syncEmails(self.doPickEmail.bind(self),
+      user.syncEmails(self.doPickEmail.bind(self, options),
         self.getErrorDialog(errors.syncEmails));
     },
 
diff --git a/resources/static/dialog/controllers/dialog.js b/resources/static/dialog/controllers/dialog.js
index 0cc46aab5a3dadfbe852c2ddf458b2550815fc89..832bc78b97b490b5c901e871a5d67823d9d2d1e5 100644
--- a/resources/static/dialog/controllers/dialog.js
+++ b/resources/static/dialog/controllers/dialog.js
@@ -87,7 +87,6 @@ BrowserID.Modules.Dialog = (function() {
     }      
 
     try {
-      //
       WinChan.onOpen(function(origin, args, cb) {
         self.get(origin, args.params, function(r) {
           cb(r);
diff --git a/resources/static/dialog/resources/state_machine.js b/resources/static/dialog/resources/state_machine.js
index beb9f72d2cc2bad0a89ef92158b2544abc2c79c4..45f7b344b2ae5e2f74348e60274e01f6c086ec7a 100644
--- a/resources/static/dialog/resources/state_machine.js
+++ b/resources/static/dialog/resources/state_machine.js
@@ -167,7 +167,10 @@
     });
 
     subscribe("authenticated", function(msg, info) {
-      gotoState("doSyncThenPickEmail");
+      gotoState("doSyncThenPickEmail", {
+        origin: self.hostname,
+        allow_persistent: self.allowPersistent
+      });
     });
 
     subscribe("forgot_password", function(msg, info) {