From ad219e1b8e86d9b6b9dea79bd11daf3985b3d3a8 Mon Sep 17 00:00:00 2001
From: Teo Mrnjavac <teo@kde.org>
Date: Fri, 2 Sep 2016 12:08:00 +0200
Subject: [PATCH] Exclude loop devices with mounted children from devices list.

---
 src/modules/partition/core/PartitionCoreModule.cpp | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/modules/partition/core/PartitionCoreModule.cpp b/src/modules/partition/core/PartitionCoreModule.cpp
index 7888960a12..19b70bf648 100644
--- a/src/modules/partition/core/PartitionCoreModule.cpp
+++ b/src/modules/partition/core/PartitionCoreModule.cpp
@@ -127,7 +127,10 @@ PartitionCoreModule::doInit()
     // Remove the device which contains / from the list
     for ( QList< Device* >::iterator it = devices.begin(); it != devices.end(); )
         if ( hasRootPartition( *it ) ||
-             (*it)->deviceNode().startsWith( "/dev/zram") )
+             (*it)->deviceNode().startsWith( "/dev/zram") ||
+             ( (*it)->partitionTable() &&
+               (*it)->partitionTable()->type() == PartitionTable::loop &&
+               (*it)->partitionTable()->isChildMounted() ) )
             it = devices.erase( it );
         else
             ++it;
-- 
GitLab