1 Commits

Author SHA1 Message Date
bad2fd2876 Maybe fix handling of 7byte and 10byte uid cards 2016-12-21 01:56:22 +02:00
2 changed files with 2 additions and 6 deletions

View File

@ -163,10 +163,6 @@ void cli_rfid_add(const char *const *argv)
card.uid_size = uid.size; card.uid_size = uid.size;
memcpy(&card.uid, &uid.uidByte, uid.size); memcpy(&card.uid, &uid.uidByte, uid.size);
char *user = malloc(strlen(argv[1]) + 1); char *user = malloc(strlen(argv[1]) + 1);
if(!user) {
printf_P(PSTR(OUT_OF_MEMORY_MSG "\n"));
return;
}
strcpy(user, argv[1]); strcpy(user, argv[1]);
card.user = user; card.user = user;
rfid_add_card(&card); rfid_add_card(&card);

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;