See the tracker bug. if [[ "${REPLACING_VERSIONS}" ]] && [[ "${REPLACING_VERSIONS}" < "1.6" ]]; then This doesn't account for RV having >1 value. Furthermore, you are using lexicographical string comparison on numbers, so 10 < 1.
Fixed in cups-2.2.2-r2 and later