diff options
Diffstat (limited to 'src/blocks/ram.c')
| -rw-r--r-- | src/blocks/ram.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/blocks/ram.c b/src/blocks/ram.c index 46ec361..ed7465f 100644 --- a/src/blocks/ram.c +++ b/src/blocks/ram.c @@ -128,13 +128,12 @@ static void block_ram_update(block_t *block) assert(ram->block.text != NULL); } -static block_t *block_ram_alloc(const block_scheme_t *scheme) +static void block_ram_init(block_t *block, const block_scheme_t *scheme) { - block_t *block = calloc(1, sizeof(block_ram_t)); - block->type = BLOCK_TEXT; + extern const block_scheme_t block_text_scheme; + block_text_scheme.init_fn(block, scheme); block->update_interval = block_ram_interval; block->update_fn = block_ram_update; - return block; } static void block_ram_clean(block_t *block) @@ -176,7 +175,8 @@ static int block_ram_validate(block_t *block, const block_scheme_t *scheme) const block_scheme_t block_ram_scheme = { .name = "ram", .entries = NULL, - .alloc_fn = block_ram_alloc, + .size = sizeof(block_ram_t), + .init_fn = block_ram_init, .clean_fn = block_ram_clean, .validate_fn = block_ram_validate, }; |
