diff --git a/lib/rb/lib/thrift/union.rb b/lib/rb/lib/thrift/union.rb index 490c55c406..88c4285550 100644 --- a/lib/rb/lib/thrift/union.rb +++ b/lib/rb/lib/thrift/union.rb @@ -73,6 +73,8 @@ def write(oprot) fid = self.name_to_id(@setfield.to_s) field_info = struct_fields[fid] + raise "set_field is not valid for this union!" unless field_info + type = field_info[:type] if is_container? type oprot.write_field_begin(@setfield, type, fid)