Skip to content

Commit 527c0c8

Browse files
authored
Don't crash if custom snippets directory isn't available (#1540)
Fixes #1428 .
1 parent d38dc66 commit 527c0c8

File tree

1 file changed

+8
-4
lines changed

1 file changed

+8
-4
lines changed

apps/els_lsp/src/els_snippets_server.erl

+8-4
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,12 @@ snippets_from_escript() ->
129129
-spec custom_snippets() -> [snippet()].
130130
custom_snippets() ->
131131
Dir = custom_snippets_dir(),
132-
ensure_dir(Dir),
133-
snippets_from_dir(Dir).
132+
case ensure_dir(Dir) of
133+
ok ->
134+
snippets_from_dir(Dir);
135+
{error, _} ->
136+
[]
137+
end.
134138

135139
-spec snippets_from_dir(file:filename_all()) -> [snippet()].
136140
snippets_from_dir(Dir) ->
@@ -141,9 +145,9 @@ snippet_from_file(Dir, Filename) ->
141145
{ok, Content} = file:read_file(filename:join(Dir, Filename)),
142146
{Filename, Content}.
143147

144-
-spec ensure_dir(file:filename_all()) -> ok.
148+
-spec ensure_dir(file:filename_all()) -> 'ok' | {'error', _}.
145149
ensure_dir(Dir) ->
146-
ok = filelib:ensure_dir(filename:join(Dir, "dummy")).
150+
filelib:ensure_dir(filename:join(Dir, "dummy")).
147151

148152
-spec build_snippet({binary(), binary()}) -> completion_item().
149153
build_snippet({Name, Snippet}) ->

0 commit comments

Comments
 (0)