diff --git a/src/modules/partition/core/PartitionCoreModule.cpp b/src/modules/partition/core/PartitionCoreModule.cpp
index 7ce67be1699f2e3526c5a3b1697ff7703f3c2360..151dce4a4359335d92b272c1990d98a60c08c165 100644
--- a/src/modules/partition/core/PartitionCoreModule.cpp
+++ b/src/modules/partition/core/PartitionCoreModule.cpp
@@ -157,9 +157,9 @@ PartitionCoreModule::doInit()
 
     // Remove the device which contains / from the list
     for ( QList< Device* >::iterator it = devices.begin(); it != devices.end(); )
-        if ( hasRootPartition( *it ) ||
+        if ( *it && ( hasRootPartition( *it ) ||
              (*it)->deviceNode().startsWith( "/dev/zram") ||
-             isIso9660( *it ) )
+             isIso9660( *it ) ) )
             it = devices.erase( it );
         else
             ++it;
diff --git a/src/modules/partition/core/PartitionIterator.cpp b/src/modules/partition/core/PartitionIterator.cpp
index df1a2e4d76639b785c13627b496a4d67d0e253ab..26fa1df8c9eff3ba6e2013fd09c286a1571926a5 100644
--- a/src/modules/partition/core/PartitionIterator.cpp
+++ b/src/modules/partition/core/PartitionIterator.cpp
@@ -2,6 +2,7 @@
  *
  *   Copyright 2014, Aurélien Gâteau <agateau@kde.org>
  *   Copyright 2015, Teo Mrnjavac <teo@kde.org>
+ *   Copyright 2017, Adriaan de Groot <groot@kde.org>
  *
  *   Calamares is free software: you can redistribute it and/or modify
  *   it under the terms of the GNU General Public License as published by
@@ -83,6 +84,8 @@ PartitionIterator::operator!=( const PartitionIterator& other ) const
 PartitionIterator
 PartitionIterator::begin( Device* device )
 {
+    if ( !device )
+        return PartitionIterator( nullptr );
     Q_ASSERT(device);
     PartitionTable* table = device->partitionTable();
     if ( !table )
@@ -106,6 +109,8 @@ PartitionIterator::begin( PartitionTable* table )
 PartitionIterator
 PartitionIterator::end( Device* device )
 {
+    if ( !device )
+        return PartitionIterator( nullptr );
     PartitionTable* table = device->partitionTable();
     if ( !table )
         return PartitionIterator( nullptr );