r2corba 1.5.2 → 1.6.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (183) hide show
  1. checksums.yaml +4 -4
  2. data/README.rdoc +8 -5
  3. data/ext/libr2tao/any.cpp +12 -11
  4. data/ext/libr2tao/exception.cpp +6 -8
  5. data/ext/libr2tao/exception.h +1 -2
  6. data/ext/libr2tao/longdouble.cpp +5 -9
  7. data/ext/libr2tao/object.cpp +37 -53
  8. data/ext/libr2tao/orb.cpp +46 -73
  9. data/ext/libr2tao/r2tao_export.h +1 -1
  10. data/ext/libr2tao/r2tao_ext.h +8 -19
  11. data/ext/libr2tao/required.cpp +4 -28
  12. data/ext/libr2tao/required.h +23 -80
  13. data/ext/libr2tao/values.cpp +97 -98
  14. data/ext/libr2tao/values.h +36 -40
  15. data/ext/librpoa/iortable.cpp +6 -7
  16. data/ext/librpoa/poa.cpp +29 -32
  17. data/ext/librpoa/servant.cpp +39 -113
  18. data/ext/librpoa/servant.h +18 -40
  19. data/lib/corba.rb +1 -1
  20. data/lib/corba/cbase/ORB.rb +26 -23
  21. data/lib/corba/cbase/Request.rb +3 -3
  22. data/lib/corba/cbase/Streams.rb +2 -2
  23. data/lib/corba/cbase/Typecode.rb +6 -6
  24. data/lib/corba/cbase/Values.rb +4 -2
  25. data/lib/corba/cbase/exception.rb +6 -4
  26. data/lib/corba/cbase/poa.rb +1 -1
  27. data/lib/corba/cbase/policies.rb +2 -2
  28. data/lib/corba/cbase/require.rb +8 -1
  29. data/lib/corba/cmds/base.rb +1 -1
  30. data/lib/corba/common/Any.rb +3 -2
  31. data/lib/corba/common/IDL.rb +4 -7
  32. data/lib/corba/common/ORB.rb +22 -22
  33. data/lib/corba/common/Object.rb +14 -14
  34. data/lib/corba/common/Servant.rb +4 -4
  35. data/lib/corba/common/Stub.rb +6 -6
  36. data/lib/corba/common/Typecode.rb +72 -45
  37. data/lib/corba/common/Union.rb +5 -0
  38. data/lib/corba/common/Values.rb +1 -0
  39. data/lib/corba/common/const.rb +2 -2
  40. data/lib/corba/common/exception.rb +2 -1
  41. data/lib/corba/common/require.rb +8 -0
  42. data/lib/corba/common/version.rb +2 -2
  43. data/lib/corba/idl/IDL.rb +1 -1
  44. data/lib/corba/jbase/Any.rb +28 -26
  45. data/lib/corba/jbase/ORB.rb +5 -5
  46. data/lib/corba/jbase/Object.rb +13 -13
  47. data/lib/corba/jbase/Request.rb +8 -8
  48. data/lib/corba/jbase/Servant.rb +10 -10
  49. data/lib/corba/jbase/ServerRequest.rb +7 -7
  50. data/lib/corba/jbase/Streams.rb +67 -3
  51. data/lib/corba/jbase/Typecode.rb +17 -16
  52. data/lib/corba/jbase/Values.rb +2 -0
  53. data/lib/corba/jbase/exception.rb +2 -1
  54. data/lib/corba/jbase/poa.rb +20 -20
  55. data/lib/corba/jbase/policies.rb +32 -32
  56. data/lib/corba/jbase/require.rb +4 -0
  57. data/lib/corba/poa.rb +1 -1
  58. data/lib/corba/policies.rb +1 -1
  59. data/lib/corba/require.rb +2 -2
  60. data/lib/corba/svcs/ins/cos_naming.rb +37 -28
  61. data/lib/corba/svcs/ins/ins.rb +51 -51
  62. data/lib/corba/svcs/ins/naming_service.rb +8 -8
  63. data/lib/ridlbe/ruby/config.rb +78 -72
  64. data/lib/ridlbe/ruby/walker.rb +295 -272
  65. data/mkrf_conf_srcgem.rb +6 -6
  66. data/rakelib/bin.rake +1 -1
  67. data/rakelib/bin.rb +3 -3
  68. data/rakelib/build.rake +16 -16
  69. data/rakelib/config.rake +1 -1
  70. data/rakelib/config.rb +24 -25
  71. data/rakelib/ext.rake +7 -68
  72. data/rakelib/ext.rb +13 -13
  73. data/rakelib/ext_r2tao.rb +11 -54
  74. data/rakelib/gem.rake +40 -24
  75. data/rakelib/gem.rb +6 -6
  76. data/rakelib/package.rake +1 -1
  77. data/test/BiDirectional/client.rb +17 -17
  78. data/test/BiDirectional/run_test.rb +11 -11
  79. data/test/BiDirectional/server.rb +24 -25
  80. data/test/CORBA_Services/Naming/BindingIterator/client.rb +17 -17
  81. data/test/CORBA_Services/Naming/BindingIterator/run_test.rb +13 -13
  82. data/test/CORBA_Services/Naming/BindingIterator/server.rb +19 -19
  83. data/test/CORBA_Services/Naming/Corbaname/client.rb +15 -15
  84. data/test/CORBA_Services/Naming/Corbaname/run_test.rb +13 -13
  85. data/test/CORBA_Services/Naming/Corbaname/server.rb +30 -30
  86. data/test/CORBA_Services/Naming/Simple/client.rb +16 -16
  87. data/test/CORBA_Services/Naming/Simple/run_test.rb +13 -13
  88. data/test/CORBA_Services/Naming/Simple/server.rb +19 -19
  89. data/test/Collocation/run_test.rb +10 -10
  90. data/test/Collocation/test.rb +27 -20
  91. data/test/Connect_Timeout/client.rb +16 -17
  92. data/test/Connect_Timeout/run_test.rb +10 -10
  93. data/test/DII/client.rb +30 -30
  94. data/test/DII/run_test.rb +11 -11
  95. data/test/DII/server.rb +16 -16
  96. data/test/DSI/client.rb +16 -16
  97. data/test/DSI/run_test.rb +11 -11
  98. data/test/DSI/server.rb +17 -17
  99. data/test/Exceptions/client.rb +21 -21
  100. data/test/Exceptions/run_test.rb +11 -11
  101. data/test/Exceptions/server.rb +16 -16
  102. data/test/Hello/client.rb +16 -16
  103. data/test/Hello/run_test.rb +11 -11
  104. data/test/Hello/server.rb +17 -17
  105. data/test/IDL_Test/client.rb +21 -21
  106. data/test/IDL_Test/run_test.rb +11 -11
  107. data/test/IDL_Test/server.rb +19 -19
  108. data/test/IORMap/client.rb +14 -14
  109. data/test/IORMap/run_test.rb +11 -11
  110. data/test/IORMap/server.rb +26 -26
  111. data/test/IORTable/client.rb +14 -14
  112. data/test/IORTable/run_test.rb +11 -11
  113. data/test/IORTable/server.rb +26 -26
  114. data/test/Implicit_Conversion/client.rb +20 -17
  115. data/test/Implicit_Conversion/run_test.rb +11 -11
  116. data/test/Implicit_Conversion/server.rb +16 -16
  117. data/test/Multi_Threading/Multiple_ORB/client.rb +14 -14
  118. data/test/Multi_Threading/Multiple_ORB/run_test.rb +12 -12
  119. data/test/Multi_Threading/Multiple_ORB/server.rb +17 -17
  120. data/test/Multi_Threading/Simple/client.rb +17 -17
  121. data/test/Multi_Threading/Simple/run_test.rb +11 -11
  122. data/test/Multi_Threading/Simple/server.rb +16 -16
  123. data/test/Multi_Threading/Threads/client.rb +16 -16
  124. data/test/Multi_Threading/Threads/run_test.rb +11 -11
  125. data/test/Multi_Threading/Threads/server.rb +22 -22
  126. data/test/Multi_Threading/Threads/watchdog.rb +16 -16
  127. data/test/Multiple_Servant_Interfaces/client.rb +14 -14
  128. data/test/Multiple_Servant_Interfaces/run_test.rb +11 -11
  129. data/test/Multiple_Servant_Interfaces/server.rb +18 -18
  130. data/test/Nil/run_test.rb +10 -10
  131. data/test/Nil/test.rb +22 -19
  132. data/test/OBV/AbstractInterface/client.rb +14 -14
  133. data/test/OBV/AbstractInterface/run_test.rb +11 -11
  134. data/test/OBV/AbstractInterface/server.rb +20 -19
  135. data/test/OBV/Custom/OBV_impl.rb +2 -0
  136. data/test/OBV/Custom/client.rb +14 -14
  137. data/test/OBV/Custom/run_test.rb +11 -11
  138. data/test/OBV/Custom/server.rb +16 -16
  139. data/test/OBV/Simple/OBV_impl.rb +1 -0
  140. data/test/OBV/Simple/client.rb +14 -14
  141. data/test/OBV/Simple/run_test.rb +11 -11
  142. data/test/OBV/Simple/server.rb +16 -16
  143. data/test/OBV/Simple_Event/Event_impl.rb +1 -0
  144. data/test/OBV/Simple_Event/client.rb +14 -14
  145. data/test/OBV/Simple_Event/run_test.rb +11 -11
  146. data/test/OBV/Simple_Event/server.rb +16 -16
  147. data/test/OBV/Supports/client.rb +19 -19
  148. data/test/OBV/Supports/run_test.rb +11 -11
  149. data/test/OBV/Supports/server.rb +15 -15
  150. data/test/OBV/Supports/supports_impl.rb +3 -0
  151. data/test/OBV/Tree/client.rb +14 -14
  152. data/test/OBV/Tree/run_test.rb +11 -11
  153. data/test/OBV/Tree/server.rb +19 -19
  154. data/test/OBV/Truncatable/Truncatable_impl.rb +1 -1
  155. data/test/OBV/Truncatable/client.rb +57 -57
  156. data/test/OBV/Truncatable/run_test.rb +11 -11
  157. data/test/OBV/Truncatable/server.rb +15 -15
  158. data/test/OBV/ValueBox/client.rb +154 -153
  159. data/test/OBV/ValueBox/run_test.rb +11 -11
  160. data/test/OBV/ValueBox/server.rb +42 -42
  161. data/test/Object/client.rb +15 -15
  162. data/test/Object/run_test.rb +11 -11
  163. data/test/Object/server.rb +19 -19
  164. data/test/POA/run_test.rb +10 -10
  165. data/test/POA/test.rb +16 -16
  166. data/test/Param_Test/client.rb +51 -51
  167. data/test/Param_Test/run_test.rb +11 -11
  168. data/test/Param_Test/server.rb +59 -59
  169. data/test/Performance/Simple/client.rb +16 -16
  170. data/test/Performance/Simple/run_test.rb +11 -11
  171. data/test/Performance/Simple/server.rb +16 -16
  172. data/test/Policies/run_test.rb +10 -10
  173. data/test/Policies/test.rb +23 -24
  174. data/test/Timeout/client.rb +21 -21
  175. data/test/Timeout/run_test.rb +11 -11
  176. data/test/Timeout/server.rb +22 -22
  177. data/test/lib/assert.rb +0 -1
  178. data/test/lib/test.rb +27 -22
  179. data/test/test_runner.rb +20 -21
  180. metadata +11 -13
  181. data/ext/extload/extload.c +0 -60
  182. data/ext/librpoa/srvreq_fix.cpp +0 -282
  183. data/ext/librpoa/srvreq_fix.h +0 -148
