summaryrefslogtreecommitdiff
path: root/include/modules.h
diff options
context:
space:
mode:
authorrobbeh <robbeh@5417fbe8-f217-4b02-8779-1006273d7864>2008-11-15 21:25:40 +0000
committerrobbeh <robbeh@5417fbe8-f217-4b02-8779-1006273d7864>2008-11-15 21:25:40 +0000
commit2d768eb325fc7665093faedf62e08dd5f98cc5f8 (patch)
tree9345b8c524d6c65f2c2a2f92e0ce5bb70194b822 /include/modules.h
parentf0fe5427ff22c005220b0189ed745a38314dc21b (diff)
Modules now delete themselves instead of letting the core do it (just incase one of them has used a custom delete operator)
git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@1729 5417fbe8-f217-4b02-8779-1006273d7864
Diffstat (limited to 'include/modules.h')
-rw-r--r--include/modules.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/include/modules.h b/include/modules.h
index c09b234c2..9e2889646 100644
--- a/include/modules.h
+++ b/include/modules.h
@@ -259,7 +259,7 @@ CoreExport class Module
* @return returns MOD_ERR_OK on success
*/
int DelCommand(CommandHash * cmdTable[], const char *name);
-
+
/**
* Adds a timed callback for the current module.
* This allows modules to request that anope executes one of there functions at a time in the future, without an event to trigger it
@@ -272,7 +272,7 @@ CoreExport class Module
* @see moduleDelCallBack
**/
int AddCallback(const char *name, time_t when, int (*func) (int argc, char *argv[]), int argc, char **argv);
-
+
/**
* Allow modules to delete a timed callback by name.
* @param name the name of the callback they wish to delete
@@ -307,10 +307,15 @@ CoreExport class ModuleManager
* @return MOD_ERR_OK on success, anything else on fail
*/
static int UnloadModule(Module *m, User * u);
-
+
/** Run all pending module timer callbacks.
*/
static void RunCallbacks();
+private:
+ /** Call the module_delete function to safely delete the module
+ * @param m the module to delete
+ */
+ static void DeleteModule(Module *m);
};