systemMessage(MSG_OUT_OF_MEMORY, "Failed to allocate memory for %s",
systemMessage(MSG_OUT_OF_MEMORY, N_("Failed to allocate memory for %s"),
u8 *utilLoad(const char *file,             bool (*accept)(const char *),             u8 *data,             int &size){  if(utilIsZipFile(file)) {    return utilLoadFromZip(file, accept, data, size);  }  if(utilIsGzipFile(file)) {    return utilLoadGzipFile(file, accept, data, size);  }#if 0  if(utilIsRarFile(file)) {    return utilLoadRarFile(file, accept, data, size);  }#endif    u8 *image = data;  FILE *f = fopen(file, "rb");  if(!f) {    systemMessage(MSG_ERROR_OPENING_IMAGE, "Error opening image %s", file);    return NULL;  }  fseek(f,0,SEEK_END);  int fileSize = ftell(f);  fseek(f,0,SEEK_SET);  if(size == 0)    size = fileSize;  if(image == NULL) {    image = (u8 *)malloc(utilGetSize(size));    if(image == NULL) {      systemMessage(MSG_OUT_OF_MEMORY, "Failed to allocate memory for %s",                    "data");      fclose(f);      return NULL;    }    size = fileSize;  }  int read = fileSize <= size ? fileSize : size;  int r = fread(image, 1, read, f);  fclose(f);  if(r != (int)read) {    systemMessage(MSG_ERROR_READING_IMAGE,                  "Error reading image %s", file);    if(data == NULL)      free(image);    return NULL;  }    size = fileSize;    return image;}