< prev index next >
src/java.desktop/macosx/native/libsplashscreen/splashscreen_sys.m
Print this page
*** 131,150 ****
// If this property is present we are running SWT
snprintf(envVar, sizeof(envVar), "JAVA_STARTED_ON_FIRST_THREAD_%d", getpid());
return getenv(envVar) != NULL;
}
! char* SplashGetScaledImageName(const char* jar, const char* file,
! float *scaleFactor) {
*scaleFactor = 1;
if(isSWTRunning()){
! return nil;
}
NSAutoreleasePool *pool = [NSAutoreleasePool new];
- char* scaledFile = nil;
__block float screenScaleFactor = 1;
[ThreadUtilities performOnMainThreadWaiting:YES block:^(){
// initialize NSApplication and AWT stuff
[NSApplicationAWT sharedApplication];
--- 131,150 ----
// If this property is present we are running SWT
snprintf(envVar, sizeof(envVar), "JAVA_STARTED_ON_FIRST_THREAD_%d", getpid());
return getenv(envVar) != NULL;
}
! jboolean SplashGetScaledImageName(const char* jar, const char* file,
! float *scaleFactor, char *scaledFile,
! const size_t scaledImageLength) {
*scaleFactor = 1;
if(isSWTRunning()){
! return JNI_FALSE;
}
NSAutoreleasePool *pool = [NSAutoreleasePool new];
__block float screenScaleFactor = 1;
[ThreadUtilities performOnMainThreadWaiting:YES block:^(){
// initialize NSApplication and AWT stuff
[NSApplicationAWT sharedApplication];
*** 168,183 ****
[fileName substringFromIndex: dotIndex]];
}
if ((fileName2x != nil) && (jar || [[NSFileManager defaultManager]
fileExistsAtPath: fileName2x])){
*scaleFactor = 2;
! scaledFile = strdup([fileName2x UTF8String]);
}
}
[pool drain];
! return scaledFile;
}
void
SplashInitPlatform(Splash * splash) {
pthread_mutex_init(&splash->lock, NULL);
--- 168,189 ----
[fileName substringFromIndex: dotIndex]];
}
if ((fileName2x != nil) && (jar || [[NSFileManager defaultManager]
fileExistsAtPath: fileName2x])){
+ if (strlen([fileName2x UTF8String]) > scaledImageLength) {
+ [pool drain];
+ return JNI_FALSE;
+ }
*scaleFactor = 2;
! strcpy(scaledFile, [fileName2x UTF8String]);
! [pool drain];
! return JNI_TRUE;
}
}
[pool drain];
! return JNI_FALSE;
}
void
SplashInitPlatform(Splash * splash) {
pthread_mutex_init(&splash->lock, NULL);
< prev index next >