Test Planner crash
Henrik Brautaset Aronsen
subsurface at henrik.synth.no
Mon Jan 7 07:12:29 PST 2013
Lubomir I. Ivanov wrote:
> On 7 January 2013 13:54, Henrik Brautaset Aronsen
> <subsurface at henrik.synth.no> wrote:
>> If I start Subsurface with dives/*xml and select Test Planner, it freezes.
>> Some kind of eternal loop?
>>
>
> i can't reproduce the *.xml loop issue, but the other one is related
> to test code.
> it assumes that there are dives already, so that the plan dive is
> added after all of them.
> this shouldn't be a problem later on.
Even with only dives/test0.xml loaded it loops around these lines, with
the same values over and over (according to gdb):
deco_allowed_depth (tissues_tolerance=8.7201164053871253e+256,
surface_pressure=1.0129999999999999, dive=0x1022b8270, smooth=1) at
deco.c:292
292 while(!below_gradient_limit)
294 if (!smooth)
297 mydata.pressure += PRESSURE_CHANGE_3M / 30; /* 4in /
10cm instead */
298 new_gradient_factor = gradient_factor_calculation(&mydata);
gradient_factor_calculation (data=0x7fff5fbfe9c8) at deco.c:119
119 tissue_inertgas_saturation =
tissue_n2_sat[ci_pointing_to_guiding_tissue] +
121 if (tissue_inertgas_saturation < data->pressure)
124 return (tissue_inertgas_saturation - data->pressure) /
122 return 0.0;
deco_allowed_depth (tissues_tolerance=8.7201164053871253e+256,
surface_pressure=1.0129999999999999, dive=0x1022b8270, smooth=1) at
deco.c:299
299 below_gradient_limit = (new_gradient_factor <
actual_gradient_limit(&mydata));
actual_gradient_limit (data=0x7fff5fbfe9c8) at deco.c:99
99 double gf_high = buehlmann_config.gf_high;
100 double gf_low = buehlmann_config.gf_low;
102 pressure_diff = data->pressure - data->surface;
104 if (pressure_diff > TOLERANCE) {
105 if (pressure_diff < gf_low_position_this_dive)
108 limit_at_position = gf_low;
112 return limit_at_position;
Cheers,
Henrik
More information about the subsurface
mailing list