Unexpected beahavior with different OS's
Lets start with were i found it: In issue #174 (closed) @chraibi found a segfault occurring on OS X. The reason here was that a ped could not find a route in the velocity model. So
if (ped->FindRoute() == -1)
was true and the ped was removed of the simulation but indexes where not handled correctly. However this segfault did not occur on Linux. The question here is why? The answer quite simple:
On Linux all peds could find a route while on OSX one Ped (id=16
) could not.
Reproduction Steps
- Load input files from #174 (closed)
- Take Linux and run them
- Take OS X and run them
Expected behavior
The same number of peds should be tried to evacuate on every OS
Observed behavior
You will see in the output that on OS X 174 peds were evacuated, while on Linux 175.
-
JuPedSim version: 0.8
-
OS and version: Linux and OSX
-
Compiler and version: gcc 4.8 and apple-clang 7.0
Additional information:
Supposed search start: See what happens in ped->FindRoute()
and why the result may differ for different OS's
-
Problem can be reliably reproduced, doesn't happen randomly: [Yes]
-
Problem happens with the attached ini and geometry files: see #174 (closed)