diff --git a/allocate.c b/allocate.c
index b59f4ca36d12cfa5ae7ae8e706a8c023778ba65b..f71b3c2f77699006287ceca23d5b5f47c6aeb116 100644
--- a/allocate.c
+++ b/allocate.c
@@ -395,7 +395,7 @@ void advanceProcessQueue(llist *processQueue, int currentTime, int deltaTime, ll
                          int *numProcessesLeft, int *numProcessComplete, int cpuID) {
     process *headProcess;
     process *paralizedProcess;
-    char parentPid[11];
+    char * parentPid;
 
     headProcess = headData(processQueue);
 
@@ -407,7 +407,7 @@ void advanceProcessQueue(llist *processQueue, int currentTime, int deltaTime, ll
             headProcess->timeRemaining = 0;
             if (headProcess->parallelisable == 'p') {
                 //printf("process had finished, and was a paralized subprocess\n");
-                parentPid[0] = strtok(headProcess->processID, ".");//todo to get rid of warning strncopy
+                parentPid = strtok(headProcess->processID, ".");
                 paralizedProcess = parallelParent(paralellProcesses, parentPid);
                 paralizedProcess->subProcsRunning -= 1;
                 if (paralizedProcess->subProcsRunning == 0) {