Fixed a file leak introduced with my last checkin. Also be sure to include <stdio.h> just in case.

llvm-svn: 182537
This commit is contained in:
Greg Clayton 2013-05-22 23:29:16 +00:00
parent 3821723c32
commit fdbdc9c0ff
1 changed files with 8 additions and 5 deletions

View File

@ -15,6 +15,8 @@
#else
#include <stdio.h>
#if defined (__APPLE__)
#include <Python/Python.h>
#else
@ -43,19 +45,20 @@ PythonObject::Dump (Stream &strm) const
{
if (m_py_obj)
{
FILE *file = tmpfile();
FILE *file = ::tmpfile();
if (file)
{
PyObject_Print (m_py_obj, file, 0);
::PyObject_Print (m_py_obj, file, 0);
const long length = ftell (file);
if (length)
{
rewind(file);
::rewind(file);
std::vector<char> file_contents (length,'\0');
const size_t length_read = fread(file_contents.data(), 1, file_contents.size(), file);
const size_t length_read = ::fread (file_contents.data(), 1, file_contents.size(), file);
if (length_read > 0)
strm.Write(file_contents.data(), length_read);
strm.Write (file_contents.data(), length_read);
}
::fclose (file);
}
}
else