X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fwgtpkg-install.c;h=e4c3bbcec1d7e59bd2c17917d9028a225797b163;hb=81f8b62bb2813d1cce388f10f39435d14042147d;hp=22b8050fa50a278e81e6517f0d00865bd379e56d;hpb=a069be3d476bbdaa56ce4750c8868b4f0682564a;p=src%2Fapp-framework-main.git diff --git a/src/wgtpkg-install.c b/src/wgtpkg-install.c index 22b8050..e4c3bbc 100644 --- a/src/wgtpkg-install.c +++ b/src/wgtpkg-install.c @@ -268,13 +268,17 @@ static int install_icon(const struct wgt_desc *desc) static int install_exec_flag(const struct wgt_desc *desc) { - int i; + int i, rc; if (desc->content_type) { i = sizeof exec_type_strings / sizeof *exec_type_strings; while (i) { - if (!strcasecmp(desc->content_type, exec_type_strings[--i])) - return fchmodat(workdirfd, desc->content_src, 0755, 0); + if (!strcasecmp(desc->content_type, exec_type_strings[--i])) { + rc = fchmodat(workdirfd, desc->content_src, 0755, 0); + if (rc < 0) + ERROR("can't make executable the file %s", desc->content_src); + return rc; + } } } return 0; @@ -353,6 +357,7 @@ struct wgt_info *install_widget(const char *wgtfile, const char *root, int force const struct wgt_desc *desc; char installdir[PATH_MAX]; int port; + struct unitconf uconf; NOTICE("-- INSTALLING widget %s to %s --", wgtfile, root); @@ -397,14 +402,17 @@ struct wgt_info *install_widget(const char *wgtfile, const char *root, int force if (port < 0) goto error4; - if (unit_install(ifo, installdir, FWK_ICON_DIR, port)) + uconf.installdir = installdir; + uconf.icondir = FWK_ICON_DIR; + uconf.port = port; + if (unit_install(ifo, &uconf)) goto error4; file_reset(); return ifo; error4: - /* todo: cleanup */ + /* TODO: cleanup */ error3: wgt_info_unref(ifo);