LCOV - app.info - ipc/chromium/src/base/logging.cc

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-04-21 | 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