2 Commits

View File

@ -42,8 +42,8 @@ card_t* rfid_find_card(const card_t *card)
card_t *current; card_t *current;
current = head; current = head;
while (current != NULL) { while (current != NULL) {
if ((current->uid_size != card->uid_size) || if (((current->uid_size == card->uid_size) &&
!memcmp(current->uid, card->uid, current->uid_size) || !memcmp(current->uid, card->uid, current->uid_size)) ||
((card->user != NULL) && !strcmp(current->user, card->user))) { ((card->user != NULL) && !strcmp(current->user, card->user))) {
return current; return current;
@ -72,6 +72,8 @@ void rfid_add_card(const card_t *card)
new_card_user = malloc(strlen(card->user) + 1); new_card_user = malloc(strlen(card->user) + 1);
if (!new_card || !new_card_user) { if (!new_card || !new_card_user) {
printf_P(PSTR(OUT_OF_MEMORY_MSG "\n")); printf_P(PSTR(OUT_OF_MEMORY_MSG "\n"));
free(new_card_user);
free(new_card);
return; return;
} }