src/macosx/native/sun/awt/CFileDialog.m

Print this page

        

*** 115,132 **** --- 115,134 ---- [thePanel setDelegate:self]; fPanelResult = [thePanel runModalForDirectory:fDirectory file:fFile]; [thePanel setDelegate:nil]; + if ([self userClickedOK]) { if (fMode == java_awt_FileDialog_LOAD) { NSOpenPanel *openPanel = (NSOpenPanel *)thePanel; fURLs = [openPanel URLs]; } else { fURLs = [NSArray arrayWithObject:[thePanel URL]]; } [fURLs retain]; } + } [self disposer]; } - (BOOL) askFilenameFilter:(NSString *)filename {
*** 211,226 **** jclass stringClass = (*env)->FindClass(env, "java/lang/String"); returnValue = (*env)->NewObjectArray(env, count, stringClass, NULL); (*env)->DeleteLocalRef(env, stringClass); ! NSUInteger i; ! for (i = 0; i < count; i++) { ! jstring filename = JNFNSToJavaString(env, [[urls objectAtIndex:i] absoluteString]); ! (*env)->SetObjectArrayElement(env, returnValue, i, filename); (*env)->DeleteLocalRef(env, filename); ! } } [dialogDelegate release]; JNF_COCOA_EXIT(env); return returnValue; --- 213,227 ---- jclass stringClass = (*env)->FindClass(env, "java/lang/String"); returnValue = (*env)->NewObjectArray(env, count, stringClass, NULL); (*env)->DeleteLocalRef(env, stringClass); ! [urls enumerateObjectsUsingBlock:^(id url, NSUInteger index, BOOL *stop) { ! jstring filename = JNFNormalizedJavaStringForPath(env, [url path]); ! (*env)->SetObjectArrayElement(env, returnValue, index, filename); (*env)->DeleteLocalRef(env, filename); ! }]; } [dialogDelegate release]; JNF_COCOA_EXIT(env); return returnValue;