< prev index next >
src/java.base/share/native/libjli/java.c
Print this page
*** 1818,1837 ****
const char *file_name = getenv(SPLASH_FILE_ENV_ENTRY);
int data_size;
void *image_data = NULL;
float scale_factor = 1;
char *scaled_splash_name = NULL;
!
if (file_name == NULL){
return;
}
! scaled_splash_name = DoSplashGetScaledImageName(
! jar_name, file_name, &scale_factor);
if (jar_name) {
! if (scaled_splash_name) {
image_data = JLI_JarUnpackFile(
jar_name, scaled_splash_name, &data_size);
}
if (!image_data) {
--- 1818,1842 ----
const char *file_name = getenv(SPLASH_FILE_ENV_ENTRY);
int data_size;
void *image_data = NULL;
float scale_factor = 1;
char *scaled_splash_name = NULL;
! jboolean isImageScaled = JNI_FALSE;
! size_t maxScaledImgNameLength = 0;
if (file_name == NULL){
return;
}
+ maxScaledImgNameLength = DoSplashGetScaledImgNameMaxPstfixLen(file_name);
! scaled_splash_name = JLI_MemAlloc(
! maxScaledImgNameLength * sizeof(char));
! isImageScaled = DoSplashGetScaledImageName(jar_name, file_name,
! &scale_factor,
! scaled_splash_name, maxScaledImgNameLength);
if (jar_name) {
! if (isImageScaled) {
image_data = JLI_JarUnpackFile(
jar_name, scaled_splash_name, &data_size);
}
if (!image_data) {
*** 1845,1865 ****
DoSplashLoadMemory(image_data, data_size);
JLI_MemFree(image_data);
}
} else {
DoSplashInit();
! if (scaled_splash_name) {
DoSplashSetScaleFactor(scale_factor);
DoSplashLoadFile(scaled_splash_name);
} else {
DoSplashLoadFile(file_name);
}
}
-
- if (scaled_splash_name) {
JLI_MemFree(scaled_splash_name);
- }
DoSplashSetFileJarName(file_name, jar_name);
/*
* Done with all command line processing and potential re-execs so
--- 1850,1867 ----
DoSplashLoadMemory(image_data, data_size);
JLI_MemFree(image_data);
}
} else {
DoSplashInit();
! if (isImageScaled) {
DoSplashSetScaleFactor(scale_factor);
DoSplashLoadFile(scaled_splash_name);
} else {
DoSplashLoadFile(file_name);
}
}
JLI_MemFree(scaled_splash_name);
DoSplashSetFileJarName(file_name, jar_name);
/*
* Done with all command line processing and potential re-execs so
< prev index next >