diff --git a/indra/cmake/Hunspell.cmake b/indra/cmake/Hunspell.cmake index 06227b3fe2336190d3277444c9b1623ac95d1d34..4c0bdfc46c6f0b15df1e8b489000a1bac6d301cb 100755 --- a/indra/cmake/Hunspell.cmake +++ b/indra/cmake/Hunspell.cmake @@ -17,6 +17,6 @@ else (USESYSTEMLIBS) else() message(FATAL_ERROR "Invalid platform") endif() - set(HUNSPELL_INCLUDE_DIRS ${LIBS_PREBUILT_DIR}/include/hunspell) + set(HUNSPELL_INCLUDE_DIR ${LIBS_PREBUILT_DIR}/include/hunspell) use_prebuilt_binary(dictionaries) endif (USESYSTEMLIBS) diff --git a/indra/newview/CMakeLists.txt b/indra/newview/CMakeLists.txt index f0b5d75084c86b750c203ac3538cead760e5bebe..74f11b3be0760a642ffb64533afa896136eb54f5 100755 --- a/indra/newview/CMakeLists.txt +++ b/indra/newview/CMakeLists.txt @@ -96,7 +96,7 @@ include_directories( ${LLLOGIN_INCLUDE_DIRS} ${UPDATER_INCLUDE_DIRS} ${LIBS_PREBUILT_DIR}/include/collada - ${LIBS_PREBUILD_DIR}/include/hunspell + ${HUNSPELL_INCLUDE_DIR} ${OPENAL_LIB_INCLUDE_DIRS} ${LIBS_PREBUILT_DIR}/include/collada/1.4 ${LLAPPEARANCE_INCLUDE_DIRS} diff --git a/indra/newview/llinventoryfilter.cpp b/indra/newview/llinventoryfilter.cpp index 5948eda0f5ba598aa4730ba0b43aa5c103928295..577fd1e85bda1728d9981eeac2c22c171b4dd507 100755 --- a/indra/newview/llinventoryfilter.cpp +++ b/indra/newview/llinventoryfilter.cpp @@ -654,22 +654,36 @@ void LLInventoryFilter::setHoursAgo(U32 hours) { bool are_date_limits_valid = mFilterOps.mMinDate == time_min() && mFilterOps.mMaxDate == time_max(); - bool is_increasing = hours > mFilterOps.mHoursAgo; - bool is_decreasing = hours < mFilterOps.mHoursAgo; - bool is_increasing_from_zero = is_increasing && !mFilterOps.mHoursAgo && !isSinceLogoff(); - // *NOTE: need to cache last filter time, in case filter goes stale - BOOL less_restrictive; - BOOL more_restrictive; - if (FILTERDATEDIRECTION_NEWER == mFilterOps.mDateSearchDirection) - { - less_restrictive = ((are_date_limits_valid && ((is_increasing && mFilterOps.mHoursAgo))) || !hours); - more_restrictive = ((are_date_limits_valid && (!is_increasing && hours)) || is_increasing_from_zero); - } - else + bool less_restrictive = false; + bool more_restrictive = false; + + switch (mFilterOps.mDateSearchDirection) { - less_restrictive = ((are_date_limits_valid && ((is_decreasing && mFilterOps.mHoursAgo))) || !hours); - more_restrictive = ((are_date_limits_valid && (!is_decreasing && hours)) || is_increasing_from_zero); + case FILTERDATEDIRECTION_NEWER: + less_restrictive = ((are_date_limits_valid && (hours > mFilterOps.mHoursAgo + && mFilterOps.mHoursAgo)) + || !hours); + + more_restrictive = ((are_date_limits_valid && (hours < mFilterOps.mHoursAgo + && hours)) + || (hours > mFilterOps.mHoursAgo + && !mFilterOps.mHoursAgo + && !isSinceLogoff())); + break; + case FILTERDATEDIRECTION_OLDER: + less_restrictive = ((are_date_limits_valid && (hours < mFilterOps.mHoursAgo + && mFilterOps.mHoursAgo)) + || !hours); + + more_restrictive = ((are_date_limits_valid && (hours > mFilterOps.mHoursAgo + && hours)) + || (hours < mFilterOps.mHoursAgo + && !mFilterOps.mHoursAgo + && !isSinceLogoff())); + break; + default: + break; } mFilterOps.mHoursAgo = hours;