diff options
Diffstat (limited to 'overrides')
-rw-r--r-- | overrides/Endless.js | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/overrides/Endless.js b/overrides/Endless.js index 60a42e7..02eed50 100644 --- a/overrides/Endless.js +++ b/overrides/Endless.js @@ -10,12 +10,15 @@ function getCurrentFileDir() { let caller = e.stack.split('\n')[1]; let pathAndLine = caller.split('@')[1]; let path = pathAndLine.split(':')[0]; - while (GLib.file_test(path, GLib.FileTest.IS_SYMLINK)) { - path = GLib.file_read_link(path); + let file = Gio.File.new_for_path(path); + while (GLib.file_test(file.get_path(), GLib.FileTest.IS_SYMLINK)) { + let link_path = GLib.file_read_link(file.get_path()); + // link_path may be relative, we need to resolve it from current dir + file = file.get_parent().resolve_relative_path(link_path); } // Get full path from GIO - return Gio.File.new_for_path(path).get_parent().get_path(); + return file.get_parent().get_path(); } imports.searchPath.unshift(getCurrentFileDir()); |