Author: [email protected]
Date: Fri May  8 03:06:38 2009
New Revision: 1901

Modified:
    branches/bleeding_edge/src/log.cc
    branches/bleeding_edge/test/cctest/test-log.cc

Log:
Return immediately from GetLogLines if logging to memory isn't enabled.

Review URL: http://codereview.chromium.org/115123

Modified: branches/bleeding_edge/src/log.cc
==============================================================================
--- branches/bleeding_edge/src/log.cc   (original)
+++ branches/bleeding_edge/src/log.cc   Fri May  8 03:06:38 2009
@@ -423,6 +423,7 @@


  int Log::GetLogLines(int from_pos, char* dest_buf, int max_size) {
+  if (Write != WriteToMemory) return 0;
    ASSERT(output_.buffer != NULL);
    ASSERT(output_buffer_write_pos_ >= output_.buffer);
    ASSERT(from_pos >= 0);

Modified: branches/bleeding_edge/test/cctest/test-log.cc
==============================================================================
--- branches/bleeding_edge/test/cctest/test-log.cc      (original)
+++ branches/bleeding_edge/test/cctest/test-log.cc      Fri May  8 03:06:38 2009
@@ -23,6 +23,7 @@
    Logger::TearDown();
  }

+
  TEST(EmptyLog) {
    SetUp();
    CHECK_EQ(0, Logger::GetLogLines(0, NULL, 0));
@@ -98,5 +99,19 @@
    CHECK_EQ(0, Logger::GetLogLines(10 * 1024 * 1024, NULL, 100));
    TearDown();
  }
+
+
+TEST(MemoryLoggingTurnedOff) {
+  // Log to stdout
+  v8::internal::FLAG_logfile = "-";
+  v8::internal::FLAG_log = true;
+  Logger::Setup();
+  CHECK_EQ(0, Logger::GetLogLines(0, NULL, 0));
+  CHECK_EQ(0, Logger::GetLogLines(100, NULL, 0));
+  CHECK_EQ(0, Logger::GetLogLines(0, NULL, 100));
+  CHECK_EQ(0, Logger::GetLogLines(100, NULL, 100));
+  Logger::TearDown();
+}
+

  #endif  // ENABLE_LOGGING_AND_PROFILING

--~--~---------~--~----~------------~-------~--~----~
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
-~----------~----~----~----~------~----~------~--~---

Reply via email to