diff --git a/src/de/schildbach/pte/OebbProvider.java b/src/de/schildbach/pte/OebbProvider.java
index 0a538421..c36c39cc 100644
--- a/src/de/schildbach/pte/OebbProvider.java
+++ b/src/de/schildbach/pte/OebbProvider.java
@@ -341,7 +341,7 @@ public class OebbProvider extends AbstractHafasProvider
private static final Pattern P_CONNECTION_DETAILS_COARSE = Pattern.compile("" //
+ "
\n(.*?)
\n" //
+ "\n(.*?)
\n" //
- + "" //
+ + "
\n(.*?)
\n" //
, Pattern.DOTALL);
private static final Pattern P_CONNECTION_DETAILS_FINE = Pattern.compile(".*?" //
+ "(?:]*>)?" // departureId
@@ -356,6 +356,7 @@ public class OebbProvider extends AbstractHafasProvider
+ " | (?:(\\d{2}\\.\\d{2}\\.\\d{2})| ) | .*?" // arrivalDate
+ "\n?an (\\d{2}:\\d{2}).*?" // arrivalTime
+ " | \\s*(?: |(.*?))\\s* | .*?" // arrivalPosition
+ + "]* class=\"section_remarks\">(?:.*?Richtung\\:\\s*([^\n]*)\n)?.*? | ?.*?" // destination
, Pattern.DOTALL);
private QueryConnectionsResult queryConnections(final String firstUri, final CharSequence firstPage) throws IOException
@@ -415,7 +416,7 @@ public class OebbProvider extends AbstractHafasProvider
final Matcher mDetCoarse = P_CONNECTION_DETAILS_COARSE.matcher(details);
while (mDetCoarse.find())
{
- final String set = mDetCoarse.group(1) + mDetCoarse.group(2);
+ final String set = mDetCoarse.group(1) + mDetCoarse.group(2) + mDetCoarse.group(3);
final Matcher mDetFine = P_CONNECTION_DETAILS_FINE.matcher(set);
if (mDetFine.matches())
@@ -458,7 +459,10 @@ public class OebbProvider extends AbstractHafasProvider
final String arrivalPosition = mDetFine.group(12) != null ? ParserUtils.resolveEntities(mDetFine.group(12)) : null;
- final Connection.Trip trip = new Connection.Trip(line, lineColors(line), null, detailsDepartureDateTime,
+ final Location destination = mDetFine.group(13) != null ? new Location(LocationType.ANY, 0,
+ ParserUtils.resolveEntities(mDetFine.group(13))) : null;
+
+ final Connection.Trip trip = new Connection.Trip(line, lineColors(line), destination, detailsDepartureDateTime,
departurePosition, departureId, departure, detailsArrivalDateTime, arrivalPosition, arrivalId, arrival, null);
connection.parts.add(trip);
}