From: oharboe Date: Sun, 30 Aug 2009 17:27:50 +0000 (+0000) Subject: David Brownell Be sure the built-in search paths always go... X-Git-Tag: v0.3.0-rc0~302 X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=commitdiff_plain;h=4b9bdd664a79d5713b22a178086b071abc049d01 David Brownell Be sure the built-in search paths always go *after* ones provided on the command line ... matching comment in add_default_dirs(). Without this it's impossible to use a private config file which happens to have the same name as an installed one. Say, because you're bugfixing a private copy... git-svn-id: svn://svn.berlios.de/openocd/trunk@2649 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- diff --git a/src/ecosboard.c b/src/ecosboard.c index 78623ae096..419f038ded 100644 --- a/src/ecosboard.c +++ b/src/ecosboard.c @@ -918,7 +918,7 @@ command_context_t *setup_command_handler(void); static const char *zylin_config_dir="/config/settings"; -int add_default_dirs(void) +static int add_default_dirs(void) { add_script_search_dir(zylin_config_dir); add_script_search_dir("/rom/lib/openocd"); diff --git a/src/helper/command.c b/src/helper/command.c index d93020e990..ca83ec6f43 100644 --- a/src/helper/command.c +++ b/src/helper/command.c @@ -744,8 +744,6 @@ command_context_t* command_init() interp->cb_fflush = openocd_jim_fflush; interp->cb_fgets = openocd_jim_fgets; - add_default_dirs(); - #if !BUILD_ECOSBOARD Jim_EventLoopOnLoad(interp); #endif diff --git a/src/helper/configuration.h b/src/helper/configuration.h index 5bdb58f631..16bd8d8449 100644 --- a/src/helper/configuration.h +++ b/src/helper/configuration.h @@ -32,6 +32,5 @@ extern void add_script_search_dir (const char *dir); extern int configuration_output_handler(struct command_context_s *context, const char* line); extern FILE *open_file_from_path (char *file, char *mode); extern char *find_file(const char *name); -int add_default_dirs(void); #endif /* CONFIGURATION_H */ diff --git a/src/helper/options.c b/src/helper/options.c index 05587c8ce4..a0c9a9e928 100644 --- a/src/helper/options.c +++ b/src/helper/options.c @@ -38,7 +38,7 @@ static struct option long_options[] = {"help", no_argument, &help_flag, 1}, {"version", no_argument, &version_flag, 1}, {"debug", optional_argument, 0, 'd'}, - {"file", required_argument, 0, 'f'}, + {"file", required_argument, 0, 'f'}, {"search", required_argument, 0, 's'}, {"log_output", required_argument, 0, 'l'}, {"command", required_argument, 0, 'c'}, @@ -53,7 +53,7 @@ int configuration_output_handler(struct command_context_s *context, const char* return ERROR_OK; } -int add_default_dirs(void) +static void add_default_dirs(void) { #ifdef _WIN32 /* Add the parent of the directory where openocd.exe resides to the @@ -106,7 +106,6 @@ int add_default_dirs(void) add_script_search_dir(PKGDATADIR "/site"); add_script_search_dir(PKGDATADIR "/scripts"); #endif - return ERROR_OK; } int parse_cmdline_args(struct command_context_s *cmd_ctx, int argc, char *argv[]) @@ -196,5 +195,10 @@ int parse_cmdline_args(struct command_context_s *cmd_ctx, int argc, char *argv[] exit(0); } + /* paths specified on the command line take precedence over these + * built-in paths + */ + add_default_dirs(); + return ERROR_OK; }