Fix stop() killing the list job even if another dirlister needs it.
Regression introduced by me in bef0bd3e. Symptom: "dolphin $HOME" showed up empty. In the case of concurrent listings, I made the use of the cached items job conditional (only created if there's anything to emit) so that we can join the current listjob without killing it (updateDirectory) if it hasn't emitted anything yet. The unittest also uncovered inconsistencies in the emission of the cancelled signal, now cacheditemsjob behaves like the listjob in this respect. FIXED-IN: 4.6.2 BUG: 267709