write: Get rid of gengetopt's string parser.
[paraslash.git] / osx_write.c
index 001c8176433661480cb6408f44b1adaefba4c8f4..69a781cc1b385b3e92009b6291eed4835ee895b9 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2006-2011 Andre Noll <maan@systemlinux.org>
+ * Copyright (C) 2006-2012 Andre Noll <maan@systemlinux.org>
  *
  * Licensed under the GPL v2. For licencing details see COPYING.
  */
@@ -217,12 +217,12 @@ e0:
        return ret;
 }
 
-__malloc static void *osx_write_parse_config_or_die(const char *options)
+__malloc static void *osx_write_parse_config_or_die(int argc, char **argv)
 {
        struct osx_write_args_info *conf = para_calloc(sizeof(*conf));
 
        /* exits on errors */
-       osx_cmdline_parser_string(options, conf, "osx_write");
+       osx_cmdline_parser(argc, argv, conf);
        return conf;
 }
 
@@ -309,10 +309,9 @@ static void osx_write_post_select(__a_unused struct sched *s, struct task *t)
        AudioOutputUnitStop(powd->audio_unit);
        AudioUnitUninitialize(powd->audio_unit);
        CloseComponent(powd->audio_unit);
-       btr_remove_node(powd->callback_btrn);
-       btr_free_node(powd->callback_btrn);
+       btr_remove_node(&powd->callback_btrn);
 remove_btrn:
-       btr_remove_node(btrn);
+       btr_remove_node(&wn->btrn);
        PARA_NOTICE_LOG("%s\n", para_strerror(-ret));
 out:
        t->error = ret;
@@ -333,7 +332,6 @@ void osx_write_init(struct writer *w)
        w->post_select = osx_write_post_select;
        w->parse_config_or_die = osx_write_parse_config_or_die;
        w->free_config = osx_free_config;
-       w->shutdown = NULL; /* nothing to do */
        w->help = (struct ggo_help) {
                .short_help = osx_write_args_info_help,
                .detailed_help = osx_write_args_info_detailed_help