cocaine/cocaine-framework-native — pull request #2 by ijon (2013-04-22 13:07:08+00:00)
Title: Hold logger by base type instead of derived, to avoid needless upcasts

Specific type logger_service_t needed only to call initialize() method at service_manager's construction time. All further uses mean and require base type logger_t only. So it's more accurate to hold logger by base type and downcast it to logger_service_t once.

Also this change fixed error resulting in get_system_logger() returning shared_ptr that holds invalid (zero) raw pointer in my builds (precise, g++ 4.6).