static uid_t __target_uid;
static bool __target_uid_initialized;
-static uid_t _get_target_uid(void) {
- if (__target_uid_initialized)
- return __target_uid;
+static int _get_target_uid(uid_t* uid) {
+ if (__target_uid_initialized) {
+ *uid = __target_uid;
+ return 0;
+ }
- pkgmgr_installer_info_get_target_uid(&__target_uid);
+ if (pkgmgr_installer_info_get_target_uid(&__target_uid) < 0) {
+ return -1;
+ }
__target_uid_initialized = true;
+ *uid = __target_uid;
- return __target_uid;
+ return 0;
}
int complication_parser_plugin_init(void) {
- LOGD("complication_parser_plugin_init");
+ uid_t uid;
+ LOGD("complication_parser_plugin_init");
__target_uid_initialized = false;
+ if (_get_target_uid(&uid) < 0)
+ return -1;
- if (check_db(_get_target_uid())) {
+ if (check_db(uid)) {
complication_parser_plugin_fini();
LOGE("parser init fail");
return -1;
const char* path;
bool is_global;
- pkgmgr_installer_info_get_target_uid(&target_uid);
+ if (pkgmgr_installer_info_get_target_uid(&target_uid) < 0) {
+ LOGE("fail to get uid");
+ return nullptr;
+ }
if (target_uid == ROOT_USER
|| target_uid == tzplatform_getuid(TZ_SYS_GLOBALAPP_USER))