Solve "too many open files" by closing those which are not compatible with vorbisgain. Thanks to Marcel Rehberg for the patch. --- a/vorbis.c +++ b/vorbis.c @@ -357,7 +357,8 @@ { vorbis_error(result, _("Couldn't process '%s': "), filename); } - + // make sure file is closed, since ov_open failed we are still responsible + fclose(file); return -1; }