#include <stdio.h>
+#include <string.h>
#include "../irc/irc_config.h"
#include "../lib/irc_string.h"
+#include "../lib/strlfunc.h"
#include "../nick/nick.h"
#include "request.h"
#include "user.h"
}
void ru_destroy(char *name) {
+ r_user_t *puser;
r_user_t *user = r_userlist;
if (user && ircd_strcmp(user->name, name) == 0) {
if (user == NULL)
return;
- while (user->next) {
+ while (user && user->next) {
if (ircd_strcmp(user->next->name, name) == 0) {
+ puser = user->next;
user->next = user->next->next;
- free(user->next);
+ free(puser);
}
user = user->next;
unsigned int level;
int result;
- if (sscanf(line, "%s %lu", name, &level) < 2)
+ if (sscanf(line, "%s %u", name, &level) < 2)
return 0;
ru_loading = 1;
int ru_persist(void) {
FILE *rudata;
- int i, count = 0;
+ int count = 0;
r_user_t *user = r_userlist;
if (ru_loading)
return 0;
while (user) {
- fprintf(rudata, "%s %lu\n", user->name, user->level);
+ fprintf(rudata, "%s %u\n", user->name, user->level);
user = user->next;
}