It gets stranger. The expression works up to this point:
s/^.*?^[\s]*<tr class=msg(new|old).*?^<td.*?name="Mid".value="([^"]+)".*?^<td>(.*?)<.*?^<td>.*?^[\s]*<a.//sm If I add an h at the end, to make s/^.*?^[\s]*<tr class=msg(new|old).*?^<td.*?name="Mid".value="([^"]+)".*?^<td>(.*?)<.*?^<td>.*?^[\s]*<a.h//sm The CPU maxes out and it just hangs. On Sat, Nov 12, 2005 at 10:58:05PM -0500, Adam Kessel wrote: > The problem is on line 856: > > while ( $tmpPage =~ s/^.*?^[\s]*<tr > class=msg(new|old).*?^<td.*?name="Mid".value="([^"]+)".*?^<td>(.*?)<.*?^<td>.*?^[\s]*<a.href=.*?ShowLetter\?MsgId=([^&]+)&.*?\n(.*?)\n.*?^[\s]*<td > .*?>(.*?)<.*?^[\s]*<td>(.*?)<//ms ) { > > Strangely, perl is totally hanging on this line, at least with the Yahoo > account I'm testing it with. I even took the $tmpPage stuff content out > and wrote a one line perl script that just attempts to run the s// > expression on that string and it maxes out my CPU and hangs. I can't > understand why perl would ever do this... Something is obviously awry. > > I tried it on two separate systems with different perl installations > (stable and unstable) with same result. > > If you remove either the m or the s flag from the end of the regexp, it > doesn't hang. I'm not sure if that will screw up fetchyahoo otherwise, > though. Can someone help figure out what's going on here? -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]