[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
gramps
gramps at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 05:49:30 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 4b082c64dfb6ef2c083f65f06c86d253fc9e2159
Author: gramps <gramps at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Fri Oct 5 17:17:03 2001 +0000
Implemented replace
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@286 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/kwq/KWQString.mm b/WebCore/kwq/KWQString.mm
index 7384268..ec800c8 100644
--- a/WebCore/kwq/KWQString.mm
+++ b/WebCore/kwq/KWQString.mm
@@ -1024,12 +1024,25 @@ QString &QString::remove(uint index, uint width)
return *this;
}
-QString &QString::replace(const QRegExp &, const QString &)
+QString &QString::replace(const QRegExp &qre, const QString &qs)
{
flushCache();
- // FIXME: not yet implemented
- NSLog(@"WARNING %s:%s:%d (NOT YET IMPLEMENTED)\n", __FILE__, __FUNCTION__,
- __LINE__);
+ if (s) {
+ int len = qs.length();
+ for (int i = 0; i < CFStringGetLength(s); i += len) {
+ int width;
+ i = qre.match(*this, i, &width, FALSE);
+ if (i < 0) {
+ break;
+ }
+ CFRange r = CFRangeMake(i, width);
+ if (len) {
+ CFStringReplace(s, r, qs.s);
+ } else {
+ CFStringDelete(s, r);
+ }
+ }
+ }
return *this;
}
diff --git a/WebCore/src/kwq/KWQString.mm b/WebCore/src/kwq/KWQString.mm
index 7384268..ec800c8 100644
--- a/WebCore/src/kwq/KWQString.mm
+++ b/WebCore/src/kwq/KWQString.mm
@@ -1024,12 +1024,25 @@ QString &QString::remove(uint index, uint width)
return *this;
}
-QString &QString::replace(const QRegExp &, const QString &)
+QString &QString::replace(const QRegExp &qre, const QString &qs)
{
flushCache();
- // FIXME: not yet implemented
- NSLog(@"WARNING %s:%s:%d (NOT YET IMPLEMENTED)\n", __FILE__, __FUNCTION__,
- __LINE__);
+ if (s) {
+ int len = qs.length();
+ for (int i = 0; i < CFStringGetLength(s); i += len) {
+ int width;
+ i = qre.match(*this, i, &width, FALSE);
+ if (i < 0) {
+ break;
+ }
+ CFRange r = CFRangeMake(i, width);
+ if (len) {
+ CFStringReplace(s, r, qs.s);
+ } else {
+ CFStringDelete(s, r);
+ }
+ }
+ }
return *this;
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list