projects
/
NeonServV5.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3dc533e
)
fixed #65bb4d5
author
pk910
<philipp@zoelle1.de>
Wed, 4 Jan 2012 16:06:17 +0000
(17:06 +0100)
committer
pk910
<philipp@zoelle1.de>
Wed, 4 Jan 2012 16:06:17 +0000
(17:06 +0100)
src/UserNode.c
patch
|
blob
|
history
diff --git
a/src/UserNode.c
b/src/UserNode.c
index 887b9c9b36de9890db5519a9246d4f7684926b68..df4edebfe73f54a55e5d731ef957f9085baf1695 100644
(file)
--- a/
src/UserNode.c
+++ b/
src/UserNode.c
@@
-351,6
+351,10
@@
void delUser(struct UserNode* user, int freeUser) {
} else
last_user = cuser;
}
} else
last_user = cuser;
}
+ if(freeUser && (user->flags & USERFLAG_IS_ON_WHO_QUEUE)) {
+ user->flags |= USERFLAG_FREE_AFTER_WHO;
+ freeUser = 0;
+ }
if(user->channel) {
struct ChanUser *chanUser, *next;
for(chanUser = user->channel; chanUser; chanUser = next) {
if(user->channel) {
struct ChanUser *chanUser, *next;
for(chanUser = user->channel; chanUser; chanUser = next) {
@@
-358,12
+362,9
@@
void delUser(struct UserNode* user, int freeUser) {
removeChanUserFromLists(chanUser, 1, 0, freeUser);
}
}
removeChanUserFromLists(chanUser, 1, 0, freeUser);
}
}
- if(freeUser) {
- if(user->flags & USERFLAG_IS_ON_WHO_QUEUE)
- user->flags |= USERFLAG_FREE_AFTER_WHO;
- else
- free(user);
- } else
+ if(freeUser)
+ free(user);
+ else
user->next = NULL;
}
user->next = NULL;
}