2
0

strdup also isn't standard.

This commit is contained in:
Maarten Billemont
2017-09-25 10:51:14 -04:00
parent 3af8aba40c
commit 877eba66be
6 changed files with 75 additions and 64 deletions

View File

@@ -343,7 +343,7 @@ const char *mpw_hotp(const uint8_t *key, size_t keySize, uint64_t movingFactor,
// Render the OTP as `digits` decimal digits.
otp %= (int)pow(10, digits);
return strdup( mpw_str( "%0*d", digits, otp ) );
return mpw_strdup( mpw_str( "%0*d", digits, otp ) );
}
#endif
@@ -567,6 +567,15 @@ const size_t mpw_utf8_strlen(const char *utf8String) {
return charlen;
}
char *mpw_strdup(const char *src) {
size_t len = strlen( src );
char *dst = malloc( len + 1 );
memcpy( dst, src, len );
dst[len] = '\0';
return dst;
}
char *mpw_strndup(const char *src, size_t max) {
size_t len = 0;
for (; len < max && src[len] != '\0'; ++len);