Wiki crashes my web-browsers

Anything and everything that's related to OGRE or the wider graphics field that doesn't fit into the other forums.
Post Reply
d000hg
Goblin
Posts: 257
Joined: Tue Sep 02, 2008 9:41 pm
x 1

Wiki crashes my web-browsers

Post by d000hg »

http://www.ogre3d.org/tikiwiki/MyGUI+quickstart

This crashes both Chrome (latest stable) and IE10 on Windows7. I've seen it before on other wiki pages and it's a bit worrying - what can you have on a wiki page that can crash multiple browsers?!
MattStevens
Goblin
Posts: 239
Joined: Mon Apr 07, 2008 10:27 pm
x 4

Re: Wiki crashes my web-browsers

Post by MattStevens »

I confirm it crashes (tab becomes frozen, the browser itself is fine) on Chrome 28.0.1500.72 m
Fine on Firefox 22.0

I'm on Windows XP SP3
systemparadox
Gnoblar
Posts: 7
Joined: Tue Feb 23, 2010 3:10 am

Re: Wiki crashes my web-browsers

Post by systemparadox »

This is still the case in Chrome and Firefox on Linux and Windows :(

I think it's an issue with tikiwiki. When firefox crashes, it reports being in http://ogre3d.org/tikiwiki/temp/public/ ... ea9.js:364, which is a big regex. It's probably trying to repeatedly match something that doesn't exist or differs from what it's expecting.

It would be really nice if this could finally be fixed after all these years! Perhaps it is time for the wiki to be upgraded?
Last edited by systemparadox on Thu Mar 09, 2017 12:50 pm, edited 2 times in total.
systemparadox
Gnoblar
Posts: 7
Joined: Tue Feb 23, 2010 3:10 am

Re: Wiki crashes my web-browsers

Post by systemparadox »

In this instance it appears to be failing to match this:

Code: Select all


var d = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g;
var x = ':contains("MyGUI::LayoutManager::getInstance().load("sample.layout");")';
d.exec(x);

The call to exec just hangs, even in NodeJS. I suspect it is a catastrophic backtracking problem with the regex (see http://stackoverflow.com/questions/2407 ... s-using-v8 for a simpler example).

The regex appears to be part of jQuery, which at 1.4.4 is *ancient*.

The offending text is passed by $.fn.addnotes, which is very naive and appears to be part of tikiwiki. It's called by a ready function at the bottom of the HTML.
Post Reply