Changeset 1f2b07a in mainline for uspace/lib/c/generic/inet/udp.c
- Timestamp:
- 2015-06-08T22:00:22Z (10 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- dc0d6e5d
- Parents:
- 204ba47
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/generic/inet/udp.c
r204ba47 r1f2b07a 73 73 74 74 list_initialize(&udp->assoc); 75 fibril_mutex_initialize(&udp->lock); 76 fibril_condvar_initialize(&udp->cv); 75 77 76 78 rc = loc_service_get_id(SERVICE_NAME_UDP, &udp_svcid, … … 107 109 108 110 async_hangup(udp->sess); 111 112 fibril_mutex_lock(&udp->lock); 113 while (!udp->cb_done) 114 fibril_condvar_wait(&udp->cv, &udp->lock); 115 fibril_mutex_unlock(&udp->lock); 116 109 117 free(udp); 110 118 } … … 343 351 344 352 if (!IPC_GET_IMETHOD(call)) { 345 /* TODO: Handle hangup */346 return;353 /* Hangup */ 354 goto out; 347 355 } 348 356 … … 356 364 } 357 365 } 366 out: 367 fibril_mutex_lock(&udp->lock); 368 udp->cb_done = true; 369 fibril_mutex_unlock(&udp->lock); 370 fibril_condvar_broadcast(&udp->cv); 358 371 } 359 372
Note:
See TracChangeset
for help on using the changeset viewer.