diff --git a/src/CommandListOWN.cpp b/src/CommandListOWN.cpp
index ce538a890d23079d3c2c15d9bcaf57719ffce832..c3edacbb83c8ec5325c67281701c481579701c58 100644
--- a/src/CommandListOWN.cpp
+++ b/src/CommandListOWN.cpp
@@ -192,7 +192,10 @@ std::shared_ptr<ICommand> CommandList::moveUp(unsigned int _pos)
     prevPtr->getPrev()->setNext(ptr);
     ptr->setPrev(prevPtr->getPrev());
 
-    ptr->getNext()->setPrev(prevPtr);
+    if (ptr->getNext() != nullptr) // -> not last element
+    {
+        ptr->getNext()->setPrev(prevPtr);
+    }
     prevPtr->setNext(ptr->getNext());
 
     prevPtr->setPrev(ptr);
@@ -221,7 +224,10 @@ std::shared_ptr<ICommand> CommandList::moveDown(unsigned int _pos)
     ptr->getPrev()->setNext(nextPtr);
     nextPtr->setPrev(ptr->getPrev());
 
-    nextPtr->getNext()->setPrev(ptr);
+    if (nextPtr->getNext() != nullptr) // -> not pre last element
+    {
+        nextPtr->getNext()->setPrev(ptr);
+    }
     ptr->setNext(nextPtr->getNext());
 
     ptr->setPrev(nextPtr);