76 |
|
suspend_thread(input_thread); // Unblock thread |
77 |
|
snooze(1000); |
78 |
|
resume_thread(input_thread); |
79 |
< |
wait_for_thread(input_thread, &l); |
79 |
> |
while (wait_for_thread(input_thread, &l) == B_INTERRUPTED) ; |
80 |
|
} |
81 |
|
if (output_thread > 0) { |
82 |
|
send_data(output_thread, CMD_QUIT, NULL, 0); |
83 |
|
suspend_thread(output_thread); // Unblock thread |
84 |
|
snooze(1000); |
85 |
|
resume_thread(output_thread); |
86 |
< |
wait_for_thread(output_thread, &l); |
86 |
> |
while (wait_for_thread(output_thread, &l) == B_INTERRUPTED) ; |
87 |
|
} |
88 |
|
acquire_sem(device_sem); |
89 |
|
delete_sem(device_sem); |