Synchronize TCLI-7 with CLJS version

The patch is changed a bit to handle the empty-option edge case
directly.