プロジェクト

全般

プロフィール

バグ #989

OpenRTM-aist(Java)-1.0.0-RC1 複合化解除時の不具合

匿名ユーザー が14年以上前に追加. 約14年前に更新.

ステータス:
終了
優先度:
通常
担当者:
-
対象バージョン:
-
開始日:
2009/11/19
期日:
進捗率:

100%

予定工数:

説明

examples/Composite について、rtc.conf, composite.conf をデフォルトの状態で使用してテストした。

1. Composite を起動して、復号化されたPeriodicECSharedComposite0 を選択。
   (System Dialog 上に配置し、ダブルクリックでCompositeエディタを表示)

2.PeriodicECSharedComposite0 を選択して複合解除した。
   (右クリックから Decompose Composite Componentを選択)
  Controller, Motor, Sensor が白色になった。
   (state:CREATED)
  ※SystemEditor のプロパティから「ExecutionContext」の欄が消えた。

3. Controller, Motor, Sensor を再度復合化した。
   (右クリックから Create Composite Componentを選択)

4. 再度の複合化は実行できる。

5. ConsoleIn -> 複合コンポーネント -> ConsoleOut を接続した場合、 
  データ送信は正常に出来ている。

履歴

#1 匿名ユーザー が14年以上前に更新

  • ステータス新規 から 解決 に変更
  • 進捗率0 から 100 に変更

●RTObject_impl.java
class ec_copy の operator(ExecutionContextService ecs) で
ecs の nullチェックが抜けていた。

下記のif分を追加した。
if(ecs != null) {
CORBA_SeqUtil.push_back(m_eclist, (ExecutionContext)ecs._duplicate());
}

class ec_find の operator(ExecutionContextService ecs) で
ecs の nullチェックが抜けていた。
下記のif分を追加した。
if(ecs != null) {
ExecutionContext ec;
ec = ExecutionContextHelper.narrow(ecs);
return m_ec._is_equivalent(ec);
}

class deactivate_comps の operator(ExecutionContextService ecs) で
ecs の nullチェックが抜けていた。
下記のif分を追加した。
if(ecs != null) {
ecs.deactivate_component((LightweightRTObject)m_comp._duplicate());
}

以上で state が異常になる問題は解決した。

リビジョン217で更新。

#2 n-ando約14年前に更新

  • ステータス解決 から 終了 に変更

他の形式にエクスポート: Atom PDF