summaryrefslogtreecommitdiffhomepage
path: root/dev/kernel/src/IndexableProperty.cc
diff options
context:
space:
mode:
Diffstat (limited to 'dev/kernel/src/IndexableProperty.cc')
-rw-r--r--dev/kernel/src/IndexableProperty.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/dev/kernel/src/IndexableProperty.cc b/dev/kernel/src/IndexableProperty.cc
index c11e328d..56143607 100644
--- a/dev/kernel/src/IndexableProperty.cc
+++ b/dev/kernel/src/IndexableProperty.cc
@@ -22,7 +22,7 @@ namespace Indexer {
Void IndexableProperty::AddFlag(Int16 flag) { fFlags |= flag; }
- Void IndexableProperty::RemoveFlag(Int16 flag) { fFlags &= flag; }
+ Void IndexableProperty::RemoveFlag(Int16 flag) { fFlags &= ~(flag); }
Int16 IndexableProperty::HasFlag(Int16 flag) { return fFlags & flag; }
@@ -33,6 +33,7 @@ namespace Indexer {
/// @return none, check before if indexer can be claimed (using indexer.HasFlag(kIndexerClaimed)).
Void fs_index_file(const Char* filename, SizeT filenameLen, IndexableProperty& indexer) {
if (!indexer.HasFlag(kIndexerClaimed)) {
+ indexer.RemoveFlag(kIndexerUnclaimed);
indexer.AddFlag(kIndexerClaimed);
rt_copy_memory_safe(reinterpret_cast<VoidPtr>(const_cast<Char*>(filename)),
(VoidPtr) indexer.Leak().Path, filenameLen, kIndexerCatalogNameLength);