> The modargs are in both cases (a succesfull as well as a failed module > initialization) freed already in pa_done(). the alsa module keeps a pointer to the modargs; hence, they MUST NOT be freed in the success case in the fail case, the pa_modargs_free() is redundant as you noted > --- > src/modules/alsa/module-alsa-card.c | 5 ----- > 1 file changed, 5 deletions(-) > > diff --git a/src/modules/alsa/module-alsa-card.c b/src/modules/alsa/module-alsa-card.c > index 1a823d7..b7bceed 100644 > --- a/src/modules/alsa/module-alsa-card.c > +++ b/src/modules/alsa/module-alsa-card.c > @@ -768,17 +768,12 @@ int pa__init(pa_module *m) { > "is abused (i.e. fixes are not pushed to ALSA), the decibel fix feature may be removed in some future " > "PulseAudio version.", u->card->name); > > - pa_modargs_free(ma); > - > return 0; > > fail: > if (reserve) > pa_reserve_wrapper_unref(reserve); > > - if (ma) > - pa_modargs_free(ma); > - > pa__done(m); > > return -1; > -- Peter Meerwald +43-664-2444418 (mobile)