diff --git a/allocate.c b/allocate.c
index d817f18616a37826a7b920abe60180237402a361..d10457f7306551b24960441388fc25f8c21cf277 100644
--- a/allocate.c
+++ b/allocate.c
@@ -172,8 +172,9 @@ int main(int argc, char *argv[]) {
                 exit(1);
             }
             //  Log finished processes.
-            struct node * currNode  = (struct node *) completedProcesses;
-            process * currProc = currNode->data;
+            struct node * currNode  = ((struct node *) completedProcesses);
+            process * currProc;
+            if (currNode) currProc = currNode->data;
             while ( currNode ){
                 if ( currProc->timeCompleted >= currentTime ) {
                     printf("%d,FINISHED,pid=%s,proc_remaining=%d\n",