"Fossies" - the Fresh Open Source Software Archive

Member "pulseaudio-13.0/src/modules/module-hal-detect-compat.c" (20 Nov 2018, 2110 Bytes) of package /linux/misc/pulseaudio-13.0.tar.xz:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file. For more information about "module-hal-detect-compat.c" see the Fossies "Dox" file reference documentation.

    1 /***
    2   This file is part of PulseAudio.
    3 
    4   Copyright 2009 Lennart Poettering
    5 
    6   PulseAudio is free software; you can redistribute it and/or modify
    7   it under the terms of the GNU Lesser General Public License as published
    8   by the Free Software Foundation; either version 2.1 of the License,
    9   or (at your option) any later version.
   10 
   11   PulseAudio is distributed in the hope that it will be useful, but
   12   WITHOUT ANY WARRANTY; without even the implied warranty of
   13   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
   14   General Public License for more details.
   15 
   16   You should have received a copy of the GNU Lesser General Public License
   17   along with PulseAudio; if not, see <http://www.gnu.org/licenses/>.
   18 ***/
   19 
   20 #ifdef HAVE_CONFIG_H
   21 #include <config.h>
   22 #endif
   23 
   24 #include <pulse/xmalloc.h>
   25 
   26 #include <pulsecore/module.h>
   27 #include <pulsecore/modargs.h>
   28 #include <pulsecore/log.h>
   29 #include <pulsecore/core-util.h>
   30 
   31 PA_MODULE_AUTHOR("Lennart Poettering");
   32 PA_MODULE_DESCRIPTION("Compatibility module");
   33 PA_MODULE_VERSION(PACKAGE_VERSION);
   34 PA_MODULE_LOAD_ONCE(true);
   35 PA_MODULE_DEPRECATED("Please use module-udev-detect instead of module-hal-detect!");
   36 
   37 static const char* const valid_modargs[] = {
   38     "api",
   39     "tsched",
   40     "subdevices",
   41     NULL,
   42 };
   43 
   44 int pa__init(pa_module*m) {
   45     pa_modargs *ma = NULL;
   46     bool tsched = true;
   47     pa_module *n;
   48     char *t;
   49 
   50     pa_assert(m);
   51 
   52     if (!(ma = pa_modargs_new(m->argument, valid_modargs))) {
   53         pa_log("Failed to parse module arguments");
   54         goto fail;
   55     }
   56 
   57     if (pa_modargs_get_value_boolean(ma, "tsched", &tsched) < 0) {
   58         pa_log("tsched= expects boolean arguments");
   59         goto fail;
   60     }
   61 
   62     pa_log_warn("We will now load module-udev-detect. Please make sure to remove module-hal-detect from your configuration.");
   63 
   64     t = pa_sprintf_malloc("tsched=%s", pa_yes_no(tsched));
   65     pa_module_load(&n, m->core, "module-udev-detect", t);
   66     pa_xfree(t);
   67 
   68     if (n)
   69         pa_module_unload_request(m, true);
   70 
   71     pa_modargs_free(ma);
   72 
   73     return n ? 0 : -1;
   74 
   75 fail:
   76     if (ma)
   77         pa_modargs_free(ma);
   78 
   79     return -1;
   80 }