[Bug 422] New: StatementProcessor::getCommand(int ticket) causes segfault

For more information about this bug, visit
A new bug was added:
Summary: StatementProcessor::getCommand(int ticket) causes
Product: RTT
Version: rtt-trunk
Platform: All
OS/Version: All
Status: NEW
Severity: normal
Priority: P2
Component: Scripting
AssignedTo: orocos-dev [..] ...
ReportedBy: peter [dot] soetens [..] ...

The StatementProcessor class has the feature to trace the execution of
a script command which was executed using the execute( string command) call.
This getCommand function does not work at all (was also never tested in a unit
test or application), and causes segmentation faults when invoked. Also, it
returns a CommandC object by value which, upon copy, creates a new command
instance, hence, this function can never return the status of the executed
command, but will always deliver a 'fresh' clone of the executed command.

The solution can only be done by 'breaking' the API: return a DispatchInterface
object, as a shared pointer, which can be queried for the command state. If
anyone used this function (I doubt it), he would have written:

int ticket = tc->scripting()->execute("robot.openGripper()");
CommandC com = tc->scripting()->getCommand(ticket); // would crash !
if (com.ready() && com.done() ) {
// ...

[Bug 422] StatementProcessor::getCommand(int ticket) causes segf

For more information about this bug, visit

peter [dot] soetens [..] ... changed:

What |Removed |Added
Target Milestone|--- |1.2.1
Resolution| |FIXED

------- Comment #1 from peter [dot] soetens [..] ... 2007-06-22 14:21

Fixed in r28341 on trunk/rtt:
Changes API of getCommand in ScriptingAccess and StatementProcessor.
getCommand(int ticket) returns a DispatchInterface::shared_ptr

(this mail is best viewed with a fixed font)
Configure bugmail: https://www.fmtc.be/orocos-bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
Orocos-Dev mailing list
Orocos-Dev [..] ...

Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm