Skip to content

Isolate build display from update (DrawBuffer ???)  #148

Closed
@fulup-bzh

Description

@fulup-bzh

I run an asynchronous application, where display construction if done at init time and update from an independant asynchronous timer. I started from arc sample implementing the construction in one routine and display update in an other. When trying to update the window I get a core dump, I suspect DrawBuffer or an other holding handle to be wipe out when returning from init routine.

Question: which are the handle I should keep track of to make sure that my display does not get wipe out from stack when returning from my init routine ? (using arc sample as base)

Note: In order to keep different display handles from being wipe out at return my routine returns.

       return DisplayHandle {
           sim_display,
            window,
            arc,
            display,
        }

I cannot return buffer coming from DrawBuffer because it of its type that depends in the definition.

My timer async routine fail in lvgl::task_handler()

  pub fn tick_update(&mut self, tick: Duration) {

        // update internal lvgl tick timer
        lvgl::tick_inc(tick);

        // exec any lvgl pending task/action
        lvgl::task_handler();
}

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions