]> granicus.if.org Git - clang/commitdiff
Make getClangRevision() check that SVN_VERSION is an empty string
authorTed Kremenek <kremenek@apple.com>
Wed, 3 Mar 2010 01:02:48 +0000 (01:02 +0000)
committerTed Kremenek <kremenek@apple.com>
Wed, 3 Mar 2010 01:02:48 +0000 (01:02 +0000)
(even if it is defined).  This fixes the issue of this function
returning '0' when SVN_VERSION is defined to be "".

Fixes: <rdar://problem/7663667>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97620 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Basic/Version.cpp

index 434ddf3f57d97111dff4fdb6147f40162b2d6949..0c58b6007d2df9426f978e131e3d2af4f8c767c2 100644 (file)
@@ -40,15 +40,15 @@ llvm::StringRef getClangRepositoryPath() {
 }
 
 std::string getClangRevision() {
-#ifndef SVN_REVISION
-  // Subversion was not available at build time?
-  return "";
-#else
-  std::string revision;
-  llvm::raw_string_ostream OS(revision);
-  OS << strtol(SVN_REVISION, 0, 10);
-  return revision;
+#ifdef SVN_REVISION
+  if (SVN_VERSION[0] != '\0') {
+    std::string revision;
+    llvm::raw_string_ostream OS(revision);
+    OS << strtol(SVN_REVISION, 0, 10);
+    return revision;
+  }
 #endif
+  return "";
 }
 
 std::string getClangFullRepositoryVersion() {