--- apps.profile.inc
+++ apps.profile.inc
@@ -14,8 +14,8 @@ function apps_profile_install_tasks($install_state, $apps_server) {
   // Only use apps forms during interactive installs.
   $tasks = array();
   if ($install_state['interactive']) {
-    $_SESSION['apps_server'] = $apps_server;
     $apps_server_name = $apps_server['machine name'];
+    $_SESSION['apps_servers'][$apps_server_name] = $apps_server;
     $tasks = array(
       'apps_profile_apps_select_form_' . $apps_server_name => array(
         'display_name' => st('Install Apps'),
@@ -62,7 +62,9 @@ function apps_profile_apps_select_form($form, $form_state, &$install_state) {
 
   // If there is no internet things get in an unfixable state. Use try->catch
   try {
-    $_SESSION['apps_manifest'] = apps_apps($_SESSION['apps_server']['machine name']);
+    $apps_server_name = str_replace('apps_profile_apps_select_form_', '', $form_state['build_info']['args'][0]['active_task']);
+    $_SESSION['apps_manifest'] = apps_apps($apps_server_name);
+    $_SESSION['apps_server'] = $_SESSION['apps_servers'][$apps_server_name];
   }
   catch (Exception $e) {
     $form['info'] = array(