@@ -20,8 +20,6 @@
20
20
  #include "tao/Valuetype/Value_VarOut_T.h"
21
21
  #include "tao/Objref_VarOut_T.h"
22
22
  #include "tao/VarOut_T.h"
23
- //#include "ace/Auto_Ptr.h"
24
- //#include "ace/Array_Base.h"
25
23
 
26
24
  extern VALUE r2tao_cBoxedValueBase;
27
25
 
@@ -39,7 +37,7 @@ public:
39
37
  R2TAO_ArrayAny_Impl_T (CORBA::TypeCode_ptr,
40
38
  T * const,
41
39
  CORBA::ULong);
42
- virtual ~R2TAO_ArrayAny_Impl_T (void);
40
+ virtual ~R2TAO_ArrayAny_Impl_T ();
43
41
 
44
42
  static void insert (CORBA::Any &,
45
43
  CORBA::TypeCode_ptr,
@@ -47,12 +45,12 @@ public:
47
45
  CORBA::ULong);
48
46
 
49
47
  virtual CORBA::Boolean marshal_value (TAO_OutputCDR &);
50
- virtual const void *value (void) const;
51
- virtual void free_value (void);
48
+ virtual const void *value () const;
49
+ virtual void free_value ();
52
50
 
53
51
  private:
