This commit is contained in:
Kezhu Wang
2012-08-04 09:05:21 +08:00
parent c0e4bb462c
commit b5764c5736

View File

@@ -76,18 +76,17 @@ skynet_handle_retire(uint32_t handle) {
s->slot[hash] = NULL; s->slot[hash] = NULL;
int i; int i;
int j=0; int j=0, n=s->name_count;
for (i=0;i<s->name_count;i++,j++) { for (i=0; i<n; ++i) {
if (s->name[i].handle == handle) { if (s->name[i].handle == handle) {
free(s->name[i].name); free(s->name[i].name);
++j; continue;
--s->name_count; } else if (i!=j) {
} else { s->name[j] = s->name[i];
if (i!=j) {
s->name[i] = s->name[j];
}
} }
++j;
} }
s->name_count = j;
} }
rwlock_wunlock(&s->lock); rwlock_wunlock(&s->lock);