Using decrypt_file() with an output argument that includes spaces results in a usage error from gpg on Linux. Each string separated by spaces is passed as an argument to gpg rather than the string as a whole in quotes.
Attached is a quick and dirty patch that fixes the issue on Linux at least. I'm certain it's incomplete and probably buggy, but including here for reference.
gnupg.txt