X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;ds=sidebyside;f=mood.c;h=a228b2432f9b56d3bc51535c13d74094314e7da9;hb=329bf73b72eea2c5be1bcbd9a9602c0a8994d0be;hp=e0d9e2750dd65b53f988e9b7ff06b981300cc31f;hpb=46b9e018548fa7baebe62b6c724d215c84dcb20f;p=paraslash.git diff --git a/mood.c b/mood.c index e0d9e275..a228b243 100644 --- a/mood.c +++ b/mood.c @@ -163,6 +163,8 @@ static int load_mood(const struct osl_row *mood_row, struct mood **m, PARA_INFO_LOG("opening mood %s\n", mood_name); ret = mp_init(mood_def.data, mood_def.size, &(*m)->parser_context, errmsg); osl_close_disk_object(&mood_def); + if (ret < 0) + destroy_mood(*m); return ret; } @@ -605,8 +607,7 @@ static void compute_correction_factors(int64_t sse) * * If there is already an open mood, it will be closed first. * - * \return Positive on success, negative on errors. Loading the dummy mood - * always succeeds. + * \return Positive on success, negative on errors. * * \sa struct \ref afs_info::last_played, \ref mp_eval_row(). */