Don't evaluate args to LOG(INFO) and LOG(WARNING) in release builds.

We were using the LAZY_STREAM macro to do this based on --log-level (which
defaults to INFO), but not for LoggingSettings::logging_dest == LOG_NONE.

Review URL: https://codereview.chromium.org/1499693002

Cr-Commit-Position: refs/heads/master@{#363565}
diff --git a/base/logging.cc b/base/logging.cc
index 650351d..20bc7f5 100644
--- a/base/logging.cc
+++ b/base/logging.cc
@@ -390,6 +390,17 @@
   return g_min_log_level;
 }
 
+bool ShouldCreateLogMessage(int severity) {
+  if (severity < g_min_log_level)
+    return false;
+
+  // Return true here unless we know ~LogMessage won't do anything. Note that
+  // ~LogMessage writes to stderr if severity_ >= kAlwaysPrintErrorLevel, even
+  // when g_logging_destination is LOG_NONE.
+  return g_logging_destination != LOG_NONE || log_message_handler ||
+         severity >= kAlwaysPrintErrorLevel;
+}
+
 int GetVlogVerbosity() {
   return std::max(-1, LOG_INFO - GetMinLogLevel());
 }