Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/hid/remcons/remcons.c

    r5d94b16c r1c635d6  
    4040#include <str_error.h>
    4141#include <loc.h>
    42 #include <event.h>
    4342#include <io/keycode.h>
    4443#include <align.h>
     
    8079static int remcons_get_size(con_srv_t *, sysarg_t *, sysarg_t *);
    8180static int remcons_get_color_cap(con_srv_t *, console_caps_t *);
    82 static int remcons_get_event(con_srv_t *, kbd_event_t *);
     81static int remcons_get_event(con_srv_t *, cons_event_t *);
    8382
    8483static con_ops_t con_ops = {
     
    185184}
    186185
    187 static int remcons_get_event(con_srv_t *srv, kbd_event_t *event)
    188 {
    189         telnet_user_t *user = srv_to_user(srv);
     186static int remcons_get_event(con_srv_t *srv, cons_event_t *event)
     187{
     188        telnet_user_t *user = srv_to_user(srv);
     189        kbd_event_t kevent;
    190190        int rc;
    191191
    192         rc = telnet_user_get_next_keyboard_event(user, event);
     192        rc = telnet_user_get_next_keyboard_event(user, &kevent);
    193193        if (rc != EOK) {
    194194                /* XXX What? */
     
    196196                return EOK;
    197197        }
     198
     199        event->type = CEV_KEY;
     200        event->ev.key = kevent;
    198201
    199202        return EOK;
     
    221224{
    222225        telnet_user_t *user = arg;
    223         int rc;
    224 
    225         char term[LOC_NAME_MAXLEN];
    226         snprintf(term, LOC_NAME_MAXLEN, "%s/%s", "/loc", user->service_name);
    227 
     226       
    228227        task_id_t task;
    229         rc = task_spawnl(&task, APP_GETTERM, APP_GETTERM, "-w", term, APP_SHELL, NULL);
    230         if (rc != EOK) {
    231                 telnet_user_error(user, "Spawning `%s -w %s %s' failed: %s.",
    232                     APP_GETTERM, term, APP_SHELL, str_error(rc));
     228        task_wait_t wait;
     229        int rc = task_spawnl(&task, &wait, APP_GETTERM, APP_GETTERM, user->service_name,
     230            "/loc", "--msg", "--", APP_SHELL, NULL);
     231        if (rc != EOK) {
     232                telnet_user_error(user, "Spawning `%s %s /loc --msg -- %s' "
     233                    "failed: %s.", APP_GETTERM, user->service_name, APP_SHELL,
     234                    str_error(rc));
    233235                fibril_mutex_lock(&user->guard);
    234236                user->task_finished = true;
     
    245247        task_exit_t task_exit;
    246248        int task_retval;
    247         task_wait(task, &task_exit, &task_retval);
     249        task_wait(&wait, &task_exit, &task_retval);
    248250        telnet_user_log(user, "%s terminated %s, exit code %d.", APP_GETTERM,
    249251            task_exit == TASK_EXIT_NORMAL ? "normally" : "unexpectedly",
Note: See TracChangeset for help on using the changeset viewer.