WMClientCtxt(const char *appName, const char* appRole)
{
name = appName;
- role = role;
+ role = appRole;
}
} WMClientCtxt;
if (pSid)
{
auto sid = *pSid;
+ auto o_state = *g_afb_instance->app.layers.get_layout_state(sid);
+ if (o_state != nullptr)
+ {
+ if (o_state->main == sid)
+ {
+ o_state->main = -1;
+ }
+ else if (o_state->sub == sid)
+ {
+ o_state->sub = -1;
+ }
+ }
g_afb_instance->app.id_alloc.remove_id(sid);
g_afb_instance->app.layers.remove_surface(sid);
g_afb_instance->app.controller->sprops.erase(sid);
}
catch (std::exception &e)
{
- HMI_WARNING("wm", "failed", "Uncaught exception while calling activatesurface: %s", e.what());
+ HMI_WARNING("wm", "failed: Uncaught exception while calling activatesurface: %s", e.what());
+ g_afb_instance->app.exeptionProcessForTransition();
return;
}
}
}
catch (std::exception &e)
{
- HMI_WARNING("wm", "Uncaught exception while calling deactivatesurface: %s", e.what());
+ HMI_WARNING("wm", "failed: Uncaught exception while calling deactivatesurface: %s", e.what());
+ g_afb_instance->app.exeptionProcessForTransition();
return;
}
}
}
catch (std::exception &e)
{
- HMI_WARNING("wm", "failed", "Uncaught exception while calling enddraw: %s", e.what());
+ HMI_WARNING("wm", "failed: Uncaught exception while calling enddraw: %s", e.what());
+ g_afb_instance->app.exeptionProcessForTransition();
return;
}
}