]> git.tdb.fi Git - r2c2.git/blobdiff - source/engineer/trainpanel.cpp
Maintain a Block pointer in Track
[r2c2.git] / source / engineer / trainpanel.cpp
index 922e3741e272183abad52382f4255ce08c6fbfe3..a0dbbeef3890e345b773344f78c4c8d87ce6d8bd 100644 (file)
@@ -262,7 +262,7 @@ void TrainPanel::place(Track *track, unsigned ep)
 {
        pick_conn.disconnect();
 
-       Block &block = engineer.get_layout().get_block_by_track(*track);
+       Block &block = track->get_block();
 
        while(1)
        {
@@ -282,7 +282,7 @@ void TrainPanel::place(Track *track, unsigned ep)
                        Track *next = track->get_links()[ep];
                        ep = next->traverse(next->get_endpoint_by_link(*track), 0);
                        track = next;
-                       if(!block.get_tracks().count(track))
+                       if(!block.has_track(*track))
                                break;
                }
        }