- unsigned int locks; // A locked sfx_t must not be freed.
- // Locks are added by S_PrecacheSound and S_ServerSounds.
- // SFX can be freed by S_UnlockSfx or S_ServerSounds.
+ int locks; // One lock is automatically granted while the sfx is
+ // playing (and removed when stopped). Locks can also be
+ // added by S_PrecacheSound and S_ServerSounds.
+ // A SFX with no lock and no SFXFLAG_PERMANENTLOCK is
+ // freed at level change by S_ServerSounds.