- DB( g_print(" + real full refuel\n") );
- dist = item->dist;
- centkm = item->dist != 0 ? item->fuel * 100 / item->dist : 0;
+ // full refuel after partial
+ if(partial_fuel && partial_dist)
+ {
+ partial_fuel += item->fuel;
+ partial_dist += item->dist;
+ dist = item->dist;
+ centkm = partial_dist != 0 ? partial_fuel * 100 / partial_dist : 0;
+ DB( g_print(" + centkm=%.2f %.2f * 100 / %d (full after partial)\n", centkm, partial_fuel, partial_dist) );
+ }
+ else
+ {
+ dist = item->dist;
+ centkm = item->dist != 0 ? item->fuel * 100 / item->dist : 0;
+ DB( g_print(" + centkm=%.2f :: %.2f * 100 / %d (full after full)\n", centkm, item->fuel, item->dist) );
+ }