diff options
-rw-r--r-- | Changelog-Trunk.txt | 4 | ||||
-rw-r--r-- | src/map/npc.c | 2 |
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)
|