1
0
mirror of https://github.com/anope/anope.git synced 2026-07-08 02:03:13 +02:00

BUILD : 1.7.2 (92) BUGS : 43 NOTES : Fixed moduleData error with memo Data handeling

git-svn-id: svn://svn.anope.org/anope/trunk@92 31f1291d-b8d6-0310-a050-a5561fc1590b


git-svn-id: http://anope.svn.sourceforge.net/svnroot/anope/trunk@68 5417fbe8-f217-4b02-8779-1006273d7864
This commit is contained in:
rob rob@31f1291d-b8d6-0310-a050-a5561fc1590b
2004-05-11 13:15:19 +00:00
parent 7ce3bb99f8
commit b6210244dd
8 changed files with 39 additions and 12 deletions
+1
View File
@@ -1,6 +1,7 @@
Anope Version 1.7.x (will be renamed when next release is produced)
-------------------
Provided by Anope Dev. <dev@anope.org>
2004/06/11 Fixed a bug with module unload / memo moduleData ( #43 )
2004/06/05 Fixed bug with RDB and empty nickserv greet message (# 28).
2004/05/04 Fixed Badwords kicker to ignore control characters and color codes.
2004/05/04 anoperc bugfixes including checking if anope binary exists.
+4 -1
View File
@@ -693,7 +693,7 @@ void chanserv(User * u, char *buf)
void load_cs_dbase(void)
{
dbFILE *f;
int ver, i, j, c;
int ver, i, j, c, m;
ChannelInfo *ci, **last, *prev;
int failed = 0;
@@ -981,6 +981,9 @@ void load_cs_dbase(void)
memos->time = tmp32;
SAFE(read_buffer(memos->sender, f));
SAFE(read_string(&memos->text, f));
for (m = 0; m < MAX_CMD_HASH; m++) {
memos->moduleData[m] = NULL;
}
}
}
+5 -1
View File
@@ -266,6 +266,7 @@ void memo_send(User * u, char *name, char *text, int z)
time_t now = time(NULL);
char *source = u->na->nc->display;
int is_servadmin = is_services_admin(u);
int j;
if (readonly) {
notice_lang(s_MemoServ, u, MEMO_SEND_DISABLED);
@@ -314,12 +315,15 @@ void memo_send(User * u, char *name, char *text, int z)
mi->memos = srealloc(mi->memos, sizeof(Memo) * mi->memocount);
m = &mi->memos[mi->memocount - 1];
strscpy(m->sender, source, NICKMAX);
for (j = 0; j < MAX_CMD_HASH; j++)
m->moduleData[j] = NULL;
if (mi->memocount > 1) {
m->number = m[-1].number + 1;
if (m->number < 1) {
int i;
for (i = 0; i < mi->memocount; i++)
for (i = 0; i < mi->memocount; i++) {
mi->memos[i].number = i + 1;
}
}
} else {
m->number = 1;
-1
View File
@@ -1996,7 +1996,6 @@ void moduleCleanStruct(ModuleData * moduleData[])
ModuleDataItem *item = NULL, *nextItem = NULL;
int i;
for (i = 0; i < 1024; i++) {
for (md = moduleData[i]; md; md = nextMd) {
nextMd = md->next;
+12 -6
View File
@@ -115,7 +115,7 @@ int db_mysql_query(char *sql)
s = db_mysql_quote(sql);
alog(s);
free(s);
}
result = mysql_query(mysql, sql);
@@ -157,7 +157,7 @@ char *db_mysql_quote(char *sql)
{
int slen;
char *quoted;
if (!sql || !do_mysql) {
return sstrdup("");
@@ -1175,7 +1175,7 @@ void db_mysql_load_cs_dbase(void)
{
char sqlcmd[MAX_SQL_BUF], *tempstr;
ChannelInfo *ci;
int n_levels, j;
int n_levels, j, m;
MYSQL_RES *res;
MYSQL_ROW row;
@@ -1345,6 +1345,9 @@ void db_mysql_load_cs_dbase(void)
memos->time = atoi(row[2]);
snprintf(memos->sender, NICKMAX, "%s", row[3]);
memos->text = sstrdup(row[4]);
for (m = 0; m < MAX_CMD_HASH; m++) {
memos->moduleData[m] = NULL;
}
memos++;
}
}
@@ -1448,7 +1451,7 @@ void db_mysql_load_ns_dbase(void)
NickAlias *na;
MYSQL_RES *res;
MYSQL_ROW row;
int i, j;
int i, j, m;
if (!do_mysql)
return;
@@ -1529,8 +1532,8 @@ void db_mysql_load_ns_dbase(void)
res = mysql_store_result(mysql);
while ((row = mysql_fetch_row(res))) {
if (strlen(row[0]) > 0) {
*access = sstrdup(row[0]);
access++;
*access = sstrdup(row[0]);
access++;
}
}
mysql_free_result(res);
@@ -1556,6 +1559,9 @@ void db_mysql_load_ns_dbase(void)
memos->time = atoi(row[2]);
snprintf(memos->sender, NICKMAX, "%s", row[3]);
memos->text = sstrdup(row[4]);
for (m = 0; m < MAX_CMD_HASH; m++) {
memos->moduleData[m] = NULL;
}
memos++;
}
mysql_free_result(res);
+8 -2
View File
@@ -369,7 +369,7 @@ void nickserv(User * u, char *buf)
void load_old_ns_dbase(void)
{
dbFILE *f;
int ver, i, j, c;
int ver, i, j, c, m;
NickAlias *na, *na2, *next;
NickCore *nc;
int failed = 0;
@@ -558,6 +558,9 @@ void load_old_ns_dbase(void)
memos->time = tmp32;
SAFE(read_buffer(memos->sender, f));
SAFE(read_string(&memos->text, f));
for (m = 0; m < MAX_CMD_HASH; m++) {
memos->moduleData[m] = NULL;
}
}
}
@@ -658,7 +661,7 @@ void load_ns_req_db(void)
void load_ns_dbase(void)
{
dbFILE *f;
int ver, i, j, c;
int ver, i, j, c, m;
NickAlias *na, **nalast, *naprev;
NickCore *nc, **nclast, *ncprev;
int failed = 0;
@@ -754,6 +757,9 @@ void load_ns_dbase(void)
memos->time = tmp32;
SAFE(read_buffer(memos->sender, f));
SAFE(read_string(&memos->text, f));
for (m = 0; m < MAX_CMD_HASH; m++) {
memos->moduleData[m] = NULL;
}
}
}
+4
View File
@@ -19,6 +19,10 @@
#include "sysconf.h"
#include "config.h"
#ifndef MAX_CMD_HASH
#define MAX_CMD_HASH 1024
#endif
/* Some Linux boxes (or maybe glibc includes) require this for the
* prototype of strsignal(). */
#define _GNU_SOURCE
+5 -1
View File
@@ -8,11 +8,15 @@
VERSION_MAJOR="1"
VERSION_MINOR="7"
VERSION_PATCH="2"
VERSION_BUILD="91"
VERSION_BUILD="92"
VERSION_EXTRA=""
# $Log$
#
# BUILD : 1.7.2 (92)
# BUGS : 43
# NOTES : Fixed moduleData error with memo Data handeling
#
# BUILD : 1.7.2 (91)
# BUGS :
# NOTES : db_mysql_query memory usage tweaked.