From 382e1e54016fc7c1fd26fe1ae186b1e3a0e15f39 Mon Sep 17 00:00:00 2001 From: Leandro Lucarella Date: Fri, 19 Sep 2003 03:43:41 +0000 Subject: [PATCH] Correcciones. --- dllist.cpp | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/dllist.cpp b/dllist.cpp index a2994fd..e34e787 100644 --- a/dllist.cpp +++ b/dllist.cpp @@ -14,8 +14,6 @@ * $Id$ */ -// TODO metodos que devuelven NULL si la lista esta vacia. -// poner comentarios en línea simple? #include "dllist.h" DLList::DLList(void): first(NULL), current(NULL), last(NULL) {} @@ -126,6 +124,10 @@ bool DLList::push(void* data) { } void* DLList::shift(void) { + // Si está vacía devuelve NULL. + if (this->first == NULL) { + return NULL; + } /* Primer nodo */ DLListNode* node = this->first; /* Datos del primer nodo. */ @@ -147,6 +149,10 @@ void* DLList::shift(void) { } void* DLList::pop(void) { + // Si está vacía devuelve NULL. + if (this->first == NULL) { + return NULL; + } /* Último nodo */ DLListNode* node = this->last; /* Datos del último nodo. */ @@ -168,6 +174,10 @@ void* DLList::pop(void) { } void* DLList::remove_current(void) { + // Si no hay un nodo seleccionado devuelve NULL. + if (this->current == NULL) { + return NULL; + } /* Nodo actual */ DLListNode* current = this->current; /* Datos del nodo actual. */ -- 2.43.0