]> git.tdb.fi Git - r2c2.git/blobdiff - source/libr2c2/signal.cpp
Improve the interface and algorithms of BlockAllocator
[r2c2.git] / source / libr2c2 / signal.cpp
index 0139b1fbdaa9cf73ff6a3b25cdaff0b7f63eb984..a858e0dc92b99293eb142f8172f7902d563acb22 100644 (file)
@@ -163,8 +163,8 @@ void Signal::block_reserved(const Block &b, Train *t)
        {
                if(t)
                {
-                       int train_entry = t->get_entry_to_block(*block);
-                       if(train_entry>=0 && static_cast<unsigned>(train_entry)==entry)
+                       const BlockIter &b_iter = t->get_block_allocator().iter_for(b);
+                       if(b_iter && b_iter.entry()==entry)
                        {
                                if(train_conn)
                                        train_conn.disconnect();