[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:07:42 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit c082d008d5ddba4673616e55f0b1951cefa097ef
Author: mjs <mjs at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sun Nov 24 15:02:36 2002 +0000
- fixed 3098356 - Hard hang on movie search at www.movietickets.com
* kjs/string_object.cpp:
(StringProtoFuncImp::call): When doing a regexp replacement that
results in an empty match, always move on to the next character
after doing the replacement. The previous code would hit an
infinite loop if an initial empty match was replaced with the
empty string.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2849 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/JavaScriptCore/ChangeLog b/JavaScriptCore/ChangeLog
index b851b1c..ecf6864 100644
--- a/JavaScriptCore/ChangeLog
+++ b/JavaScriptCore/ChangeLog
@@ -1,5 +1,16 @@
2002-11-24 Maciej Stachowiak <mjs at apple.com>
+ - fixed 3098356 - Hard hang on movie search at www.movietickets.com
+
+ * kjs/string_object.cpp:
+ (StringProtoFuncImp::call): When doing a regexp replacement that
+ results in an empty match, always move on to the next character
+ after doing the replacement. The previous code would hit an
+ infinite loop if an initial empty match was replaced with the
+ empty string.
+
+2002-11-24 Maciej Stachowiak <mjs at apple.com>
+
- fixed 3095446 - Crash on AppleScript page due to very long argument list
* kjs/grammar.y: Don't try to construct the argument list in the
diff --git a/JavaScriptCore/ChangeLog-2002-12-03 b/JavaScriptCore/ChangeLog-2002-12-03
index b851b1c..ecf6864 100644
--- a/JavaScriptCore/ChangeLog-2002-12-03
+++ b/JavaScriptCore/ChangeLog-2002-12-03
@@ -1,5 +1,16 @@
2002-11-24 Maciej Stachowiak <mjs at apple.com>
+ - fixed 3098356 - Hard hang on movie search at www.movietickets.com
+
+ * kjs/string_object.cpp:
+ (StringProtoFuncImp::call): When doing a regexp replacement that
+ results in an empty match, always move on to the next character
+ after doing the replacement. The previous code would hit an
+ infinite loop if an initial empty match was replaced with the
+ empty string.
+
+2002-11-24 Maciej Stachowiak <mjs at apple.com>
+
- fixed 3095446 - Crash on AppleScript page due to very long argument list
* kjs/grammar.y: Don't try to construct the argument list in the
diff --git a/JavaScriptCore/ChangeLog-2003-10-25 b/JavaScriptCore/ChangeLog-2003-10-25
index b851b1c..ecf6864 100644
--- a/JavaScriptCore/ChangeLog-2003-10-25
+++ b/JavaScriptCore/ChangeLog-2003-10-25
@@ -1,5 +1,16 @@
2002-11-24 Maciej Stachowiak <mjs at apple.com>
+ - fixed 3098356 - Hard hang on movie search at www.movietickets.com
+
+ * kjs/string_object.cpp:
+ (StringProtoFuncImp::call): When doing a regexp replacement that
+ results in an empty match, always move on to the next character
+ after doing the replacement. The previous code would hit an
+ infinite loop if an initial empty match was replaced with the
+ empty string.
+
+2002-11-24 Maciej Stachowiak <mjs at apple.com>
+
- fixed 3095446 - Crash on AppleScript page due to very long argument list
* kjs/grammar.y: Don't try to construct the argument list in the
diff --git a/JavaScriptCore/kjs/string_object.cpp b/JavaScriptCore/kjs/string_object.cpp
index 0ed3a26..0426966 100644
--- a/JavaScriptCore/kjs/string_object.cpp
+++ b/JavaScriptCore/kjs/string_object.cpp
@@ -298,12 +298,6 @@ Value StringProtoFuncImp::call(ExecState *exec, Object &thisObj, const List &arg
if (pos == -1)
break;
len = mstr.size();
- // special case of empty match
- if (len == 0 && lastIndex > 0) {
- pos = lastIndex + 1;
- if (pos > u.size())
- break;
- }
UString rstr(u3);
bool ok;
// check if u3 matches $1 or $2 etc
@@ -325,6 +319,13 @@ Value StringProtoFuncImp::call(ExecState *exec, Object &thisObj, const List &arg
lastIndex = pos + rstr.size();
u = u.substr(0, pos) + rstr + u.substr(pos + len);
//fprintf(stderr,"pos=%d,len=%d,lastIndex=%d,u=%s\n",pos,len,lastIndex,u.ascii());
+
+ // special case of empty match
+ if (len == 0) {
+ lastIndex = lastIndex + 1;
+ if (lastIndex > u.size())
+ break;
+ }
} while (global);
result = String(u);
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list