Changes in uspace/srv/hid/console/console.c [024fcc5:cccc091] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/hid/console/console.c
r024fcc5 rcccc091 344 344 } 345 345 346 static console_t *cons_get_active_uspace(void)347 {348 fibril_mutex_lock(&switch_mtx);349 350 console_t *active_uspace = active_console;351 if (active_uspace == kernel_console) {352 active_uspace = prev_console;353 }354 assert(active_uspace != kernel_console);355 356 fibril_mutex_unlock(&switch_mtx);357 358 return active_uspace;359 }360 361 346 static ssize_t limit(ssize_t val, ssize_t lo, ssize_t hi) 362 347 { … … 481 466 event->c = c; 482 467 483 /* Kernel console does not read events 484 * from us, so we will redirect them 485 * to the (last) active userspace console 486 * if necessary. 487 */ 488 console_t *target_console = cons_get_active_uspace(); 489 490 prodcons_produce(&target_console->input_pc, 491 &event->link); 468 prodcons_produce(&active_console->input_pc, &event->link); 492 469 } 493 470 … … 927 904 atomic_set(&consoles[i].refcnt, 0); 928 905 fibril_mutex_initialize(&consoles[i].mtx); 929 prodcons_initialize(&consoles[i].input_pc);930 906 931 907 if (graphics_state == GRAPHICS_FULL) { … … 966 942 } 967 943 944 prodcons_initialize(&consoles[i].input_pc); 968 945 cons_redraw_state(&consoles[i]); 969 946
Note:
See TracChangeset
for help on using the changeset viewer.