Changeset 4193:024769a1636b in roaraudio for roard/emul_rsound.c
- Timestamp:
- 08/15/10 02:22:09 (14 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
roard/emul_rsound.c
r4130 r4193 145 145 146 146 int emul_rsound_vrecv_msg(struct emul_rsound_msg * msg, struct roar_vio_calls * vio) { 147 struct roar_vio_select select; 148 struct roar_vio_selecttv tv = { 149 .sec = 0, 150 .nsec = 0 151 }; 147 152 ssize_t ret; 148 153 int num; … … 150 155 if ( msg == NULL || vio == NULL ) 151 156 return -1; 157 158 ROAR_VIO_SELECT_SETVIO(&select, vio, ROAR_VIO_SELECT_READ); 159 if ( roar_vio_select(&select, 1, &tv, NULL) == -1 ) 160 return -1; 161 162 if ( !(select.eventsa & ROAR_VIO_SELECT_READ) ) { 163 errno = EAGAIN; 164 return -1; 165 } 152 166 153 167 ret = roar_vio_read(vio, msg->header, EMUL_RSOUND_MSG_HEADER_LEN); … … 188 202 189 203 int emul_rsound_vsend_msg(struct emul_rsound_msg * msg, struct roar_vio_calls * vio) { 204 struct roar_vio_select select; 205 struct roar_vio_selecttv tv = { 206 .sec = 0, 207 .nsec = 0 208 }; 190 209 ssize_t ret; 191 210 192 211 if ( msg == NULL || vio == NULL ) 193 212 return -1; 213 214 ROAR_VIO_SELECT_SETVIO(&select, vio, ROAR_VIO_SELECT_WRITE); 215 if ( roar_vio_select(&select, 1, &tv, NULL) == -1 ) 216 return -1; 217 218 if ( !(select.eventsa & ROAR_VIO_SELECT_WRITE) ) { 219 errno = EAGAIN; 220 return -1; 221 } 194 222 195 223 snprintf(msg->header, EMUL_RSOUND_MSG_HEADER_LEN+1, "RSD%5d", (int)msg->datalen);
Note: See TracChangeset
for help on using the changeset viewer.