X-Git-Url: http://git.kpe.io/?p=wol.git;a=blobdiff_plain;f=sessions.lisp;h=045d0dde0ef0cb446407b4ded0482a4d82ba33c5;hp=b5bc55944f226c25ccee4cb1bb18073e249c501b;hb=e74e1fd67746e37a630a1c9f8251467ba4254508;hpb=155f1c55e5b3cfb5efc0fa3a87aca4843b418415 diff --git a/sessions.lisp b/sessions.lisp index b5bc559..045d0dd 100644 --- a/sessions.lisp +++ b/sessions.lisp @@ -7,7 +7,7 @@ ;;;; Programmer: Kevin M. Rosenberg ;;;; Date Started: July 2003 ;;;; -;;;; $Id: sessions.lisp,v 1.2 2003/07/16 16:40:35 kevin Exp $ +;;;; $Id: sessions.lisp,v 1.3 2003/07/16 20:40:43 kevin Exp $ ;;;; ;;;; This file and Wol are Copyright (c) 2003 by Kevin M. Rosenberg ;;;; ************************************************************************* @@ -22,7 +22,7 @@ "Find or make websession for key" (let ((sessions (sessions (session-master (entity-project ent))))) ;; if sessions doesn't exist, then project is not session enabled - (when session + (when sessions (cond ((null key) (make-websession req ent method)) @@ -76,15 +76,19 @@ collect s)) (defun all-sessions (&aux s) - (dolist (p *active-projects* s) - (let ((sm (session-master p)) - (sessions (when sm (sessions sm)))) - (when sessions - (maphash - (lambda (k v) - (declare (ignore k)) - (push (cons v p) s)) - sessions))))) + (maphash + (lambda (name proj) + (declare (ignore name)) + (let* ((sm (session-master proj)) + (sessions (when sm (sessions sm)))) + (when sessions + (maphash + (lambda (k v) + (declare (ignore k)) + (push (cons v proj) s)) + sessions)))) + *active-projects*) + s) (defmethod flush-expired (s) (let ((sessions (sessions (session-master (cdr s)))))