FIX: last ip address could point at wrong ip
Due to unicorn env object recycling request.ip could point at the wrong ip address by the time defer block is called. This usually would happen under load. This also avoids keeping the entire request object as referenced by the closure.
This commit is contained in:
parent
ea73880146
commit
c738d31809
@ -118,9 +118,11 @@ class Auth::DefaultCurrentUserProvider
|
||||
|
||||
if current_user && should_update_last_seen?
|
||||
u = current_user
|
||||
ip = request.ip
|
||||
|
||||
Scheduler::Defer.later "Updating Last Seen" do
|
||||
u.update_last_seen!
|
||||
u.update_ip_address!(request.ip)
|
||||
u.update_ip_address!(ip)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Reference in New Issue
Block a user