Fix a memory leak in mmio
This commit is contained in:
@ -82,6 +82,7 @@ typedef struct _mmio_cbs {
|
|||||||
void *user_data_read;
|
void *user_data_read;
|
||||||
uc_cb_mmio_write_t write;
|
uc_cb_mmio_write_t write;
|
||||||
void *user_data_write;
|
void *user_data_write;
|
||||||
|
MemoryRegionOps ops;
|
||||||
} mmio_cbs;
|
} mmio_cbs;
|
||||||
|
|
||||||
static uint64_t mmio_read_wrapper(struct uc_struct *uc, void *opaque, hwaddr addr, unsigned size)
|
static uint64_t mmio_read_wrapper(struct uc_struct *uc, void *opaque, hwaddr addr, unsigned size)
|
||||||
@ -118,8 +119,8 @@ MemoryRegion *memory_map_io(struct uc_struct *uc, ram_addr_t begin, size_t size,
|
|||||||
void *user_data_read, void *user_data_write)
|
void *user_data_read, void *user_data_write)
|
||||||
{
|
{
|
||||||
MemoryRegion *mmio = g_new(MemoryRegion, 1);
|
MemoryRegion *mmio = g_new(MemoryRegion, 1);
|
||||||
MemoryRegionOps *ops = g_new(MemoryRegionOps, 1);
|
|
||||||
mmio_cbs* opaques = g_new(mmio_cbs, 1);
|
mmio_cbs* opaques = g_new(mmio_cbs, 1);
|
||||||
|
MemoryRegionOps *ops = &opaques->ops;
|
||||||
opaques->read = read_cb;
|
opaques->read = read_cb;
|
||||||
opaques->write = write_cb;
|
opaques->write = write_cb;
|
||||||
opaques->user_data_read = user_data_read;
|
opaques->user_data_read = user_data_read;
|
||||||
|
Reference in New Issue
Block a user