diff --git a/server_tokenboard.go b/server_tokenboard.go index 9a6d84b..0ad36c1 100644 --- a/server_tokenboard.go +++ b/server_tokenboard.go @@ -109,7 +109,7 @@ func (ta *TokenboardServer) postMessageRequest(pr groups.PostRequest) { if err := ta.TokenService.SpendToken(pr.Token, append(pr.EGM.ToBytes(), ta.connection.ID().Hostname()...)); err == nil { // ignore messages with no signatures - if len(pr.EGM.Signature) == 0 { + if len(pr.EGM.Signature) == 0 { return } diff --git a/storage/message_store.go b/storage/message_store.go index 016dc9a..f666629 100644 --- a/storage/message_store.go +++ b/storage/message_store.go @@ -72,7 +72,15 @@ func (s SqliteMessageStore) FetchMessagesFrom(signature []byte) []*groups.Encryp return nil } defer rows.Close() - return s.compileRows(rows) + messages := s.compileRows(rows) + + // if we don't have *any* messages then either the signature next existed + // or the server purged it...either way treat this as a full sync... + if len(messages) < 1 { + return s.FetchMessages() + } + + return messages } func (s *SqliteMessageStore) compileRows(rows *sql.Rows) []*groups.EncryptedGroupMessage { @@ -92,13 +100,6 @@ func (s *SqliteMessageStore) compileRows(rows *sql.Rows) []*groups.EncryptedGrou Ciphertext: rawCiphertext, }) } - - // if we don't have *any* messages then either the signature next existed - // or the server purged it...either way treat this as a full sync... - if len(messages) < 1 { - return s.FetchMessages() - } - return messages }