Changeset 133 in flair-src for trunk/lib/FlairCore/src/SharedMem_impl.cpp
- Timestamp:
- 02/09/17 11:08:31 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/lib/FlairCore/src/SharedMem_impl.cpp
r15 r133 30 30 this->size = size; 31 31 this->self = self; 32 char errorMsg[256]; 32 33 33 34 #ifdef __XENO__ … … 40 41 } 41 42 if (status != 0) { 42 self->Err("rt_heap_create error (%s)\n", strerror (-status));43 self->Err("rt_heap_create error (%s)\n", strerror_r(-status, errorMsg, sizeof(errorMsg))); 43 44 return; 44 45 } … … 47 48 status = rt_heap_alloc(&heap, 0, TM_NONBLOCK, &ptr); 48 49 if (status != 0) { 49 self->Err("rt_heap_alloc error (%s)\n", strerror (-status));50 self->Err("rt_heap_alloc error (%s)\n", strerror_r(-status, errorMsg, sizeof(errorMsg))); 50 51 } 51 52 mem_segment = (char *)ptr; … … 59 60 } 60 61 if (status != 0) { 61 self->Err("rt_mutex_create error (%s)\n", strerror (-status));62 self->Err("rt_mutex_create error (%s)\n", strerror_r(-status, errorMsg, sizeof(errorMsg))); 62 63 return; 63 64 } … … 87 88 SharedMem_impl::~SharedMem_impl() { 88 89 int status; 90 char errorMsg[256]; 91 89 92 #ifdef __XENO__ 90 93 /* unnecessary because heap is opened in H_SINGLE mode … … 92 95 if(status!=0) 93 96 { 94 self->Err("rt_heap_free error (%s)\n",strerror (-status));97 self->Err("rt_heap_free error (%s)\n",strerror_r(-status, errorMsg, sizeof(errorMsg))); 95 98 } 96 99 */ … … 99 102 status = rt_heap_delete(&heap); 100 103 if (status != 0) { 101 self->Err("rt_heap_delete error (%s)\n", strerror (-status));104 self->Err("rt_heap_delete error (%s)\n", strerror_r(-status, errorMsg, sizeof(errorMsg))); 102 105 } 103 106 } … … 106 109 status = rt_mutex_delete(&mutex); 107 110 if (status != 0) { 108 self->Err("error destroying mutex (%s)\n", strerror (-status));111 self->Err("error destroying mutex (%s)\n", strerror_r(-status, errorMsg, sizeof(errorMsg))); 109 112 } 110 113 } … … 112 115 status = munmap(mem_segment, size); 113 116 if (status != 0) { 114 self->Err("Failed to unmap memory (%s)\n", strerror (-status));117 self->Err("Failed to unmap memory (%s)\n", strerror_r(-status, errorMsg, sizeof(errorMsg))); 115 118 } 116 119 117 120 status = close(fd); 118 121 if (status != 0) { 119 self->Err("Failed to close file (%s)\n", strerror (-status));122 self->Err("Failed to close file (%s)\n", strerror_r(-status, errorMsg, sizeof(errorMsg))); 120 123 } 121 124 … … 124 127 if(status!=0) 125 128 { 126 self->Err("Failed to unlink memory (%s)\n",strerror (-status));129 self->Err("Failed to unlink memory (%s)\n",strerror_r(-status, errorMsg, sizeof(errorMsg))); 127 130 } 128 131 */ … … 131 134 if(status!=0) 132 135 { 133 self->Err("Failed to unlink semaphore (%s)\n",strerror (-status));136 self->Err("Failed to unlink semaphore (%s)\n",strerror_r(-status, errorMsg, sizeof(errorMsg))); 134 137 }*/ 135 138 136 139 status = sem_close(sem); 137 140 if (status != 0) { 138 self->Err("Failed to close semaphore (%s)\n", strerror (-status));141 self->Err("Failed to close semaphore (%s)\n", strerror_r(-status, errorMsg, sizeof(errorMsg))); 139 142 } 140 143 #endif … … 144 147 #ifdef __XENO__ 145 148 int status = rt_mutex_acquire(&mutex, TM_INFINITE); 146 if (status != 0) 147 self->Err("error (%s)\n", strerror(-status)); 149 if (status != 0) { 150 char errorMsg[256]; 151 self->Err("error (%s)\n", strerror_r(-status, errorMsg, sizeof(errorMsg))); 152 } 148 153 memcpy(mem_segment, buf, size); 149 154 status = rt_mutex_release(&mutex); 150 if (status != 0) 151 self->Err("error (%s)\n", strerror(-status)); 155 if (status != 0) { 156 char errorMsg[256]; 157 self->Err("error (%s)\n", strerror_r(-status, errorMsg, sizeof(errorMsg))); 158 } 152 159 #else 153 160 sem_wait(sem); … … 160 167 #ifdef __XENO__ 161 168 int status = rt_mutex_acquire(&mutex, TM_INFINITE); 162 if (status != 0) 163 self->Err("error (%s)\n", strerror(-status)); 169 if (status != 0) { 170 char errorMsg[256]; 171 self->Err("error (%s)\n", strerror_r(-status, errorMsg, sizeof(errorMsg))); 172 } 164 173 memcpy(buf, mem_segment, size); 165 174 status = rt_mutex_release(&mutex); 166 if (status != 0) 167 self->Err("error (%s)\n", strerror(-status)); 175 if (status != 0) { 176 char errorMsg[256]; 177 self->Err("error (%s)\n", strerror_r(-status, errorMsg, sizeof(errorMsg))); 178 } 168 179 #else 169 180 sem_wait(sem);
Note:
See TracChangeset
for help on using the changeset viewer.