54
52
  void* value_;
55
- CORBA::ULong length_;
53
+ CORBA::ULong const length_;
56
54
  };
57
55
 
58
56
 
@@ -81,33 +79,33 @@ class R2TAO_Value : public ::CORBA::DefaultValueRefCountBase
81
79
  {
82
80
  public:
83
81
  R2TAO_Value (VALUE rbValue, bool for_unmarshal=false);
84
- virtual ~R2TAO_Value ();
82
+ ~R2TAO_Value () override;
85
83
 
86
- virtual CORBA::ValueBase* _copy_value (void);
84
+ virtual CORBA::ValueBase* _copy_value ();
87
85
 
88
86
  static void _tao_any_destructor (void *);
89
87
 
90
- virtual void truncation_hook ();
88
+ void truncation_hook () override;
91
89
 
92
90
  static R2TAO_Value* _downcast (::CORBA::ValueBase *v);
93
91
 
94
- virtual CORBA::TypeCode_ptr _tao_type (void) const;
92
+ CORBA::TypeCode_ptr _tao_type () const override;
95
93
 
96
94
  /// Return the repository id of this valuetype.
97
- virtual const char * _tao_obv_repository_id (void) const;
95
+ const char * _tao_obv_repository_id () const override;
98
96
 
99
97
  /// Give the list of the RepositoryIds in the valuetype "truncatable"
100
98
  /// inheritance hierarchy. List the id of this valuetype as first
101
99
  /// RepositoryID and go up the "truncatable" derivation hierarchy.
102
100
  /// Note the truncatable repo ids only list the truncatable base types
103
101
  /// to which this type is safe to truncate, not all its parents.
104
- virtual void _tao_obv_truncatable_repo_ids (Repository_Id_List &) const;
102
+ void _tao_obv_truncatable_repo_ids (Repository_Id_List &) const override;
105
103
 
106
- virtual ::CORBA::Boolean _tao_marshal_v (TAO_OutputCDR &) const;
107
- virtual ::CORBA::Boolean _tao_unmarshal_v (TAO_InputCDR &);
104
+ ::CORBA::Boolean _tao_marshal_v (TAO_OutputCDR &) const override;
105
+ ::CORBA::Boolean _tao_unmarshal_v (TAO_InputCDR &) override;
108
106
 
109
107
  // always return false -> i.e. always marshal type Id
110
- virtual ::CORBA::Boolean _tao_match_formal_type (ptrdiff_t ) const;
108
+ ::CORBA::Boolean _tao_match_formal_type (ptrdiff_t ) const override;
111
109
 
112
110
  VALUE get_ruby_value () const { return this->rbValue_; }
113
111
 
@@ -126,15 +124,15 @@ class R2TAO_Value : public ::CORBA::DefaultValueRefCountBase
126
124
  private:
127
125
  typedef ACE_Array_Base<CORBA::Any*> ChunkElements;
128
126
  struct Chunk {
129
- Chunk () : next_(0) {}
127
+ Chunk () = default;
130
128
  ~Chunk() {
131
129
  for (ChunkElements::size_type i=0; i<this->elems_.size () ;++i)
132
130
  { delete this->elems_[i]; }
133
131
  delete this->next_;
134
- this->next_ = 0;
132
+ this->next_ = nullptr;
135
133
  }
136
134
  ChunkElements elems_;
137
- Chunk* next_;
135
+ Chunk* next_ {};
138
136
  };
139
137
 
140
138
  void init ();
@@ -178,19 +176,17 @@ class R2TAO_ValueFactory
178
176
 
179
177
  static R2TAO_ValueFactory* _downcast ( ::CORBA::ValueFactoryBase *);
180
178
 
181
- virtual ::CORBA::ValueBase *
182
- create_for_unmarshal (void);
179
+ ::CORBA::ValueBase *create_for_unmarshal () override;
183
180
 
184
- virtual ::CORBA::AbstractBase_ptr
185
- create_for_unmarshal_abstract (void);
181
+ ::CORBA::AbstractBase_ptr create_for_unmarshal_abstract () override;
186
182
 
187
183
  // TAO-specific extensions
188
- virtual const char* tao_repository_id (void);
184
+ virtual const char* tao_repository_id ();
189
185
 
190
186
  VALUE get_ruby_factory () { return this->rbValueFactory_; }
191
187
 
192
188
  protected:
193
- virtual ~R2TAO_ValueFactory (void);
189
+ ~R2TAO_ValueFactory () override;
194
190
 
195
191
  private:
196
192
  VALUE rbValueFactory_;
@@ -232,7 +228,7 @@ class R2TAO_AbstractValue :
232
228
  R2TAO_AbstractValue (VALUE rbValue,
233
229
  CORBA::TypeCode_ptr abs_tc);
234
230
  R2TAO_AbstractValue (VALUE rbValue); // for unmarshaling only
235
- virtual ~R2TAO_AbstractValue ();
231
+ ~R2TAO_AbstractValue () override;
236
232
 
237
233
  static void _tao_any_destructor (void *);
238
234
 
@@ -240,14 +236,14 @@ class R2TAO_AbstractValue :
240
236
 
241
237
  static R2TAO_AbstractValue* _downcast ( ::CORBA::ValueBase *v);
242
238
 
243
- virtual const char* _tao_obv_repository_id (void) const;
244
- virtual CORBA::Boolean _tao_marshal_v (TAO_OutputCDR &strm) const;
245
- virtual CORBA::Boolean _tao_unmarshal_v (TAO_InputCDR &strm);
246
- virtual CORBA::Boolean _tao_match_formal_type (ptrdiff_t) const;
239
+ const char* _tao_obv_repository_id () const override;
240
+ CORBA::Boolean _tao_marshal_v (TAO_OutputCDR &strm) const override;
241
+ CORBA::Boolean _tao_unmarshal_v (TAO_InputCDR &strm) override;
242
+ CORBA::Boolean _tao_match_formal_type (ptrdiff_t) const override;
247
243
 
248
- virtual void _add_ref (void);
249
- virtual void _remove_ref (void);
250
- virtual ::CORBA::ValueBase *_tao_to_value (void);
244
+ void _add_ref () override;
245
+ void _remove_ref () override;
246
+ ::CORBA::ValueBase *_tao_to_value () override;
251
247
 
252
248
  CORBA::TypeCode_ptr abstract_type () const;
253
249
 
@@ -306,7 +302,7 @@ class R2TAO_AbstractObject :
306
302
  public:
307
303
  R2TAO_AbstractObject (CORBA::Object_ptr objref,
308
304
  CORBA::TypeCode_ptr abs_tc);
309
- virtual ~R2TAO_AbstractObject () ;
305
+ ~R2TAO_AbstractObject () override;
310
306
 
311
307
  static void _tao_any_destructor (void *);
312
308
 
@@ -314,12 +310,12 @@ class R2TAO_AbstractObject :
314
310
 
315
311
  static void _tao_release (R2TAO_AbstractObject_ptr obj);
316
312
 
317
- virtual void _add_ref (void);
318
- virtual void _remove_ref (void);
313
+ void _add_ref () override;
314
+ void _remove_ref () override;
319
315
 
320
- virtual ::CORBA::Boolean _is_a (const char *type_id);
321
- virtual const char* _interface_repository_id (void) const;
322
- virtual ::CORBA::Boolean marshal (TAO_OutputCDR &cdr);
316
+ ::CORBA::Boolean _is_a (const char *type_id) override;
317
+ const char* _interface_repository_id () const override;
318
+ ::CORBA::Boolean marshal (TAO_OutputCDR &cdr) override;
323
319
 
324
320
  CORBA::TypeCode_ptr abstract_type () const;
325
321
 
@@ -374,7 +370,7 @@ namespace TAO
374
370
  R2TAO_AbstractValue_ptr p);
