X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fwgtpkg-permissions.c;h=091f1ca47b179840048198a2429bdb39739b3123;hb=3a2efc3143d89d036794f2d8274794482cb2c961;hp=362b1c11e7e34ab30ff755f31ec2787992a9cb3e;hpb=27bb304eee3485c73e1be677fbc820591bacc2f9;p=src%2Fapp-framework-main.git diff --git a/src/wgtpkg-permissions.c b/src/wgtpkg-permissions.c index 362b1c1..091f1ca 100644 --- a/src/wgtpkg-permissions.c +++ b/src/wgtpkg-permissions.c @@ -1,5 +1,5 @@ /* - Copyright 2015, 2016 IoT.bzh + Copyright (C) 2015-2020 IoT.bzh author: José Bollo @@ -129,13 +129,25 @@ int permission_exists(const char *name) /* request the permission, returns 1 if granted or 0 otherwise */ int request_permission(const char *name) { +#define HACK_ALLOWING_REQUESTED_PERMISSIONS 1 + struct permission *p = get_permission(name); + +#if defined(HACK_ALLOWING_REQUESTED_PERMISSIONS) && HACK_ALLOWING_REQUESTED_PERMISSIONS + if (!p) + p = add_permission(name); +#endif if (p) { +#if defined(HACK_ALLOWING_REQUESTED_PERMISSIONS) && HACK_ALLOWING_REQUESTED_PERMISSIONS + p->granted = 1; +#endif p->requested = 1; if (p->granted) return 1; } return 0; + +#undef HACK_ALLOWING_REQUESTED_PERMISSIONS } /* iteration over granted and requested permissions */