llvm-symbolizer: Recognize a drive letter on win32. Then "REQUIRES: shell" can be...
[oota-llvm.git] / tools / llvm-symbolizer / LLVMSymbolize.cpp
index 57f34c247291c77db13377208e8796175f92a74b..1945d689dee4d8d7365093d8850d0c5f15c2e421 100644 (file)
@@ -279,6 +279,11 @@ LLVMSymbolizer::getOrCreateModuleInfo(const std::string &ModuleName) {
   std::string BinaryName = ModuleName;
   std::string ArchName = Opts.DefaultArch;
   size_t ColonPos = ModuleName.find(':');
+#if defined(_WIN32)
+  // Recognize a drive letter on win32.
+  if (ColonPos == 1 && isalpha(ModuleName[0]))
+    ColonPos = ModuleName.find(':', 2);
+#endif
   if (ColonPos != std::string::npos) {
     BinaryName = ModuleName.substr(0, ColonPos);
     ArchName = ModuleName.substr(ColonPos + 1);