375
371
  static void release (
376
372
  R2TAO_AbstractValue_ptr p);
377
- static R2TAO_AbstractValue_ptr nil (void);
373
+ static R2TAO_AbstractValue_ptr nil ();
378
374
  static ::CORBA::Boolean marshal (
379
375
  const R2TAO_AbstractValue_ptr p,
380
376
  TAO_OutputCDR & cdr);
@@ -387,7 +383,7 @@ namespace TAO
387
383
  R2TAO_AbstractObject_ptr p);
388
384
  static void release (
389
385
  R2TAO_AbstractObject_ptr p);
390
- static R2TAO_AbstractObject_ptr nil (void);
386
+ static R2TAO_AbstractObject_ptr nil ();
391
387
  static ::CORBA::Boolean marshal (
392
388
  const R2TAO_AbstractObject_ptr p,
393
389
  TAO_OutputCDR & cdr);
@@ -11,12 +11,12 @@
11
11
  #------------------------------------------------------------------*/
12
12
 
13
13
  #include "poa.h"
14
- #include "ace/Auto_Ptr.h"
15
14
  #include "tao/ORB.h"
16
15
  #include "tao/IORTable/IORTable.h"
17
16
  #include "object.h"
18
17
  #include "exception.h"
19
18
  #include "orb.h"
19
+ #include <memory>
20
20
 
21
21
  #define RUBY_INVOKE_FUNC RUBY_ALLOC_FUNC
22
22
 
@@ -65,7 +65,7 @@ public:
65
65
  r2tao_call_thread_safe (R2taoLocator::thread_safe_unregister, this);
66
66
  }
67
67
 
68
- virtual char * locate (const char * object_key);
68
+ char * locate (const char * object_key) override;
69
69
 
70
70
  private:
71
71
  VALUE rb_locator_;
@@ -78,11 +78,10 @@ private:
78
78
  ThreadSafeArg (R2taoLocator* loc,
79
79
  const char * obj_key)
80
80
  : locator_(loc),
81
- object_key_(obj_key),
82
- exception_ (false) {}
81
+ object_key_(obj_key) {}
83
82
  R2taoLocator* locator_;
84
83
  const char * object_key_;
85
- bool exception_;
84
+ bool exception_ {};
86
85
  };
87
86
 
88
87
  static void* thread_safe_invoke (void * arg);
@@ -135,7 +134,7 @@ char* R2taoLocator::locate (const char * object_key)
135
134
  if (tca_.exception_)
136
135
  {
137
136
  CORBA::SystemException* exc = reinterpret_cast<CORBA::SystemException*> (rc);
138
- ACE_Auto_Basic_Ptr<CORBA::SystemException> e_ptr(exc);
137
+ std::unique_ptr<CORBA::SystemException> e_ptr(exc);
139
138
  exc->_raise ();
140
139
  return 0;
141
140
  }
@@ -171,7 +170,7 @@ char* R2taoLocator::inner_locate (const char * object_key)
171
170
  _exc->completed (
172
171
  static_cast<CORBA::CompletionStatus> (NUM2ULONG (rb_iv_get (rexc, "@completed"))));
173
172
 
174
- ACE_Auto_Basic_Ptr<CORBA::SystemException> e_ptr(_exc);
173
+ std::unique_ptr<CORBA::SystemException> e_ptr(_exc);
175
174
  _exc->_raise ();
176
175
  }
177
176
  else
data/ext/librpoa/poa.cpp CHANGED
@@ -11,7 +11,6 @@
11
11
  #------------------------------------------------------------------*/
12
12
 
13
13
  #include "poa.h"
14
- #include "ace/Auto_Ptr.h"
15
14
  #include "tao/DynamicInterface/Server_Request.h"
16
15
  #include "tao/DynamicInterface/Dynamic_Implementation.h"
17
16
  #include "tao/AnyTypeCode/Any.h"
@@ -25,6 +24,7 @@
25
24
  #include "exception.h"
26
25
  #include "orb.h"
27
26
  #include "servant.h"
27
+ #include <memory>
28
28
 
29
29
  #define RUBY_INVOKE_FUNC RUBY_ALLOC_FUNC
30
30
 
@@ -168,10 +168,8 @@ extern "C" R2TAO_POA_EXPORT void Init_librpoa()
168
168
  class R2TAO_POA_BlockedRegionCallerBase
169
169
  {
170
170
  public:
171
- R2TAO_POA_BlockedRegionCallerBase ()
172
- : exception_ (false),
173
- corba_ex_ (0) {}
174
- virtual ~R2TAO_POA_BlockedRegionCallerBase () R2CORBA_NO_EXCEPT_FALSE;
171
+ R2TAO_POA_BlockedRegionCallerBase () = default;
172
+ virtual ~R2TAO_POA_BlockedRegionCallerBase () noexcept(false);
175
173
 
176
174
  VALUE call ();
177
175
 
@@ -182,17 +180,17 @@ protected:
182
180
 
183
181
  virtual VALUE do_exec () = 0;
184
182
 
185
- bool exception_;
186
- CORBA::Exception* corba_ex_;
183
+ bool exception_ {};
184
+ CORBA::Exception* corba_ex_ {};
187
185
  };
