[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
mjs
mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 07:11:31 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit e5d3a406eb10039d39046d2846005636c557c8dd
Author: mjs <mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Thu Dec 5 00:12:34 2002 +0000
Reviewed by: Richard Williamson
Added explicit lock/unlock methods so Sherlock can grab the
interpreter lock as needed.
- partially addressed 3084320 - JavaScriptCore crash
* kjs/internal.cpp:
(InterpreterImp::InterpreterImp):
(InterpreterImp::lock):
(InterpreterImp::unlock):
* kjs/internal.h:
* kjs/interpreter.cpp:
(Interpreter::lock):
(Interpreter::unlock):
* kjs/interpreter.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2935 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/JavaScriptCore/ChangeLog b/JavaScriptCore/ChangeLog
index 441cfa0..9e18d04 100644
--- a/JavaScriptCore/ChangeLog
+++ b/JavaScriptCore/ChangeLog
@@ -1,5 +1,24 @@
2002-12-04 Maciej Stachowiak <mjs at apple.com>
+ Reviewed by: Richard Williamson
+
+ Added explicit lock/unlock methods so Sherlock can grab the
+ interpreter lock as needed.
+
+ - partially addressed 3084320 - JavaScriptCore crash
+
+ * kjs/internal.cpp:
+ (InterpreterImp::InterpreterImp):
+ (InterpreterImp::lock):
+ (InterpreterImp::unlock):
+ * kjs/internal.h:
+ * kjs/interpreter.cpp:
+ (Interpreter::lock):
+ (Interpreter::unlock):
+ * kjs/interpreter.h:
+
+2002-12-04 Maciej Stachowiak <mjs at apple.com>
+
Reviewed by: Darin Adler
Set things up so JavaScriptCore builds in PCRE and uses it for
diff --git a/JavaScriptCore/ChangeLog-2003-10-25 b/JavaScriptCore/ChangeLog-2003-10-25
index 441cfa0..9e18d04 100644
--- a/JavaScriptCore/ChangeLog-2003-10-25
+++ b/JavaScriptCore/ChangeLog-2003-10-25
@@ -1,5 +1,24 @@
2002-12-04 Maciej Stachowiak <mjs at apple.com>
+ Reviewed by: Richard Williamson
+
+ Added explicit lock/unlock methods so Sherlock can grab the
+ interpreter lock as needed.
+
+ - partially addressed 3084320 - JavaScriptCore crash
+
+ * kjs/internal.cpp:
+ (InterpreterImp::InterpreterImp):
+ (InterpreterImp::lock):
+ (InterpreterImp::unlock):
+ * kjs/internal.h:
+ * kjs/interpreter.cpp:
+ (Interpreter::lock):
+ (Interpreter::unlock):
+ * kjs/interpreter.h:
+
+2002-12-04 Maciej Stachowiak <mjs at apple.com>
+
Reviewed by: Darin Adler
Set things up so JavaScriptCore builds in PCRE and uses it for
diff --git a/JavaScriptCore/kjs/internal.cpp b/JavaScriptCore/kjs/internal.cpp
index 0d33dd9..502eda3 100644
--- a/JavaScriptCore/kjs/internal.cpp
+++ b/JavaScriptCore/kjs/internal.cpp
@@ -69,7 +69,6 @@ namespace KJS {
const double Inf = *(const double*) Inf_Bytes;
};
-#if APPLE_CHANGES
static pthread_once_t interpreterLockOnce = PTHREAD_ONCE_INIT;
static pthread_mutex_t interpreterLock;
@@ -94,7 +93,6 @@ static inline void unlockInterpreter()
pthread_mutex_unlock(&interpreterLock);
}
-#endif
// ------------------------------ UndefinedImp ---------------------------------
@@ -503,10 +501,8 @@ InterpreterImp::InterpreterImp(Interpreter *interp, const Object &glob)
{
// add this interpreter to the global chain
// as a root set for garbage collection
-#if APPLE_CHANGES
lockInterpreter();
m_interpreter = interp;
-#endif
if (s_hook) {
prev = s_hook;
next = s_hook->next;
@@ -517,13 +513,8 @@ InterpreterImp::InterpreterImp(Interpreter *interp, const Object &glob)
s_hook = next = prev = this;
globalInit();
}
-#if APPLE_CHANGES
unlockInterpreter();
-#endif
-#if !APPLE_CHANGES
- m_interpreter = interp;
-#endif
global = glob;
globExec = new ExecState(m_interpreter,0);
dbg = 0;
@@ -535,6 +526,16 @@ InterpreterImp::InterpreterImp(Interpreter *interp, const Object &glob)
recursion = 0;
}
+void InterpreterImp::lock()
+{
+ lockInterpreter();
+}
+
+void InterpreterImp::unlock()
+{
+ unlockInterpreter();
+}
+
void InterpreterImp::initGlobalObject()
{
// Contructor prototype objects (Object.prototype, Array.prototype etc)
diff --git a/JavaScriptCore/kjs/internal.h b/JavaScriptCore/kjs/internal.h
index e8e38a9..314a0cf 100644
--- a/JavaScriptCore/kjs/internal.h
+++ b/JavaScriptCore/kjs/internal.h
@@ -223,6 +223,8 @@ namespace KJS {
Interpreter* interpreter() const { return m_interpreter; }
void initGlobalObject();
+ static void lock();
+ static void unlock();
void mark();
diff --git a/JavaScriptCore/kjs/interpreter.cpp b/JavaScriptCore/kjs/interpreter.cpp
index 3dcd412..628845d 100644
--- a/JavaScriptCore/kjs/interpreter.cpp
+++ b/JavaScriptCore/kjs/interpreter.cpp
@@ -89,6 +89,16 @@ void Interpreter::initGlobalObject()
rep->initGlobalObject();
}
+void Interpreter::lock()
+{
+ InterpreterImp::lock();
+}
+
+void Interpreter::unlock()
+{
+ InterpreterImp::unlock();
+}
+
ExecState *Interpreter::globalExec()
{
return rep->globalExec();
diff --git a/JavaScriptCore/kjs/interpreter.h b/JavaScriptCore/kjs/interpreter.h
index 73f527a..345816c 100644
--- a/JavaScriptCore/kjs/interpreter.h
+++ b/JavaScriptCore/kjs/interpreter.h
@@ -145,6 +145,9 @@ namespace KJS {
void initGlobalObject();
+ static void lock();
+ static void unlock();
+
/**
* Returns the execution state object which can be used to execute
* scripts using this interpreter at a the "global" level, i.e. one
@@ -211,7 +214,6 @@ namespace KJS {
*/
Object builtinArray() const;
-
/**
* Returns the builtin "Boolean" object.
*/
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list