Browse Source

always send PUSH_CODE_NEW_ADVERT when advert was not added to contacts[]

pull/1408/head
taco 5 months ago
parent
commit
c61fde9328
  1. 2
      examples/companion_radio/MyMesh.cpp
  2. 3
      src/helpers/BaseChatMesh.cpp

2
examples/companion_radio/MyMesh.cpp

@ -323,7 +323,7 @@ void MyMesh::onContactsFull() {
void MyMesh::onDiscoveredContact(ContactInfo &contact, bool is_new, uint8_t path_len, const uint8_t* path) {
if (_serial->isConnected()) {
if (!shouldAutoAddContactType(contact.type) && is_new) {
if (is_new) {
writeContactRespFrame(PUSH_CODE_NEW_ADVERT, contact);
} else {
out_frame[0] = PUSH_CODE_ADVERT;

3
src/helpers/BaseChatMesh.cpp

@ -133,7 +133,7 @@ void BaseChatMesh::onAdvertRecv(mesh::Packet* packet, const mesh::Identity& id,
}
putBlobByKey(id.pub_key, PUB_KEY_SIZE, temp_buf, plen);
bool is_new = false;
bool is_new = false; // true = not in contacts[], false = exists in contacts[]
if (from == NULL) {
if (!shouldAutoAddContactType(parser.getType())) {
ContactInfo ci;
@ -142,7 +142,6 @@ void BaseChatMesh::onAdvertRecv(mesh::Packet* packet, const mesh::Identity& id,
return;
}
is_new = true;
from = allocateContactSlot();
if (from == NULL) {
ContactInfo ci;

Loading…
Cancel
Save