Fix crash in runDialog
The run dialog crashes when PATH contains non-existing directories (some distros seem to do that ...). Fix by filtering those out before setting up file monitors. https://bugzilla.gnome.org/show_bug.cgi?id=606418
This commit is contained in:
parent
11276a3505
commit
2a0e0ae66f
@ -42,7 +42,14 @@ CommandCompleter.prototype = {
|
|||||||
for (let i = 0; i < this._paths.length; i++) {
|
for (let i = 0; i < this._paths.length; i++) {
|
||||||
this._childs[i] = [];
|
this._childs[i] = [];
|
||||||
let file = Gio.file_new_for_path(this._paths[i]);
|
let file = Gio.file_new_for_path(this._paths[i]);
|
||||||
let info = file.query_info(Gio.FILE_ATTRIBUTE_STANDARD_TYPE, Gio.FileQueryInfoFlags.NONE, null);
|
let info;
|
||||||
|
try {
|
||||||
|
info = file.query_info(Gio.FILE_ATTRIBUTE_STANDARD_TYPE, Gio.FileQueryInfoFlags.NONE, null);
|
||||||
|
} catch (e) {
|
||||||
|
// FIXME catchall
|
||||||
|
this._paths[i] = null;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
if (info.get_attribute_uint32(Gio.FILE_ATTRIBUTE_STANDARD_TYPE) != Gio.FileType.DIRECTORY)
|
if (info.get_attribute_uint32(Gio.FILE_ATTRIBUTE_STANDARD_TYPE) != Gio.FileType.DIRECTORY)
|
||||||
continue;
|
continue;
|
||||||
@ -53,6 +60,9 @@ CommandCompleter.prototype = {
|
|||||||
this._monitors[i].connect("changed", Lang.bind(this, this._onChanged));
|
this._monitors[i].connect("changed", Lang.bind(this, this._onChanged));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
this._paths = this._paths.filter(function(a) {
|
||||||
|
return a != null;
|
||||||
|
});
|
||||||
this._update(0);
|
this._update(0);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user