LCOV - code coverage report
Current view: directory - ipc/chromium/src/base - logging.cc (source / functions) Found Hit Coverage
Test: app.info Lines: 48 0 0.0 %
Date: 2012-06-02 Functions: 8 0 0.0 %

       1                 : // Copyright (c) 2006-2009 The Chromium Authors. All rights reserved.
       2                 : // Use of this source code is governed by a BSD-style license that can be
       3                 : // found in the LICENSE file.
       4                 : 
       5                 : #include "base/logging.h"
       6                 : #include "prmem.h"
       7                 : #include "prprf.h"
       8                 : #include "base/string_util.h"
       9                 : #include "nsXPCOM.h"
      10                 : 
      11                 : namespace mozilla {
      12                 : 
      13               0 : Logger::~Logger()
      14                 : {
      15               0 :   PRLogModuleLevel prlevel = PR_LOG_DEBUG;
      16               0 :   int xpcomlevel = -1;
      17                 : 
      18               0 :   switch (mSeverity) {
      19                 :   case LOG_INFO:
      20               0 :     prlevel = PR_LOG_DEBUG;
      21               0 :     xpcomlevel = -1;
      22               0 :     break;
      23                 : 
      24                 :   case LOG_WARNING:
      25               0 :     prlevel = PR_LOG_WARNING;
      26               0 :     xpcomlevel = NS_DEBUG_WARNING;
      27               0 :     break;
      28                 : 
      29                 :   case LOG_ERROR:
      30               0 :     prlevel = PR_LOG_ERROR;
      31               0 :     xpcomlevel = NS_DEBUG_WARNING;
      32               0 :     break;
      33                 : 
      34                 :   case LOG_ERROR_REPORT:
      35               0 :     prlevel = PR_LOG_ERROR;
      36               0 :     xpcomlevel = NS_DEBUG_ASSERTION;
      37               0 :     break;
      38                 : 
      39                 :   case LOG_FATAL:
      40               0 :     prlevel = PR_LOG_ERROR;
      41               0 :     xpcomlevel = NS_DEBUG_ABORT;
      42               0 :     break;
      43                 :   }
      44                 : 
      45               0 :   PR_LOG(GetLog(), prlevel, ("%s:%i: %s", mFile, mLine, mMsg ? mMsg : "<no message>"));
      46               0 :   if (xpcomlevel != -1)
      47               0 :     NS_DebugBreak(xpcomlevel, mMsg, NULL, mFile, mLine);
      48                 : 
      49               0 :   PR_Free(mMsg);
      50               0 : }
      51                 : 
      52                 : void
      53               0 : Logger::printf(const char* fmt, ...)
      54                 : {
      55                 :   va_list args;
      56               0 :   va_start(args, fmt);
      57               0 :   mMsg = PR_vsprintf_append(mMsg, fmt, args);
      58               0 :   va_end(args);
      59               0 : }
      60                 : 
      61                 : PRLogModuleInfo* Logger::gChromiumPRLog;
      62                 : 
      63               0 : PRLogModuleInfo* Logger::GetLog()
      64                 : {
      65               0 :   if (!gChromiumPRLog)
      66               0 :     gChromiumPRLog = PR_NewLogModule("chromium");
      67               0 :   return gChromiumPRLog;
      68                 : }
      69                 : 
      70                 : } // namespace mozilla 
      71                 : 
      72                 : mozilla::Logger&
      73               0 : operator<<(mozilla::Logger& log, const char* s)
      74                 : {
      75               0 :   log.printf("%s", s);
      76               0 :   return log;
      77                 : }
      78                 : 
      79                 : mozilla::Logger&
      80               0 : operator<<(mozilla::Logger& log, const std::string& s)
      81                 : {
      82               0 :   log.printf("%s", s.c_str());
      83               0 :   return log;
      84                 : }
      85                 : 
      86                 : mozilla::Logger&
      87               0 : operator<<(mozilla::Logger& log, int i)
      88                 : {
      89               0 :   log.printf("%i", i);
      90               0 :   return log;
      91                 : }
      92                 : 
      93                 : mozilla::Logger&
      94               0 : operator<<(mozilla::Logger& log, const std::wstring& s)
      95                 : {
      96               0 :   log.printf("%s", WideToASCII(s).c_str());
      97               0 :   return log;
      98                 : }
      99                 : 
     100                 : mozilla::Logger&
     101               0 : operator<<(mozilla::Logger& log, void* p)
     102                 : {
     103               0 :   log.printf("%p", p);
     104               0 :   return log;
     105                 : }

Generated by: LCOV version 1.7