… | |
… | |
170 | pointer_ev (this, &rxvt_term::pointer_cb), |
170 | pointer_ev (this, &rxvt_term::pointer_cb), |
171 | #endif |
171 | #endif |
172 | #ifdef USE_XIM |
172 | #ifdef USE_XIM |
173 | im_ev (this, &rxvt_term::im_cb), |
173 | im_ev (this, &rxvt_term::im_cb), |
174 | #endif |
174 | #endif |
|
|
175 | #ifndef NO_BELL |
|
|
176 | bell_ev (this, &rxvt_term::bell_cb), |
|
|
177 | #endif |
175 | termwin_ev (this, &rxvt_term::x_cb), |
178 | termwin_ev (this, &rxvt_term::x_cb), |
176 | vt_ev (this, &rxvt_term::x_cb), |
179 | vt_ev (this, &rxvt_term::x_cb), |
177 | child_ev (this, &rxvt_term::child_cb), |
180 | child_ev (this, &rxvt_term::child_cb), |
178 | check_ev (this, &rxvt_term::check_cb), |
181 | check_ev (this, &rxvt_term::check_cb), |
179 | flush_ev (this, &rxvt_term::flush_cb), |
182 | flush_ev (this, &rxvt_term::flush_cb), |
… | |
… | |
447 | _exit (EXIT_FAILURE); |
450 | _exit (EXIT_FAILURE); |
448 | } |
451 | } |
449 | |
452 | |
450 | /*----------------------------------------------------------------------*/ |
453 | /*----------------------------------------------------------------------*/ |
451 | bool |
454 | bool |
452 | rxvt_term::init (int argc, const char *const *argv) |
455 | rxvt_term::init (int argc, const char *const *argv, stringvec *envv) |
453 | { |
456 | { |
|
|
457 | this->envv = envv; |
|
|
458 | |
454 | SET_R (this); |
459 | SET_R (this); |
455 | set_locale (""); |
460 | set_locale (""); |
456 | set_environ (envv); // few things in X do not call setlocale :( |
461 | set_environ (envv); // few things in X do not call setlocale :( |
457 | |
462 | |
458 | if (!init_vars ()) |
463 | if (!init_vars ()) |
… | |
… | |
469 | #ifdef HAVE_SCROLLBARS |
474 | #ifdef HAVE_SCROLLBARS |
470 | if (OPTION (Opt_scrollBar)) |
475 | if (OPTION (Opt_scrollBar)) |
471 | scrollBar.setIdle (); /* set existence for size calculations */ |
476 | scrollBar.setIdle (); /* set existence for size calculations */ |
472 | #endif |
477 | #endif |
473 | |
478 | |
474 | pty = rxvt_new_ptytty (); |
479 | pty = ptytty_new (); |
475 | |
480 | |
476 | create_windows (argc, argv); |
481 | create_windows (argc, argv); |
477 | |
482 | |
478 | dDisp; |
483 | dDisp; |
479 | |
484 | |
… | |
… | |
554 | // start the helper process and drop privileges |
559 | // start the helper process and drop privileges |
555 | if (uid != geteuid () |
560 | if (uid != geteuid () |
556 | || gid != getegid ()) |
561 | || gid != getegid ()) |
557 | { |
562 | { |
558 | #if PTYTTY_HELPER |
563 | #if PTYTTY_HELPER |
559 | rxvt_ptytty_server (); |
564 | ptytty_server (); |
560 | #else |
565 | #else |
561 | rxvt_warn ("running setuid/setgid without pty helper compiled in, continuing unprivileged.\n"); |
566 | rxvt_warn ("running setuid/setgid without pty helper compiled in, continuing unprivileged.\n"); |
562 | #endif |
567 | #endif |
563 | |
568 | |
564 | // drop privileges |
569 | // drop privileges |