summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.inspircd.inc13
1 files changed, 12 insertions, 1 deletions
diff --git a/.inspircd.inc b/.inspircd.inc
index f03595b42..b474f8438 100644
--- a/.inspircd.inc
+++ b/.inspircd.inc
@@ -361,7 +361,8 @@ sub validateconf
# push @newlines, "<!DOCTYPE config SYSTEM \"".$confpath."inspircd.dtd\">";
push @newlines, "<config>";
- foreach $i (@lines) {
+ foreach $i (@lines)
+ {
# remove trailing newlines
chomp($i);
@@ -380,6 +381,16 @@ sub validateconf
# remove trailing #s
$i =~ s/(.*)#$/\1/;
+ # remove trailing comments
+ my $line = "";
+ my $quote = 0;
+ for (my $j = 0; $j < length($i); $j++)
+ {
+ if (substr($i,$j, 1) eq '"') { $quote = ($quote) ? 0 : 1; } elsif (substr($i,$j, 1) eq "#" && !$quote) { last; }
+ $line .= substr($i,$j, 1);
+ }
+ $i = $line;
+
# remove trailing spaces
$i =~ s/ *$//;