--- EV/EV.xs 2007/11/24 08:28:10 1.78 +++ EV/EV.xs 2007/11/24 16:57:30 1.79 @@ -611,6 +611,12 @@ CODE: { RETVAL = w->data ? newSVsv (w->data) : &PL_sv_undef; + + if (items > 1) + { + SvREFCNT_dec (w->data); + w->data = newSVsv (new_data); + } } OUTPUT: RETVAL