deltacloud-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mfoj...@redhat.com
Subject [PATCH core 1/2] CIMI: Prevent re-using Struct constants in models
Date Thu, 06 Sep 2012 12:39:40 GMT
From: Michal Fojtik <mfojtik@redhat.com>


Signed-off-by: Michal fojtik <mfojtik@redhat.com>
---
 server/lib/cimi/models/schema.rb |    8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/server/lib/cimi/models/schema.rb b/server/lib/cimi/models/schema.rb
index 088e111..4aa512a 100644
--- a/server/lib/cimi/models/schema.rb
+++ b/server/lib/cimi/models/schema.rb
@@ -139,12 +139,8 @@ class CIMI::Model::Schema
     private
     def struct
       cname = "CIMI_#{json_name.upcase_first}"
-      if ::Struct.const_defined?(cname)
-        ::Struct.const_get(cname)
-      else
-        ::Struct.new("CIMI_#{json_name.upcase_first}",
-                     *@schema.attribute_names)
-      end
+      ::Struct.send(:remove_const, cname) if ::Struct.const_defined?(cname)
+      @struct_class ||= ::Struct.new(cname, *@schema.attribute_names)
     end
   end
 
-- 
1.7.10.2


Mime
View raw message