# HG changeset patch # User Michiel Broek # Date 1661601241 -7200 # Node ID 47f1259378fed2869994a5633cb5c473363f27fd # Parent 2ed66e586a52587aef83b2504432b5100ff944eb Fixed negative bottle of keg volumes and overflow totals. diff -r 2ed66e586a52 -r 47f1259378fe src/EditProductTab11.cpp --- a/src/EditProductTab11.cpp Sat Aug 20 19:35:21 2022 +0200 +++ b/src/EditProductTab11.cpp Sat Aug 27 13:54:01 2022 +0200 @@ -361,9 +361,17 @@ /* * Check if kegs volume plus this new volume fits in the package volume. */ + const QSignalBlocker blocker1(ui->keg_volumeEdit); + if (product->keg_amount < 0) + product->keg_amount = 0; /* Failsafe - bugfix */ + if (val > product->package_volume) { + val = product->package_volume; + const QSignalBlocker blocker2(ui->bottle_volumeEdit); + ui->bottle_volumeEdit->setValue(val); + } + if ((val + product->keg_amount) > product->package_volume) { double kegs = product->package_volume - val; - const QSignalBlocker blocker1(ui->keg_volumeEdit); product->keg_amount = kegs; ui->keg_volumeEdit->setValue(kegs); } @@ -459,9 +467,17 @@ /* * Check if bottle volume plus this new volume fits in the package volume. */ + const QSignalBlocker blocker1(ui->bottle_volumeEdit); + if (product->bottle_amount < 0) + product->bottle_amount = 0; /* Failsafe - bugfix */ + if (val > product->package_volume) { + val = product->package_volume; + const QSignalBlocker blocker2(ui->keg_volumeEdit); + ui->keg_volumeEdit->setValue(val); + } + if ((val + product->bottle_amount) > product->package_volume) { double bottle = product->package_volume - val; - const QSignalBlocker blocker1(ui->bottle_volumeEdit); product->bottle_amount = bottle; ui->bottle_volumeEdit->setValue(bottle); }