416 strlen(v) + 1 + |
416 strlen(v) + 1 + |
417 sizeof(SYS_EXT_DIR) + sizeof("/lib/") + strlen(cpu_arch) + sizeof(DEFAULT_LIBPATH) + 1, |
417 sizeof(SYS_EXT_DIR) + sizeof("/lib/") + strlen(cpu_arch) + sizeof(DEFAULT_LIBPATH) + 1, |
418 mtInternal); |
418 mtInternal); |
419 sprintf(ld_library_path, "%s%s" SYS_EXT_DIR "/lib/%s:" DEFAULT_LIBPATH, v, v_colon, cpu_arch); |
419 sprintf(ld_library_path, "%s%s" SYS_EXT_DIR "/lib/%s:" DEFAULT_LIBPATH, v, v_colon, cpu_arch); |
420 Arguments::set_library_path(ld_library_path); |
420 Arguments::set_library_path(ld_library_path); |
421 FREE_C_HEAP_ARRAY(char, ld_library_path, mtInternal); |
421 FREE_C_HEAP_ARRAY(char, ld_library_path); |
422 } |
422 } |
423 |
423 |
424 // Extensions directories. |
424 // Extensions directories. |
425 sprintf(buf, "%s" EXTENSIONS_DIR ":" SYS_EXT_DIR EXTENSIONS_DIR, Arguments::get_java_home()); |
425 sprintf(buf, "%s" EXTENSIONS_DIR ":" SYS_EXT_DIR EXTENSIONS_DIR, Arguments::get_java_home()); |
426 Arguments::set_ext_dirs(buf); |
426 Arguments::set_ext_dirs(buf); |
427 |
427 |
428 // Endorsed standards default directory. |
428 // Endorsed standards default directory. |
429 sprintf(buf, "%s" ENDORSED_DIR, Arguments::get_java_home()); |
429 sprintf(buf, "%s" ENDORSED_DIR, Arguments::get_java_home()); |
430 Arguments::set_endorsed_dirs(buf); |
430 Arguments::set_endorsed_dirs(buf); |
431 |
431 |
432 FREE_C_HEAP_ARRAY(char, buf, mtInternal); |
432 FREE_C_HEAP_ARRAY(char, buf); |
433 |
433 |
434 #else // __APPLE__ |
434 #else // __APPLE__ |
435 |
435 |
436 #define SYS_EXTENSIONS_DIR "/Library/Java/Extensions" |
436 #define SYS_EXTENSIONS_DIR "/Library/Java/Extensions" |
437 #define SYS_EXTENSIONS_DIRS SYS_EXTENSIONS_DIR ":/Network" SYS_EXTENSIONS_DIR ":/System" SYS_EXTENSIONS_DIR ":/usr/lib/java" |
437 #define SYS_EXTENSIONS_DIRS SYS_EXTENSIONS_DIR ":/Network" SYS_EXTENSIONS_DIR ":/System" SYS_EXTENSIONS_DIR ":/usr/lib/java" |
511 system_ext_size + 3, |
511 system_ext_size + 3, |
512 mtInternal); |
512 mtInternal); |
513 sprintf(ld_library_path, "%s%s%s%s%s" SYS_EXTENSIONS_DIR ":" SYS_EXTENSIONS_DIRS ":.", |
513 sprintf(ld_library_path, "%s%s%s%s%s" SYS_EXTENSIONS_DIR ":" SYS_EXTENSIONS_DIRS ":.", |
514 v, v_colon, l, l_colon, user_home_dir); |
514 v, v_colon, l, l_colon, user_home_dir); |
515 Arguments::set_library_path(ld_library_path); |
515 Arguments::set_library_path(ld_library_path); |
516 FREE_C_HEAP_ARRAY(char, ld_library_path, mtInternal); |
516 FREE_C_HEAP_ARRAY(char, ld_library_path); |
517 } |
517 } |
518 |
518 |
519 // Extensions directories. |
519 // Extensions directories. |
520 // |
520 // |
521 // Note that the space for the colon and the trailing null are provided |
521 // Note that the space for the colon and the trailing null are provided |
527 |
527 |
528 // Endorsed standards default directory. |
528 // Endorsed standards default directory. |
529 sprintf(buf, "%s" ENDORSED_DIR, Arguments::get_java_home()); |
529 sprintf(buf, "%s" ENDORSED_DIR, Arguments::get_java_home()); |
530 Arguments::set_endorsed_dirs(buf); |
530 Arguments::set_endorsed_dirs(buf); |
531 |
531 |
532 FREE_C_HEAP_ARRAY(char, buf, mtInternal); |
532 FREE_C_HEAP_ARRAY(char, buf); |
533 |
533 |
534 #undef SYS_EXTENSIONS_DIR |
534 #undef SYS_EXTENSIONS_DIR |
535 #undef SYS_EXTENSIONS_DIRS |
535 #undef SYS_EXTENSIONS_DIRS |
536 |
536 |
537 #endif // __APPLE__ |
537 #endif // __APPLE__ |
1313 } |
1313 } |
1314 } |
1314 } |
1315 // release the storage |
1315 // release the storage |
1316 for (int i = 0; i < n; i++) { |
1316 for (int i = 0; i < n; i++) { |
1317 if (pelements[i] != NULL) { |
1317 if (pelements[i] != NULL) { |
1318 FREE_C_HEAP_ARRAY(char, pelements[i], mtInternal); |
1318 FREE_C_HEAP_ARRAY(char, pelements[i]); |
1319 } |
1319 } |
1320 } |
1320 } |
1321 if (pelements != NULL) { |
1321 if (pelements != NULL) { |
1322 FREE_C_HEAP_ARRAY(char*, pelements, mtInternal); |
1322 FREE_C_HEAP_ARRAY(char*, pelements); |
1323 } |
1323 } |
1324 } else { |
1324 } else { |
1325 snprintf(buffer, buflen, "%s/" JNI_LIB_PREFIX "%s" JNI_LIB_SUFFIX, pname, fname); |
1325 snprintf(buffer, buflen, "%s/" JNI_LIB_PREFIX "%s" JNI_LIB_SUFFIX, pname, fname); |
1326 retval = true; |
1326 retval = true; |
1327 } |
1327 } |