Ticket #7425 (closed incoming: fixed)

Opened 17 months ago

Last modified 17 months ago

Regexp crash

Reported by: walker@… Owned by: walker
Priority: minor Milestone:
Keywords: Cc:
Visibility: Private

Description

Regexp crashes when global_eval_context.re_* are not properly restored
to their negative+NULL values after a regexp match.

This can cause a crash, to wit:

> think regeditall(foo,foo,bar,^\(,That was a bad regexp)
#-1 REGEXP ERROR: missing )
> say $0
% Connection to reality closed by a foreign host.

I've found at least one place where g_e_c.re_* aren't being reset, in
fun_regedit. It's only *set* if there's a valid regexp and a match, so
you need multiple patterns, hence the regedit(foo,foo,bar,^\(,blah) so
that it matches first.

Mailing this in for a bugid (You can blame work for giving me this
habit) then will svn commit my fix with that bugid.

- Greg

Change History

Changed 17 months ago by walker

  • owner changed from devteam to walker
  • status changed from new to assigned
  • visibility changed from Public to Private

Changed 17 months ago by walker

  • status changed from assigned to closed
  • resolution set to fixed
Note: See TracTickets for help on using tickets.