OMNeT++/OMNEST Bug Tracker - OMNeT++
View Issue Details
0000062OMNeT++IDE / result analysispublic2009-04-06 12:362009-05-12 09:39
0000062: Bug in scavetool: aggregates runs with different parameter settings
In some circumstances, scavetool will try to aggregate runs with different parameter settings.

This can occur because when comparing strings that contain floating point numbers strdictcmp, which is used by scavetool when trying to determine which runs to aggregate, sometimes returns zero even if the strings are not equal:
strdictcmp("0.01", "0.1") will return zero
The core of the problem is the usage of strtoul, wich will compare the first part of the number (up to the "."), and the remainder in a second step. In our example, it will conclude ("01" == "1").

A simple fix is to replace strtoul with strtod, which will cope with floating point numbers while retaining the semantic for integers as well. A patch with the change is attached.
The bug occurs in omnetpp-4.0 release.
No tags attached.
patch strdictcmp.patch (843) 2009-04-06 12:36
Issue History
2009-04-06 12:36stkrauseNew Issue
2009-04-06 12:36stkrauseAssigned To => tomi
2009-04-06 12:36stkrauseFile Added: strdictcmp.patch
2009-05-11 11:51tomiNote Added: 0000147
2009-05-11 11:51tomiResolutionopen => fixed
2009-05-12 09:39tomiStatusnew => resolved
2009-05-12 09:39tomiFixed in Version => 4.1

2009-05-11 11:51   
Applied. Thanks for the patch.