(toppers-users 374) Re: はじめまして
Takayuki WAKABAYASHI
takayuki @ ertl.ics.tut.ac.jp
2002年 4月 3日 (水) 22:56:44 JST
豊橋技術科学大学の若林です。
先ほど河井様よりご報告のあった「コンフィギュレータがエラーを吐いて止まる」と
言う問題ですが、コンフィギュレータ内にバグが見つかりました。
問題 タスク優先度が即値整数だと、コンフィギュレータが異常停止する
状況 タスクの優先度を整数で設定する
原因 整数型を無理矢理文字列にキャストしている
箇所 Task::API_CRE_TSK::Body [cfg/jsp/toppers.cpp:428]
対象 TOPPERS/JSP 1.2 以前に付属のコンフィギュレータ
この問題を修正するには、cfg/jsp/toppers.cpp:428行付近にある行を、
下の修正後のものと差し替え、再コンパイルしてください。
---8<--- 修正前 ---8<---
work = string("INT_PRIORITY(") + *(String *)(Parent->GetParameter(id, PRIORITY)) + ")";
Parent->SetParameter(id, PRIORITY, new String(work));
---8<--- 修正後 ---8<---
val = Parent->GetParameter(id, PRIORITY);
if(*val == Value::INTEGER)
{
sprintf(buffer, "INT_PRIORITY(%d)", (int)*(Integer *)val);
Parent->SetParameter(id, PRIORITY, new String(buffer));
}else
{
work = string("INT_PRIORITY(") + *(String *)val + ")";
Parent->SetParameter(id, PRIORITY, new String(work));
}
---8<------8<------8<---
河井様、ご指摘 ご協力ありがとうございました。
//-------------------------------------------------
//Takayuki WAKABAYASHI (わかばやし たかゆき)
// mailto: takayuki @ ertl.ics.tut.ac.jp
//-------------------------------------------------
//豊橋技術科学大学 工学研究科 情報工学専攻
// 組込みリアルタイムシステム研究室
// Embedded and realtime system laboratory
// Dept. of information and computer science
// Toyohashi univ. of technology