diff --git a/src/sbbs3/netmail.cpp b/src/sbbs3/netmail.cpp
index faa122c102fbf31617130cf8a1864f85f5b83741..6e616c8b8902521f47c0278976d0f187db88e855 100644
--- a/src/sbbs3/netmail.cpp
+++ b/src/sbbs3/netmail.cpp
@@ -299,6 +299,7 @@ bool sbbs_t::netmail(const char *into, const char *title, int mode, smb_t* resmb
 	}
 	if(read(file,buf,length) != length) {
 		close(file);
+		free(buf);
 		errormsg(WHERE, ERR_READ, str, length);
 		return false;
 	}