diff --git a/require-ess/src/version.c b/require-ess/src/version.c
index 4982e43aea63995abe95ec3efb7c3f4e6fe988b5..732f456dde9cca7d2ff87a7271fab14d15359398 100644
--- a/require-ess/src/version.c
+++ b/require-ess/src/version.c
@@ -52,6 +52,7 @@ semver_t *parse_semver(const char *version) {
   }
 
   if (regcomp(&compiled, version_regex, REG_EXTENDED)) {
+    regfree(&compiled);
     return NULL;
   }
 
@@ -67,5 +68,6 @@ semver_t *parse_semver(const char *version) {
       s->version_str[groups[revision_ix].rm_so - 1] = 0;
     }
   }
+  regfree(&compiled);
   return s;
 }