When I do mpd --create-db on mods downloaded from scene.org, it crashes inside libmikmod. The problem is that of.samples == NULL after l->Load() has finished, in playercode/mloader.c: /* init module loader and load the header / patterns */ if (!l->Init || l->Init()) { _mm_rewind(modreader); ok = l->Load(curious); /* propagate inflags=flags for in-module samples */ for (t = 0; t < of.numsmp; t++) if (of.samples[t].inflags == 0) of.samples[t].inflags = of.samples[t].flags; } else ok = 0; I believe this is fixed in the latest mikmod CVS on sourceforge.net, but it has not been incorporated into portage: /* init module loader and load the header / patterns */ if (!l->Init || l->Init()) { _mm_rewind(modreader); ok = l->Load(curious); if (ok) { /* propagate inflags=flags for in-module samples */ for (t = 0; t < of.numsmp; t++) if (of.samples[t].inflags == 0) of.samples[t].inflags = of.samples[t].flags; } } else ok = 0; Reproducible: Always Steps to Reproduce: Load a truncated .xm file with libmikmod. Actual Results: Segfault trying to access of.samples in playercode/mloader.c Expected Results: The .xm is loaded The bug is fixed in upstream CVS.
Note, however, that the CVS libmikmod breaks API, so I propose that this be included as a patch.
*** This bug has been marked as a duplicate of bug 255363 ***