Correction for the macro EINA_CXX_DOM_LOG

Summary: The previous definition of EINA_CXX_DOM_LOG could cause a problem if used inside an one-line "if" statement followed by an "else". Changed the top "if" by a "for" statement to avoid this problem.

Reviewers: felipealmeida, cedric, woohyun, smohanty, raster

Reviewed By: raster

CC: savio, cedric

Differential Revision: https://phab.enlightenment.org/D902
This commit is contained in:
Vitor Sousa 2014-05-28 17:51:14 +09:00 committed by Carsten Haitzler (Rasterman)
parent a9f58d0d13
commit 062c08fbab
1 changed files with 1 additions and 1 deletions

View File

@ -80,7 +80,7 @@ inline void _log(std::stringstream const& stream, int domain, ::Eina_Log_Level l
}
#define EINA_CXX_DOM_LOG(DOMAIN, LEVEL) \
if( bool run = ::eina_log_domain_level_check((DOMAIN), LEVEL) ) \
for( bool run = ::eina_log_domain_level_check((DOMAIN), LEVEL); run;) \
for(std::stringstream stream; run ; \
::efl::eina::_log(std::move(stream), (DOMAIN), LEVEL \
, __FILE__, __FUNCTION__, __LINE__), run = false) \