消息过期错误修改

This commit is contained in:
imhao183
2020-07-16 17:55:34 +08:00
parent 22a4ef4f42
commit 39eb08e3f2
2 changed files with 17 additions and 2 deletions
@@ -826,7 +826,16 @@ public class DatabaseStore {
}
}
WFCMessage.Message message = builder.build();
messages.add(message);
boolean expired = false;
if (message.getContent().getExpireDuration() > 0) {
if (System.currentTimeMillis() > message.getServerTimestamp() + message.getContent().getExpireDuration()*1000) {
expired = true;
}
}
if (!expired) {
messages.add(message);
}
}
if (count == 0) {
@@ -493,7 +493,7 @@ public class MemoryMessagesStore implements IMessagesStore {
}
if (bundle.getMessage().getContent().getExpireDuration() > 0) {
if (System.currentTimeMillis() < bundle.getMessage().getServerTimestamp() + bundle.getMessage().getContent().getExpireDuration()) {
if (System.currentTimeMillis() > bundle.getMessage().getServerTimestamp() + bundle.getMessage().getContent().getExpireDuration()*1000) {
continue;
}
}
@@ -587,6 +587,12 @@ public class MemoryMessagesStore implements IMessagesStore {
MessageBundle bundle = mIMap.get(targetMessageId);
if (bundle != null) {
if (exceptClientId == null || !exceptClientId.equals(bundle.getFromClientId()) || !fromUser.equals(bundle.getFromUser())) {
if (bundle.getMessage().getContent().getExpireDuration() > 0) {
if (System.currentTimeMillis() > bundle.getMessage().getServerTimestamp() + bundle.getMessage().getContent().getExpireDuration() * 1000) {
continue;
}
}
size += bundle.getMessage().getSerializedSize();
if (size >= 3 * 1024 * 1024) { //3M
break;