|
117 | 117 | JNI_COCOA_ENTER(env);
|
118 | 118 | NSMutableArray * retArray = [NSMutableArray arrayWithCapacity:3];
|
119 | 119 | [retArray addObject: [NSNumber numberWithInt: (int)displayID]];
|
120 |
| - [retArray addObject: [NSString stringWithUTF8String: JNU_GetStringPlatformChars(env, shadersLibName, 0)]]; |
| 120 | + char *str = JNU_GetStringPlatformChars(env, shadersLibName, 0); |
| 121 | + [retArray addObject: [NSString stringWithUTF8String: str]]; |
121 | 122 |
|
122 | 123 | [ThreadUtilities performOnMainThreadWaiting:YES block:^() {
|
123 | 124 | [MTLGraphicsConfigUtil _tryLoadMetalLibrary: retArray];
|
124 | 125 | }];
|
125 | 126 |
|
126 | 127 | NSNumber * num = (NSNumber *)[retArray objectAtIndex: 0];
|
127 | 128 | ret = (jboolean)[num boolValue];
|
| 129 | + JNU_ReleaseStringPlatformChars(env, shadersLibName, str); |
128 | 130 | JNI_COCOA_EXIT(env);
|
129 | 131 | return ret;
|
130 | 132 | }
|
|
148 | 150 | JNI_COCOA_ENTER(env);
|
149 | 151 | NSMutableArray * retArray = [NSMutableArray arrayWithCapacity:3];
|
150 | 152 | [retArray addObject: [NSNumber numberWithInt: (int)displayID]];
|
151 |
| - [retArray addObject: [NSString stringWithUTF8String: JNU_GetStringPlatformChars(env, mtlShadersLib, 0)]]; |
| 153 | + char *str = JNU_GetStringPlatformChars(env, mtlShadersLib, 0); |
| 154 | + [retArray addObject: [NSString stringWithUTF8String: str]]; |
152 | 155 |
|
153 | 156 | [ThreadUtilities performOnMainThreadWaiting:YES block:^() {
|
154 | 157 | [MTLGraphicsConfigUtil _getMTLConfigInfo: retArray];
|
155 | 158 | }];
|
156 | 159 |
|
157 | 160 | NSNumber * num = (NSNumber *)[retArray objectAtIndex: 0];
|
158 | 161 | ret = (jlong)[num longValue];
|
| 162 | + JNU_ReleaseStringPlatformChars(env, mtlShadersLib, str); |
159 | 163 | JNI_COCOA_EXIT(env);
|
160 | 164 | return ret;
|
161 | 165 | }
|
|
0 commit comments