summaryrefslogtreecommitdiff
path: root/src/init.c
diff options
context:
space:
mode:
authordane dane@31f1291d-b8d6-0310-a050-a5561fc1590b <dane dane@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2004-08-01 02:47:29 +0000
committerdane dane@31f1291d-b8d6-0310-a050-a5561fc1590b <dane dane@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2004-08-01 02:47:29 +0000
commit3422f4a798f9fdd3b0c1efaeffdbdb8a7e495fdb (patch)
tree11159138cfd8b6b74dd29751e4c1d5b426ba1353 /src/init.c
parenta090c812cf88617ad825485791f7f38764db6ae8 (diff)
BUILD : 1.7.4 (295) BUGS : none NOTES : Rolling back previous commit.
git-svn-id: svn://svn.anope.org/anope/trunk@295 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@184 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src/init.c')
-rw-r--r--src/init.c34
1 files changed, 28 insertions, 6 deletions
diff --git a/src/init.c b/src/init.c
index e8e13d862..c6daf5918 100644
--- a/src/init.c
+++ b/src/init.c
@@ -607,11 +607,6 @@ int init(int ac, char **av)
lang_init();
if (debug)
alog("debug: Loaded languages");
-
- /* Initialize remote database support */
- rdb_init();
- if (debug)
- alog("debug: Loaded remote databases");
/* Initialize subservices */
ns_init();
@@ -622,6 +617,10 @@ int init(int ac, char **av)
hostserv_init();
helpserv_init();
+#ifdef USE_RDB
+ rdb_init();
+#endif
+
/* Initialize proxy detection */
#ifdef USE_THREADS
if (ProxyDetect && !proxy_init()) {
@@ -644,6 +643,12 @@ int init(int ac, char **av)
#endif
/* Load up databases */
+#ifdef USE_RDB
+ if (UseRDB)
+ rdb_load_dbases();
+ /* Need a better way to handle this -dane */
+ if (!UseRDB) {
+#endif
if (!skeleton) {
load_ns_dbase();
if (debug)
@@ -677,8 +682,25 @@ int init(int ac, char **av)
if (debug)
alog("debug: Loaded PreNick database (9/9)");
}
+#ifdef USE_RDB
+ }
+#endif
alog("Databases loaded");
- save_databases();
+
+ /* Save the databases back to file/mysql to reflect any changes */
+#ifdef USE_RDB
+ if (!UseRDB) { /* Only save if we are not using remote databases
+ * to avoid floods. As a side effects our nice
+ * FFF databases won't get overwritten if the
+ * mysql db is broken (empty etc.) */
+#endif
+ alog("Info: Reflecting database records.");
+ save_databases();
+#ifdef USE_RDB
+ } else {
+ alog("Info: Not reflecting database records.");
+ }
+#endif
/* Make myself known to myself in the serverlist */
me_server = new_server(NULL, ServerName, ServerDesc, SERVER_ISME);