From 0b62edfb4555bd78d17f6b7b13fe36ee8c443998 Mon Sep 17 00:00:00 2001 From: Leonel Gonzalez Date: Thu, 8 Jun 2017 15:10:03 -0500 Subject: Close file descriptor to release memory Resolves openbmc/openbmc#1718 Change-Id: Ie3020e38682cd0195202f6b3eedbb0f4907fa666 Signed-off-by: Leonel Gonzalez --- module/obmc/wsgi/apps/rest_dbus.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'module') diff --git a/module/obmc/wsgi/apps/rest_dbus.py b/module/obmc/wsgi/apps/rest_dbus.py index 605956c..5cb1a56 100644 --- a/module/obmc/wsgi/apps/rest_dbus.py +++ b/module/obmc/wsgi/apps/rest_dbus.py @@ -646,8 +646,15 @@ class ImageUploadUtils: else: filename = os.path.join(cls.file_loc, filename) - with open(filename, "w") as fd: - fd.write(request.body.read()) + try: + file_contents = request.body.read() + request.body.close() + with open(filename, "w") as fd: + fd.write(file_contents) + except (IOError, ValueError), e: + abort(400, str(e)) + except: + abort(400, "Unexpected Error") class ImagePostHandler(RouteHandler): -- cgit v1.2.1