# File lib/rack/session/pool.rb, line 44 def get_session(env, sid) session = @pool[sid] if sid @mutex.lock if env['rack.multithread'] unless sid and session env['rack.errors'].puts("Session '#{sid.inspect}' not found, initializing...") if $VERBOSE and not sid.nil? session = {} sid = generate_sid @pool.store sid, session end session.instance_variable_set('@old', {}.merge(session)) return [sid, session] ensure @mutex.unlock if env['rack.multithread'] end