Use with context manager so we don't leak open files.

Project: http://git-wip-us.apache.org/repos/asf/libcloud/repo
Commit: http://git-wip-us.apache.org/repos/asf/libcloud/commit/f0b01a8e
Tree: http://git-wip-us.apache.org/repos/asf/libcloud/tree/f0b01a8e
Diff: http://git-wip-us.apache.org/repos/asf/libcloud/diff/f0b01a8e

Branch: refs/heads/trunk
Commit: f0b01a8ec8c7d5d8e65eb3bfedf0dcc281aec9f4
Parents: ef9e26a
Author: Tomaz Muraus <[email protected]>
Authored: Wed Sep 25 21:11:49 2013 +0200
Committer: Tomaz Muraus <[email protected]>
Committed: Wed Sep 25 21:11:49 2013 +0200

----------------------------------------------------------------------
 libcloud/compute/drivers/openstack.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/libcloud/blob/f0b01a8e/libcloud/compute/drivers/openstack.py
----------------------------------------------------------------------
diff --git a/libcloud/compute/drivers/openstack.py 
b/libcloud/compute/drivers/openstack.py
index fa86fc2..914a9a6 100644
--- a/libcloud/compute/drivers/openstack.py
+++ b/libcloud/compute/drivers/openstack.py
@@ -16,6 +16,8 @@
 OpenStack driver
 """
 
+from __future__ import with_statement
+
 try:
     import simplejson as json
 except ImportError:
@@ -1720,7 +1722,9 @@ class OpenStack_1_1_NodeDriver(OpenStackNodeDriver):
 
         @rtype: L{OpenStackKeyPair}
         """
-        public_key = open(os.path.expanduser(keyfile), 'r').read()
+        with open(os.path.expanduser(keyfile), 'r') as fp:
+            public_key = fp.read()
+
         return self.ex_import_keypair_from_string(name, public_key)
 
     def ex_import_keypair_from_string(self, name, key_material):

Reply via email to