< prev index next >

src/hotspot/share/gc/shared/collectorCounters.cpp

Print this page

        

@@ -1,7 +1,7 @@
 /*
- * Copyright (c) 2002, 2015, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2002, 2017, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License version 2 only, as
  * published by the Free Software Foundation.

@@ -67,18 +67,19 @@
     FREE_C_HEAP_ARRAY(char, _name_space);
   }
 }
 
 TraceCollectorStats::TraceCollectorStats(CollectorCounters* c) :
-    PerfTraceTimedEvent(c->time_counter(), c->invocation_counter()),
+    PerfTraceTimedEvent((c == NULL) ? NULL : c->time_counter(),
+                        (c == NULL) ? NULL : c->invocation_counter()),
     _c(c) {
 
-  if (UsePerfData) {
+  if (UsePerfData && (_c != NULL)) {
      _c->last_entry_counter()->set_value(os::elapsed_counter());
   }
 }
 
 TraceCollectorStats::~TraceCollectorStats() {
-  if (UsePerfData) {
+  if (UsePerfData && (_c != NULL)) {
     _c->last_exit_counter()->set_value(os::elapsed_counter());
   }
 }
< prev index next >