From 067457198d41ffaf9653917d5703b6de58acf4b6 Mon Sep 17 00:00:00 2001 From: igor04091968 Date: Wed, 13 May 2026 02:10:04 +0300 Subject: [PATCH] fix(webui): avoid category-builder crash on aw-watcher-window_unknown buckets --- aw-server/aw-ru-patch.js | 13 +++++++++++++ .../aw-server/aw-ru-patch.js | 13 +++++++++++++ 2 files changed, 26 insertions(+) diff --git a/aw-server/aw-ru-patch.js b/aw-server/aw-ru-patch.js index fda8fbf..65f85c7 100755 --- a/aw-server/aw-ru-patch.js +++ b/aw-server/aw-ru-patch.js @@ -1551,6 +1551,17 @@ function rewriteUnknownCategoryBuilderQueryBody(body) { if (typeof body !== "string") return body; + function stripUnknownBucketQueries(raw) { + return raw + .replace(/flood\(query_bucket\(find_bucket\(\\"aw-watcher-window_unknown\\"\)\)\)/g, '[]') + .replace(/flood\(query_bucket\(find_bucket\(\\"aw-watcher-afk_unknown\\"\)\)\)/g, '[]') + .replace(/query_bucket\(find_bucket\(\\"aw-watcher-window_unknown\\"\)\)/g, '[]') + .replace(/query_bucket\(find_bucket\(\\"aw-watcher-afk_unknown\\"\)\)/g, '[]') + .replace(/flood\(query_bucket\(\\"aw-watcher-window_unknown\\"\)\)/g, '[]') + .replace(/flood\(query_bucket\(\\"aw-watcher-afk_unknown\\"\)\)/g, '[]') + .replace(/query_bucket\(\\"aw-watcher-window_unknown\\"\)/g, '[]') + .replace(/query_bucket\(\\"aw-watcher-afk_unknown\\"\)/g, '[]'); + } if (body.indexOf("undefined") !== -1) { body = body .replace(/flood\(query_bucket\(find_bucket\(\\"undefined\\"\)\)\)/g, '[]') @@ -1570,6 +1581,8 @@ body = body .replace(/aw-watcher-window_unknown/g, "aw-watcher-window_" + preferredHost) .replace(/aw-watcher-afk_unknown/g, "aw-watcher-afk_" + preferredHost); + } else { + body = stripUnknownBucketQueries(body); } } return body; diff --git a/install-kit-awindows-20260427-211240/aw-server/aw-ru-patch.js b/install-kit-awindows-20260427-211240/aw-server/aw-ru-patch.js index 28145bd..91cfa39 100755 --- a/install-kit-awindows-20260427-211240/aw-server/aw-ru-patch.js +++ b/install-kit-awindows-20260427-211240/aw-server/aw-ru-patch.js @@ -1500,6 +1500,17 @@ function rewriteUnknownCategoryBuilderQueryBody(body) { if (typeof body !== "string") return body; + function stripUnknownBucketQueries(raw) { + return raw + .replace(/flood\(query_bucket\(find_bucket\(\\"aw-watcher-window_unknown\\"\)\)\)/g, '[]') + .replace(/flood\(query_bucket\(find_bucket\(\\"aw-watcher-afk_unknown\\"\)\)\)/g, '[]') + .replace(/query_bucket\(find_bucket\(\\"aw-watcher-window_unknown\\"\)\)/g, '[]') + .replace(/query_bucket\(find_bucket\(\\"aw-watcher-afk_unknown\\"\)\)/g, '[]') + .replace(/flood\(query_bucket\(\\"aw-watcher-window_unknown\\"\)\)/g, '[]') + .replace(/flood\(query_bucket\(\\"aw-watcher-afk_unknown\\"\)\)/g, '[]') + .replace(/query_bucket\(\\"aw-watcher-window_unknown\\"\)/g, '[]') + .replace(/query_bucket\(\\"aw-watcher-afk_unknown\\"\)/g, '[]'); + } if (body.indexOf("undefined") !== -1) { body = body .replace(/flood\(query_bucket\(find_bucket\(\\"undefined\\"\)\)\)/g, '[]') @@ -1519,6 +1530,8 @@ body = body .replace(/aw-watcher-window_unknown/g, "aw-watcher-window_" + preferredHost) .replace(/aw-watcher-afk_unknown/g, "aw-watcher-afk_" + preferredHost); + } else { + body = stripUnknownBucketQueries(body); } } return body;