I added these with only the most basic debugging; ie didn’t fatally crash PHP. Anyway, I think, to fix the issue with checkboxes you’ll name to change the
name attribute here. Changing it from
name="cn-cat" will fix it. That would result in a search where any entries assigned to any of the selected categories to be returned as a result. Changing the name to `name=”cn-cat-in” would result with with a search where an entry must be assigned to all the selected categories.
Hope that helps, let me know.
fyi, these functions will likely be going away at some point in favor of ones that use the core WP Walker class. The next update to the Widget Pack uses the replacement for the category list function (just added yesterday).