From 6b9bd3745c54b1ca3f153c8ae90765e75ca55386 Mon Sep 17 00:00:00 2001 From: Anton Makarov Date: Wed, 10 Sep 2025 14:53:06 +0300 Subject: [PATCH] Adapt for running from escript (fix 4). --- src/esqlite3_nif.erl | 42 ++++++++++++++++++------------------------ 1 file changed, 18 insertions(+), 24 deletions(-) diff --git a/src/esqlite3_nif.erl b/src/esqlite3_nif.erl index a771bb3..031656b 100644 --- a/src/esqlite3_nif.erl +++ b/src/esqlite3_nif.erl @@ -88,30 +88,24 @@ init() -> %% @private get_priv_dir() -> - PrivDir = code:priv_dir(esqlite), - io:format("PrivDir = code:priv_dir(esqlite) = ~p~n", [PrivDir]), - case PrivDir of - %case code:priv_dir(esqlite) of - {error, bad_name} -> - %% application isn't in path, fall back - case is_escript() of - {true,Escript} -> - io:format("Escript = ~p~n", [Escript]), - Which = code:which(esqlite), - io:format("Which = ~p~n", [Which]), - {Pref,Suf} = lists:split(erlang:length(Escript), Which), - io:format("Pref = ~p~n", [Pref]), - io:format("Suf = ~p~n", [Suf]), - RootDir = filename:dirname(filename:dirname(Pref)), - AppsDir = filename:join(RootDir, "lib"), - io:format("AppsDir = ~p~n", [AppsDir]), - SqDir = filename:dirname(filename:dirname(Suf)), - filename:join([AppsDir, [$.|SqDir], "priv"]); % prepend "." to suffix that starts with "/" - false -> - "priv" - end; - Dir -> - Dir + case is_escript() of + {true,Escript} -> + io:format("Escript = ~p~n", [Escript]), + Which = code:which(esqlite), + io:format("Which = ~p~n", [Which]), + {Pref,Suf} = lists:split(erlang:length(Escript), Which), + io:format("Pref = ~p~n", [Pref]), + io:format("Suf = ~p~n", [Suf]), + RootDir = filename:dirname(filename:dirname(Pref)), + AppsDir = filename:join(RootDir, "lib"), + io:format("AppsDir = ~p~n", [AppsDir]), + SqDir = filename:dirname(filename:dirname(Suf)), + filename:join([AppsDir, [$.|SqDir], "priv"]); % prepend "." to suffix that starts with "/" + false -> + case code:priv_dir(esqlite) of + {error, bad_name} -> "priv"; + Dir -> Dir + end end. %% @private