From 2d753e6a210bc337cc559e06007b2e383aeef6f8 Mon Sep 17 00:00:00 2001 From: Terry Heo Date: Tue, 8 Dec 2020 18:15:36 -0800 Subject: [PATCH] Fix a crashing issue of Android logging Avoid using std::cerr. This patch resolves GitHub issue #38025. PiperOrigin-RevId: 346452855 Change-Id: Ife2504476b265909814c09c900cbb5090a55fcc5 --- tensorflow/core/platform/default/logging.cc | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tensorflow/core/platform/default/logging.cc b/tensorflow/core/platform/default/logging.cc index b19c2630f23..e0d2e5b9341 100644 --- a/tensorflow/core/platform/default/logging.cc +++ b/tensorflow/core/platform/default/logging.cc @@ -485,7 +485,8 @@ void TFDefaultLogSink::Send(const TFLogEntry& entry) { __android_log_write(android_log_level, "native", ss.str().c_str()); // Also log to stderr (for standalone Android apps). - std::cerr << "native : " << ss.str() << std::endl; + // Don't use 'std::cerr' since it crashes on Android. + fprintf(stderr, "native : %s\n", ss.str().c_str()); // Android logging at level FATAL does not terminate execution, so abort() // is still required to stop the program.