-
Notifications
You must be signed in to change notification settings - Fork 752
Closed
Labels
odbOpenDBOpenDB
Description
Describe the bug
The following code updates the next pointer and misses to update the prev pointer
void dbRegionGroupItr::reverse(dbObject* parent)
{
// User Code Begin reverse
_dbRegion* _parent = (_dbRegion*) parent;
uint id = _parent->groups_;
uint list = 0;
while (id != 0) {
_dbGroup* _child = _group_tbl->getPtr(id);
uint n = _child->region_next_;
_child->region_next_ = list;
list = id;
id = n;
}
_parent->groups_ = list;
// User Code End reverse
}
See the two pointers on _dbGroup:
dbId<_dbGroup> region_next_;
dbId<_dbGroup> region_prev_;
Expected Behavior
Proper reversal of double-linked list
Environment
.To Reproduce
.
Relevant log output
Screenshots
No response
Additional Context
No response