diff --git a/src/version.c b/src/version.c index 7370c061d28a1594213015c3ba8b2108fa4b7a37..1d6b09b72237729a1381a2739f5f14a290b81037 100644 --- a/src/version.c +++ b/src/version.c @@ -32,8 +32,17 @@ * Will include -dirty if they are local modifications. */ const char *git_revision(void) { + static char buf[256]; + static int initialised = 0; static const char *revision = GIT_REVISION; - return revision; + if(!initialised) { + if(strlen(revision) == 0) + sprintf(buf, "Unknown"); + else + sprintf(buf, revision); + initialised = 1; + } + return buf; } /** @@ -42,8 +51,17 @@ const char *git_revision(void) { * @details The name of the current branch when the code was last built. */ const char *git_branch(void) { + static char buf[256]; + static int initialised = 0; static const char *branch = GIT_BRANCH; - return branch; + if(!initialised) { + if(strlen(branch) == 0) + sprintf(buf, "Unknown"); + else + sprintf(buf, branch); + initialised = 1; + } + return buf; } /**