--- rxvt-unicode/src/xdefaults.C 2007/09/12 21:06:08 1.114 +++ rxvt-unicode/src/xdefaults.C 2007/10/09 15:23:59 1.115 @@ -549,7 +549,7 @@ if (optList[entry].doff != -1) { - if (flag == resval_on && !argv [i+1]) + if (flag == resval_on && i+1 == argc) rxvt_fatal ("option '%s' needs an argument, aborting.\n", argv [i]); rs[optList[entry].doff] = flag == resval_on ? argv[++i] : resval_undef; @@ -567,10 +567,8 @@ #ifdef KEYSYM_RESOURCE if (!strncmp (opt, "keysym.", sizeof ("keysym.") - 1)) { - const char *str = argv[++i]; - - if (str != NULL) - parse_keysym (opt + sizeof ("keysym.") - 1, str); + if (i+1 < argc) + parse_keysym (opt + sizeof ("keysym.") - 1, argv[++i]); } else #endif