On 26/09/2011 23:00, Colomban Wendling wrote:
Le 26/09/2011 13:48, Nick Treleaven a écrit :
I'm reduced to using Windows. I guess the reason is the regex code that is really old which is used for Windows builds.
Maybe yeah, but I find it a little weird you see *so much* slowness...
For comparison, on my machine [1] parsing and updating the list takes less than 60ms for geany.html.
Just to be sure, are you seeing the 'built-in regex' debug message:
12:42:07: (null) INFO : GTK 2.22.0, GLib 2.26.0, built-in regex
It might help to update it from CTags (we had a patch from Jiri Techet but it didn't look like it would build on Windows, i.e. wasn't from CTags).
Maybe we could use GRegex now we have a GLib recent enough?
Anyway tagamanger/regex.c looks like a few glibc source file concatenated with a 0xff separator, I'd then guess any POSIX RE implementation (e.g. today's glibc's one) would do, wouldn't it?
That's probably what Jiri did, but I noticed CTags had some modifications to build on Windows. Perhaps glibc would work, but I think taking it from ctags is safer.
I don't know if GRegex would work, CTags parsers may use non-POSIX features - are \w \s part of POSIX?
OK... with a fresh configdir?
Just tried that, same problem. Task manager showed I still had about 230MB memory free whilst having the problem - the freeze caused 100% CPU as expected.