audiod: Implement help --long.
[paraslash.git] / audioc.c
index 1d69b2c..d9478ab 100644 (file)
--- a/audioc.c
+++ b/audioc.c
@@ -1,8 +1,4 @@
-/*
- * Copyright (C) 2005 Andre Noll <maan@tuebingen.mpg.de>
- *
- * Licensed under the GPL v2. For licencing details see COPYING.
- */
+/* Copyright (C) 2005 Andre Noll <maan@tuebingen.mpg.de>, see file COPYING. */
 
 /** \file audioc.c The client program used to connect to para_audiod. */
 
@@ -101,6 +97,12 @@ I9E_DUMMY_COMPLETER(term);
 static void help_completer(struct i9e_completion_info *ci,
                struct i9e_completion_result *result)
 {
+       char *opts[] = {LSG_AUDIOD_CMD_HELP_OPTS, NULL};
+
+       if (ci->word[0] == '-') {
+               i9e_complete_option(opts, ci, result);
+               return;
+       }
        result->matches = i9e_complete_commands(ci->word, audiod_completers);
 }
 
@@ -116,7 +118,7 @@ static void version_completer(struct i9e_completion_info *ci,
 static void stat_completer(struct i9e_completion_info *ci,
                struct i9e_completion_result *cr)
 {
-       char *sia[] = {STATUS_ITEM_ARRAY NULL};
+       char *sia[] = {STATUS_ITEMS NULL};
        char *opts[] = {LSG_AUDIOD_CMD_STAT_OPTS, NULL};
 
        if (ci->word_num <= 2 && ci->word && ci->word[0] == '-')
@@ -291,12 +293,11 @@ __noreturn static void print_completions(void)
 static char *configfile_exists(void)
 {
        char *config_file;
-       struct stat statbuf;
        char *home = para_homedir();
 
        config_file = make_message("%s/.paraslash/audioc.conf", home);
        free(home);
-       if (!stat(config_file, &statbuf))
+       if (file_exists(config_file))
                return config_file;
        free(config_file);
        return NULL;