Fix for bug 6422 and minor a clean-up of collection_list* routines