188
186
 
189
- R2TAO_POA_BlockedRegionCallerBase::~R2TAO_POA_BlockedRegionCallerBase() R2CORBA_NO_EXCEPT_FALSE
187
+ R2TAO_POA_BlockedRegionCallerBase::~R2TAO_POA_BlockedRegionCallerBase() noexcept(false)
190
188
  {
191
189
  if (this->exception_)
192
190
  {
193
191
  if (corba_ex_)
194
192
  {
195
- ACE_Auto_Basic_Ptr<CORBA::Exception> e_ptr(corba_ex_);
193
+ std::unique_ptr<CORBA::Exception> e_ptr(corba_ex_);
196
194
  corba_ex_->_raise ();
197
195
  }
198
196
  else
@@ -265,8 +263,7 @@ VALUE r2tao_PS_string_to_ObjectId(VALUE /*self*/, VALUE string)
265
263
  string = rb_check_convert_type(string, T_STRING, "String", "to_s");
266
264
  R2TAO_TRY
267
265
  {
268
- PortableServer::ObjectId_var oid =
269
- PortableServer::string_to_ObjectId (RSTRING_PTR (string));
266
+ PortableServer::ObjectId_var oid = PortableServer::string_to_ObjectId (RSTRING_PTR (string));
270
267
  return r2tao_ObjectId_t2r (oid);
271
268
  }
272
269
  R2TAO_CATCH;
@@ -296,7 +293,7 @@ public:
296
293
  R2TAO_POA_BlockedRegionCaller (PortableServer::POA_ptr _poa)
297
294
  : poa_ (PortableServer::POA::_duplicate (_poa))
298
295
  {}
299
- virtual ~R2TAO_POA_BlockedRegionCaller () {}
296
+ ~R2TAO_POA_BlockedRegionCaller () override = default;
300
297
 
301
298
  protected:
302
299
  //virtual VALUE do_exec () = 0;
@@ -323,7 +320,7 @@ public:
323
320
  etherealize_ (_etherealize),
324
321
  wait_for_completion_ (_wait_for_completion)
325
322
  {}
326
- virtual ~R2TAO_POA_BlockedDestroy () {}
323
+ ~R2TAO_POA_BlockedDestroy () override = default;
327
324
 
328
325
  protected:
329
326
  virtual VALUE do_exec ();
@@ -427,14 +424,14 @@ public:
427
424
  oid_ (oid),
428
425
  with_id_ (true)
429
426
  {}
430
- virtual ~R2TAO_POA_BlockedActivateObject () {}
427
+ ~R2TAO_POA_BlockedActivateObject () override = default;
431
428
 
432
429
  const PortableServer::ObjectId& oid () const { return this->oid_.in (); }
433
430
 
434
431
  protected:
435
- virtual VALUE do_exec ();
432
+ VALUE do_exec () override;
436
433
 
437
- DSI_Servant* servant_;
434
+ DSI_Servant* servant_ {};
438
435
  PortableServer::ObjectId_var oid_;
439
436
  bool with_id_;
440
437
  };
@@ -458,7 +455,7 @@ VALUE r2tao_POA_activate_object(VALUE self, VALUE servant)
458
455
  {
459
456
  PortableServer::POA_var _poa = r2tao_POA_r2t (self);
460
457
 
461
- DSI_Servant* _servant;
458
+ DSI_Servant* _servant {};
462
459
  if (DATA_PTR (servant) == 0)
463
460
  {
464
461
  _servant = new DSI_Servant (servant);
@@ -495,7 +492,7 @@ VALUE r2tao_POA_activate_object_with_id(VALUE self, VALUE oid, VALUE servant)
495
492
  {
496
493
  PortableServer::POA_var _poa = r2tao_POA_r2t (self);
497
494
 
498
- DSI_Servant* _servant;
495
+ DSI_Servant* _servant {};
499
496
  if (DATA_PTR (servant) == 0)
500
497
  {
501
498
  _servant = new DSI_Servant (servant);
@@ -533,10 +530,10 @@ public:
533
530
  : R2TAO_POA_BlockedRegionCaller (_poa),
534
531
  oid_ (oid)
535
532
  {}
536
- virtual ~R2TAO_POA_BlockedDeactivateObject () {}
533
+ ~R2TAO_POA_BlockedDeactivateObject () override = default;
537
534
 
538
535
  protected:
539
- virtual VALUE do_exec ();
536
+ VALUE do_exec () override;
540
537
 
541
538
  PortableServer::ObjectId_var oid_;
542
539
  };
@@ -877,7 +874,7 @@ public:
877
874
  R2TAO_POAMan_BlockedRegionCaller (PortableServer::POAManager_ptr _poaman)
878
875
  : poaman_ (PortableServer::POAManager::_duplicate (_poaman))
879
876
  {}
880
- virtual ~R2TAO_POAMan_BlockedRegionCaller () {}
877
+ ~R2TAO_POAMan_BlockedRegionCaller () override = default;
881
878
 
882
879
  protected:
883
880
  //virtual VALUE do_exec () = 0;
@@ -891,10 +888,10 @@ public:
891
888
  R2TAO_POAMan_BlockedActivate (PortableServer::POAManager_ptr _poaman)
892
889
  : R2TAO_POAMan_BlockedRegionCaller (_poaman)
893
890
  {}
894
- virtual ~R2TAO_POAMan_BlockedActivate () {}
891
+ ~R2TAO_POAMan_BlockedActivate () override = default;
895
892
 
896
893
  protected:
897
- virtual VALUE do_exec ();
894
+ VALUE do_exec () override;
898
895
  };
899
896
 
900
897
  VALUE R2TAO_POAMan_BlockedActivate::do_exec ()
@@ -929,10 +926,10 @@ public:
929
926
  : R2TAO_POAMan_BlockedRegionCaller (_poaman),
930
927
  wait_for_completion_ (_wait_for_completion)
931
928
  {}
932
- virtual ~R2TAO_POAMan_BlockedHoldReq () {}
929
+ ~R2TAO_POAMan_BlockedHoldReq () override = default;
933
930
 
934
931
  protected:
935
- virtual VALUE do_exec ();
932
+ VALUE do_exec () override;
936
933
 
937
934
  bool wait_for_completion_;
938
935
  };
@@ -969,12 +966,12 @@ public:
969
966
  : R2TAO_POAMan_BlockedRegionCaller (_poaman),
970
967
  wait_for_completion_ (_wait_for_completion)
971
968
  {}
972
- virtual ~R2TAO_POAMan_BlockedDiscardReq () {}
969
+ ~R2TAO_POAMan_BlockedDiscardReq () override = default;
973
970
 
974
971
  protected:
975
- virtual VALUE do_exec ();
972
+ VALUE do_exec () override;
976
973
 
977
- bool wait_for_completion_;
974
+ bool const wait_for_completion_;
978
975
  };
979
976
 
980
977
  VALUE R2TAO_POAMan_BlockedDiscardReq::do_exec ()
@@ -1010,13 +1007,13 @@ public:
1010
1007
  etherealize_ (_etherealize),
1011
1008
  wait_for_completion_ (_wait_for_completion)
1012
1009
  {}
1013
- virtual ~R2TAO_POAMan_BlockedDeactivate () {}
1010
+ ~R2TAO_POAMan_BlockedDeactivate () override = default;
1014
1011
 
1015
1012
  protected:
1016
- virtual VALUE do_exec ();
1013
+ VALUE do_exec () override;
1017
1014
 
1018
- bool etherealize_;
1019
- bool wait_for_completion_;
1015
+ bool const etherealize_;
1016
+ bool const wait_for_completion_;
1020
1017
  };
