Restoring original parameters along with URI


I redirect people to login page for those who have not logged in. I use
:before_filter to do this. I store the original Uri in session so that
when he logs in I redirect to. But parameters are not getting store

in my :before_filter
I do:
session[:original_uri] = request.request_uri

In login controller:
uri = session[:original_params]
session[:original_uri] = nil
redirect_to(uri || { :controller => “account”, :action =>
“my_home” })

But if i do this, parameters of the original request are saved and are
not forwarded during the redirection.

I tried saving params in before_filter :
session[:original_params] = params
and tried resetting,
uri = session[:original_params]

But this didnt really do the trick.

Can someone please suggest.