fix for message time

This commit is contained in:
HarukiToreda
2025-09-23 01:05:22 -04:00
parent 4e61016a44
commit 6ead5c04bd
6 changed files with 159 additions and 24 deletions

View File

@@ -24,6 +24,17 @@ struct StoredMessage {
// Explicit classification (derived from dest when loading old messages)
MessageType type;
// Marks whether the timestamp was stored relative to boot time
// (true = millis()/1000 fallback, false = epoch/RTC absolute)
bool isBootRelative;
// Default constructor to initialize all fields safely
StoredMessage()
: timestamp(0), sender(0), channelIndex(0), text(""), dest(0xffffffff), type(MessageType::BROADCAST),
isBootRelative(false)
{
}
};
class MessageStore
@@ -61,6 +72,9 @@ class MessageStore
std::deque<StoredMessage> getDirectMessages() const;
std::deque<StoredMessage> getConversationWith(uint32_t peer) const;
// Upgrade boot-relative timestamps once RTC is valid
void upgradeBootRelativeTimestamps();
private:
// RAM buffer (always current, main source for UI)
std::deque<StoredMessage> liveMessages;