From e2692e854706c6884080d7dda68eacbcef48c0f6 Mon Sep 17 00:00:00 2001 From: "Glenn Y. Rolland" Date: Wed, 4 Mar 2020 00:00:08 +0100 Subject: [PATCH] Fix pointer display --- src/allocate.c | 3 ++- src/bufferMap.c | 15 +++++++++------ src/free.c | 2 +- src/put.c | 18 +++++++++++------- src/spaceCreate.c | 2 +- src/spaceOpen.c | 2 +- 6 files changed, 25 insertions(+), 17 deletions(-) diff --git a/src/allocate.c b/src/allocate.c index f74a8fb..0f38c6c 100644 --- a/src/allocate.c +++ b/src/allocate.c @@ -204,8 +204,9 @@ if (mSPoolDataTabAddr==NULL){ msgPoolDataTabClose(space,mSPoolDataTabAddr); msgPoolDataTabUnlock(space); - printf( "alloc de 0x%08x\n", (int)resultAddr); + printf( "alloc de %p\n", (void *)resultAddr); return resultAddr; + ERROR: NZG_ERROR("msgAllocate","error processing"); msgPoolDataTabUnlock(space); diff --git a/src/bufferMap.c b/src/bufferMap.c index f22283c..00213a6 100644 --- a/src/bufferMap.c +++ b/src/bufferMap.c @@ -9,8 +9,11 @@ void * msgBufferMap(msgPoolData * poolDataTab, int poolIndex, int bufferIndex) { printf("Mapping buffer (%d,%d)\n",poolIndex,bufferIndex); // TODO: récuperer l'ID du BufferInfoTab; strcpy(poolBufferTabId, poolDataTab[poolIndex].poolId); - bufferSize=poolDataTab[poolIndex].bufferSize; - bufferNb=poolDataTab[poolIndex].bufferNb; + bufferSize = poolDataTab[poolIndex].bufferSize; + bufferNb = poolDataTab[poolIndex].bufferNb; + if (bufferNb < 0) { + // do something with bufferNb + } poolBufferTabFd=shm_open(poolBufferTabId,O_RDWR,SHM_DEFAULT_MODE); if (poolBufferTabFd<0){ @@ -30,13 +33,13 @@ void * msgBufferMap(msgPoolData * poolDataTab, int poolIndex, int bufferIndex) { NZG_ERROR("mmap", poolBufferTabId); goto ERROR; } - printf( "Mapped from 0x%08x to 0x%08x\n", - (int)resultAddr, - (int)resultAddr+ bufferSize*(bufferIndex+1) + printf( "Mapped from %p to %p\n", + (void *)resultAddr, + (void *)(resultAddr+ bufferSize*(bufferIndex+1)) ); resultAddr=resultAddr +( bufferSize*bufferIndex); - printf( "Moved to 0x%08x\n",(int)resultAddr ); + printf( "Moved to %p\n",(void *)resultAddr ); /* mprotect( resultAddr, diff --git a/src/free.c b/src/free.c index 7d5766e..246bac4 100644 --- a/src/free.c +++ b/src/free.c @@ -11,7 +11,7 @@ int msgFree(msgSpace * space, void * addr){ int bufferNb; int bufferSize; void * realAddr; - printf("[ FREE 0x%08x ]\n",(int)addr); + printf("[ FREE %p ]\n",(void *)addr); /* on acquiert le droit de modifier les infos sur la ressource */ /* on protege le tableau des associations */ if (msgPoolDataTabLock(space) <0){ diff --git a/src/put.c b/src/put.c index b3ee344..5a1295b 100644 --- a/src/put.c +++ b/src/put.c @@ -17,13 +17,16 @@ int msgPut(msgSpace * space,int queueIndex, void * addr){ NZG_ERROR("msgPoolDataTabOpen",space->poolDataTabId); goto ERROR; } - err=msgBufferGetProcAttach( - poolDataTabAddr, - space->poolNb, - &poolIndex, - &bufferIndex, - addr - ); + err = msgBufferGetProcAttach( + poolDataTabAddr, + space->poolNb, + &poolIndex, + &bufferIndex, + addr + ); + if (err) { + //FIXME + } // ouvrir la queue avec le bon index msgQueueIdIntern(queueId,space->externId,queueIndex); @@ -63,6 +66,7 @@ int msgPut(msgSpace * space,int queueIndex, void * addr){ // on laisse une nouvelle ressource de la liste au get msgQueueReadUnlock(space->externId,queueIndex); return 0; + ERROR: return -1; } diff --git a/src/spaceCreate.c b/src/spaceCreate.c index 1b08b88..9201177 100644 --- a/src/spaceCreate.c +++ b/src/spaceCreate.c @@ -97,7 +97,7 @@ msgSpace * msgSpaceCreate( goto ERROR; } - printf( "CREAT: msgSpace mapped to 0x%08x in %d\n", (int)space,(int)getpid()); + printf( "CREAT: msgSpace mapped to 0x%08lx in %d\n", (long)space,(int)getpid()); /* on ferme le descripteur du fichier */ close(mSFd); diff --git a/src/spaceOpen.c b/src/spaceOpen.c index d04ccf7..6dac1b3 100644 --- a/src/spaceOpen.c +++ b/src/spaceOpen.c @@ -19,7 +19,7 @@ msgSpace * msgSpaceOpen(msgSpaceId externId){ } mSAddr=mmap(NULL,sizeof(msgSpace),PROT_READ|PROT_WRITE,MAP_SHARED,shmFd,(off_t)0); - printf( "OPEN: msgSpace mapped to 0x%08x in %d\n", (int)mSAddr,(int)getpid()); + printf( "OPEN: msgSpace mapped to %p in %d\n", (void *)mSAddr,(int)getpid()); return mSAddr; }