fixed bug in search where note with inherited attribute is not matched when the owning note is not matched, #2457

This commit is contained in:
zadam
2021-12-20 21:35:12 +01:00
parent b1c4737e78
commit b8eeb0371c
2 changed files with 24 additions and 11 deletions

View File

@@ -23,20 +23,18 @@ class AttributeExistsExp extends Expression {
for (const attr of attrs) {
const note = attr.note;
if (inputNoteSet.hasNoteId(note.noteId)) {
if (attr.isInheritable) {
resultNoteSet.addAll(note.getSubtreeNotesIncludingTemplated());
}
else if (note.isTemplate()) {
resultNoteSet.addAll(note.getTemplatedNotes());
}
else {
resultNoteSet.add(note);
}
if (attr.isInheritable) {
resultNoteSet.addAll(note.getSubtreeNotesIncludingTemplated());
}
else if (note.isTemplate()) {
resultNoteSet.addAll(note.getTemplatedNotes());
}
else {
resultNoteSet.add(note);
}
}
return resultNoteSet;
return resultNoteSet.intersection(inputNoteSet);
}
}