皆様、
金広@産総研です。
RTCのsetInstanceName()を呼ぶと、SystemLogger.cppにある、以下のメンバ 関数が呼ばれます。
void Logger::setName(const char* name)
{
m_name = name;
}
ここでは文字列へのポインタをコピーしているだけなので、これを知らずに一時 変数を渡したりしているとm_nameを読みに行った瞬間にseg. faultしたりします。 こういった場合strdupなどしておくのが良いのではないかと思いますが、 いかがでしょうか。
モーションエディタ/シミュレータ
動力学シミュレータ
統合開発プラットフォーム
産総研が提供するRTC集
東京オープンソースロボティクス協会
ネットワーク分散環境でデータ収集用ソフトウェアを容易に構築するためのソフトウェア・フレームワーク
皆様、
金広@産総研です。
RTCのsetInstanceName()を呼ぶと、SystemLogger.cppにある、以下のメンバ
関数が呼ばれます。
void Logger::setName(const char* name)
{
m_name = name;
}
ここでは文字列へのポインタをコピーしているだけなので、これを知らずに一時
変数を渡したりしているとm_nameを読みに行った瞬間にseg. faultしたりします。
こういった場合strdupなどしておくのが良いのではないかと思いますが、
いかがでしょうか。