title: Why is session data lost after redirect in fuelPHP?
body: <p>I have an odd situation. consider the following scenario:</p>
  
  <ol>
  <li>form on page posts to another domain</li>
  <li>that domain processes data, and posts back to controller A</li>
  <li>controller A processes returned data, and sets flash session vars</li>
  <li>controller A redirects to controller B</li>
  <li>session values set in controller A are lost.</li>
  </ol>
  
  <p>Now, I have noticed that if I eliminate step 4; the session values are not lost. It is only happening after calling Response::redirect().</p>
  
  <p>Following is the relevant code in controller A's post handler (in this case, $vars is set to Input::post(); and the renew() method does a soap call to another API, and returns response data.):</p>
  
  <pre><code>$success_object = $this-&gt;renew( $vars );
  $persist_through_redirect = array(
      'accountId' =&gt; $success_object-&gt;account-&gt;accountId,
      'expireDate' =&gt; $success_object-&gt;account-&gt;expireDate,
      'createDate' =&gt; $success_object-&gt;account-&gt;createDate,
      'due_amount' =&gt; $success_object-&gt;account-&gt;lastPaymentAmt,
      'offer_name' =&gt; $offer_name,
      'member_name' =&gt; $vars['first_name'] . ' ' . $vars['last_name']
  );
  return $this-&gt;redirect('success/', $persist_through_redirect);
  </code></pre>
  
  <p>And this is the code behind method redirect():</p>
  
  <pre><code>private function redirect($redirect_endpoint, $redirect_values = null) { 
      Session::set_flash('flash_redirect', $redirect_values);
      Response::redirect($redirect_endpoint);
  }
  </code></pre>
  
  <p>Finally, here is the code in controller B that accesses the session data:</p>
  
  <pre><code>$information = Session::get_flash('flash_redirect');
  if(isset($information)) {
      View::set_global('membership',  $information);
  }
  // set the locale based on fuel's setting
  View::set_global('locale', str_replace( '_', '-', Fuel::$locale ));
  return View::forge('successes/success_card');
  </code></pre>
  
  <p>It gets weirder though. Not all session data is lost. Any session data I had set in the before() method is staying put.</p>
  
  <p>I'm very stumped on this one. Any ideas why my session data is lost?</p>