< prev index next >

src/share/vm/jfr/dcmd/jfrDcmds.cpp

Print this page
rev 9060 : 8216064: -XX:StartFlightRecording:settings= doesn't work properly
Reviewed-by: mgronlun

@@ -432,11 +432,17 @@
     path_to_gc_roots = JfrJavaSupport::new_java_lang_Boolean(_path_to_gc_roots.value(), CHECK);
   }
 
   jobjectArray settings = NULL;
   if (_settings.is_set()) {
-    const int length = _settings.value()->array()->length();
+    int length = _settings.value()->array()->length();
+    if (length == 1) {
+      const char* c_str = _settings.value()->array()->at(0);
+      if (strcmp(c_str, "none") == 0) {
+        length = 0;
+      }
+    }
     settings = JfrJavaSupport::new_string_array(length, CHECK);
     assert(settings != NULL, "invariant");
     for (int i = 0; i < length; ++i) {
       jobject element = JfrJavaSupport::new_string(_settings.value()->array()->at(i), CHECK);
       assert(element != NULL, "invariant");
< prev index next >