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
64f11e6b6c
commit
b3a4cf8ee6
@ -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