scan_item = (HV *)SvRV(sv_2mortal(av_shift(entries)));
temp = hv_fetch(scan_item, "TERM", 4, 1);
ptr = SvPV(*temp, len);
scan_item = (HV *)SvRV(sv_2mortal(av_shift(entries)));
temp = hv_fetch(scan_item, "TERM", 4, 1);
ptr = SvPV(*temp, len);
- buffer->term = (char *) odr_malloc (rr->stream, len + 1);
- strcpy(buffer->term, ptr);
+ buffer->term = odr_strdupn(rr->stream, ptr, len);
temp = hv_fetch(scan_item, "OCCURRENCE", 10, 1);
buffer->occurrences = SvIV(*temp);
if (hv_exists(scan_item, "DISPLAY_TERM", 12))
{
temp = hv_fetch(scan_item, "DISPLAY_TERM", 12, 1);
ptr = SvPV(*temp, len);
temp = hv_fetch(scan_item, "OCCURRENCE", 10, 1);
buffer->occurrences = SvIV(*temp);
if (hv_exists(scan_item, "DISPLAY_TERM", 12))
{
temp = hv_fetch(scan_item, "DISPLAY_TERM", 12, 1);
ptr = SvPV(*temp, len);
- buffer->display_term = (char *) odr_malloc (rr->stream, len + 1);
- strcpy(buffer->display_term, ptr);
+ buffer->display_term = odr_strdupn(rr->stream, ptr,len);