操作
バグ #429
完了プロパティビューに実行コンテキストが2つ表示される
開始日:
2009/02/26
期日:
進捗率:
100%
予定工数:
説明
ネームサービスビューもしくはエディタ上でRTCを選択すると、右側のプロパティビューにRTCのプロパティ情報が表示される。
このうち、RTCが持つ実行コンテキストが1つ場合でも、2つの実行コンテキストが表示される。
ファイル
操作
n-ando さんがほぼ16年前に追加. ほぼ16年前に更新.
100%
説明
ネームサービスビューもしくはエディタ上でRTCを選択すると、右側のプロパティビューにRTCのプロパティ情報が表示される。
このうち、RTCが持つ実行コンテキストが1つ場合でも、2つの実行コンテキストが表示される。
ファイル
栗原です。
RTSystemEditorのプロパティビューにてECが2つ存在していた件に
つきまして調査を行った結果、RTObject_impl::initialize()に
問題がある事が判明致しました。
問題の箇所は、
CORBA_SeqUtil::push_back(m_ecMine,
RTC::ExecutionContextService::_duplicate(ecv));
ec->bindComponent(this);
上記の行です。
まず、CORBA_SeqUtil::push_back()にてm_ecMineにECを追加してますが、
ec->bindComponent()から呼ばれているRTObject_impl::bindContext()でもm_ecMine
にECをpush_back()しているため、get_owned_contexts()にて取得できる
ExecutionContextListの要素数が2となっておりました。
RTObject_impl::initialize()内のCORBA_SeqUtil::push_back(m_ecMine,...)
の行をコメントアウトしましたところ、一つのRTCに対して一つのECが
関連付けられるようになりました。