[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: session invalidation not working
From: |
Nala Ginrut |
Subject: |
Re: session invalidation not working |
Date: |
Wed, 17 Feb 2021 17:09:56 +0800 |
User-agent: |
mu4e 1.4.15; emacs 27.1 |
Mortimer Cladwell writes:
> (define (backend:session-restore/db sb sid)
> (let* ((mt (map-table-from-DB (session-backend-meta sb)))
> (cnd (where #:sid sid #:valid "1"))
> (valid (mt 'get 'Sessions #:condition cnd #:ret 'top)))
> (DEBUG "[backend:session-restore/db] ~a~%" valid)
> (and (not (null? valid)) (apply make-session valid))))
>
> (define (backend:session-set/db sb sid k v)
> (define-syntax-rule (-> x) (and x (call-with-input-string x read)))
> (let* ((mt (map-table-from-DB (session-backend-meta sb)))
> (cnd (where #:sid sid #:valid "1"))
> (data (-> (mt 'ref 'Sessions #:columns '(data) #:condition cnd))))
> (and data
> (mt 'set 'Sessions
> #:data (object->string (assoc-set! data k v))
> #:condition cnd))))
>
> (define (backend:session-ref/db sb sid k)
> (define-syntax-rule (-> x) (and x (call-with-input-string x read)))
> (let* ((mt (map-table-from-DB (session-backend-meta sb)))
> (cnd (where #:sid sid #:valid "1"))
> (data (-> (mt 'ref 'Sessions #:columns '(data) #:condition cnd))))
> (and data (assoc-ref data k))))
>
> Should all those #:valid "1" be #:valid 1 ?
I think so, and I've patched in the master branch.
Best regards.
--
GNU Powered it
GPL Protected it
GOD Blessed it
HFG - NalaGinrut
Fingerprint F53B 4C56 95B5 E4D5 6093 4324 8469 6772 846A 0058
signature.asc
Description: PGP signature