Skip to content

Commit 9999042

Browse files
committed
readURI: error managment rework
Previously error was not correctly reported: (String)NULL was interpreted by compiler as "0" This fix compilation warning. Note: this modify the API.
1 parent c08f117 commit 9999042

2 files changed

Lines changed: 16 additions & 9 deletions

File tree

src/ST25DVSensor.cpp

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -77,22 +77,29 @@ int ST25DV::writeURI(String protocol, String uri, String info)
7777

7878

7979

80-
String ST25DV::readURI()
80+
int ST25DV::readURI(String *s)
8181
{
82+
uint16_t ret;
8283
sURI_Info uri = {"", "", ""};
8384
sRecordInfo_t recordInfo;
8485
// increase buffer size for bigger messages
85-
if (NDEF_ReadNDEF(NDEF_Buffer)) {
86-
return (String)NULL;
86+
ret = NDEF_ReadNDEF(NDEF_Buffer);
87+
if (ret) {
88+
return ret;
8789
}
8890

89-
if (NDEF_IdentifyBuffer(&recordInfo, NDEF_Buffer)) {
90-
return (String)NULL;
91+
ret = NDEF_IdentifyBuffer(&recordInfo, NDEF_Buffer);
92+
if (ret) {
93+
return ret;
9194
}
92-
if (NDEF_ReadURI(&recordInfo, &uri)) {
93-
return (String)NULL;
95+
96+
ret = NDEF_ReadURI(&recordInfo, &uri);
97+
if (ret) {
98+
return ret;
9499
}
95-
return String(uri.protocol) + String(uri.URI_Message);
100+
*s = String(uri.protocol) + String(uri.URI_Message);
101+
102+
return 0;
96103
}
97104

98105
/**

src/ST25DVSensor.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ class ST25DV {
5757
ST25DV(void);
5858
int begin(uint8_t gpo, uint8_t ldp, TwoWire *pwire = &WIRE);
5959
int writeURI(String protocol, String uri, String info);
60-
String readURI();
60+
int readURI(String *s);
6161

6262
void ST25DV_GPO_Init(void);
6363
void ST25DV_GPO_DeInit(void);

0 commit comments

Comments
 (0)