Bug 1269034 - Fix getSuggestionForQuery in inspector actor for id queries. r=bgrins
Make sure that result node id is not empty before appending it to the results
MozReview-Commit-ID: 5SuTrNf4t8v
--- a/devtools/client/inspector/test/browser_inspector_search-reserved.js
+++ b/devtools/client/inspector/test/browser_inspector_search-reserved.js
@@ -85,18 +85,17 @@ const TEST_DATA = [
suggestions: [{label: "body .c1\\.c2"}]
},
{
key: "VK_BACK_SPACE",
suggestions: [{label: "body div"}]
},
{
key: "#",
- suggestions: [{label: "body #"},
- {label: "body #d1\\.d2"}]
+ suggestions: [{label: "body #d1\\.d2"}]
}
];
add_task(function* () {
let { inspector } = yield openInspectorForURL(TEST_URL);
let searchBox = inspector.searchBox;
let popup = inspector.searchSuggestions.searchPopup;
--- a/devtools/server/actors/inspector.js
+++ b/devtools/server/actors/inspector.js
@@ -2243,17 +2243,17 @@ var WalkerActor = protocol.ActorClass({
nodes = this._multiFrameQuerySelectorAll("[id]");
} else {
nodes = this._multiFrameQuerySelectorAll(query);
}
for (let node of nodes) {
sugs.ids.set(node.id, (sugs.ids.get(node.id)|0) + 1);
}
for (let [id, count] of sugs.ids) {
- if (id.startsWith(completing)) {
+ if (id.startsWith(completing) && id !== "") {
result.push(["#" + CSS.escape(id), count, selectorState]);
}
}
break;
case "tag":
if (!query) {
nodes = this._multiFrameQuerySelectorAll("*");