Commit d39dbe5d authored by Long Ly's avatar Long Ly Committed by Commit Bot

Fix GET /sessions issue if there is at least 1 session in W3C mode.

The issue is that session->capabilities is not available W3C mode since
it was moved to 'body' object when session is initiated. Therefore, when
GET /sessions is called, session->capabilities will trigger errors.

Bug: chromedriver:2798
Change-Id: Ifc7dbc69d00485a53a150a96a7b6c94b9578bdb7
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1504760Reviewed-by: default avatarJohn Chen <johnchen@chromium.org>
Commit-Queue: Long Ly <loly@microsoft.com>
Cr-Commit-Position: refs/heads/master@{#638198}
parent 2f08b98c
...@@ -327,8 +327,11 @@ Status InitSessionHelper(const InitSessionParams& bound_params, ...@@ -327,8 +327,11 @@ Status InitSessionHelper(const InitSessionParams& bound_params,
CreateCapabilities(session, capabilities, *desired_caps); CreateCapabilities(session, capabilities, *desired_caps);
if (session->w3c_compliant) { if (session->w3c_compliant) {
std::unique_ptr<base::DictionaryValue> capabilities =
std::unique_ptr<base::DictionaryValue>(
session->capabilities->DeepCopy());
base::DictionaryValue body; base::DictionaryValue body;
body.SetDictionary("capabilities", std::move(session->capabilities)); body.SetDictionary("capabilities", std::move(capabilities));
body.SetString("sessionId", session->id); body.SetString("sessionId", session->id);
value->reset(body.DeepCopy()); value->reset(body.DeepCopy());
} else { } else {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment