1 From 26f2f7ce78ba2002809048b227ad9c35921a9cd8 Mon Sep 17 00:00:00 2001
2 From: Emre Ucan <eucan@de.adit-jv.com>
3 Date: Fri, 24 Nov 2017 16:27:01 +0100
4 Subject: [PATCH 2/2] ivi-controller: load id-agent module
6 Signed-off-by: Emre Ucan <eucan@de.adit-jv.com>
8 weston-ivi-shell/src/ivi-controller.c | 39 +++++++++++++++++++++++++++++++++++
9 1 file changed, 39 insertions(+)
11 diff --git a/weston-ivi-shell/src/ivi-controller.c b/weston-ivi-shell/src/ivi-controller.c
12 index 312a978..47b6de2 100644
13 --- a/weston-ivi-shell/src/ivi-controller.c
14 +++ b/weston-ivi-shell/src/ivi-controller.c
15 @@ -1518,6 +1518,40 @@ load_input_module(struct weston_compositor *ec,
19 +static int load_id_agent_module(struct weston_compositor *ec,
20 + const struct ivi_layout_interface *interface,
21 + size_t interface_version)
23 + struct weston_config *config = wet_get_config(ec);
24 + struct weston_config_section *section;
25 + char *id_agent_module = NULL;
27 + int (*id_agent_module_init)(struct weston_compositor *ec,
28 + const struct ivi_layout_interface *interface,
29 + size_t interface_version);
31 + section = weston_config_get_section(config, "ivi-shell", NULL, NULL);
33 + if (weston_config_section_get_string(section, "id-agent-module",
34 + &id_agent_module, NULL) < 0) {
35 + weston_log("ivi-controller: No id-agent-module set\n");
39 + id_agent_module_init = wet_load_module_entrypoint(id_agent_module, "id_agent_module_init");
40 + if (!id_agent_module_init)
43 + if (id_agent_module_init(ec, interface,
44 + sizeof(struct ivi_layout_interface)) != 0) {
45 + weston_log("ivi-controller: Initialization of id agent module fails\n");
49 + free(id_agent_module);
54 controller_module_init(struct weston_compositor *compositor,
55 int *argc, char *argv[],
56 @@ -1555,5 +1589,10 @@ controller_module_init(struct weston_compositor *compositor,
60 + if (load_id_agent_module(compositor, interface, interface_version) < 0) {