]> granicus.if.org Git - ejabberd/commitdiff
Use os:getenv to get HOME; if variable is undefined use default values.
authorBadlop <badlop@process-one.net>
Thu, 3 Dec 2009 15:59:01 +0000 (15:59 +0000)
committerBadlop <badlop@process-one.net>
Thu, 3 Dec 2009 15:59:01 +0000 (15:59 +0000)
SVN Revision: 2773

src/web/ejabberd_web_admin.erl

index d6461b2c009688d5508675fb9e602965d17ad817..d8e5ac848af48e64cc6616f06021a38c18ab480c 100644 (file)
@@ -1947,7 +1947,13 @@ get_node(global, Node, ["db"], Query, Lang) ->
     end;
 
 get_node(global, Node, ["backup"], Query, Lang) ->
-    {ok, HomeDir, _} = regexp:sub(filename:nativename(os:cmd("echo $HOME")), "\n", ""),
+    HomeDirRaw = case {os:getenv("HOME"), os:type()} of
+       {EnvHome, _} when is_list(EnvHome) -> EnvHome;
+       {false, win32} -> "C:/";
+       {false, {win32, _Osname}} -> "C:/";
+       {false, _} -> "/tmp/"
+    end,
+    HomeDir = filename:nativename(HomeDirRaw),
     ResS = case node_backup_parse_query(Node, Query) of
               nothing -> [];
               ok -> [?XREST("Submitted")];