summaryrefslogtreecommitdiff
path: root/src/ultimate3.c
diff options
context:
space:
mode:
authorgeniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b <geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2005-03-14 18:01:08 +0000
committergeniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b <geniusdex geniusdex@31f1291d-b8d6-0310-a050-a5561fc1590b@5417fbe8-f217-4b02-8779-1006273d7864>2005-03-14 18:01:08 +0000
commitdcfcd9302fe67bfe1aeb67db4203867d173d3073 (patch)
tree8220b8762f7eeedad32da4325be023a1fafd9c54 /src/ultimate3.c
parent8c95c8f4904d3c1fd5e173f1d52356c921faf83d (diff)
BUILD : 1.7.8 (619) BUGS : NOTES : Fixed the recording of server sync state more reliable, which fixes a bug where servers which did not report bursts would always remain in burst-mode internally
git-svn-id: svn://svn.anope.org/anope/trunk@619 31f1291d-b8d6-0310-a050-a5561fc1590b git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@467 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'src/ultimate3.c')
-rw-r--r--src/ultimate3.c18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/ultimate3.c b/src/ultimate3.c
index 75059d339..97fdddb62 100644
--- a/src/ultimate3.c
+++ b/src/ultimate3.c
@@ -112,6 +112,7 @@ IRCDVar ircd[] = {
1, /* support helper umode */
0, /* p10 */
NULL, /* character set */
+ 1, /* reports sync state */
},
{NULL}
};
@@ -1744,9 +1745,9 @@ int anope_event_eob(char *source, int ac, char **av)
* server finished bursting. -GD
*/
if (s)
- s->sync = 1;
- else
- me_server->sync = 1;
+ s->sync = SSYNC_DONE;
+ else if (serv_uplink)
+ serv_uplink->sync = SSYNC_DONE;
}
return MOD_CONT;
}
@@ -1759,9 +1760,14 @@ int anope_event_burst(char *source, int ac, char **av)
if (!ac) {
/* for future use - start burst */
} else {
- if (s) {
- s->sync = 1;
- }
+ /* If we found a server with the given source, that one just
+ * finished bursting. If there was no source, then our uplink
+ * server finished bursting. -GD
+ */
+ if (s)
+ s->sync = SSYNC_DONE;
+ else
+ me_server->sync = SSYNC_DONE;
}
return MOD_CONT;
}