*** empty log message ***

This commit is contained in:
glenux 2004-02-25 23:49:39 +00:00 committed by Glenn Y. Rolland
parent 0d75ebe2e9
commit 546086f5f9
2 changed files with 73 additions and 31 deletions

View file

@ -55,13 +55,13 @@ msgSpace * msgSpaceCreate(
int err;
if ((err=msgSpaceListFindId(nzgId)) < 1){
if (err==0){
// soit le msgSpace existe deja
NZG_ERROR("spaceListFindId : existing ",nzgId);
} else {
// zut, il y a soit une erreur
NZG_ERROR("spaceListFindId : error ",nzgId);
}
msgSpaceListUnlock();
// zut, il y a soit une erreur
// soit le msgSpace existe deja
// on quitte
goto ERROR;
}

View file

@ -1,41 +1,83 @@
#include "libnazgul.h"
int msgSpaceListRem(msgSpaceListElemId oldElemId){
msgSpaceListElem * listOldHeadElem;
msgSpaceList * list=NULL;
#define DEBUG 1
int msgSpaceListRem(msgSpaceId spaceId){
msgSpaceList * list;
msgSpaceListElemId listHeadElemId;
msgSpaceListElemId listTailElemId;
msgSpaceListId listId;
list=msgSpaceListOpen();
if (strcmp(list->headId,list->id)==0){
NZG_ERROR("msgSpaceListElemRem : Empty list",list->id);
if (list==NULL){
NZG_ERROR("msgSpaceListOpen","");
goto ERROR;
}
strcpy(oldElemId,list->headId);
listOldHeadElem=msgSpaceListElemOpen(oldElemId);
if (listOldHeadElem == NULL){
NZG_ERROR("msgSpaceListElemOpen",oldElemId);
if (DEBUG) { printf("Before ListStrCpy\n"); }
strcpy(listHeadElemId,list->headId);
strcpy(listTailElemId,list->tailId);
strcpy(listId,list->id);
if (DEBUG) { printf("After ListStrCpy\n"); }
if (msgSpaceListClose(list) < 0){
NZG_ERROR("msgSpaceListClose","");
goto ERROR;
}
if ((strcmp(listHeadElemId,listId)==0)
&& strcmp(listTailElemId,listId)==0){
if (DEBUG) { printf("SpaceList : vide\n"); }
return 1;
} else {
printf("RechercheRem dans l'element %s\n",listHeadElemId);
return msgSpaceListElemRem(listHeadElemId,spaceId);
}
ERROR:
return -1;
}
// on indique ŕ la list le nouveau premier element
strcpy(list->headId,listOldHeadElem->next);
// on fait en sorte que l'element ne connaisse plus
// ses voisins (utile pour le Delete)
strcpy(listOldHeadElem->next,listOldHeadElem->id);
int msgSpaceListElemRem(msgSpaceListElemId elemId,msgSpaceId spaceId){
msgSpaceListElem * listElem;
msgSpaceListElemId listElemIdNext;
msgSpaceId currentElemSpaceId;
if (msgSpaceListElemClose(listOldHeadElem)<0 ){
NZG_ERROR("msgSpaceListElemClose",oldElemId);
listElem=msgSpaceListElemOpen(elemId);
if (listElem==NULL){
NZG_ERROR("msgSpaceListElemOpen",elemId);
goto ERROR;
}
strcpy(listElemIdNext,listElem->next);
strcpy(currentElemSpaceId,listElem->spaceId);
printf("Current ListElem: Next:%s, Sid:%s\n",
listElemIdNext,currentElemSpaceId);
if (msgSpaceListElemClose(listElem) <0){
NZG_ERROR("msgSpaceListElemClose",elemId);
goto ERROR;
}
printf("comparisons...\n");
if (strcmp(listElemIdNext,elemId)==0){
//on a rien trouvé avant et on est au bout
return -1;
} else {
msgSpaceListElem * listElemNext;
msgSpaceListElemId spaceIdNext;
listElemNext=msgSpaceListElemOpen(listElemIdNext);
strcpy(spaceIdNext,listElemNext->spaceId);
strcpy(listElemIdNextNext,listElemNext->next);
msgSpaceListElemClose(listElemNext);
if (strcmp(spaceIdNext,spaceId)==0) {
printf("Found/Rem %s in spaceList !\n",spaceId);
// l'element suivant correspond
// on ouvre l'elem courant
// si l'id(nextnext) == id(next) alors on met notre propre id
// sinon on met notre propre id dans next
// on unlinke l'ancien suivant
return 0;
} else {
return msgSpaceListElemRem(listElemIdNext,spaceId);
}
msgSpaceListClose(list);
}
return 0;
ERROR:
return -1;
}