aboutsummaryrefslogtreecommitdiff
path: root/src/blocks/date.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/blocks/date.c')
-rw-r--r--src/blocks/date.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/blocks/date.c b/src/blocks/date.c
index 4fcdb2a..c9ffb55 100644
--- a/src/blocks/date.c
+++ b/src/blocks/date.c
@@ -31,13 +31,12 @@ static void block_date_update(block_t *block)
assert(date->block.text != NULL);
}
-static block_t *block_date_alloc(const block_scheme_t *scheme)
+static void block_date_init(block_t *block, const block_scheme_t *scheme)
{
- block_t *block = calloc(1, sizeof(block_date_t));
- block->type = BLOCK_TEXT;
+ extern const block_scheme_t block_text_scheme;
+ block_text_scheme.init_fn(block, scheme);
block->update_interval = block_date_interval;
block->update_fn = block_date_update;
- return block;
}
static void block_date_clean(block_t *block)
@@ -65,7 +64,8 @@ static int block_date_validate(block_t *block, const block_scheme_t *scheme)
const block_scheme_t block_date_scheme = {
.name = "date",
.entries = NULL,
- .alloc_fn = block_date_alloc,
+ .size = sizeof(block_date_t),
+ .init_fn = block_date_init,
.clean_fn = block_date_clean,
.validate_fn = block_date_validate,
};