[zion] Update LinkedList iterator semantics.

This commit is contained in:
Drew Galbraith 2023-06-16 15:24:38 -07:00
parent 242a18ae3c
commit b27672d5de
4 changed files with 7 additions and 7 deletions

View File

@ -13,7 +13,7 @@ RefPtr<Capability> CapabilityTable::GetCapability(uint64_t id) {
MutexHolder h(lock_);
auto iter = capabilities_.begin();
while (iter != capabilities_.end()) {
if (*iter && iter->id() == id) {
if (*iter && (*iter)->id() == id) {
return *iter;
}
++iter;
@ -27,7 +27,7 @@ RefPtr<Capability> CapabilityTable::ReleaseCapability(uint64_t id) {
MutexHolder h(lock_);
auto iter = capabilities_.begin();
while (iter != capabilities_.end()) {
if (*iter && iter->id() == id) {
if (*iter && (*iter)->id() == id) {
// FIXME: Do an actual release here.
auto cap = *iter;
*iter = {nullptr};

View File

@ -88,7 +88,7 @@ class LinkedList {
}
T& operator*() { return item_->item; }
T& operator->() { return item_->item; }
T* operator->() { return &item_->item; }
bool operator==(const Iterator& other) { return item_ == other.item_; }
bool operator!=(const Iterator& other) { return item_ != other.item_; }

View File

@ -42,7 +42,7 @@ RefPtr<Thread> Process::GetThread(uint64_t tid) {
MutexHolder lock(mutex_);
auto iter = threads_.begin();
while (iter != threads_.end()) {
if (iter->tid() == tid) {
if ((*iter)->tid() == tid) {
return *iter;
}
++iter;
@ -55,7 +55,7 @@ void Process::CheckState() {
MutexHolder lock(mutex_);
auto iter = threads_.begin();
while (iter != threads_.end()) {
if (iter->GetState() != Thread::FINISHED) {
if ((*iter)->GetState() != Thread::FINISHED) {
return;
}
++iter;

View File

@ -14,7 +14,7 @@ void ProcessManager::InsertProcess(const RefPtr<Process>& proc) {
Process& ProcessManager::FromId(uint64_t pid) {
auto iter = proc_list_.begin();
while (iter != proc_list_.end()) {
if (iter->id() == pid) {
if ((*iter)->id() == pid) {
return **iter;
}
++iter;
@ -28,7 +28,7 @@ void ProcessManager::DumpProcessStates() {
dbgln("Process States: %u", proc_list_.size());
auto iter = proc_list_.begin();
while (iter != proc_list_.end()) {
dbgln("%u: %u", iter->id(), iter->GetState());
dbgln("%u: %u", (*iter)->id(), (*iter)->GetState());
++iter;
}
}