When the filesystem where MG tries to create a savegame has run full, MG will run into a segmentation fault. It would be nicer to handle this situation gracefully (display a message box).
Ideally the same should happen for other file output operations (logfiles) where it doesn't impact performance (I assume it does not since it should be sufficient to handle the error when it occurs, i.e. there should be no need to check whether the next packet will writable before it is actually written).
Update:
To ease testing, this should also be reproducible when pointing --data-dir or UserData_Root to a location which is readable but not writable, such as a small filesystem created on a partitioned (e.g. using GNU parted + partprobe) USB key using, e.g.:
sudo mkfs.ext4 -L MegaGlest /dev/DEVICENAME
sudo mount -o users /dev/DEVICENAME /mnt/
# now copy files to /mnt/ as needed, then make it read-only ro prepare for testing
mount --remount,ro /mnt/
Or, possibly even easier, use a
loop device, see the example in
losetup(8) (no need for encryption, though).