app_data_s *ad = (app_data_s*)data;
int ret = 0;
- if (ad->privacy_idx == 0) {
- LOGD("no responses");
- ret = ppm_popup_send_response(ad->popup_id, NULL, NULL, 0);
- } else {
- char *privacies[ad->privacy_idx];
- ppm_popup_response_e responses[ad->privacy_idx];
-
- int i = 0;
- for (i = 0; i < ad->privacy_idx; ++i) {
- privacy_data_s *pd = (privacy_data_s*)g_list_nth_data(ad->privacy_list, i);
- if (pd->user_responsed) {
- privacies[i] = strdup(pd->privacy);
- responses[i] = pd->response;
- } else {
- break;
- }
- }
- ret = ppm_popup_send_response(ad->popup_id, (const char**)privacies, responses, i);
+ char *privacies[ad->privacy_num];
+ ppm_popup_response_e responses[ad->privacy_num];
+
+ int i = 0;
+ for (i = 0; i < ad->privacy_num; ++i) {
+ privacy_data_s *pd = (privacy_data_s*)g_list_nth_data(ad->privacy_list, i);
+ privacies[i] = strdup(pd->privacy);
+ responses[i] = pd->response;
+ }
+ ret = ppm_popup_send_response(ad->popup_id, (const char**)privacies, responses, i);
+
+ for (i = 0; i < ad->privacy_num; ++i) {
+ free(privacies[i]);
}
if (ret != PRIVACY_PRIVILEGE_MANAGER_ERROR_NONE)