| Commit message (Collapse) | Author | Age |
| |
|
| |
|
|
|
|
|
|
| |
Based on Mozilla bug 1378736's part 2.
Should fix the double-free.
Follow-up for #2083
|
|
|
|
|
| |
Follow-up for issue #2083.
Taken from Mozilla bug 1378736.
|
|
|
|
| |
A hangover from before RegExpShared was a GC thing, as noted by m-c 1399928.
|
|
|
|
|
|
|
| |
RegExpShared is managed by C++"
This workaround has been obsoleted by the work on Issue #2083.
This reverts commit bbd743608685ec77ebebe480761118db8a988253.
|
|
|
|
| |
Based on Mozilla bug 1345177.
|
|
|
|
| |
Based on Mozilla bug 1345177.
|
|
|
|
|
|
|
|
|
|
|
| |
Based on Mozilla bug 1345177.
Changes from the original bug's patch:
- The original patch didn't have a dotAll for a call to irregexp::ParsePattern,
so let's make our dotAll a member of the MutableHandleRegExpShared re.
- Make RegExpShared::initializeNamedCaptures, introduced in Issue #1285, static.
This resolves a build bustage where static RegExpShared::compile was trying to
use a member function.
|
|
|
|
|
|
| |
Based on Mozilla bug 1345177.
There were more uses of RegExpGuard in js/src/builtin/RegExp.cpp not found in
the original bug's patch.
|
|
|
|
|
|
|
|
|
|
| |
Based on Mozilla bug 1345177.
Changes from the original bug's patch:
- We don't have JS::CurrentThreadIsHeapCollecting, so let's use
trc->runtime()->isHeapCollecting() instead.
- Mozilla bug 1337117 renamed runtimeFromMainThread to
runtimeFromActiveCooperatingThread for Firefox 54, so let's use the former
|
|
|
|
| |
RegExpShared is managed by C++
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- RegExpParser collects seen groups in named_captures_.
- After irregexp::ParsePattern has finished, RegExpParser::StoreNamedCaptureMap translates
the parser data to RegExpCompileData.capture_name/index
- RegExpShared::initializeNamedCaptures takes these and builds a PlainObject map which
is kept with the compiled expression
This is done because irregexp doesn't have access to the JS context and so can't allocate
any JSValues itself.
- for each match result, this map is used to build PlainObjects of name->match/undefined
(extremely simplified from upstream at the expense of some perf)
IonMonkey switches to non-masm code path for expressions with named groups.
|
|
|
|
|
|
|
|
|
|
| |
This does 2 things.
First, it adds parsing of the 's' parameter parsing to DOM object construction of regexes
Second, it corrects the DOM property to be `dotAll` instead of `dotall`
For consistency's sake, all function names and calls were renamed with the finalized casing.
This resolves #2008
|
| |
|
|
|
|
| |
Resolves #1284.
|
|
|
|
| |
This reverts commit f31b04a303607cd82757e7c4f60bb536658c8a30.
|
|
|
|
| |
Resolves #1284.
|
|
|
|
| |
RegExpObject::{getShared,createShared,dumpBytecode} to static method.
|
|
|
|
| |
Issue #77
|
|
|