--- rxvt-unicode/src/rxvt.C 2004/08/15 02:17:32 1.9 +++ rxvt-unicode/src/rxvt.C 2006/02/20 22:42:00 1.15 @@ -1,9 +1,9 @@ -/*--------------------------------*-C-*---------------------------------* +/*----------------------------------------------------------------------* * File: rxvt.C *----------------------------------------------------------------------* * * All portions of code are copyright by their respective author/s. - * Copyright (c) 2003-2004 Marc Lehmann + * Copyright (c) 2003-2006 Marc Lehmann * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -23,6 +23,9 @@ #include "../config.h" #include "rxvt.h" +#include +#include + int main (int argc, const char *const *argv) try @@ -31,10 +34,25 @@ rxvt_term *t = new rxvt_term; - if (!t->init (argc, argv)) +#if ENABLE_PERL + stringvec *args = new stringvec; + stringvec *envv = new stringvec; + + for (int i = 0; i < argc; i++) + args->push_back (strdup (argv [i])); + + for (char **var = environ; *var; var++) + envv->push_back (strdup (*var)); + + envv->push_back (0); + + if (!t->init (args, envv)) +#else + if (!t->init (argc, argv, 0)) +#endif return EXIT_FAILURE; - iom.loop (); + io_manager::loop (); return EXIT_SUCCESS; }