summaryrefslogtreecommitdiff
path: root/src/configreader.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/configreader.cpp')
-rw-r--r--src/configreader.cpp14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/configreader.cpp b/src/configreader.cpp
index 13ef5ddad..ec5f1fe54 100644
--- a/src/configreader.cpp
+++ b/src/configreader.cpp
@@ -1296,10 +1296,16 @@ void ServerConfig::StartDownloads()
ServerInstance->Log(DEBUG,"Module-handled schema for %s", x->first.c_str());
/* For now, error it */
- FileErrors++;
- TotalDownloaded++;
- delete x->second;
- x->second = NULL;
+ int MOD_RESULT = 0;
+ FOREACH_RESULT(I_OnDownloadFile, OnDownloadFile(file, reinterpret_cast<std::istringstream*>(x->second)));
+ if (MOD_RESULT == 0)
+ {
+ /* No module claimed this file */
+ TotalDownloaded++;
+ FileErrors++;
+ delete x->second;
+ x->second = NULL;
+ }
}
}
}