diff options
Diffstat (limited to 'boot/expo.c')
-rw-r--r-- | boot/expo.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/boot/expo.c b/boot/expo.c index 8b966b6c79..be11cfd4e9 100644 --- a/boot/expo.c +++ b/boot/expo.c @@ -56,6 +56,21 @@ void expo_destroy(struct expo *exp) free(exp); } +uint resolve_id(struct expo *exp, uint id) +{ + if (!id) + id = exp->next_id++; + else if (id >= exp->next_id) + exp->next_id = id + 1; + + return id; +} + +void expo_set_dynamic_start(struct expo *exp, uint dyn_start) +{ + exp->next_id = dyn_start; +} + int expo_str(struct expo *exp, const char *name, uint id, const char *str) { struct expo_string *estr; |