Browse Source

Add maybe_invalid/1, use the right config_file

Sina Samavati 11 years ago
parent
commit
4d62e60a36
1 changed files with 12 additions and 8 deletions
  1. 12 8
      src/mad.erl

+ 12 - 8
src/mad.erl

@@ -17,19 +17,15 @@ main(Args) ->
                              help(Reason, Data)
                      end,
     maybe_help(Opts, Params),
-    lists:foreach(fun(E) ->
-                          case erlang:function_exported(?MODULE, E, 3) of
-                              true -> ok;
-                              false -> help("invalid_parameter", E)
-                          end
-                  end, Params),
+    maybe_invalid(Params),
 
     Paths = ["ebin"|filelib:wildcard(filename:join(["deps", "*", "ebin"]))],
     code:add_paths(Paths),
     Cwd = mad_utils:cwd(),
     ConfigFile = get_value(config_file, Opts, "rebar.config"),
-    Conf = mad_utils:consult(filename:join(Cwd, ConfigFile)),
-    Conf1 = mad_utils:script(Cwd, Conf),
+    ConfigFileAbs = filename:join(Cwd, ConfigFile),
+    Conf = mad_utils:consult(ConfigFileAbs),
+    Conf1 = mad_utils:script(ConfigFileAbs, Conf),
     Fun = fun(F) -> ?MODULE:F(Cwd, ConfigFile, Conf1) end,
     lists:foreach(Fun, Params).
 
@@ -95,6 +91,14 @@ maybe_help(Opts, Params) ->
     Fun(Opts),
     Fun(Params).
 
+maybe_invalid(Params) ->
+    lists:foreach(fun(E) ->
+                          case erlang:function_exported(?MODULE, E, 3) of
+                              true -> ok;
+                              false -> help("invalid_parameter", E)
+                          end
+                  end, Params).
+
 help("invalid_parameter", Data) ->
     help(io_lib:format("invalid_parameter \"~s\"", [Data]));
 help(Reason, Data) ->