fix: convert signed atUin into unsigned int

This commit is contained in:
Wesley F. Young
2025-01-22 15:31:56 +08:00
parent 96d4a91ee9
commit 6b041becb0

View File

@@ -91,12 +91,16 @@ export class OneBotMsgApi {
let qq: string = 'all'; let qq: string = 'all';
if (element.atType !== NTMsgAtType.ATTYPEALL) { if (element.atType !== NTMsgAtType.ATTYPEALL) {
const { atNtUid /* content */ } = element; const { atNtUid /* content */ } = element;
let atQQ = element.atUid; let atUinStr = element.atUid;
if (!atQQ || atQQ === '0') { if (!atUinStr || atUinStr === '0') {
atQQ = await this.core.apis.UserApi.getUinByUidV2(atNtUid); atUinStr = await this.core.apis.UserApi.getUinByUidV2(atNtUid);
} }
if (atQQ) { let atUin = parseInt(atUinStr);
qq = atQQ as `${number}`; if (atUin < 0) {
atUin += 4294967296;
}
if (atUinStr) {
qq = `${atUin}`;
} }
} }
return { return {