diff options
Diffstat (limited to 'externals/grill/flext/source/flmap.cpp')
-rw-r--r-- | externals/grill/flext/source/flmap.cpp | 60 |
1 files changed, 30 insertions, 30 deletions
diff --git a/externals/grill/flext/source/flmap.cpp b/externals/grill/flext/source/flmap.cpp index 117f0896..5afcf51c 100644 --- a/externals/grill/flext/source/flmap.cpp +++ b/externals/grill/flext/source/flmap.cpp @@ -216,34 +216,34 @@ void TableAnyMap::_getsmall(Data &dt) void TableAnyMap::iterator::forward() { - if(map || ix >= map->n) { - if(++ix >= map->n) { - TableAnyMap *nmap; - - // we reached the end of the slots - if(map->right) { - // climb up one - map = map->right; - leftmost(); - ix = 0; - } - else { - // fall back - for(;;) { - nmap = map->parent; - if(!nmap) break; // no parent - if(nmap->left == map) { - // ok, we are in front of the slots now - ix = 0; - map = nmap; - break; - } - else { - FLEXT_ASSERT(nmap->right == map); - ix = (map = nmap)->n; - } - } - } - } - } + FLEXT_ASSERT(map || ix >= map->n); + + if(++ix >= map->n) { + TableAnyMap *nmap; + + // we reached the end of the slots + if(map->right) { + // climb up one + map = map->right; + leftmost(); + ix = 0; + } + else { + // fall back + for(;;) { + nmap = map->parent; + if(!nmap) break; // no parent + if(nmap->left == map) { + // ok, we are in front of the slots now + ix = 0; + map = nmap; + break; + } + else { + FLEXT_ASSERT(nmap->right == map); + ix = (map = nmap)->n; + } + } + } + } } |