diff --git a/semver.c b/semver.c index 3b07e97..6bd24db 100644 --- a/semver.c +++ b/semver.c @@ -130,8 +130,12 @@ int parseGitRev(char *vp, GitRevision *git) { int parsePreRelease(PreRelease *pr, char *s) { PreReleaseTag tag; long val = 0; - char *vp; + char v[50]; + char *vp = (char *)v; + ssize_t len = strnlen(s, 52); + if (len > 50) return 1; + memcpy(s, vp, len); if (strncasecmp(s, "alpha", 5) == 0) { tag = Alpha; vp = s + 5;