1021
1018
 
1022
1019
  VALUE R2TAO_POAMan_BlockedDeactivate::do_exec ()
@@ -11,7 +11,6 @@
11
11
  #------------------------------------------------------------------*/
12
12
 
13
13
  #include "poa.h"
14
- #include "ace/Auto_Ptr.h"
15
14
  #include "tao/DynamicInterface/Server_Request.h"
16
15
  #include "tao/DynamicInterface/Dynamic_Implementation.h"
17
16
  #include "tao/AnyTypeCode/Any.h"
@@ -25,10 +24,8 @@
25
24
  #include "exception.h"
26
25
  #include "orb.h"
27
26
  #include "servant.h"
28
-
29
- #if RPOA_NEED_DSI_FIX
30
- # include "srvreq_fix.cpp"
31
- #endif
27
+ #include <memory>
28
+ #include <cstring>
32
29
 
33
30
  #define RUBY_INVOKE_FUNC RUBY_ALLOC_FUNC
34
31
 
@@ -74,7 +71,7 @@ void r2tao_init_Servant()
74
71
  VALUE klass;
75
72
 
76
73
  r2tao_cServant = klass = rb_eval_string("::R2CORBA::PortableServer::Servant");
77
- rb_define_alloc_func (r2tao_cServant, RUBY_ALLOC_FUNC (srv_alloc));
74
+ rb_define_alloc_func (r2tao_cServant, srv_alloc);
78
75
  rb_define_method(klass, "_default_POA", RUBY_METHOD_FUNC(r2tao_Servant_default_POA), 0);
79
76
  rb_define_method(klass, "_this", RUBY_METHOD_FUNC(r2tao_Servant_this), 0);
80
77
 
@@ -98,6 +95,7 @@ void r2tao_init_Servant()
98
95
  interface_repository_id_ID = rb_intern ("_interface_repository_id");
99
96
 
100
97
  r2tao_cDynamicImp = klass = rb_eval_string("::R2CORBA::PortableServer::DynamicImplementation");
98
+ rb_define_alloc_func (r2tao_cDynamicImp, srv_alloc);
101
99
 
102
100
  invoke_ID = rb_intern ("invoke");
103
101
  primary_interface_ID = rb_intern ("_primary_interface");
@@ -113,15 +111,15 @@ void r2tao_init_Servant()
113
111
  //===================================================================
114
112
 
115
113
  struct DSI_Data {
116
- R2CORBA_ServerRequest_ptr _request;
114
+ CORBA::ServerRequest_ptr _request;
117
115
  CORBA::NVList_ptr _nvlist;
118
116
  CORBA::TypeCode_var _result_type;
119
117
  VALUE _rData;
120
118
 
121
- DSI_Data(R2CORBA_ServerRequest_ptr _req)
122
- : _request(_req), _nvlist(0), _rData(Qnil) {}
119
+ DSI_Data(CORBA::ServerRequest_ptr _req)
120
+ : _request(_req), _nvlist(nullptr), _rData(Qnil) {}
123
121
  ~DSI_Data() {
124
- if (this->_rData!=Qnil) { DATA_PTR(this->_rData) = 0; }
122
+ if (this->_rData!=Qnil) { DATA_PTR(this->_rData) = nullptr; }
125
123
  }
126
124
  };
127
125
 
@@ -134,7 +132,7 @@ VALUE r2tao_ServerRequest_operation(VALUE self)
134
132
  {
135
133
  if (DATA_PTR (self) != 0)
136
134
  {
137
- R2CORBA_ServerRequest_ptr request = static_cast<DSI_Data*> (DATA_PTR (self))->_request;
135
+ CORBA::ServerRequest_ptr request = static_cast<DSI_Data*> (DATA_PTR (self))->_request;
138
136
  return rb_str_new2 (request->operation ());
139
137
  }
140
138
  return Qnil;
@@ -152,7 +150,7 @@ VALUE r2tao_ServerRequest_describe(VALUE self, VALUE desc)
152
150
  X_CORBA (BAD_INV_ORDER);
153
151
  }
154
152
 
155
- R2CORBA_ServerRequest_ptr request = dsi_data->_request;
153
+ CORBA::ServerRequest_ptr request = dsi_data->_request;
156
154
 
157
155
  if (desc != Qnil && rb_type (desc) == T_HASH)
