ensure open() uses UTF-8
fix potential: use Qurl.fromLocalFile instead of setScheme