Don't close the file explicitly.
diff --git a/Lib/sunau.py b/Lib/sunau.py
index 1acebd0..2cb35a7 100644
--- a/Lib/sunau.py
+++ b/Lib/sunau.py
@@ -274,7 +274,6 @@
 		self._soundpos = pos
 
 	def close(self):
-		self._file.close()
 		self._file = None
 
 class Au_write:
@@ -397,7 +396,7 @@
 		if self._nframeswritten != self._nframes or \
 			  self._datalength != self._datawritten:
 			self._patchheader()
-		self._file.close()
+		self._file.flush()
 		self._file = None
 
 	#