I noticed what appears to be a libc compatibility issue after a few Unity games did not want to run after a Debian update. Investigating the Player log reveals that a segmentation fault occurred within libasound. This is the relevant part of the error backtrace (taken from GameCorp, but I had the same issue with VektorWars):
As you can see, the issue is occurring when snd_device_name_free_hint() calls cfree() in a manner that causes a segmentation fault. As cfree() would be one of the points where the SteamRT library collection is calling a non-SteamRT function, this appears to be causing the problem.
This is particularly relevant, because it signals that a SteamRT breakage is coming down the line for Debian Stretch, and possibly Jessie with backports, and eventually Ubuntu (the SteamRT reference).
For now, I have replaced the SteamRT libasound with my systems libasound. They are the same major version and share an identically ABI, and doing so fixed all problems.
I noticed what appears to be a libc compatibility issue after a few Unity games did not want to run after a Debian update. Investigating the Player log reveals that a segmentation fault occurred within libasound. This is the relevant part of the error backtrace (taken from GameCorp, but I had the same issue with VektorWars):
As you can see, the issue is occurring when
snd_device_name_free_hint()callscfree()in a manner that causes a segmentation fault. Ascfree()would be one of the points where the SteamRT library collection is calling a non-SteamRT function, this appears to be causing the problem.This is particularly relevant, because it signals that a SteamRT breakage is coming down the line for Debian Stretch, and possibly Jessie with backports, and eventually Ubuntu (the SteamRT reference).
For now, I have replaced the SteamRT libasound with my systems libasound. They are the same major version and share an identically ABI, and doing so fixed all problems.