1diff --git a/base/logging.cc b/base/logging.cc 2index 8eabda0..112afb8 100644 3--- a/base/logging.cc 4+++ b/base/logging.cc 5@@ -58,7 +58,7 @@ typedef HANDLE MutexHandle; 6 #include <zircon/syscalls.h> 7 #endif 8 9-#if defined(OS_ANDROID) 10+#if defined(OS_ANDROID) || defined(__ANDROID__) 11 #include <android/log.h> 12 #endif 13 14@@ -407,21 +407,23 @@ bool BaseInitLoggingImpl(const LoggingSettings& settings) { 15 // Can log only to the system debug log. 16 CHECK_EQ(settings.logging_dest & ~LOG_TO_SYSTEM_DEBUG_LOG, 0); 17 #endif 18- base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); 19- // Don't bother initializing |g_vlog_info| unless we use one of the 20- // vlog switches. 21- if (command_line->HasSwitch(switches::kV) || 22- command_line->HasSwitch(switches::kVModule)) { 23- // NOTE: If |g_vlog_info| has already been initialized, it might be in use 24- // by another thread. Don't delete the old VLogInfo, just create a second 25- // one. We keep track of both to avoid memory leak warnings. 26- CHECK(!g_vlog_info_prev); 27- g_vlog_info_prev = g_vlog_info; 28- 29- g_vlog_info = 30- new VlogInfo(command_line->GetSwitchValueASCII(switches::kV), 31- command_line->GetSwitchValueASCII(switches::kVModule), 32- &g_min_log_level); 33+ if (base::CommandLine::InitializedForCurrentProcess()) { 34+ base::CommandLine* command_line = base::CommandLine::ForCurrentProcess(); 35+ // Don't bother initializing |g_vlog_info| unless we use one of the 36+ // vlog switches. 37+ if (command_line->HasSwitch(switches::kV) || 38+ command_line->HasSwitch(switches::kVModule)) { 39+ // NOTE: If |g_vlog_info| has already been initialized, it might be in use 40+ // by another thread. Don't delete the old VLogInfo, just create a second 41+ // one. We keep track of both to avoid memory leak warnings. 42+ CHECK(!g_vlog_info_prev); 43+ g_vlog_info_prev = g_vlog_info; 44+ 45+ g_vlog_info = 46+ new VlogInfo(command_line->GetSwitchValueASCII(switches::kV), 47+ command_line->GetSwitchValueASCII(switches::kVModule), 48+ &g_min_log_level); 49+ } 50 } 51 52 g_logging_destination = settings.logging_dest; 53@@ -755,7 +757,7 @@ LogMessage::~LogMessage() { 54 str_newline.c_str()); 55 #endif // defined(USE_ASL) 56 } 57-#elif defined(OS_ANDROID) 58+#elif defined(OS_ANDROID) || defined(__ANDROID__) 59 android_LogPriority priority = 60 (severity_ < 0) ? ANDROID_LOG_VERBOSE : ANDROID_LOG_UNKNOWN; 61 switch (severity_) { 62@@ -772,7 +774,16 @@ LogMessage::~LogMessage() { 63 priority = ANDROID_LOG_FATAL; 64 break; 65 } 66+#if defined(OS_ANDROID) 67 __android_log_write(priority, "chromium", str_newline.c_str()); 68+#else 69+ __android_log_write( 70+ priority, 71+ base::CommandLine::InitializedForCurrentProcess() ? 72+ base::CommandLine::ForCurrentProcess()-> 73+ GetProgram().BaseName().value().c_str() : nullptr, 74+ str_newline.c_str()); 75+#endif // defined(OS_ANDROID) 76 #endif 77 ignore_result(fwrite(str_newline.data(), str_newline.size(), 1, stderr)); 78 fflush(stderr); 79