2004-02-23 22:02:37 +00:00
|
|
|
|
#include "libnazgul.h"
|
|
|
|
|
|
|
|
|
|
// l'id de l'element enlev<65> vas dans oldElemId
|
|
|
|
|
|
|
|
|
|
int msgQueueElemRem(msgQueue * queue, msgQueueElemId oldElemId){
|
|
|
|
|
msgQueueElem * queueOldHeadElem;
|
|
|
|
|
|
2004-02-23 23:20:06 +00:00
|
|
|
|
|
|
|
|
|
if (strcmp(queue->headId,queue->tailId)==0){
|
2004-02-23 22:02:37 +00:00
|
|
|
|
NZG_ERROR("msgQueueElemRem : Empty queue",queue->id);
|
|
|
|
|
goto ERROR;
|
|
|
|
|
}
|
|
|
|
|
strcpy(oldElemId,queue->headId);
|
|
|
|
|
|
|
|
|
|
queueOldHeadElem=msgQueueElemOpen(oldElemId);
|
|
|
|
|
if (queueOldHeadElem == NULL){
|
|
|
|
|
NZG_ERROR("msgQueueElemOpen",oldElemId);
|
|
|
|
|
goto ERROR;
|
|
|
|
|
}
|
|
|
|
|
strcpy(queue->headId,queueOldHeadElem->next);
|
|
|
|
|
if (msgQueueElemClose(queueOldHeadElem)<0 ){
|
|
|
|
|
NZG_ERROR("msgQueueElemClose",oldElemId);
|
|
|
|
|
goto ERROR;
|
|
|
|
|
|
|
|
|
|
}
|
2004-02-23 23:20:06 +00:00
|
|
|
|
|
|
|
|
|
return 0;
|
2004-02-23 22:02:37 +00:00
|
|
|
|
ERROR:
|
|
|
|
|
return -1;
|
|
|
|
|
}
|