diff --git a/Atom/src/OnigRegexpExtension.mm b/Atom/src/OnigRegexpExtension.mm index 2ecb84ae0..2a1a2bc06 100644 --- a/Atom/src/OnigRegexpExtension.mm +++ b/Atom/src/OnigRegexpExtension.mm @@ -14,6 +14,10 @@ public: m_regex = [[OnigRegexp compile:sourceString] retain]; } + ~OnigRegexpUserData() { + [m_regex release]; + } + CefRefPtr Search(CefRefPtr string, CefRefPtr index) { OnigResult *result = [m_regex search:stringFromCefV8Value(string) start:index->GetIntValue()]; @@ -36,10 +40,8 @@ public: OnigRegexp *m_regex; IMPLEMENT_REFCOUNTING(OnigRegexpUserData); - }; - OnigRegexpExtension::OnigRegexpExtension() : CefV8Handler() { NSString *filePath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"src/stdlib/onig-reg-exp-extension.js"]; NSString *extensionCode = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil]; @@ -51,7 +53,6 @@ bool OnigRegexpExtension::Execute(const CefString& name, const CefV8ValueList& arguments, CefRefPtr& retval, CefString& exception) { - if (name == "buildOnigRegExp") { CefRefPtr userData = new OnigRegexpUserData(arguments[0]); retval = CefV8Value::CreateObject(userData, NULL);