--- rxvt-unicode/src/rxvtperl.xs 2020/01/20 09:35:12 1.246 +++ rxvt-unicode/src/rxvtperl.xs 2021/07/14 12:39:57 1.251 @@ -372,15 +372,20 @@ static PerlInterpreter *perl; +#if 0 /* we are not a library anymore, so doing this is just not worth it */ +/*THINK/TODO: this has the side effect of, of course, not calling destructors. */ +/* but therse are not guaranteed anyway... */ rxvt_perl_interp::~rxvt_perl_interp () { if (perl) { + localise_env set_environ (perl_environ); perl_destruct (perl); perl_free (perl); PERL_SYS_TERM (); } } +#endif void rxvt_perl_interp::init () @@ -1048,8 +1053,8 @@ const_iv (PrivMode_MouseBtnEvent), const_iv (PrivMode_MouseAnyEvent), const_iv (PrivMode_BracketPaste), - const_iv (PrivMode_ExtModeMouse), - const_iv (PrivMode_ExtMouseRight), + const_iv (PrivMode_ExtMouseUTF8), + const_iv (PrivMode_ExtMouseUrxvt), const_iv (PrivMode_BlinkingCursor), const_iv (PrivMode_mouse_report), const_iv (PrivMode_Default), @@ -1564,9 +1569,8 @@ CODE: { RETVAL = THIS->view_start; - - if (newval <= 0) - THIS->scr_changeview (max (newval, THIS->top_row)); + if (items > 1) + THIS->scr_changeview (newval); } OUTPUT: RETVAL @@ -1786,7 +1790,7 @@ if (*s == NOCHAR) ; else if (IS_COMPOSE (*s)) - dlen += rxvt_composite.expand (*s, 0); + dlen += rxvt_composite.expand (*s); else dlen++;