diff options
author | Marius Vlad <marius.vlad@collabora.com> | 2021-02-15 13:52:58 +0200 |
---|---|---|
committer | Marius Vlad <marius.vlad@collabora.com> | 2021-03-03 16:44:54 +0200 |
commit | 2101ce76906836e8337eacab5ee8ecff2cbcff9f (patch) | |
tree | 2eee34c73884c872aba6fe6abdd151ecd569b3cf | |
parent | 8477be85731ea61bf2f4e47948c649a0bbb109d8 (diff) |
hs-clientmanager: Do not store always the client context
This incorrectly assumed that by re-using the same client context we
could gain access to the *current* client's context. But as we have
seen, the fake subscribe mechanism isn't really capable of doing that,
requiring a direct connection from the client to have that in.
Storing the client context make sense to happen only when we can create
it (with a real subscribe verb) and not *re-use* it, and assign it to
other applications. This basically reverts it to the way it was
previously.
Bug-AGL: SPEC-3796
Signed-off-by: Marius Vlad <marius.vlad@collabora.com>
Change-Id: I643dfe91049efa8937c9a8a21eb6fbb366b3fdcc
-rw-r--r-- | src/hs-clientmanager.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/hs-clientmanager.cpp b/src/hs-clientmanager.cpp index beac816..e880c62 100644 --- a/src/hs-clientmanager.cpp +++ b/src/hs-clientmanager.cpp @@ -94,9 +94,10 @@ HS_ClientCtxt* HS_ClientManager::createClientCtxt(afb_req_t req, std::string app ctxt = new HS_ClientCtxt(appid); afb_req_session_set_LOA(req, 1); afb_req_context_set(req, ctxt, cbRemoveClientCtxt); + + appid2ctxt[appid] = ctxt; } - appid2ctxt[appid] = ctxt; return ctxt; } |