Changeset 19f0048 in mainline for uspace/lib/usbhost/src/utility.c
- Timestamp:
- 2018-02-01T02:13:34Z (7 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 17d34a8
- Parents:
- 53fdf8c
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/usbhost/src/utility.c
r53fdf8c r19f0048 297 297 { 298 298 joinable_fibril_t *jf = arg; 299 299 300 jf->worker(jf->arg); 300 301 … … 315 316 return NULL; 316 317 317 jf->fid = fibril_create(joinable_fibril_worker, jf);318 if (!jf->fid) {319 free(jf);320 return NULL;321 }322 323 318 jf->worker = worker; 324 319 jf->arg = arg; … … 326 321 fibril_condvar_initialize(&jf->dead_cv); 327 322 323 if (joinable_fibril_recreate(jf)) { 324 free(jf); 325 return NULL; 326 } 327 328 328 return jf; 329 329 } 330 331 330 332 331 /** … … 353 352 fibril_condvar_wait(&jf->dead_cv, &jf->guard); 354 353 fibril_mutex_unlock(&jf->guard); 354 355 jf->fid = 0; 356 } 357 358 /** 359 * Reinitialize a joinable fibril. 360 */ 361 errno_t joinable_fibril_recreate(joinable_fibril_t *jf) 362 { 363 assert(!jf->fid); 364 365 jf->fid = fibril_create(joinable_fibril_worker, jf); 366 return jf->fid ? EOK : ENOMEM; 355 367 } 356 368
Note:
See TracChangeset
for help on using the changeset viewer.