diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index 2ce1be4195..2624eb0f8e 100755 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -1141,15 +1141,53 @@ void LLInventoryFilter::fromParams(const Params& params) return; } - setFilterObjectTypes(params.filter_ops.types); - setFilterCategoryTypes(params.filter_ops.category_types); - setFilterWearableTypes(params.filter_ops.wearable_types); - setDateRange(params.filter_ops.date_range.min_date, params.filter_ops.date_range.max_date); - setHoursAgo(params.filter_ops.hours_ago); - setShowFolderState(params.filter_ops.show_folder_state); - setFilterPermissions(params.filter_ops.permissions); - setFilterSubString(params.substring); - setDateRangeLastLogoff(params.since_logoff); + // FIRE-12418: Only apply filter params if they are really provided + //setFilterObjectTypes(params.filter_ops.types); + //setFilterCategoryTypes(params.filter_ops.category_types); + //setFilterWearableTypes(params.filter_ops.wearable_types); + //setDateRange(params.filter_ops.date_range.min_date, params.filter_ops.date_range.max_date); + //setHoursAgo(params.filter_ops.hours_ago); + //setShowFolderState(params.filter_ops.show_folder_state); + //setFilterPermissions(params.filter_ops.permissions); + //setFilterSubString(params.substring); + //setDateRangeLastLogoff(params.since_logoff); + if (params.filter_ops.types.isProvided()) + { + setFilterObjectTypes(params.filter_ops.types); + } + if (params.filter_ops.category_types.isProvided()) + { + setFilterCategoryTypes(params.filter_ops.category_types); + } + if (params.filter_ops.wearable_types.isProvided()) + { + setFilterWearableTypes(params.filter_ops.wearable_types); + } + if (params.filter_ops.date_range.min_date.isProvided() && params.filter_ops.date_range.max_date.isProvided()) + { + setDateRange(params.filter_ops.date_range.min_date, params.filter_ops.date_range.max_date); + } + if (params.filter_ops.hours_ago.isProvided()) + { + setHoursAgo(params.filter_ops.hours_ago); + } + if (params.filter_ops.show_folder_state.isProvided()) + { + setShowFolderState(params.filter_ops.show_folder_state); + } + if (params.filter_ops.permissions.isProvided()) + { + setFilterPermissions(params.filter_ops.permissions); + } + if (params.substring.isProvided()) + { + setFilterSubString(params.substring); + } + if (params.since_logoff.isProvided()) + { + setDateRangeLastLogoff(params.since_logoff); + } + // } U64 LLInventoryFilter::getFilterObjectTypes() const