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:57:40 +0200 |
commit | a7bdb3df4c761d4856cb7eebdc32c63bbf06936f (patch) | |
tree | f45b4ac85d9fe5cc13febfcd939abc7b0e175245 | |
parent | 174a3971c4f3276d31ae8428ad5287b1774e9da5 (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; } |