فهرست منبع

Fixed some Xcode warnings

Sam Lantinga 2 سال پیش
والد
کامیت
cef1514b01
3فایلهای تغییر یافته به همراه13 افزوده شده و 7 حذف شده
  1. 6 4
      src/filesystem/cocoa/SDL_sysfilesystem.m
  2. 6 2
      src/joystick/iphoneos/SDL_mfijoystick.m
  3. 1 1
      src/video/cocoa/SDL_cocoamouse.m

+ 6 - 4
src/filesystem/cocoa/SDL_sysfilesystem.m

@@ -72,7 +72,6 @@ SDL_GetPrefPath(const char *org, const char *app)
 { @autoreleasepool
 {
     char *retval = NULL;
-    static SDL_bool shown = SDL_FALSE;
     NSArray *array;
 
     if (!app) {
@@ -94,10 +93,13 @@ SDL_GetPrefPath(const char *org, const char *app)
      * between sessions. If you want your app's save data to
      * actually stick around, you'll need to use iCloud storage.
      */
-    if (!shown)
     {
-        shown = SDL_TRUE;
-        SDL_LogCritical(SDL_LOG_CATEGORY_SYSTEM, "tvOS does not have persistent local storage! Use iCloud storage if you want your data to persist between sessions.\n");
+        static SDL_bool shown = SDL_FALSE;
+        if (!shown)
+        {
+            shown = SDL_TRUE;
+            SDL_LogCritical(SDL_LOG_CATEGORY_SYSTEM, "tvOS does not have persistent local storage! Use iCloud storage if you want your data to persist between sessions.\n");
+        }
     }
 
     array = NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES);

+ 6 - 2
src/joystick/iphoneos/SDL_mfijoystick.m

@@ -186,8 +186,10 @@ IOS_AddMFIJoystickDevice(SDL_JoystickDeviceItem *device, GCController *controlle
     Uint8 subtype = 0;
     const char *name = NULL;
 
-    if ((@available(macOS 11.3, *)) && !GCController.shouldMonitorBackgroundEvents) {
-        GCController.shouldMonitorBackgroundEvents = YES;
+    if (@available(macOS 11.3, iOS 14.5, tvOS 14.5, *)) {
+        if (!GCController.shouldMonitorBackgroundEvents) {
+            GCController.shouldMonitorBackgroundEvents = YES;
+        }
     }
 
     /* Explicitly retain the controller because SDL_JoystickDeviceItem is a
@@ -576,7 +578,9 @@ IOS_JoystickInit(void)
 #endif
 
     @autoreleasepool {
+#ifdef SDL_JOYSTICK_MFI
         NSNotificationCenter *center;
+#endif
 #ifdef SDL_JOYSTICK_iOS_ACCELEROMETER
         if (SDL_GetHintBoolean(SDL_HINT_ACCELEROMETER_AS_JOYSTICK, SDL_TRUE)) {
             /* Default behavior, accelerometer as joystick */

+ 1 - 1
src/video/cocoa/SDL_cocoamouse.m

@@ -114,7 +114,7 @@ LoadHiddenSystemCursor(NSString *cursorName, SEL fallback)
     NSString *cursorPath = [@"/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/Resources/cursors" stringByAppendingPathComponent:cursorName];
     NSDictionary *info = [NSDictionary dictionaryWithContentsOfFile:[cursorPath stringByAppendingPathComponent:@"info.plist"]];
     /* we can't do animation atm.  :/ */
-    const int frames = [[info valueForKey:@"frames"] integerValue];
+    const int frames = (int)[[info valueForKey:@"frames"] integerValue];
     NSCursor *cursor;
     NSImage *image = [[NSImage alloc] initWithContentsOfFile:[cursorPath stringByAppendingPathComponent:@"cursor.pdf"]];
     if ((image == nil) || (image.valid == NO)) {