StatJob: cancel job if url is invalid
This fixes an assert in KProtocolInfoFactory::findProtocol, which was checking if protocl is empty.
Also it makes sense to not spend resources stat'ing an invalid url, (it's probably more efficient if the code that's creating a StatJob, first checks that the url is valid).
Add more log message explaining why a stat job is cancelled; per dfaure's advice use a separate method with early returns to do that.
Edited by Ahmad Samir