Skip to content

Commit 96e47fe

Browse files
authored
Merge pull request #222 from rwalker-apple/Be-careful-with-snprintf
Be careful with snprintf
2 parents e1a4f21 + 01f188b commit 96e47fe

File tree

1 file changed

+11
-8
lines changed

1 file changed

+11
-8
lines changed

src/lib/support/ErrorStr.cpp

+11-8
Original file line numberDiff line numberDiff line change
@@ -133,20 +133,23 @@ DLL_EXPORT void FormatError(char * buf, uint16_t bufSize, const char * subsys, i
133133

134134
#else // CHIP_CONFIG_SHORT_ERROR_STR
135135

136-
int len = 0;
136+
const char * subsysSep = " ";
137+
const char * descSep = ": ";
137138

138-
if (subsys != NULL)
139+
if (subsys == NULL)
139140
{
140-
len = snprintf(buf, bufSize, "%s ", subsys);
141+
subsys = "";
142+
subsysSep = "";
141143
}
142-
143-
len += snprintf(buf + len, bufSize - len, "Error %" PRId32 " (0x%08" PRIX32 ")", err, (uint32_t) err);
144-
145-
if (desc != NULL)
144+
if (desc == NULL)
146145
{
147-
(void) snprintf(buf + len, bufSize - len, ": %s", desc);
146+
desc = "";
147+
descSep = "";
148148
}
149149

150+
(void) snprintf(buf, bufSize, "%s%sError %" PRId32 " (0x%08" PRIX32 ")%s%s", subsys, subsysSep, err, (uint32_t) err, descSep,
151+
desc);
152+
150153
#endif // CHIP_CONFIG_SHORT_ERROR_STR
151154
}
152155

0 commit comments

Comments
 (0)