src/share/vm/utilities/ostream.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File
*** old/src/share/vm/utilities/ostream.cpp	Mon Sep  9 15:12:24 2013
--- new/src/share/vm/utilities/ostream.cpp	Mon Sep  9 15:12:24 2013

*** 590,618 **** --- 590,621 ---- return buf; } void defaultStream::init_log() { // %%% Need a MutexLocker? ! const char* log_name = LogFile != NULL ? LogFile : "hotspot_pid%p.log"; const char* try_name = make_log_name(log_name, NULL); fileStream* file = new(ResourceObj::C_HEAP, mtInternal) fileStream(try_name); if (!file->is_open()) { // Try again to open the file. char warnbuf[O_BUFLEN*2]; jio_snprintf(warnbuf, sizeof(warnbuf), "Warning: Cannot open log file: %s\n", try_name); // Note: This feature is for maintainer use only. No need for L10N. jio_print(warnbuf); FREE_C_HEAP_ARRAY(char, try_name, mtInternal); ! try_name = make_log_name("hs_pid%p.log", os::get_temp_directory()); ! try_name = make_log_name(log_name, os::get_temp_directory()); jio_snprintf(warnbuf, sizeof(warnbuf), "Warning: Forcing option -XX:LogFile=%s\n", try_name); jio_print(warnbuf); delete file; file = new(ResourceObj::C_HEAP, mtInternal) fileStream(try_name); FREE_C_HEAP_ARRAY(char, try_name, mtInternal); + } else { + FREE_C_HEAP_ARRAY(char, try_name, mtInternal); } + if (file->is_open()) { _log_file = file; xmlStream* xs = new(ResourceObj::C_HEAP, mtInternal) xmlStream(file); _outer_xmlStream = xs; if (this == tty) xtty = xs;

src/share/vm/utilities/ostream.cpp
Index Unified diffs Context diffs Sdiffs Patch New Old Previous File Next File