summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsbw1 <sbw1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-10-27 04:28:07 +0000
committersbw1 <sbw1@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>1998-10-27 04:28:07 +0000
commit45b8ac00f5a53740045a172e9f3a98dd142f3259 (patch)
treeec77dc0465eb759ae11c6880cb16ec6069568ca0
parent23f8e0532ff739105e70b53ca3ca425445665bbb (diff)
downloadATCD-45b8ac00f5a53740045a172e9f3a98dd142f3259.tar.gz
*** empty log message ***
-rw-r--r--TAO/ChangeLog-98c1
-rw-r--r--TAO/orbsvcs/orbsvcs/Trader/Trader_Utils.cpp9
2 files changed, 6 insertions, 4 deletions
diff --git a/TAO/ChangeLog-98c b/TAO/ChangeLog-98c
index c14852856cd..5ac4e511b5a 100644
--- a/TAO/ChangeLog-98c
+++ b/TAO/ChangeLog-98c
@@ -2,6 +2,7 @@
* orbsvcs/orbsvcs/Trader/Trader_Interfaces.cpp:
* orbsvcs/orbsvcs/Trader/Trader_Utils.cpp:
+ * orbsvcs/tests/Trading/colocated_test.cpp:
In an effort to be efficient, in certain methods I was stealing
sequence buffers from 'in' parameters that would have otherwise
needed to have been copied. However, this doesn't work in the
diff --git a/TAO/orbsvcs/orbsvcs/Trader/Trader_Utils.cpp b/TAO/orbsvcs/orbsvcs/Trader/Trader_Utils.cpp
index d366d8d9610..e55242d791b 100644
--- a/TAO/orbsvcs/orbsvcs/Trader/Trader_Utils.cpp
+++ b/TAO/orbsvcs/orbsvcs/Trader/Trader_Utils.cpp
@@ -1180,8 +1180,8 @@ TAO_Offer_Modifier::affect_change (void)
CORBA::ULong prop_length = this->offer_->properties.length ();
CORBA::ULong merge_length = this->merge_props_.length ();
// Scrap the existing property sequence and begin a new one
- CosTrading::Property* prop_buf =
- this->offer_->properties.get_buffer (0);
+ CosTrading::PropertySeq prop_seq (prop_length, prop_length, this->offer_->properties.get_buffer (), 0);
+ prop_seq._allocate_buffer (prop_length);
this->offer_->properties.length (total_length);
// Copy in the unaffected and modified props into the offer,
@@ -1190,7 +1190,8 @@ TAO_Offer_Modifier::affect_change (void)
for (i = 0; i < prop_length; i++)
{
CosTrading::Property* prop_value = 0;
- const char* name = prop_buf[i].name;
+ // const char* name = prop_buf[i].name;
+ const char* name = prop_seq[i].name;
TAO_String_Hash_Key prop_name (name);
if (this->props_.unbind (prop_name, prop_value) == 0)
this->offer_->properties[num_modified++] = *prop_value;
@@ -1206,7 +1207,7 @@ TAO_Offer_Modifier::affect_change (void)
}
// Free the old, orphaned sequence.
- CosTrading::PropertySeq::freebuf (prop_buf);
+ // CosTrading::PropertySeq::freebuf (prop_buf);
}