[gnome-shell] windowPreview: Fix a division by zero
- From: Florian Müllner <fmuellner src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell] windowPreview: Fix a division by zero
- Date: Tue, 23 Jun 2020 15:55:04 +0000 (UTC)
commit 87e4bf52b7c067c6af5dad00b61b43e65289a627
Author: Jonas Dreßler <verdre v0yd nl>
Date: Fri Jun 19 10:10:21 2020 +0200
windowPreview: Fix a division by zero
When the bounding box size is 0 during allocation (which happens right
after creating a window for example), we're doing a division by zero and
end up with a NaN scale. This ends up making the childBox NaN, which
triggers an error in Clutters allocation machinery.
So fix that and fall back to a scale of 1 in case the bounding box is
empty.
https://gitlab.gnome.org/GNOME/gnome-shell/-/merge_requests/1320
js/ui/windowPreview.js | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
---
diff --git a/js/ui/windowPreview.js b/js/ui/windowPreview.js
index 842a4c5155..b7fc5efa5a 100644
--- a/js/ui/windowPreview.js
+++ b/js/ui/windowPreview.js
@@ -67,8 +67,12 @@ var WindowPreviewLayout = GObject.registerClass({
vfunc_allocate(container, box) {
// If the scale isn't 1, we weren't allocated our preferred size
// and have to scale the children allocations accordingly.
- const scaleX = box.get_width() / this._boundingBox.get_width();
- const scaleY = box.get_height() / this._boundingBox.get_height();
+ const scaleX = this._boundingBox.get_width() > 0
+ ? box.get_width() / this._boundingBox.get_width()
+ : 1;
+ const scaleY = this._boundingBox.get_height() > 0
+ ? box.get_height() / this._boundingBox.get_height()
+ : 1;
const childBox = new Clutter.ActorBox();
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]