2497 if (*tail == '\0') {
2498 JavaAssertions::setUserClassDefault(enable);
2499 } else {
2500 assert(*tail == ':', "bogus match by match_option()");
2501 JavaAssertions::addOption(tail + 1, enable);
2502 }
2503 // -dsa / -esa / -disablesystemassertions / -enablesystemassertions
2504 } else if (match_option(option, system_assertion_options, &tail, false)) {
2505 bool enable = option->optionString[1] == 'e'; // char after '-' is 'e'
2506 JavaAssertions::setSystemClassDefault(enable);
2507 // -bootclasspath:
2508 } else if (match_option(option, "-Xbootclasspath:", &tail)) {
2509 jio_fprintf(defaultStream::output_stream(),
2510 "-Xbootclasspath is no longer a supported option.\n");
2511 return JNI_EINVAL;
2512 // -bootclasspath/a:
2513 } else if (match_option(option, "-Xbootclasspath/a:", &tail)) {
2514 Arguments::append_sysclasspath(tail);
2515 #if INCLUDE_CDS
2516 MetaspaceShared::disable_optimized_module_handling();
2517 log_info(cds)("optimized module handling: disabled due to bootclasspath was appended");
2518 #endif
2519 // -bootclasspath/p:
2520 } else if (match_option(option, "-Xbootclasspath/p:", &tail)) {
2521 jio_fprintf(defaultStream::output_stream(),
2522 "-Xbootclasspath/p is no longer a supported option.\n");
2523 return JNI_EINVAL;
2524 // -Xrun
2525 } else if (match_option(option, "-Xrun", &tail)) {
2526 if (tail != NULL) {
2527 const char* pos = strchr(tail, ':');
2528 size_t len = (pos == NULL) ? strlen(tail) : pos - tail;
2529 char* name = NEW_C_HEAP_ARRAY(char, len + 1, mtArguments);
2530 jio_snprintf(name, len + 1, "%s", tail);
2531
2532 char *options = NULL;
2533 if(pos != NULL) {
2534 size_t len2 = strlen(pos+1) + 1; // options start after ':'. Final zero must be copied.
2535 options = (char*)memcpy(NEW_C_HEAP_ARRAY(char, len2, mtArguments), pos+1, len2);
2536 }
2537 #if !INCLUDE_JVMTI
|
2497 if (*tail == '\0') {
2498 JavaAssertions::setUserClassDefault(enable);
2499 } else {
2500 assert(*tail == ':', "bogus match by match_option()");
2501 JavaAssertions::addOption(tail + 1, enable);
2502 }
2503 // -dsa / -esa / -disablesystemassertions / -enablesystemassertions
2504 } else if (match_option(option, system_assertion_options, &tail, false)) {
2505 bool enable = option->optionString[1] == 'e'; // char after '-' is 'e'
2506 JavaAssertions::setSystemClassDefault(enable);
2507 // -bootclasspath:
2508 } else if (match_option(option, "-Xbootclasspath:", &tail)) {
2509 jio_fprintf(defaultStream::output_stream(),
2510 "-Xbootclasspath is no longer a supported option.\n");
2511 return JNI_EINVAL;
2512 // -bootclasspath/a:
2513 } else if (match_option(option, "-Xbootclasspath/a:", &tail)) {
2514 Arguments::append_sysclasspath(tail);
2515 #if INCLUDE_CDS
2516 MetaspaceShared::disable_optimized_module_handling();
2517 log_info(cds)("optimized module handling: disabled because bootclasspath was appended");
2518 #endif
2519 // -bootclasspath/p:
2520 } else if (match_option(option, "-Xbootclasspath/p:", &tail)) {
2521 jio_fprintf(defaultStream::output_stream(),
2522 "-Xbootclasspath/p is no longer a supported option.\n");
2523 return JNI_EINVAL;
2524 // -Xrun
2525 } else if (match_option(option, "-Xrun", &tail)) {
2526 if (tail != NULL) {
2527 const char* pos = strchr(tail, ':');
2528 size_t len = (pos == NULL) ? strlen(tail) : pos - tail;
2529 char* name = NEW_C_HEAP_ARRAY(char, len + 1, mtArguments);
2530 jio_snprintf(name, len + 1, "%s", tail);
2531
2532 char *options = NULL;
2533 if(pos != NULL) {
2534 size_t len2 = strlen(pos+1) + 1; // options start after ':'. Final zero must be copied.
2535 options = (char*)memcpy(NEW_C_HEAP_ARRAY(char, len2, mtArguments), pos+1, len2);
2536 }
2537 #if !INCLUDE_JVMTI
|