manifest_x* tpk_data = data->tpk_manifest_data.get();
manifest_x* wgt_data = context_->manifest_data.get();
// FIXME:api-version of tpk app will have wgt's if modified manifest exists.
- for (GList* tpk_list = tpk_data->application;
- tpk_list != nullptr; tpk_list = g_list_next(tpk_list)) {
+ GList* tpk_list = tpk_data->application;
+ while (tpk_list != nullptr) {
+ GList *next_list = g_list_next(tpk_list);
application_x* tpk_app = static_cast<application_x*>(tpk_list->data);
bool is_found = false;
for (GList* wgt_list = wgt_data->application;
break;
}
}
- if (is_found)
+ if (is_found) {
+ tpk_list = next_list;
continue;
+ }
wgt_data->application = g_list_append(
wgt_data->application, tpk_list->data);
tpk_data->application = g_list_delete_link(
tpk_data->application, tpk_list);
+
+ tpk_list = next_list;
}
return Status::OK;