From 87ced0179a75afd5d1accc5c1eedca4ff024c8d0 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Thu, 11 Apr 2024 15:46:28 +0800 Subject: [PATCH] 1 --- server/imserver_new/guild/guildmgr.go | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/server/imserver_new/guild/guildmgr.go b/server/imserver_new/guild/guildmgr.go index 9bc2be92..c6e2585f 100644 --- a/server/imserver_new/guild/guildmgr.go +++ b/server/imserver_new/guild/guildmgr.go @@ -185,32 +185,32 @@ func (this *guildMgr) asyncCreateGuildTask(task *f5.LockAsyncTask, nowTime := f5.GetApp().GetNowSeconds() model.Guild.New(guildId, guildName, creatorId, badge, nowTime, func (err error, lastInsertId int64, rowsAffected int64) { - defer this.removeUsingName(guildName) if err != nil { + this.removeUsingName(guildName) task.SetFail() cb(500, "server internal error", "") return } model.GuildMember.Force(creatorId, guildId, constant.GuildMemberLevelLeader, nowTime, func (err error, lastInsertId int64, rowsAffected int64) { + defer this.removeUsingName(guildName) if err != nil { task.SetFail() cb(500, "server internal error", "") return } - g := newGuild() - g.init(guildId, guildName, creatorId, badge, constant.GuildMaxMembers, int32(nowTime)) - this.addGuild(g) - oldGuild := this.internalGetGuildByAccountId(creatorId) - if oldGuild != nil { + if this.internalGetGuildByAccountId(creatorId) != nil { task.SetFail() panic(fmt.Sprintf("asyncCreateGuildTask:%s", "")) } else { + g := newGuild() + g.init(guildId, guildName, creatorId, badge, constant.GuildMaxMembers, int32(nowTime)) + this.addGuild(g) m := newMember() m.init(g, constant.GuildMemberLevelLeader, creatorId, q5.ToInt32(nowTime)) g.addMember(m) - this.memberIdHash[creatorId] = m + this.addGuildMember(m) task.SetSucc() cb(0, "", guildId) } @@ -932,3 +932,7 @@ func (this* guildMgr) addGuild(g *guild) { this.idHash[g.guildId] = g this.nameHash[g.guildName] = g } + +func (this* guildMgr) addGuildMember(m *member) { + this.memberIdHash[m.memberId] = m +}