diff --git a/src/de/schildbach/pte/BahnProvider.java b/src/de/schildbach/pte/BahnProvider.java
index 9fceb827..ddf72693 100644
--- a/src/de/schildbach/pte/BahnProvider.java
+++ b/src/de/schildbach/pte/BahnProvider.java
@@ -388,7 +388,8 @@ public final class BahnProvider extends AbstractHafasProvider
private static final Pattern P_CONNECTION_DETAILS_HEAD = Pattern.compile(".*?" //
+ "Verbindungsdetails(.*?)
.*?", Pattern.DOTALL);
- private static final Pattern P_CONNECTION_DETAILS_COARSE = Pattern.compile("\n(.+?>\n)
", Pattern.DOTALL);
+ private static final Pattern P_CONNECTION_DETAILS_COARSE = Pattern.compile("\n(.+?>\n)
",
+ Pattern.DOTALL);
static final Pattern P_CONNECTION_DETAILS_FINE = Pattern.compile("\\s*(.+?)\\s*.*?" // departure
+ "(?:" //
+ "\\s*(.+?)\\s*.*?" // line
@@ -431,7 +432,6 @@ public final class BahnProvider extends AbstractHafasProvider
Location firstDeparture = null;
Date lastArrivalTime = null;
Location lastArrival = null;
- Connection.Trip lastTrip = null;
final Matcher mDetCoarse = P_CONNECTION_DETAILS_COARSE.matcher(mHead.group(1));
while (mDetCoarse.find())
@@ -471,9 +471,8 @@ public final class BahnProvider extends AbstractHafasProvider
final String arrivalPosition = ParserUtils.resolveEntities(mDetFine.group(8));
- lastTrip = new Connection.Trip(line, null, departureTime.getTime(), departurePosition, departure, arrivalTime.getTime(),
- arrivalPosition, arrival, null, null);
- parts.add(lastTrip);
+ parts.add(new Connection.Trip(line, null, departureTime.getTime(), departurePosition, departure, arrivalTime.getTime(),
+ arrivalPosition, arrival, null, null));
if (firstDepartureTime == null)
firstDepartureTime = departureTime.getTime();