158
156
  {
@@ -289,11 +287,11 @@ VALUE r2tao_ServerRequest_get(VALUE self, VALUE key)
289
287
  if (rb_obj_is_kind_of (key, rb_cString) == Qtrue)
290
288
  {
291
289
  char* arg_name = RSTRING_PTR (key);
292
- CORBA::ULong arg_num = dsi_data->_nvlist->count ();
293
- for (CORBA::ULong ix=0; ix<arg_num ;++ix)
290
+ CORBA::ULong const arg_num = dsi_data->_nvlist->count ();
291
+ for (CORBA::ULong ix=0; ix < arg_num ;++ix)
294
292
  {
295
293
  CORBA::NamedValue_ptr _nv = dsi_data->_nvlist->item (ix);
296
- if (_nv->name () && ACE_OS::strcmp (arg_name, _nv->name ()) == 0)
294
+ if (_nv->name () && std::strcmp (arg_name, _nv->name ()) == 0)
297
295
  {
298
296
  R2TAO_TRY
299
297
  {
@@ -343,11 +341,11 @@ VALUE r2tao_ServerRequest_set(VALUE self, VALUE key, VALUE val)
343
341
  if (rb_obj_is_kind_of (key, rb_cString) == Qtrue)
344
342
  {
345
343
  char* arg_name = RSTRING_PTR (key);
346
- CORBA::ULong arg_num = dsi_data->_nvlist->count ();
347
- for (CORBA::ULong ix=0; ix<arg_num ;++ix)
344
+ CORBA::ULong const arg_num = dsi_data->_nvlist->count ();
345
+ for (CORBA::ULong ix = 0; ix < arg_num ;++ix)
348
346
  {
349
347
  CORBA::NamedValue_ptr _nv = dsi_data->_nvlist->item (ix);
350
- if (_nv->name () && ACE_OS::strcmp (arg_name, _nv->name ()) == 0)
348
+ if (_nv->name () && std::strcmp (arg_name, _nv->name ()) == 0)
351
349
  {
352
350
  R2TAO_TRY
353
351
  {
@@ -483,87 +481,20 @@ VALUE DSI_Servant::_invoke_implementation(VALUE args)
483
481
 
484
482
  DSI_Servant::METHOD DSI_Servant::method_id (const char* method)
485
483
  {
486
- if (ACE_OS::strcmp (method, "_is_a") == 0)
484
+ if (std::strcmp (method, "_is_a") == 0)
487
485
  return IS_A;
488
- else if (ACE_OS::strcmp (method, "_repository_id") == 0)
486
+ else if (std::strcmp (method, "_repository_id") == 0)
489
487
  return REPOSITORY_ID;
490
- else if (ACE_OS::strcmp (method, "_non_existent") == 0)
488
+ else if (std::strcmp (method, "_non_existent") == 0)
491
489
  return NON_EXISTENT;
492
- else if (ACE_OS::strcmp (method, "_component") == 0)
490
+ else if (std::strcmp (method, "_component") == 0)
493
491
  return GET_COMPONENT;
494
- else if (ACE_OS::strcmp (method, "_interface") == 0)
492
+ else if (std::strcmp (method, "_interface") == 0)
495
493
  return GET_INTERFACE;
496
494
 
497
495
  return NONE;
498
496
  }
499
497
 
500
- #if RPOA_NEED_DSI_FIX
501
- void DSI_Servant::invoke (CORBA::ServerRequest_ptr /*request*/)
502
- {}
503
-
504
- void DSI_Servant::_dispatch (TAO_ServerRequest &request,
505
- void * /*context*/)
506
- {
507
- // No need to do any of this if the client isn't waiting.
508
- if (request.response_expected ())
509
- {
510
- if (request.is_forwarded ())
511
- {
512
- request.init_reply ();
513
- request.tao_send_reply ();
514
-
515
- // No need to invoke in this case.
516
- return;
517
- }
518
- else if (request.sync_with_server ())
519
- {
520
- // The last line before the call to this function
521
- // was an ACE_CHECK_RETURN, so if we're here, we
522
- // know there is no exception so far, and that's all
523
- // a SYNC_WITH_SERVER client request cares about.
524
- request.send_no_exception_reply ();
525
- }
526
- }
527
-
528
- // Create DSI request object.
529
- R2CORBA::ServerRequest *dsi_request = 0;
530
- ACE_NEW (dsi_request,
531
- R2CORBA::ServerRequest (request));
532
-
533
- try
534
- {
535
- // Delegate to user.
536
- this->invoke_fix (dsi_request);
537
-
538
- // Only if the client is waiting.
539
- if (request.response_expected () && !request.sync_with_server ())
540
- {
541
- dsi_request->dsi_marshal ();
542
- }
543
- }
544
- catch (::CORBA::Exception& ex)
545
- {
546
- // Only if the client is waiting.
547
- if (request.response_expected () && !request.sync_with_server ())
548
- {
549
- if (request.collocated ()
550
- && request.operation_details ()->cac () != 0)
551
- {
552
- // If we have a cac it will handle the exception and no
553
- // need to do any further processing
554
- request.operation_details ()->cac ()->handle_corba_exception (
555
- request, &ex);
556
- return;
557
- }
558
- else
559
- request.tao_send_reply_exception (ex);
560
- }
561
- }
562
-
563
- ::CORBA::release (dsi_request);
564
- }
565
- #endif
566
-
567
498
  // invocation helper for threadsafe calling of Ruby code
568
499
  void* DSI_Servant::thread_safe_invoke (void * arg)
569
500
  {
@@ -581,24 +512,20 @@ void* DSI_Servant::thread_safe_invoke (void * arg)
581
512
  return 0;
582
513
  }
583
514
 
584
- # if RPOA_NEED_DSI_FIX
585
- void DSI_Servant::invoke_fix (R2CORBA::ServerRequest_ptr request)
586
- # else
587
515
  void DSI_Servant::invoke (CORBA::ServerRequest_ptr request)
588
- # endif
589
516
  {
590
517
  ThreadSafeArg tca_(this, request);
591
518
 
592
519
  void* rc = r2tao_call_thread_safe (DSI_Servant::thread_safe_invoke, &tca_);
593
- if (rc != 0)
520
+ if (rc != nullptr)
594
521
  {
595
522
  CORBA::SystemException* exc = reinterpret_cast<CORBA::SystemException*> (rc);
596
- ACE_Auto_Basic_Ptr<CORBA::SystemException> e_ptr(exc);
523
+ std::unique_ptr<CORBA::SystemException> e_ptr(exc);
597
524
  exc->_raise ();
598
525
  }
599
526
  }
600
527
 
601
- void DSI_Servant::inner_invoke (R2CORBA_ServerRequest_ptr request)
528
+ void DSI_Servant::inner_invoke (CORBA::ServerRequest_ptr request)
602
529
  {
603
530
  if (TAO_debug_level > 7)
604
531
  ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - Servant::invoke(%C)\n", request->operation ()));
@@ -628,13 +555,13 @@ void DSI_Servant::inner_invoke (R2CORBA_ServerRequest_ptr request)
628
555
  // set ORB arguments (retrieves data for IN/INOUT args)
629
556
  request->arguments (nvlist);
630
557
 
631
- const char *tmp = 0;
558
+ const char *tmp = nullptr;
632
559
  (*_nv->value ()) >>= tmp;
633
560
 
634
561
  f = this->_is_a (tmp);
635
562
 
636
563
  if (TAO_debug_level > 5)
637
- ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) _is_a (%s) -> %d\n", tmp, f));
564
+ ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) _is_a (%C) -> %d\n", tmp, f));
638
565
  }
639
566
  else
640
567
  {
@@ -663,7 +590,7 @@ void DSI_Servant::inner_invoke (R2CORBA_ServerRequest_ptr request)
663
590
  CORBA::String_var repo_id = this->_repository_id ();
664
591
 
665
592
  if (TAO_debug_level > 5)
666
- ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) _repository_id () -> %s\n", repo_id.in ()));
593
+ ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) _repository_id () -> %C\n", repo_id.in ()));
667
594
 
668
595
  CORBA::Any _any;
669
596
  _any <<= repo_id.in ();
@@ -700,13 +627,13 @@ void DSI_Servant::inner_invoke (R2CORBA_ServerRequest_ptr request)
700
627
  }
701
628
  }
702
629
 
703
- void DSI_Servant::invoke_DSI (R2CORBA_ServerRequest_ptr request)
630
+ void DSI_Servant::invoke_DSI (CORBA::ServerRequest_ptr request)
704
631
  {
705
632
  if (TAO_debug_level > 5)
706
633
  ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - Servant::invoke_DSI(%C) entry\n", request->operation ()));
707
634
 
708
635
  // wrap request for Ruby; cleanup automatically
709
- ACE_Auto_Basic_Ptr<DSI_Data> dsi_data(new DSI_Data(request));
636
+ std::unique_ptr<DSI_Data> dsi_data(new DSI_Data(request));
710
637
 
711
638
  VALUE srvreq = Data_Wrap_Struct(r2tao_cServerRequest, 0, 0, dsi_data.get ());
712
639
 
@@ -752,7 +679,7 @@ void DSI_Servant::invoke_DSI (R2CORBA_ServerRequest_ptr request)
752
679
  _exc->completed (
753
680
  static_cast<CORBA::CompletionStatus> (NUM2ULONG (rb_iv_get (rexc, "@completed"))));
754
681
 
755
- ACE_Auto_Basic_Ptr<CORBA::SystemException> e_ptr(_exc);
682
+ std::unique_ptr<CORBA::SystemException> e_ptr(_exc);
756
683
  _exc->_raise ();
757
684
  }
758
685
  else
@@ -825,7 +752,7 @@ void DSI_Servant::invoke_DSI (R2CORBA_ServerRequest_ptr request)
825
752
  }
826
753
  }
827
754
 
828
- void DSI_Servant::invoke_SI (R2CORBA_ServerRequest_ptr request)
755
+ void DSI_Servant::invoke_SI (CORBA::ServerRequest_ptr request)
829
756
  {
830
757
  if (TAO_debug_level > 5)
831
758
  ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - Servant::invoke_SI(%C) entry\n", request->operation ()));
@@ -985,7 +912,7 @@ void DSI_Servant::invoke_SI (R2CORBA_ServerRequest_ptr request)
985
912
  _exc->completed (
986
913
  static_cast<CORBA::CompletionStatus> (NUM2ULONG (rb_iv_get (rexc, "@completed"))));
987
914
 
988
- ACE_Auto_Basic_Ptr<CORBA::SystemException> e_ptr(_exc);
915
+ std::unique_ptr<CORBA::SystemException> e_ptr(_exc);
989
916
  _exc->_raise ();
990
917
  }
991
918
  else
@@ -1097,7 +1024,7 @@ CORBA::Boolean DSI_Servant::_is_a (const char *logical_type_id)
1097
1024
  }
1098
1025
  }
