Removed malloc from vlog
Change-Id: Iec620d567a6c19e48056f037d2f928cb3a196db8
diff --git a/aos/common/logging/interface.cc b/aos/common/logging/interface.cc
index 72431e8..a601e83 100644
--- a/aos/common/logging/interface.cc
+++ b/aos/common/logging/interface.cc
@@ -56,8 +56,7 @@
void LogImplementation::DoVLog(log_level level, const char *format, va_list ap,
int levels) {
- internal::RunWithCurrentImplementation(
- levels, [&](LogImplementation * implementation) {
+ auto log_impl = [&](LogImplementation *implementation) {
va_list ap1;
va_copy(ap1, ap);
implementation->DoLog(level, format, ap1);
@@ -66,7 +65,8 @@
if (level == FATAL) {
VDie(format, ap);
}
- });
+ };
+ internal::RunWithCurrentImplementation(levels, ::std::ref(log_impl));
}
void VLog(log_level level, const char *format, va_list ap) {