]> git.tuebingen.mpg.de Git - adu.git/blobdiff - select.c
Make user_summary the default select mode.
[adu.git] / select.c
index ded4a095ca751574bbfa9153d3ec61ad7aa32bb2..6318d7c47b67857302f8757ba7ed5ca31a175b33 100644 (file)
--- a/select.c
+++ b/select.c
@@ -686,13 +686,12 @@ int run_select_query(struct uid_range *admissible_uids, struct format_info *fi)
        if (ret < 0)
                goto out;
        check_signals();
-       ret = read_uid_file(admissible_uids);
+       ret = open_admissible_user_tables(admissible_uids);
        if (ret < 0)
                goto out;
        check_signals();
        ret = print_statistics(fi);
 out:
-       close_all_tables();
        if (output_file && output_file != stdout) {
                fclose(output_file);
                output_file = NULL;
@@ -799,12 +798,16 @@ int com_select(void)
                .print_errors = 1
        };
 
-       select_cmdline_parser_init(&select_conf);
        ret = parse_select_options(conf.select_options_arg, &params,
                &admissible_uids, &fi);
-       if (ret <= 0) /* do not run query if help was given */
-               return ret;
-       ret = run_select_query(admissible_uids, fi);
-       free_format_info(fi);
+       if (ret > 0) {
+               ret = read_uid_file();
+               if (ret < 0)
+                       goto out;
+               ret = run_select_query(admissible_uids, fi);
+               free_format_info(fi);
+       }
+out:
+       select_cmdline_parser_free(&select_conf);
        return ret;
 }