summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Changes5
-rw-r--r--src/modules.c7
-rw-r--r--version.log6
3 files changed, 9 insertions, 9 deletions
diff --git a/Changes b/Changes
index 23fb18bf5..6f389ea55 100644
--- a/Changes
+++ b/Changes
@@ -2,8 +2,8 @@ Anope Version S V N
-------------------
Provided by Anope Dev. <dev@anope.org> - 2004
12/30 A Warnings for NULL values with sstrdup/moduleData. [#261]
-12/26 A Services can enforce SGLINE and SQLINE by killing the user on set [#245]
-12/25 A Flag to tell if we need to enforce SGlines or not [ #00]
+12/26 A Services can enforce SGLINE/SQLINE by killing the user on set. [#245]
+12/25 A Flag to tell if we need to enforce SGlines or not. [ #00]
12/02 A Support for other Ulines Servers (NeoStats/SolarStats). [ #00]
11/28 A Support for Unreal's version of SVSHOLD. [ #00]
11/28 A /OS SET LIST to list the set options. [ #00]
@@ -16,6 +16,7 @@ Provided by Anope Dev. <dev@anope.org> - 2004
11/19 A Added anope_cmd_ctcp() to code API, for sending CTCP messages. [ #00]
11/18 A Unable to use registered nicknames as bot nicks from now on. [ #00]
11/18 A NSAddAccessOnReg to control access list on registration. [ #00]
+12/30 F Fixed moduleAddData using an old moduleData as list head. [#261]
12/30 F List handling of moduleData was bad on deletion. [#261]
12/30 F Few memleaks with moduleData functions returning early. [ #00]
12/30 F Modules can no longer add commands with mod_name set. [#261]
diff --git a/src/modules.c b/src/modules.c
index 4fa4c2c77..ddaa609d7 100644
--- a/src/modules.c
+++ b/src/modules.c
@@ -1825,7 +1825,6 @@ int moduleAddData(ModuleData ** md, char *key, char *value)
*/
char *mod_name = sstrdup(mod_current_module_name);
ModuleData *newData = NULL;
- ModuleData *tmp = *md;
if (!key || !value) {
alog("A module tried to use ModuleAddData() with one ore more NULL arguments... returning");
@@ -1850,11 +1849,7 @@ int moduleAddData(ModuleData ** md, char *key, char *value)
newData->moduleName = sstrdup(mod_name);
newData->key = sstrdup(key);
newData->value = sstrdup(value);
- if (tmp) {
- newData->next = tmp;
- } else {
- newData->next = NULL;
- }
+ newData->next = *md;
*md = newData;
free(mod_name);
diff --git a/version.log b/version.log
index 19fc24936..b3e4c253c 100644
--- a/version.log
+++ b/version.log
@@ -8,10 +8,14 @@
VERSION_MAJOR="1"
VERSION_MINOR="7"
VERSION_PATCH="6"
-VERSION_BUILD="515"
+VERSION_BUILD="516"
# $Log$
#
+# BUILD : 1.7.6 (516)
+# BUGS : 261
+# NOTES : This should be it finally! The moduleAddData function was using the old head to append/prepend the new moduleData to, but it had to use the new head. Thanks to DrStein for finding the cause! :)
+#
# BUILD : 1.7.6 (515)
# BUGS : 261
# NOTES : Fixed a few memleaks with moduleData functions returning early, and fixed the list handling with deleting moduleData (thanks DrStein)