if (grub_errno)
return -1;
}
- else if (read_hook != (grub_disk_read_hook_t)grub_disk_blocklist_read)
+ else if (read_hook != (grub_disk_read_hook_t)(void *)grub_disk_blocklist_read)
grub_memset (buf, 0, blockend);
buf += blocksize - skipfirst;
grub_disk_read (grub_disk_t disk, grub_disk_addr_t sector,
grub_off_t offset, grub_size_t size, void *buf)
{
- if (disk->read_hook == (grub_disk_read_hook_t)grub_disk_blocklist_read)
+ if (disk->read_hook == (grub_disk_read_hook_t)(void *)grub_disk_blocklist_read)
{
return grub_disk_blocklist_read((ventoy_img_chunk_list *)disk->read_hook_data, sector, size, disk->log_sector_size);
}
mouse_input = grub_malloc (sizeof (grub_efi_mouse_prot_t));
if (!mouse_input)
- return NULL;
+ goto end;
mouse_input->mouse = grub_malloc (count
* sizeof (grub_efi_simple_pointer_protocol_t *));
if (!mouse_input->mouse)
{
grub_free (mouse_input);
- return NULL;
+ mouse_input = NULL;
+ goto end;
}
mouse_input->count = count;
for (i = 0; i < count; i++)
mouse_input->mouse[i]->mode->y, mouse_input->mouse[i]->mode->z);
#endif
}
+
+end:
+ efi_call_1(b->free_pool, buf);
+
return mouse_input;
}
}
else
{
- file->read_hook = (grub_disk_read_hook_t)grub_disk_blocklist_read;
+ file->read_hook = (grub_disk_read_hook_t)(void *)grub_disk_blocklist_read;
file->read_hook_data = chunklist;
for (size = file->size; size > 0; size -= read)