1099
1026
 
1100
- CORBA::Boolean DSI_Servant::_non_existent (void)
1027
+ CORBA::Boolean DSI_Servant::_non_existent ()
1101
1028
  {
1102
1029
  static R2TAO_RBFuncall FN_non_existent ("_non_existent?");
1103
1030
 
@@ -1113,7 +1040,7 @@ CORBA::Boolean DSI_Servant::_non_existent (void)
1113
1040
  }
1114
1041
  }
1115
1042
 
1116
- CORBA::Object_ptr DSI_Servant::_get_component (void)
1043
+ CORBA::Object_ptr DSI_Servant::_get_component ()
1117
1044
  {
1118
1045
  static R2TAO_RBFuncall FN_get_component ("_get_component");
1119
1046
 
@@ -1131,7 +1058,7 @@ CORBA::Object_ptr DSI_Servant::_get_component (void)
1131
1058
  }
1132
1059
  }
1133
1060
 
1134
- const char *DSI_Servant::_interface_repository_id (void) const
1061
+ const char *DSI_Servant::_interface_repository_id () const
1135
1062
  {
1136
1063
  static R2TAO_RBFuncall FN_repository_id ("_repository_id");
1137
1064
 
@@ -1179,7 +1106,7 @@ const char *DSI_Servant::_interface_repository_id (void) const
1179
1106
  }
1180
1107
  }
1181
1108
 
1182
- char * DSI_Servant::_repository_id (void)
1109
+ char * DSI_Servant::_repository_id ()
1183
1110
  {
1184
1111
  return CORBA::string_dup (this->_interface_repository_id ());
1185
1112
  }
@@ -1243,7 +1170,7 @@ VALUE r2tao_Servant_default_POA(VALUE self)
1243
1170
  {
1244
1171
  R2TAO_TRY
1245
1172
  {
1246
- DSI_Servant* _servant;
1173
+ DSI_Servant* _servant {};
1247
1174
  if (DATA_PTR (self) == 0)
1248
1175
  {
1249
1176
  // create new C++ servant object
@@ -1269,7 +1196,7 @@ VALUE r2tao_Servant_this(VALUE self)
1269
1196
  R2TAO_TRY
1270
1197
  {
1271
1198
  bool _new_srv = false;
1272
- DSI_Servant* _servant;
1199
+ DSI_Servant* _servant {};
1273
1200
  if (DATA_PTR (self) == 0)
1274
1201
  {
1275
1202
  // create new C++ servant object
@@ -1321,9 +1248,8 @@ VALUE r2tao_Servant_this(VALUE self)
1321
1248
  static VALUE
1322
1249
  srv_alloc(VALUE klass)
1323
1250
  {
1324
- VALUE obj;
1325
1251
  // we start off without the C++ representation
1326
- obj = Data_Wrap_Struct(klass, 0, srv_free, 0);
1252
+ VALUE obj = Data_Wrap_Struct(klass, nullptr, srv_free, nullptr);
1327
1253
  return obj;
1328
1254
  }
1329
1255