r2corba 1.5.4 → 1.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.rdoc +3 -2
- data/ext/libr2tao/any.cpp +11 -10
- data/ext/libr2tao/exception.cpp +6 -8
- data/ext/libr2tao/exception.h +1 -1
- data/ext/libr2tao/longdouble.cpp +5 -9
- data/ext/libr2tao/object.cpp +37 -53
- data/ext/libr2tao/orb.cpp +46 -73
- data/ext/libr2tao/r2tao_ext.h +8 -19
- data/ext/libr2tao/required.cpp +3 -8
- data/ext/libr2tao/required.h +18 -34
- data/ext/libr2tao/values.cpp +97 -98
- data/ext/libr2tao/values.h +35 -37
- data/ext/librpoa/iortable.cpp +6 -7
- data/ext/librpoa/poa.cpp +29 -32
- data/ext/librpoa/servant.cpp +39 -113
- data/ext/librpoa/servant.h +18 -40
- data/lib/corba/cbase/ORB.rb +26 -23
- data/lib/corba/cbase/Request.rb +3 -3
- data/lib/corba/cbase/Streams.rb +2 -2
- data/lib/corba/cbase/Typecode.rb +6 -6
- data/lib/corba/cbase/Values.rb +4 -2
- data/lib/corba/cbase/exception.rb +6 -4
- data/lib/corba/cbase/poa.rb +1 -1
- data/lib/corba/cbase/policies.rb +2 -2
- data/lib/corba/cbase/require.rb +8 -1
- data/lib/corba/cmds/base.rb +1 -1
- data/lib/corba/common/Any.rb +3 -2
- data/lib/corba/common/IDL.rb +1 -1
- data/lib/corba/common/ORB.rb +22 -22
- data/lib/corba/common/Object.rb +14 -14
- data/lib/corba/common/Servant.rb +4 -4
- data/lib/corba/common/Stub.rb +6 -6
- data/lib/corba/common/Typecode.rb +69 -42
- data/lib/corba/common/Union.rb +5 -0
- data/lib/corba/common/Values.rb +1 -0
- data/lib/corba/common/const.rb +2 -2
- data/lib/corba/common/exception.rb +2 -1
- data/lib/corba/common/version.rb +2 -2
- data/lib/corba/idl/IDL.rb +1 -1
- data/lib/corba/jbase/Any.rb +28 -26
- data/lib/corba/jbase/ORB.rb +5 -5
- data/lib/corba/jbase/Object.rb +13 -13
- data/lib/corba/jbase/Request.rb +8 -8
- data/lib/corba/jbase/Servant.rb +10 -10
- data/lib/corba/jbase/ServerRequest.rb +7 -7
- data/lib/corba/jbase/Streams.rb +67 -3
- data/lib/corba/jbase/Typecode.rb +17 -16
- data/lib/corba/jbase/Values.rb +2 -0
- data/lib/corba/jbase/exception.rb +2 -1
- data/lib/corba/jbase/poa.rb +20 -20
- data/lib/corba/jbase/policies.rb +32 -32
- data/lib/corba/jbase/require.rb +4 -0
- data/lib/corba/poa.rb +1 -1
- data/lib/corba/policies.rb +1 -1
- data/lib/corba/require.rb +2 -2
- data/lib/corba/svcs/ins/cos_naming.rb +37 -28
- data/lib/corba/svcs/ins/ins.rb +51 -51
- data/lib/corba/svcs/ins/naming_service.rb +8 -8
- data/lib/corba.rb +1 -1
- data/lib/ridlbe/ruby/config.rb +37 -30
- data/lib/ridlbe/ruby/walker.rb +295 -272
- data/mkrf_conf_srcgem.rb +6 -6
- data/rakelib/bin.rake +1 -1
- data/rakelib/bin.rb +3 -3
- data/rakelib/build.rake +16 -16
- data/rakelib/config.rake +1 -1
- data/rakelib/config.rb +22 -22
- data/rakelib/ext.rake +7 -68
- data/rakelib/ext.rb +15 -15
- data/rakelib/ext_r2tao.rb +12 -55
- data/rakelib/gem.rake +25 -25
- data/rakelib/gem.rb +6 -6
- data/rakelib/package.rake +1 -1
- data/test/BiDirectional/client.rb +17 -17
- data/test/BiDirectional/run_test.rb +11 -11
- data/test/BiDirectional/server.rb +24 -25
- data/test/CORBA_Services/Naming/BindingIterator/client.rb +17 -17
- data/test/CORBA_Services/Naming/BindingIterator/run_test.rb +13 -13
- data/test/CORBA_Services/Naming/BindingIterator/server.rb +19 -19
- data/test/CORBA_Services/Naming/Corbaname/client.rb +15 -15
- data/test/CORBA_Services/Naming/Corbaname/run_test.rb +13 -13
- data/test/CORBA_Services/Naming/Corbaname/server.rb +30 -30
- data/test/CORBA_Services/Naming/Simple/client.rb +16 -16
- data/test/CORBA_Services/Naming/Simple/run_test.rb +13 -13
- data/test/CORBA_Services/Naming/Simple/server.rb +19 -19
- data/test/Collocation/run_test.rb +10 -10
- data/test/Collocation/test.rb +27 -20
- data/test/Connect_Timeout/client.rb +16 -17
- data/test/Connect_Timeout/run_test.rb +10 -10
- data/test/DII/client.rb +30 -30
- data/test/DII/run_test.rb +11 -11
- data/test/DII/server.rb +16 -16
- data/test/DSI/client.rb +16 -16
- data/test/DSI/run_test.rb +11 -11
- data/test/DSI/server.rb +17 -17
- data/test/Exceptions/client.rb +21 -21
- data/test/Exceptions/run_test.rb +11 -11
- data/test/Exceptions/server.rb +16 -16
- data/test/Hello/client.rb +16 -16
- data/test/Hello/run_test.rb +11 -11
- data/test/Hello/server.rb +17 -17
- data/test/IDL_Test/client.rb +21 -21
- data/test/IDL_Test/run_test.rb +11 -11
- data/test/IDL_Test/server.rb +19 -19
- data/test/IORMap/client.rb +14 -14
- data/test/IORMap/run_test.rb +11 -11
- data/test/IORMap/server.rb +26 -26
- data/test/IORTable/client.rb +14 -14
- data/test/IORTable/run_test.rb +11 -11
- data/test/IORTable/server.rb +26 -26
- data/test/Implicit_Conversion/client.rb +20 -17
- data/test/Implicit_Conversion/run_test.rb +11 -11
- data/test/Implicit_Conversion/server.rb +16 -16
- data/test/Multi_Threading/Multiple_ORB/client.rb +14 -14
- data/test/Multi_Threading/Multiple_ORB/run_test.rb +12 -12
- data/test/Multi_Threading/Multiple_ORB/server.rb +17 -17
- data/test/Multi_Threading/Simple/client.rb +17 -17
- data/test/Multi_Threading/Simple/run_test.rb +11 -11
- data/test/Multi_Threading/Simple/server.rb +16 -16
- data/test/Multi_Threading/Threads/client.rb +16 -16
- data/test/Multi_Threading/Threads/run_test.rb +11 -11
- data/test/Multi_Threading/Threads/server.rb +22 -22
- data/test/Multi_Threading/Threads/watchdog.rb +16 -16
- data/test/Multiple_Servant_Interfaces/client.rb +14 -14
- data/test/Multiple_Servant_Interfaces/run_test.rb +11 -11
- data/test/Multiple_Servant_Interfaces/server.rb +18 -18
- data/test/Nil/run_test.rb +10 -10
- data/test/Nil/test.rb +14 -15
- data/test/OBV/AbstractInterface/client.rb +14 -14
- data/test/OBV/AbstractInterface/run_test.rb +11 -11
- data/test/OBV/AbstractInterface/server.rb +20 -19
- data/test/OBV/Custom/OBV_impl.rb +2 -0
- data/test/OBV/Custom/client.rb +14 -14
- data/test/OBV/Custom/run_test.rb +11 -11
- data/test/OBV/Custom/server.rb +16 -16
- data/test/OBV/Simple/OBV_impl.rb +1 -0
- data/test/OBV/Simple/client.rb +14 -14
- data/test/OBV/Simple/run_test.rb +11 -11
- data/test/OBV/Simple/server.rb +16 -16
- data/test/OBV/Simple_Event/Event_impl.rb +1 -0
- data/test/OBV/Simple_Event/client.rb +14 -14
- data/test/OBV/Simple_Event/run_test.rb +11 -11
- data/test/OBV/Simple_Event/server.rb +16 -16
- data/test/OBV/Supports/client.rb +19 -19
- data/test/OBV/Supports/run_test.rb +11 -11
- data/test/OBV/Supports/server.rb +15 -15
- data/test/OBV/Supports/supports_impl.rb +3 -0
- data/test/OBV/Tree/client.rb +14 -14
- data/test/OBV/Tree/run_test.rb +11 -11
- data/test/OBV/Tree/server.rb +19 -19
- data/test/OBV/Truncatable/Truncatable_impl.rb +1 -1
- data/test/OBV/Truncatable/client.rb +57 -57
- data/test/OBV/Truncatable/run_test.rb +11 -11
- data/test/OBV/Truncatable/server.rb +15 -15
- data/test/OBV/ValueBox/client.rb +154 -153
- data/test/OBV/ValueBox/run_test.rb +11 -11
- data/test/OBV/ValueBox/server.rb +42 -42
- data/test/Object/client.rb +15 -15
- data/test/Object/run_test.rb +11 -11
- data/test/Object/server.rb +19 -19
- data/test/POA/run_test.rb +10 -10
- data/test/POA/test.rb +16 -16
- data/test/Param_Test/client.rb +51 -51
- data/test/Param_Test/run_test.rb +11 -11
- data/test/Param_Test/server.rb +59 -59
- data/test/Performance/Simple/client.rb +16 -16
- data/test/Performance/Simple/run_test.rb +11 -11
- data/test/Performance/Simple/server.rb +16 -16
- data/test/Policies/run_test.rb +10 -10
- data/test/Policies/test.rb +23 -24
- data/test/Timeout/client.rb +21 -21
- data/test/Timeout/run_test.rb +11 -11
- data/test/Timeout/server.rb +22 -22
- data/test/lib/assert.rb +0 -1
- data/test/lib/test.rb +28 -23
- data/test/test_runner.rb +21 -22
- metadata +6 -9
- data/ext/extload/extload.c +0 -60
- data/ext/librpoa/srvreq_fix.cpp +0 -282
- data/ext/librpoa/srvreq_fix.h +0 -148
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 490830042eb54709185b735989f74576890662cf9fe7522777b9827ee1235428
|
4
|
+
data.tar.gz: 89dfb5470529831a597d44cc13cb405b8b532c6459152a9b0d680bd48f20949d
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1ff51a6c23f870bc38fe0cf03c39c17d3f5bfcb7304311e0368c2ee4ce8803e9f91e3f25db9d057f855b05dc1e932f1952941c5cda42a5bfc41d94c9ae618e85
|
7
|
+
data.tar.gz: 3b8e8f1c6bb4822f418a60aabc548699b392a86321e8be3b4d23ef45da3b8fa97361d1f6e61beaaf942bc859ab4b7a55bd7803ab78d211d0497174ac40dbeaad
|
data/README.rdoc
CHANGED
@@ -1,6 +1,7 @@
|
|
1
|
-
{<img src="https://badge.fury.io/rb/r2corba.svg" alt="Gem Version" />}[https://
|
1
|
+
{<img src="https://badge.fury.io/rb/r2corba.svg" alt="Gem Version" />}[https://rubygems.org/gems/r2corba]
|
2
2
|
{<img src="https://www.codefactor.io/repository/github/remedyit/r2corba/badge" alt="CodeFactor" />}[https://www.codefactor.io/repository/github/remedyit/r2corba]
|
3
3
|
{<img src="https://github.com/RemedyIT/r2corba/workflows/linux/badge.svg" alt="Linux CI" />}[https://github.com/RemedyIT/r2corba/actions?query=workflow%3Alinux]
|
4
|
+
{<img src="https://github.com/RemedyIT/r2corba/workflows/windows/badge.svg" alt="Windows CI" />}[https://github.com/RemedyIT/r2corba/actions?query=workflow%3Awindows]
|
4
5
|
|
5
6
|
= R2CORBA
|
6
7
|
|
@@ -39,7 +40,7 @@ If you find a bug, please report it at the R2CORBA project's {issue tracker}[htt
|
|
39
40
|
|
40
41
|
== License
|
41
42
|
|
42
|
-
R2CORBA is Copyright (c) 2007-
|
43
|
+
R2CORBA is Copyright (c) 2007-2022 Remedy IT Expertise BV, The Netherlands.
|
43
44
|
|
44
45
|
It is free software, and may be redistributed under the terms specified in the link:LICENSE file.
|
45
46
|
|
data/ext/libr2tao/any.cpp
CHANGED
@@ -54,6 +54,7 @@
|
|
54
54
|
#include "tao/Object_Loader.h"
|
55
55
|
#include "tao/ORB_Core.h"
|
56
56
|
#include "ace/Dynamic_Service.h"
|
57
|
+
#include <cstring>
|
57
58
|
|
58
59
|
#define RUBY_INVOKE_FUNC RUBY_ALLOC_FUNC
|
59
60
|
|
@@ -658,7 +659,7 @@ R2TAO_EXPORT void r2tao_Ruby2Any(CORBA::Any& _any, CORBA::TypeCode_ptr _tc, VALU
|
|
658
659
|
{
|
659
660
|
if (rb_obj_is_kind_of (rval, r2corba_cObject) == Qtrue)
|
660
661
|
{
|
661
|
-
R2TAO_AbstractObject_ptr abs_obj =
|
662
|
+
R2TAO_AbstractObject_ptr abs_obj = nullptr;
|
662
663
|
ACE_NEW_NORETURN (abs_obj,
|
663
664
|
R2TAO_AbstractObject (r2corba_Object_r2t (rval), _tc));
|
664
665
|
_any <<= &abs_obj;
|
@@ -666,7 +667,7 @@ R2TAO_EXPORT void r2tao_Ruby2Any(CORBA::Any& _any, CORBA::TypeCode_ptr _tc, VALU
|
|
666
667
|
else
|
667
668
|
{
|
668
669
|
// abstract wrapper for Values
|
669
|
-
R2TAO_AbstractValue_ptr abs_obj =
|
670
|
+
R2TAO_AbstractValue_ptr abs_obj = nullptr;
|
670
671
|
ACE_NEW_NORETURN (abs_obj,
|
671
672
|
R2TAO_AbstractValue (rval, _tc));
|
672
673
|
_any <<= &abs_obj;
|
@@ -721,7 +722,7 @@ R2TAO_EXPORT void r2tao_Ruby2Any(CORBA::Any& _any, CORBA::TypeCode_ptr _tc, VALU
|
|
721
722
|
{
|
722
723
|
if (!NIL_P (rval))
|
723
724
|
{
|
724
|
-
R2TAO_Value_ptr r2tval =
|
725
|
+
R2TAO_Value_ptr r2tval = nullptr;
|
725
726
|
ACE_NEW_NORETURN (r2tval,
|
726
727
|
R2TAO_Value (rval));
|
727
728
|
_any <<= &r2tval;
|
@@ -792,7 +793,7 @@ TAO_END_VERSIONED_NAMESPACE_DECL
|
|
792
793
|
VALUE r2tao_Struct2Ruby (const CORBA::Any& _any, CORBA::TypeCode_ptr _tc, VALUE rtc, VALUE roottc)
|
793
794
|
{
|
794
795
|
if (TAO_debug_level > 9)
|
795
|
-
ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - Struct2Ruby:: tc=%@, id=%
|
796
|
+
ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - Struct2Ruby:: tc=%@, id=%C\n", _tc, _tc->id ()));
|
796
797
|
|
797
798
|
DynamicAny::DynAny_var da = r2tao_CreateDynAny (_any);
|
798
799
|
DynamicAny::DynStruct_var das = DynamicAny::DynStruct::_narrow (da.in ());
|
@@ -809,7 +810,7 @@ VALUE r2tao_Struct2Ruby (const CORBA::Any& _any, CORBA::TypeCode_ptr _tc, VALUE
|
|
809
810
|
VALUE mrtc = rb_funcall (rtc, member_type_ID, 1, ULONG2NUM(m));
|
810
811
|
VALUE rmval = r2tao_Any2Ruby (nvps[m].value, mtc.in (), mrtc, mrtc);
|
811
812
|
const char* name = _tc->member_name (m);
|
812
|
-
CORBA::String_var mname = CORBA::string_alloc (2 +
|
813
|
+
CORBA::String_var mname = CORBA::string_alloc (2 + std::strlen (name));
|
813
814
|
ACE_OS::sprintf ((char*)mname.in (), "@%s", name);
|
814
815
|
rb_iv_set (new_rs, mname.in (), rmval);
|
815
816
|
}
|
@@ -822,7 +823,7 @@ VALUE r2tao_Struct2Ruby (const CORBA::Any& _any, CORBA::TypeCode_ptr _tc, VALUE
|
|
822
823
|
VALUE r2tao_Union2Ruby (const CORBA::Any& _any, CORBA::TypeCode_ptr _tc, VALUE rtc, VALUE roottc)
|
823
824
|
{
|
824
825
|
if (TAO_debug_level > 9)
|
825
|
-
ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - Union2Ruby:: tc=%@, id=%
|
826
|
+
ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - Union2Ruby:: tc=%@, id=%C\n", _tc, _tc->id ()));
|
826
827
|
|
827
828
|
VALUE new_ru = R2TAO_NEW_TCOBJECT (roottc);
|
828
829
|
|
@@ -1408,7 +1409,7 @@ R2TAO_EXPORT VALUE r2tao_Any2Ruby(const CORBA::Any& _any, CORBA::TypeCode_ptr _t
|
|
1408
1409
|
}
|
1409
1410
|
case CORBA::tk_abstract_interface:
|
1410
1411
|
{
|
1411
|
-
CORBA::AbstractBase_ptr abs =
|
1412
|
+
CORBA::AbstractBase_ptr abs = nullptr;
|
1412
1413
|
TAO::Any_Impl_T<CORBA::AbstractBase>::extract (
|
1413
1414
|
_any,
|
1414
1415
|
CORBA::AbstractBase::_tao_any_destructor,
|
@@ -1462,7 +1463,7 @@ R2TAO_EXPORT VALUE r2tao_Any2Ruby(const CORBA::Any& _any, CORBA::TypeCode_ptr _t
|
|
1462
1463
|
case CORBA::tk_value:
|
1463
1464
|
case CORBA::tk_event:
|
1464
1465
|
{
|
1465
|
-
R2TAO_Value_ptr r2tval =
|
1466
|
+
R2TAO_Value_ptr r2tval = nullptr;
|
1466
1467
|
TAO::Any_Impl_T<R2TAO_Value>::extract (
|
1467
1468
|
_any,
|
1468
1469
|
R2TAO_Value::_tao_any_destructor,
|
@@ -1513,7 +1514,7 @@ R2TAO_EXPORT void r2tao_Any4Value(CORBA::Any& _any, CORBA::TypeCode_ptr _tc)
|
|
1513
1514
|
{
|
1514
1515
|
if (TAO_debug_level > 9)
|
1515
1516
|
ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - r2tao_Any4Value:: "
|
1516
|
-
"initialising any for value %
|
1517
|
+
"initialising any for value %C\n",
|
1517
1518
|
_tc->id ()));
|
1518
1519
|
|
1519
1520
|
CORBA::ValueFactory factory =
|
@@ -1524,7 +1525,7 @@ R2TAO_EXPORT void r2tao_Any4Value(CORBA::Any& _any, CORBA::TypeCode_ptr _tc)
|
|
1524
1525
|
CORBA::ValueBase * vb = factory->create_for_unmarshal ();
|
1525
1526
|
R2TAO_Value_ptr r2tval = R2TAO_Value::_downcast (vb);
|
1526
1527
|
|
1527
|
-
TAO::Any_Impl * vimpl =
|
1528
|
+
TAO::Any_Impl * vimpl = nullptr;
|
1528
1529
|
ACE_NEW_THROW_EX (vimpl,
|
1529
1530
|
TAO::Any_Impl_T<R2TAO_Value> (R2TAO_Value::_tao_any_destructor,
|
1530
1531
|
_tc,
|
data/ext/libr2tao/exception.cpp
CHANGED
@@ -65,12 +65,10 @@ static void sysexc_raise(const CORBA::SystemException& sex, char *_reason = 0)
|
|
65
65
|
{
|
66
66
|
static ID _raise_ID = rb_intern ("_raise");
|
67
67
|
|
68
|
-
VALUE id
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
completed = INT2NUM ((int)sex.completed ());
|
73
|
-
reason = rb_str_new2 (_reason ? _reason : sex._info ().c_str ());
|
68
|
+
VALUE id = rb_str_new2 (sex._rep_id ());
|
69
|
+
VALUE minor = ULONG2NUM (sex.minor ());
|
70
|
+
VALUE completed = INT2NUM ((int)sex.completed ());
|
71
|
+
VALUE reason = rb_str_new2 (_reason ? _reason : sex._info ().c_str ());
|
74
72
|
|
75
73
|
rb_funcall (r2tao_cSystemException,
|
76
74
|
_raise_ID, 4, id, reason, minor, completed);
|
@@ -102,10 +100,10 @@ R2TAO_EXPORT void r2tao_userex(const CORBA::UserException& ex)
|
|
102
100
|
TAO_OutputCDR outstrm;
|
103
101
|
ex._tao_encode (outstrm);
|
104
102
|
TAO_InputCDR instrm (outstrm);
|
105
|
-
TAO::Unknown_IDL_Type *any_impl =
|
103
|
+
TAO::Unknown_IDL_Type *any_impl = nullptr;
|
106
104
|
ACE_NEW_NORETURN (any_impl,
|
107
105
|
TAO::Unknown_IDL_Type (ex._tao_type ()));
|
108
|
-
if (any_impl
|
106
|
+
if (!any_impl)
|
109
107
|
{
|
110
108
|
X_CORBA (NO_MEMORY);
|
111
109
|
}
|
data/ext/libr2tao/exception.h
CHANGED
data/ext/libr2tao/longdouble.cpp
CHANGED
@@ -32,11 +32,9 @@ static VALUE r2tao_LongDouble_size(VALUE self);
|
|
32
32
|
|
33
33
|
void r2tao_init_LongDouble()
|
34
34
|
{
|
35
|
-
VALUE k
|
36
|
-
|
37
|
-
k = r2tao_cLongDouble =
|
35
|
+
VALUE k = r2tao_cLongDouble =
|
38
36
|
rb_define_class_under (r2tao_nsCORBA, "LongDouble", rb_cObject);
|
39
|
-
rb_define_alloc_func (r2tao_cLongDouble,
|
37
|
+
rb_define_alloc_func (r2tao_cLongDouble, ld_alloc);
|
40
38
|
rb_define_method(k, "initialize", RUBY_METHOD_FUNC(r2tao_LongDouble_initialize), -1);
|
41
39
|
rb_define_method(k, "to_s", RUBY_METHOD_FUNC(r2tao_LongDouble_to_s), -1);
|
42
40
|
rb_define_method(k, "to_f", RUBY_METHOD_FUNC(r2tao_LongDouble_to_f), 0);
|
@@ -53,11 +51,9 @@ void r2tao_init_LongDouble()
|
|
53
51
|
|
54
52
|
static VALUE ld_alloc(VALUE klass)
|
55
53
|
{
|
56
|
-
VALUE obj;
|
57
|
-
|
58
54
|
ACE_CDR::LongDouble* ld = new ACE_CDR::LongDouble;
|
59
55
|
ACE_CDR_LONG_DOUBLE_ASSIGNMENT ((*ld), 0.0);
|
60
|
-
obj = Data_Wrap_Struct(klass, 0, ld_free, ld);
|
56
|
+
VALUE obj = Data_Wrap_Struct(klass, 0, ld_free, ld);
|
61
57
|
return obj;
|
62
58
|
}
|
63
59
|
|
@@ -95,7 +91,7 @@ VALUE r2tao_LongDouble_initialize(int _argc, VALUE *_argv, VALUE self)
|
|
95
91
|
|
96
92
|
if (rb_obj_is_kind_of(v0, rb_cString) == Qtrue)
|
97
93
|
{
|
98
|
-
char* endp =
|
94
|
+
char* endp = nullptr;
|
99
95
|
#if defined (NONNATIVE_LONGDOUBLE) && defined (ACE_CDR_IMPLEMENT_WITH_NATIVE_DOUBLE)
|
100
96
|
NATIVE_LONGDOUBLE _ld = ::strtod (RSTRING_PTR (v0), &endp);
|
101
97
|
#else
|
@@ -128,7 +124,7 @@ VALUE r2tao_LongDouble_to_s(int _argc, VALUE *_argv, VALUE self)
|
|
128
124
|
VALUE prec = Qnil;
|
129
125
|
rb_scan_args(_argc, _argv, "01", &prec);
|
130
126
|
|
131
|
-
int lprec = (prec == Qnil ? 0 : NUM2LONG (prec));
|
127
|
+
int const lprec = (prec == Qnil ? 0 : NUM2LONG (prec));
|
132
128
|
|
133
129
|
R2TAO_TRY
|
134
130
|
{
|
data/ext/libr2tao/object.cpp
CHANGED
@@ -15,11 +15,12 @@
|
|
15
15
|
#include "tao/DynamicInterface/DII_CORBA_methods.h"
|
16
16
|
#include "tao/DynamicInterface/Unknown_User_Exception.h"
|
17
17
|
#include "ace/Truncate.h"
|
18
|
-
#include "ace/Auto_Ptr.h"
|
19
18
|
#include "typecode.h"
|
20
19
|
#include "object.h"
|
21
20
|
#include "exception.h"
|
22
21
|
#include "orb.h"
|
22
|
+
#include <memory>
|
23
|
+
#include <cstring>
|
23
24
|
|
24
25
|
R2TAO_EXPORT VALUE r2corba_cObject = 0;
|
25
26
|
R2TAO_EXPORT VALUE r2tao_cObject = 0;
|
@@ -160,11 +161,8 @@ r2tao_Init_Object()
|
|
160
161
|
VALUE
|
161
162
|
r2tao_t2r(VALUE klass, CORBA::Object_ptr obj)
|
162
163
|
{
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
o = CORBA::Object::_duplicate (obj);
|
167
|
-
ret = Data_Wrap_Struct(klass, 0, _object_free, o);
|
164
|
+
CORBA::Object_ptr o = CORBA::Object::_duplicate (obj);
|
165
|
+
VALUE ret = Data_Wrap_Struct(klass, 0, _object_free, o);
|
168
166
|
|
169
167
|
return ret;
|
170
168
|
}
|
@@ -205,7 +203,6 @@ _object_free(void *ptr)
|
|
205
203
|
CORBA::release (static_cast<CORBA::Object_ptr> (ptr));
|
206
204
|
}
|
207
205
|
|
208
|
-
|
209
206
|
static void
|
210
207
|
_request_free(void *ptr)
|
211
208
|
{
|
@@ -215,11 +212,8 @@ _request_free(void *ptr)
|
|
215
212
|
VALUE
|
216
213
|
r2tao_Request_t2r(CORBA::Request_ptr req)
|
217
214
|
{
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
o = CORBA::Request::_duplicate (req);
|
222
|
-
ret = Data_Wrap_Struct(r2tao_cRequest, 0, _request_free, o);
|
215
|
+
CORBA::Request_ptr o = CORBA::Request::_duplicate (req);
|
216
|
+
VALUE ret = Data_Wrap_Struct(r2tao_cRequest, 0, _request_free, o);
|
223
217
|
|
224
218
|
return ret;
|
225
219
|
}
|
@@ -238,7 +232,6 @@ r2tao_Request_r2t(VALUE obj)
|
|
238
232
|
// CORBA::Object methods
|
239
233
|
//
|
240
234
|
//===================================================================
|
241
|
-
|
242
235
|
VALUE
|
243
236
|
r2tao_Object_orb(VALUE self)
|
244
237
|
{
|
@@ -371,11 +364,10 @@ rCORBA_Object_non_existent(VALUE self)
|
|
371
364
|
VALUE
|
372
365
|
rCORBA_Object_is_equivalent(VALUE self, VALUE _other)
|
373
366
|
{
|
374
|
-
CORBA::Object_ptr other, obj;
|
375
367
|
VALUE ret = Qnil;
|
376
368
|
|
377
|
-
obj = r2tao_Object_r2t (self);
|
378
|
-
other = r2tao_Object_r2t (_other);
|
369
|
+
CORBA::Object_ptr obj = r2tao_Object_r2t (self);
|
370
|
+
CORBA::Object_ptr other = r2tao_Object_r2t (_other);
|
379
371
|
|
380
372
|
R2TAO_TRY
|
381
373
|
{
|
@@ -389,10 +381,10 @@ rCORBA_Object_is_equivalent(VALUE self, VALUE _other)
|
|
389
381
|
VALUE
|
390
382
|
rCORBA_Object_hash(VALUE self, VALUE _max)
|
391
383
|
{
|
392
|
-
CORBA::ULong ret=0
|
384
|
+
CORBA::ULong ret = 0;
|
393
385
|
CORBA::Object_ptr obj = r2tao_Object_r2t (self);
|
394
386
|
|
395
|
-
max = NUM2ULONG(_max);
|
387
|
+
CORBA::ULong max = NUM2ULONG(_max);
|
396
388
|
R2TAO_TRY
|
397
389
|
{
|
398
390
|
ret = obj->_hash(max);
|
@@ -431,15 +423,14 @@ ri_CORBA_Object_hash(VALUE self)
|
|
431
423
|
VALUE
|
432
424
|
rCORBA_Object_is_a(VALUE self, VALUE type_id)
|
433
425
|
{
|
434
|
-
CORBA::Object_ptr obj;
|
435
426
|
VALUE ret = Qnil;
|
436
427
|
|
437
|
-
obj = r2tao_Object_r2t (self);
|
428
|
+
CORBA::Object_ptr obj = r2tao_Object_r2t (self);
|
438
429
|
Check_Type(type_id, T_STRING);
|
439
430
|
|
440
431
|
R2TAO_TRY
|
441
432
|
{
|
442
|
-
int f = obj->_is_a (RSTRING_PTR (type_id));
|
433
|
+
int const f = obj->_is_a (RSTRING_PTR (type_id));
|
443
434
|
//::printf ("rCORBA_Object_is_a: %s -> %d\n", RSTRING_PTR (type_id), f);
|
444
435
|
ret = f ? Qtrue: Qfalse;
|
445
436
|
}
|
@@ -451,10 +442,9 @@ rCORBA_Object_is_a(VALUE self, VALUE type_id)
|
|
451
442
|
VALUE
|
452
443
|
rCORBA_Object_request(VALUE self, VALUE op_name)
|
453
444
|
{
|
454
|
-
CORBA::Object_ptr obj;
|
455
445
|
CORBA::Request_var req;
|
456
446
|
|
457
|
-
obj = r2tao_Object_r2t (self);
|
447
|
+
CORBA::Object_ptr obj = r2tao_Object_r2t (self);
|
458
448
|
Check_Type(op_name, T_STRING);
|
459
449
|
|
460
450
|
R2TAO_TRY
|
@@ -506,7 +496,7 @@ static VALUE _r2tao_set_request_arguments(CORBA::Request_ptr _req, VALUE arg_lis
|
|
506
496
|
++ret_val;
|
507
497
|
|
508
498
|
if (TAO_debug_level > 9)
|
509
|
-
ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - set_request_arguments: IN_ARG/INOUT_ARG - arg_name=%
|
499
|
+
ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - set_request_arguments: IN_ARG/INOUT_ARG - arg_name=%C\n",
|
510
500
|
_arg_name));
|
511
501
|
|
512
502
|
// assign value to Any
|
@@ -520,7 +510,7 @@ static VALUE _r2tao_set_request_arguments(CORBA::Request_ptr _req, VALUE arg_lis
|
|
520
510
|
_req->add_out_arg (_arg_name) : _req->add_out_arg ();
|
521
511
|
|
522
512
|
if (TAO_debug_level > 9)
|
523
|
-
ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - set_request_arguments: OUT_ARG - arg_name=%
|
513
|
+
ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - set_request_arguments: OUT_ARG - arg_name=%C\n",
|
524
514
|
_arg_name));
|
525
515
|
|
526
516
|
// assign type info to Any
|
@@ -559,10 +549,8 @@ class R2TAO_Request_BlockedRegionCaller
|
|
559
549
|
{
|
560
550
|
public:
|
561
551
|
R2TAO_Request_BlockedRegionCaller (CORBA::Request_ptr req)
|
562
|
-
: req_ (req)
|
563
|
-
|
564
|
-
corba_ex_ (0) {}
|
565
|
-
virtual ~R2TAO_Request_BlockedRegionCaller () R2CORBA_NO_EXCEPT_FALSE;
|
552
|
+
: req_ (req) {}
|
553
|
+
virtual ~R2TAO_Request_BlockedRegionCaller () noexcept(false);
|
566
554
|
|
567
555
|
VALUE call ();
|
568
556
|
|
@@ -574,17 +562,17 @@ protected:
|
|
574
562
|
virtual VALUE do_exec () = 0;
|
575
563
|
|
576
564
|
CORBA::Request_ptr req_;
|
577
|
-
bool exception_;
|
578
|
-
CORBA::Exception* corba_ex_;
|
565
|
+
bool exception_ {false};
|
566
|
+
CORBA::Exception* corba_ex_ {};
|
579
567
|
};
|
580
568
|
|
581
|
-
R2TAO_Request_BlockedRegionCaller::~R2TAO_Request_BlockedRegionCaller()
|
569
|
+
R2TAO_Request_BlockedRegionCaller::~R2TAO_Request_BlockedRegionCaller() noexcept(false)
|
582
570
|
{
|
583
571
|
if (this->exception_)
|
584
572
|
{
|
585
573
|
if (corba_ex_)
|
586
574
|
{
|
587
|
-
|
575
|
+
std::unique_ptr<CORBA::Exception> e_ptr(corba_ex_);
|
588
576
|
corba_ex_->_raise ();
|
589
577
|
}
|
590
578
|
else
|
@@ -628,10 +616,10 @@ class R2TAO_Request_BlockedInvoke : public R2TAO_Request_BlockedRegionCaller
|
|
628
616
|
public:
|
629
617
|
R2TAO_Request_BlockedInvoke (CORBA::Request_ptr req)
|
630
618
|
: R2TAO_Request_BlockedRegionCaller (req) {}
|
631
|
-
|
619
|
+
~R2TAO_Request_BlockedInvoke () override = default;
|
632
620
|
|
633
621
|
protected:
|
634
|
-
|
622
|
+
VALUE do_exec () override;
|
635
623
|
};
|
636
624
|
|
637
625
|
VALUE R2TAO_Request_BlockedInvoke::do_exec ()
|
@@ -645,10 +633,10 @@ class R2TAO_Request_BlockedSendOneway : public R2TAO_Request_BlockedRegionCaller
|
|
645
633
|
public:
|
646
634
|
R2TAO_Request_BlockedSendOneway (CORBA::Request_ptr req)
|
647
635
|
: R2TAO_Request_BlockedRegionCaller (req) {}
|
648
|
-
|
636
|
+
~R2TAO_Request_BlockedSendOneway () override = default;
|
649
637
|
|
650
638
|
protected:
|
651
|
-
|
639
|
+
VALUE do_exec () override;
|
652
640
|
};
|
653
641
|
|
654
642
|
VALUE R2TAO_Request_BlockedSendOneway::do_exec ()
|
@@ -662,10 +650,10 @@ class R2TAO_Request_BlockedSendDeferred : public R2TAO_Request_BlockedRegionCall
|
|
662
650
|
public:
|
663
651
|
R2TAO_Request_BlockedSendDeferred (CORBA::Request_ptr req)
|
664
652
|
: R2TAO_Request_BlockedRegionCaller (req) {}
|
665
|
-
|
653
|
+
~R2TAO_Request_BlockedSendDeferred () override = default;
|
666
654
|
|
667
655
|
protected:
|
668
|
-
|
656
|
+
VALUE do_exec () override;
|
669
657
|
};
|
670
658
|
|
671
659
|
VALUE R2TAO_Request_BlockedSendDeferred::do_exec ()
|
@@ -679,10 +667,10 @@ class R2TAO_Request_BlockedGetResponse : public R2TAO_Request_BlockedRegionCalle
|
|
679
667
|
public:
|
680
668
|
R2TAO_Request_BlockedGetResponse (CORBA::Request_ptr req)
|
681
669
|
: R2TAO_Request_BlockedRegionCaller (req) {}
|
682
|
-
|
670
|
+
~R2TAO_Request_BlockedGetResponse () override = default;
|
683
671
|
|
684
672
|
protected:
|
685
|
-
|
673
|
+
VALUE do_exec () override;
|
686
674
|
};
|
687
675
|
|
688
676
|
VALUE R2TAO_Request_BlockedGetResponse::do_exec ()
|
@@ -696,10 +684,10 @@ class R2TAO_Request_BlockedPollResponse : public R2TAO_Request_BlockedRegionCall
|
|
696
684
|
public:
|
697
685
|
R2TAO_Request_BlockedPollResponse (CORBA::Request_ptr req)
|
698
686
|
: R2TAO_Request_BlockedRegionCaller (req) {}
|
699
|
-
|
687
|
+
~R2TAO_Request_BlockedPollResponse () override = default;
|
700
688
|
|
701
689
|
protected:
|
702
|
-
|
690
|
+
VALUE do_exec () override;
|
703
691
|
};
|
704
692
|
|
705
693
|
VALUE R2TAO_Request_BlockedPollResponse::do_exec ()
|
@@ -766,18 +754,14 @@ static VALUE _r2tao_invoke_request(CORBA::Request_ptr _req,
|
|
766
754
|
ACE_DEBUG ((LM_INFO, "R2TAO (%P|%t) - invoke_request(%C): user exception from remote twoway\n", _req->operation ()));
|
767
755
|
|
768
756
|
CORBA::Any& _excany = user_ex.exception ();
|
769
|
-
|
770
|
-
CORBA::ULong
|
771
|
-
for (CORBA::ULong x=0; x<exc_len ;++x)
|
757
|
+
CORBA::ULong const exc_len = _req->exceptions ()->count ();
|
758
|
+
for (CORBA::ULong x=0; x < exc_len ;++x)
|
772
759
|
{
|
773
760
|
CORBA::TypeCode_var _xtc = _req->exceptions ()->item (x);
|
774
|
-
if (
|
775
|
-
_excany._tao_get_typecode ()->id ()) == 0)
|
761
|
+
if (std::strcmp (_xtc->id (), _excany._tao_get_typecode ()->id ()) == 0)
|
776
762
|
{
|
777
763
|
VALUE x_rtc = r2corba_TypeCode_t2r (_xtc.in ());
|
778
|
-
VALUE rexc = r2tao_Any2Ruby (_excany,
|
779
|
-
_xtc.in (),
|
780
|
-
x_rtc, x_rtc);
|
764
|
+
VALUE rexc = r2tao_Any2Ruby (_excany, _xtc.in (), x_rtc, x_rtc);
|
781
765
|
_raise = true;
|
782
766
|
return rexc;
|
783
767
|
}
|
@@ -1098,10 +1082,10 @@ VALUE rCORBA_Request_arguments(VALUE self, VALUE arg_list)
|
|
1098
1082
|
CORBA::Request_ptr _req = r2tao_Request_r2t(self);
|
1099
1083
|
if (arg_list != Qnil)
|
1100
1084
|
Check_Type (arg_list, T_ARRAY);
|
1101
|
-
CORBA::ULong rarg_len = (CORBA::ULong )RARRAY_LEN (arg_list);
|
1085
|
+
CORBA::ULong const rarg_len = (CORBA::ULong )RARRAY_LEN (arg_list);
|
1102
1086
|
R2TAO_TRY
|
1103
1087
|
{
|
1104
|
-
CORBA::ULong arg_len = _req->arguments ()->count ();
|
1088
|
+
CORBA::ULong const arg_len = _req->arguments ()->count ();
|
1105
1089
|
if (arg_len != rarg_len)
|
1106
1090
|
{
|
1107
1091
|
throw CORBA::BAD_PARAM();
|