567 // Concatenate user and invariant part of ld_library_path. |
567 // Concatenate user and invariant part of ld_library_path. |
568 // That's +1 for the colon and +1 for the trailing '\0'. |
568 // That's +1 for the colon and +1 for the trailing '\0'. |
569 char *ld_library_path = (char *)NEW_C_HEAP_ARRAY(char, strlen(v) + 1 + sizeof(DEFAULT_LIBPATH) + 1, mtInternal); |
569 char *ld_library_path = (char *)NEW_C_HEAP_ARRAY(char, strlen(v) + 1 + sizeof(DEFAULT_LIBPATH) + 1, mtInternal); |
570 sprintf(ld_library_path, "%s%s" DEFAULT_LIBPATH, v, v_colon); |
570 sprintf(ld_library_path, "%s%s" DEFAULT_LIBPATH, v, v_colon); |
571 Arguments::set_library_path(ld_library_path); |
571 Arguments::set_library_path(ld_library_path); |
572 FREE_C_HEAP_ARRAY(char, ld_library_path, mtInternal); |
572 FREE_C_HEAP_ARRAY(char, ld_library_path); |
573 |
573 |
574 // Extensions directories. |
574 // Extensions directories. |
575 sprintf(buf, "%s" EXTENSIONS_DIR, Arguments::get_java_home()); |
575 sprintf(buf, "%s" EXTENSIONS_DIR, Arguments::get_java_home()); |
576 Arguments::set_ext_dirs(buf); |
576 Arguments::set_ext_dirs(buf); |
577 |
577 |
578 FREE_C_HEAP_ARRAY(char, buf, mtInternal); |
578 FREE_C_HEAP_ARRAY(char, buf); |
579 |
579 |
580 #undef DEFAULT_LIBPATH |
580 #undef DEFAULT_LIBPATH |
581 #undef EXTENSIONS_DIR |
581 #undef EXTENSIONS_DIR |
582 } |
582 } |
583 |
583 |
1298 } |
1298 } |
1299 } |
1299 } |
1300 // release the storage |
1300 // release the storage |
1301 for (int i = 0; i < n; i++) { |
1301 for (int i = 0; i < n; i++) { |
1302 if (pelements[i] != NULL) { |
1302 if (pelements[i] != NULL) { |
1303 FREE_C_HEAP_ARRAY(char, pelements[i], mtInternal); |
1303 FREE_C_HEAP_ARRAY(char, pelements[i]); |
1304 } |
1304 } |
1305 } |
1305 } |
1306 if (pelements != NULL) { |
1306 if (pelements != NULL) { |
1307 FREE_C_HEAP_ARRAY(char*, pelements, mtInternal); |
1307 FREE_C_HEAP_ARRAY(char*, pelements); |
1308 } |
1308 } |
1309 } else { |
1309 } else { |
1310 snprintf(buffer, buflen, "%s/lib%s.so", pname, fname); |
1310 snprintf(buffer, buflen, "%s/lib%s.so", pname, fname); |
1311 retval = true; |
1311 retval = true; |
1312 } |
1312 } |