From 13a2fb8ec53fa096a52fbfdf57440f4b9065e6ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=A8=E4=B8=87=E9=9D=92?= Date: Mon, 6 Jul 2015 10:56:10 +0800 Subject: [PATCH] Fix crash when load multi systray --- dde-dock/src/Widgets/docklayout.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dde-dock/src/Widgets/docklayout.cpp b/dde-dock/src/Widgets/docklayout.cpp index 55978ca1f..30beb40c1 100644 --- a/dde-dock/src/Widgets/docklayout.cpp +++ b/dde-dock/src/Widgets/docklayout.cpp @@ -81,6 +81,8 @@ void DockLayout::sortRightToLeft() bool DockLayout::hasSpacingItemInList() { + if (sortDirection == RightToLeft) + return false; if (appList.count() <= 1) return false; if (appList.at(0)->x() > itemSpacing) @@ -165,7 +167,7 @@ int DockLayout::getContentsWidth() tmpWidth += appList.at(i)->width(); } - if (hasSpacingItemInList()) + if (hasSpacingItemInList() && tmpAppMap.firstKey()) tmpWidth += tmpAppMap.firstKey()->width() + itemSpacing; return tmpWidth;