diff options
Diffstat (limited to 'captype.c')
-rw-r--r-- | captype.c | 40 |
1 files changed, 22 insertions, 18 deletions
@@ -86,6 +86,7 @@ main(int argc, char *argv[]) { GString *comp_info_str; GString *runtime_info_str; + char *init_progfile_dir_error; wtap *wth; int err; gchar *err_info; @@ -98,10 +99,6 @@ main(int argc, char *argv[]) {0, 0, 0, 0 } }; -#ifdef HAVE_PLUGINS - char *init_progfile_dir_error; -#endif - /* Set the C-language locale to the native environment. */ setlocale(LC_ALL, ""); @@ -131,26 +128,33 @@ main(int argc, char *argv[]) */ init_process_policies(); + /* + * Attempt to get the pathname of the directory containing the + * executable file. + */ + init_progfile_dir_error = init_progfile_dir(argv[0], main); + if (init_progfile_dir_error != NULL) { + fprintf(stderr, + "captype: Can't get pathname of directory containing the captype program: %s.\n", + init_progfile_dir_error); + g_free(init_progfile_dir_error); + } + wtap_init(); #ifdef HAVE_PLUGINS - if ((init_progfile_dir_error = init_progfile_dir(argv[0], main))) { - g_warning("captype: init_progfile_dir(): %s", init_progfile_dir_error); - g_free(init_progfile_dir_error); - } else { - init_report_err(failure_message,NULL,NULL,NULL); + init_report_err(failure_message,NULL,NULL,NULL); - /* Scan for plugins. This does *not* call their registration routines; - that's done later. + /* Scan for plugins. This does *not* call their registration routines; + that's done later. - Don't report failures to load plugins because most (non-wiretap) - plugins *should* fail to load (because we're not linked against - libwireshark and dissector plugins need libwireshark). */ - scan_plugins(DONT_REPORT_LOAD_FAILURE); + Don't report failures to load plugins because most (non-wiretap) + plugins *should* fail to load (because we're not linked against + libwireshark and dissector plugins need libwireshark). */ + scan_plugins(DONT_REPORT_LOAD_FAILURE); - /* Register all libwiretap plugin modules. */ - register_all_wiretap_modules(); - } + /* Register all libwiretap plugin modules. */ + register_all_wiretap_modules(); #endif /* Process the options */ |