Diff for /rpl/src/semaphores.c between versions 1.11 and 1.12

version 1.11, 2010/08/18 12:56:55 version 1.12, 2010/08/22 16:38:36
Line 128  sem_getvalue2(sem_t *semaphore, int *val Line 128  sem_getvalue2(sem_t *semaphore, int *val
     unsigned char racine_memoire_OS2[] = "\\SHAREDMEM\\";      unsigned char racine_memoire_OS2[] = "\\SHAREDMEM\\";
 #endif  #endif
   
 #ifndef UNION_SEMUN  
 union semun  
 {  
     int                 val;  
     struct semid_ds     *buf;  
     unsigned short      *array;  
     struct seminfo      *__buf;  
 };  
 #endif  
   
 int  int
 sem_init_SysV(sem_t *semaphore, int shared, unsigned int valeur)  sem_init_SysV(sem_t *semaphore, int shared, unsigned int valeur)
 {  {
Line 162  sem_init_SysV(sem_t *semaphore, int shar Line 152  sem_init_SysV(sem_t *semaphore, int shar
   
     if ((*semaphore).sem == -1)      if ((*semaphore).sem == -1)
     {      {
 perror("sem_init");  
         errno = EINVAL;          errno = EINVAL;
         return(-1);          return(-1);
     }      }
Line 242  sem_destroy_SysV(sem_t *semaphore) Line 231  sem_destroy_SysV(sem_t *semaphore)
         return(0);          return(0);
     }      }
   
     if (semctl((*semaphore).sem, IPC_RMID, 0) == -1)      if (semctl((*semaphore).sem, 0, IPC_RMID) == -1)
     {      {
         return(EINVAL);          return(EINVAL);
     }      }
Line 310  sem_wait_SysV(sem_t *semaphore) Line 299  sem_wait_SysV(sem_t *semaphore)
     {      {
         if (errno != EINTR)          if (errno != EINTR)
         {          {
 perror("sem_wait");  
             errno = EINVAL;              errno = EINVAL;
             return(-1);              return(-1);
         }          }
Line 865  sem_unlink_SysV(const char *nom) Line 853  sem_unlink_SysV(const char *nom)
     }      }
   
     sprintf(nom_absolu, "%s%s", chemin_semaphores_SysV, nom);      sprintf(nom_absolu, "%s%s", chemin_semaphores_SysV, nom);
     semctl(semget(ftok(nom_absolu, 1), 0, 0), IPC_RMID, 0);      semctl(semget(ftok(nom_absolu, 1), 0, 0), 0, IPC_RMID);
   
     if (unlink(nom_absolu) == -1)      if (unlink(nom_absolu) == -1)
     {      {

Removed from v.1.11  
changed lines
  Added in v.1.12


CVSweb interface <joel.bertrand@systella.fr>