summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changelog-Trunk.txt4
-rw-r--r--src/map/npc.c2
2 files changed, 5 insertions, 1 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt
index 914bd3e63..cc3a74dea 100644
--- a/Changelog-Trunk.txt
+++ b/Changelog-Trunk.txt
@@ -4,6 +4,10 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO
IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK.
2006/11/29
+ * Fixed the new npc parsing code not accounting for windows-style line
+ terminators, which as a side effect messed up mapflag parsing if the file
+ had windows-style terminators, which coincidentally was the case for the
+ nopvp file, which unfortunately meant that all towns became pvp! [Skotlex]
* HT_PHANTASMIC no longer knocks back even when it misses. [Skotlex]
* Earned exp by dead homuns will now be lost (same treatment as earned exp
from players that died) [Skotlex]
diff --git a/src/map/npc.c b/src/map/npc.c
index 7dd0f146c..3af9d5e2e 100644
--- a/src/map/npc.c
+++ b/src/map/npc.c
@@ -2643,7 +2643,7 @@ void npc_parsesrcfile (char *name)
w1[0] = w2[0] = w3[0] = w4[0] = '\0'; //It's best to initialize values
//to prevent passing previously parsed values to the parsers when not all
//fields are specified. [Skotlex]
- if ((count = sscanf(line, "%[^\t\n]\t%[^\t\n]\t%[^\t\n]\t%n%[^\n]", w1, w2, w3, &w4pos, w4)) < 3)
+ if ((count = sscanf(line, "%[^\t\r\n]\t%[^\t\r\n]\t%[^\t\r\n]\t%n%[^\r\n]", w1, w2, w3, &w4pos, w4)) < 3)
{
if ((count = sscanf(line, "%s %s %[^\t]\t %n%[^\n]", w1, w2, w3, &w4pos, w4)) == 4 ||
(count = sscanf(line, "%s %s %s %n%[^\n]\n", w1, w2, w3, &w4pos, w4)) >= 3)