changeset 17079:f0eb11e214d2 draft

(svn r21816) -Fix [FS#4378] (r14012): Allow dragging of combo signals (again)
author planetmaker <planetmaker@openttd.org>
date Sat, 15 Jan 2011 22:50:49 +0000
parents 5bfb50c7bacd
children 8787df53489c
files known-bugs.txt src/rail_cmd.cpp
diffstat 2 files changed, 11 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/known-bugs.txt
+++ b/known-bugs.txt
@@ -259,3 +259,12 @@
 	The reason we do not use the "win32" music driver as default are
 	described in the "Long delay between switching music/song" section
 	of this document.
+
+Pre- and exit signals are not dragged [FS#4378]
+	Unlike all other signal types, the entry- and exit signals are not
+	dragged but instead normal signals are placed on subsequent track
+	sections. This is done on purpose as this is the usually more con-
+	venient solution. There are little to no occasions where more than
+	one entry or exit signal in a row are useful. This is different
+	for all other signal types where several in a row can serve one
+	purpose or another.
--- a/src/rail_cmd.cpp
+++ b/src/rail_cmd.cpp
@@ -1182,8 +1182,8 @@
 		semaphores = GetSignalVariant(tile, track) != SIG_ELECTRIC;
 
 		sigtype = GetSignalType(tile, track);
-		/* Don't but copy pre-signal type */
-		if (sigtype < SIGTYPE_PBS) sigtype = SIGTYPE_NORMAL;
+		/* Don't but copy entry or exit-signal type */
+		if (sigtype == SIGTYPE_ENTRY || sigtype == SIGTYPE_EXIT) sigtype = SIGTYPE_NORMAL;
 	} else { // no signals exist, drag a two-way signal stretch
 		signals = IsPbsSignal(sigtype) ? SignalAlongTrackdir(trackdir) : SignalOnTrack(track);
 	}