PROTON-1855: [ruby] copy terminus data for remotely-initiated links

Project: http://git-wip-us.apache.org/repos/asf/qpid-proton/repo
Commit: http://git-wip-us.apache.org/repos/asf/qpid-proton/commit/24a142e4
Tree: http://git-wip-us.apache.org/repos/asf/qpid-proton/tree/24a142e4
Diff: http://git-wip-us.apache.org/repos/asf/qpid-proton/diff/24a142e4

Branch: refs/heads/master
Commit: 24a142e429c2678d340207d83ed9662e15c72d92
Parents: c3f772a
Author: Alan Conway <acon...@redhat.com>
Authored: Tue Jun 5 21:55:54 2018 -0400
Committer: Alan Conway <acon...@redhat.com>
Committed: Wed Jun 13 08:50:05 2018 -0400

----------------------------------------------------------------------
 ruby/lib/handler/messaging_adapter.rb | 4 ++++
 1 file changed, 4 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/qpid-proton/blob/24a142e4/ruby/lib/handler/messaging_adapter.rb
----------------------------------------------------------------------
diff --git a/ruby/lib/handler/messaging_adapter.rb 
b/ruby/lib/handler/messaging_adapter.rb
index e58314f..8348209 100644
--- a/ruby/lib/handler/messaging_adapter.rb
+++ b/ruby/lib/handler/messaging_adapter.rb
@@ -66,6 +66,10 @@ module Qpid::Proton
       # Link open/close is handled separately because links are split into
       # sender and receiver on the messaging API
       def on_link_remote_open(event)
+        if !event.link.local_active? # Copy remote terminus data to local
+          event.link.source.replace(event.link.remote_source);
+          event.link.target.replace(event.link.remote_target);
+        end
         delegate(event.link.sender? ? :on_sender_open : :on_receiver_open, 
event.link)
         event.link.open if event.link.local_uninit?
         add_credit(event)


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org
For additional commands, e-mail: commits-h...@qpid.apache.org

Reply via email to