8043264: hsdis library not picked up correctly on expected paths
Summary: Fix file separator issue on Windows
Reviewed-by: sla, sspitsyn
Contributed-by: krismo@azulsystems.com
--- a/hotspot/src/share/vm/compiler/disassembler.cpp Fri May 16 15:05:44 2014 -0700
+++ b/hotspot/src/share/vm/compiler/disassembler.cpp Sat May 17 01:59:43 2014 -0700
@@ -86,7 +86,7 @@
{
// Match "jvm[^/]*" in jvm_path.
const char* base = buf;
- const char* p = strrchr(buf, '/');
+ const char* p = strrchr(buf, *os::file_separator());
if (p != NULL) lib_offset = p - base + 1;
p = strstr(p ? p : base, "jvm");
if (p != NULL) jvm_offset = p - base;
@@ -111,7 +111,7 @@
if (_library == NULL) {
// 3. <home>/jre/lib/<arch>/hsdis-<arch>.so
buf[lib_offset - 1] = '\0';
- const char* p = strrchr(buf, '/');
+ const char* p = strrchr(buf, *os::file_separator());
if (p != NULL) {
lib_offset = p - buf + 1;
strcpy(&buf[lib_offset], hsdis_library_name);