{
CHECK_CALENDAR_SUPPORTED(CALENDAR_FEATURE);
- cal_query_s *que;
+ cal_query_s *s_query;
+ cal_composite_filter_s *s_filter;
calendar_filter_h new_filter;
int ret = CALENDAR_ERROR_NONE;
RETV_IF(NULL == query, CALENDAR_ERROR_INVALID_PARAMETER);
RETV_IF(NULL == filter, CALENDAR_ERROR_INVALID_PARAMETER);
- que = (cal_query_s *)query;
-
- if (NULL == ((cal_composite_filter_s*)filter)->filters) {
+ s_query = (cal_query_s *)query;
+ s_filter = (cal_composite_filter_s*)filter;
+ if (NULL == s_filter->filters) {
/* LCOV_EXCL_START */
ERR("Empty filter");
return CALENDAR_ERROR_NO_DATA;
/* LCOV_EXCL_STOP */
}
+ if (s_query->view_uri && s_filter->view_uri
+ && CAL_STRING_EQUAL != strcmp(s_query->view_uri, s_filter->view_uri)) {
+ /* LCOV_EXCL_START */
+ ERR("View is not same query[%s] filter[%s]", s_query->view_uri, s_filter->view_uri);
+ return CALENDAR_ERROR_INVALID_PARAMETER;
+ /* LCOV_EXCL_STOP */
+ }
+
ret = cal_filter_clone(filter, &new_filter);
RETV_IF(ret != CALENDAR_ERROR_NONE, ret);
- if (que->filter)
- calendar_filter_destroy((calendar_filter_h)que->filter);
+ if (s_query->filter)
+ calendar_filter_destroy((calendar_filter_h)s_query->filter);
- que->filter = (cal_composite_filter_s*)new_filter;
+ s_query->filter = (cal_composite_filter_s*)new_filter;
return ret;
}