diff --git a/interlocking/model/point.py b/interlocking/model/point.py index f0594cb..407e7e8 100644 --- a/interlocking/model/point.py +++ b/interlocking/model/point.py @@ -47,7 +47,14 @@ def is_only_used_by_train(self, train_id: str): return len(self.used_by) == 1 and train_id in self.used_by def is_track_connected(self, track): - return track.base_track_id in {self.head.base_track_id, self.left.base_track_id, self.right.base_track_id} + all_base_ids = [] + if self.head is not None: + all_base_ids.append(self.head.base_track_id) + if self.left is not None: + all_base_ids.append(self.left.base_track_id) + if self.right is not None: + all_base_ids.append(self.right.base_track_id) + return track.base_track_id in all_base_ids def does_point_connect_tracks(self, track_1, track_2): if not self.is_point: