Actions
バグ #783
closed複合化したコンポーネントの分解時にセグメントエラーが発生する
Start date:
07/10/2009
Due date:
% Done:
100%
Estimated time:
Description
SimpleIOのConsoleIn,ConsoleOutコンポーネントをRTSystemEditorにて複合化後、
分解するとどちらか一方のRTCがセグメントエラーにて終了する。
動作確認を行ったリビジョンは、1437。
example/CompositeにあるComposite実行ファイルを実行して起動されるコンポーネント
群の複合・分解ではセグメントエラーは発生しない。
Updated by kurihara about 15 years ago
- Status changed from 新規 to 解決
- % Done changed from 0 to 100
[[]]PortAdmin.cppのregisterPort(PortService_ptr port)メソッドにて、引数のportをメンバー変数に格納する際、_duplicate()がされていなかったのが原因だった。
下記のように修正することでコンポーネントの複合・分解でのエラーは発生しなくなった。
$ svn diff PortAdmin.cpp Index: PortAdmin.cpp =================================================================== --- PortAdmin.cpp (リビジョン 1443) +++ PortAdmin.cpp (作業コピー) @@ -157,7 +157,7 @@ void PortAdmin::registerPort(PortService_ptr port) { - CORBA_SeqUtil::push_back(m_portRefs, port); + CORBA_SeqUtil::push_back(m_portRefs, RTC::PortService::_duplicate(port)); } /*!
Actions