Quellcode durchsuchen

Validate parameters to SDL_ReadStorageFile() and SDL_WriteStorageFile()

Sam Lantinga vor 3 Monaten
Ursprung
Commit
f0d958d850
1 geänderte Dateien mit 6 neuen und 0 gelöschten Zeilen
  1. 6 0
      src/storage/SDL_storage.c

+ 6 - 0
src/storage/SDL_storage.c

@@ -251,6 +251,9 @@ bool SDL_ReadStorageFile(SDL_Storage *storage, const char *path, void *destinati
     CHECK_PARAM(!ValidateStoragePath(path)) {
         return false;
     }
+    CHECK_PARAM(length > 0 && !destination) {
+        return SDL_InvalidParamError("destination");
+    }
 
     if (!storage->iface.read_file) {
         return SDL_Unsupported();
@@ -269,6 +272,9 @@ bool SDL_WriteStorageFile(SDL_Storage *storage, const char *path, const void *so
     CHECK_PARAM(!ValidateStoragePath(path)) {
         return false;
     }
+    CHECK_PARAM(length > 0 && !source) {
+        return SDL_InvalidParamError("source");
+    }
 
     if (!storage->iface.write_file) {
         return SDL_Unsupported();