 							activeLocation.startDate = (specStartDate.getTime() > dateStart.getTime()) ? specStartDate : dateStart;
 							
 						} else {
-							if (activeLocation.country != spec.from_country || activeLocation.city != spec.from_city) {
+							activeCity = activeLocation.city;
+							specFromCity = (spec.from_city == "-") ? "" : spec.from_city;
+							specToCity = (spec.to_city == "-") ? "" : spec.to_city;
+							if (activeLocation.country != spec.from_country || (activeCity != specFromCity)) {
 								specStopDate.setTime(spec.to_date.getTime() - (spec.to_timezone*msPerHour));
 								activeLocation.stopDate = (specStopDate.getTime() < dateStop.getTime()) ? specStopDate : dateStop;;
 								locationList.addItem(activeLocation);

						for (var l:int=0; l < locationList.length; l++) {
							var ranger:DateRanger = new DateRanger();
							ranger.getDateRange(locationList.getItemAt(l).startDate, locationList.getItemAt(l).stopDate);
							if (ranger.total_min > maxTimeframe) {
								maxTimeframe = ranger.total_min;
								maxTimeframeObject = locationList.getItemAt(l);

					var locationList:ArrayCollection = new ArrayCollection();
					var specStartDate:Date = new Date();
					var specStopDate:Date = new Date();
					var activeCity:String = "";
					var specFromCity:String = "";
					var specToCity:String = "";
					for (var t:int = 0; t < timeFrameSpecs.length; t++) {
						var spec:TravelSpecificationVO = timeFrameSpecs.getItemAt(t) as TravelSpecificationVO;
						var testTravelEnd:Boolean = true;
