diff --git a/drivers/contactless/mfrc522.c b/drivers/contactless/mfrc522.c index db03cc79004d2..0d85dc251ecc3 100644 --- a/drivers/contactless/mfrc522.c +++ b/drivers/contactless/mfrc522.c @@ -1480,6 +1480,7 @@ static ssize_t mfrc522_read(FAR struct file *filep, FAR char *buffer, FAR struct inode *inode; FAR struct mfrc522_dev_s *dev; FAR struct picc_uid_s uid; + int ret; inode = filep->f_inode; @@ -1496,7 +1497,13 @@ static ssize_t mfrc522_read(FAR struct file *filep, FAR char *buffer, /* Now read the UID */ - mfrc522_picc_select(dev, &uid, 0); + memset(&uid, 0, sizeof(uid)); + ret = mfrc522_picc_select(dev, &uid, 0); + if (ret < 0) + { + ctlserr("Failed to select PICC: %d\n", ret); + return ret; + } if (uid.sak != PICC_TYPE_NOT_COMPLETE) {