1
0
forked from Kieran/snort

do not modify filters in place

This commit is contained in:
Martti Malmi 2024-01-06 13:01:09 +02:00
parent cb8318df56
commit b40a8cb9ad

View File

@ -321,8 +321,9 @@ export class Query extends EventEmitter<QueryEvents> implements QueryBase {
} }
#sendQueryInternal(c: Connection, q: BuiltRawReqFilter) { #sendQueryInternal(c: Connection, q: BuiltRawReqFilter) {
let filters = q.filters;
if (!c.SupportsNip(Nips.NotFilter)) { if (!c.SupportsNip(Nips.NotFilter)) {
q.filters = q.filters.map(f => { filters = filters.map(f => {
if (f.not) { if (f.not) {
const copy = { ...f }; const copy = { ...f };
delete copy.not; delete copy.not;
@ -331,7 +332,7 @@ export class Query extends EventEmitter<QueryEvents> implements QueryBase {
return f; return f;
}); });
} }
const qt = new QueryTrace(c.Address, q.filters, c.Id); const qt = new QueryTrace(c.Address, filters, c.Id);
qt.on("close", x => c.CloseReq(x)); qt.on("close", x => c.CloseReq(x));
qt.on("change", () => this.#onProgress()); qt.on("change", () => this.#onProgress());
qt.on("eose", (id, connId, forced) => qt.on("eose", (id, connId, forced) =>