[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
darin
darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 06:59:10 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 57335807a1afa5b2e2fea9f7077054d02af3f377
Author: darin <darin at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Tue Nov 12 21:36:12 2002 +0000
- fixed 3094819 -- Crash in -[KWQObjectTimerTarget timerFired]
* kwq/KWQObject.mm: (QObject::~QObject): Call the _destroyed signal.
(QObject::killTimers): Simplify the code a bit using makeObjectsPerformSelector:.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2633 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2002-12-03 b/WebCore/ChangeLog-2002-12-03
index 820e297..47e20bd 100644
--- a/WebCore/ChangeLog-2002-12-03
+++ b/WebCore/ChangeLog-2002-12-03
@@ -1,5 +1,12 @@
2002-11-12 Darin Adler <darin at apple.com>
+ - fixed 3094819 -- Crash in -[KWQObjectTimerTarget timerFired]
+
+ * kwq/KWQObject.mm: (QObject::~QObject): Call the _destroyed signal.
+ (QObject::killTimers): Simplify the code a bit using makeObjectsPerformSelector:.
+
+2002-11-12 Darin Adler <darin at apple.com>
+
- fixed 3079499 -- blank page at http://www.sonyericsson.com/T68i/
* khtml/misc/loader.cpp:
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index 820e297..47e20bd 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,5 +1,12 @@
2002-11-12 Darin Adler <darin at apple.com>
+ - fixed 3094819 -- Crash in -[KWQObjectTimerTarget timerFired]
+
+ * kwq/KWQObject.mm: (QObject::~QObject): Call the _destroyed signal.
+ (QObject::killTimers): Simplify the code a bit using makeObjectsPerformSelector:.
+
+2002-11-12 Darin Adler <darin at apple.com>
+
- fixed 3079499 -- blank page at http://www.sonyericsson.com/T68i/
* khtml/misc/loader.cpp:
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 820e297..47e20bd 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,5 +1,12 @@
2002-11-12 Darin Adler <darin at apple.com>
+ - fixed 3094819 -- Crash in -[KWQObjectTimerTarget timerFired]
+
+ * kwq/KWQObject.mm: (QObject::~QObject): Call the _destroyed signal.
+ (QObject::killTimers): Simplify the code a bit using makeObjectsPerformSelector:.
+
+2002-11-12 Darin Adler <darin at apple.com>
+
- fixed 3079499 -- blank page at http://www.sonyericsson.com/T68i/
* khtml/misc/loader.cpp:
diff --git a/WebCore/kwq/KWQObject.mm b/WebCore/kwq/KWQObject.mm
index 47a188d..74f0e6a 100644
--- a/WebCore/kwq/KWQObject.mm
+++ b/WebCore/kwq/KWQObject.mm
@@ -117,6 +117,7 @@ QObject::QObject(QObject *parent, const char *name)
QObject::~QObject()
{
+ _destroyed.call();
ASSERT(_signalListHead == &_destroyed);
killTimers();
}
@@ -132,7 +133,7 @@ bool QObject::event(QEvent *)
int QObject::startTimer(int milliseconds)
{
- static int timerCount = 1;
+ static int nextTimerID = 1;
if (timerDictionaries == NULL) {
// The global timers dictionary itself leaks, but the contents are removed
@@ -147,17 +148,17 @@ int QObject::startTimer(int milliseconds)
[timers release];
}
- NSNumber *timerId = [NSNumber numberWithInt:timerCount];
- KWQObjectTimerTarget *target = [[KWQObjectTimerTarget alloc] initWithQObject:this timerId:timerCount];
+ KWQObjectTimerTarget *target = [[KWQObjectTimerTarget alloc] initWithQObject:this timerId:nextTimerID];
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:milliseconds / 1000.0
target:target
selector:@selector(timerFired)
userInfo:target
repeats:YES];
[target release];
- [timers setObject:timer forKey:timerId];
- return timerCount++;
+ [timers setObject:timer forKey:[NSNumber numberWithInt:nextTimerID]];
+
+ return nextTimerID++;
}
void QObject::killTimer(int _timerId)
@@ -184,13 +185,7 @@ void QObject::killTimers()
if (timers == nil) {
return;
}
- NSArray *keys = [timers allKeys];
- int count = [keys count];
- for (int i = 0; i < count; i++) {
- NSNumber *key = (NSNumber *)[keys objectAtIndex:i];
- NSTimer *timer = (NSTimer *)[timers objectForKey:key];
- [timer invalidate];
- }
+ [[timers allValues] makeObjectsPerformSelector:@selector(invalidate)];
CFDictionaryRemoveValue(timerDictionaries, this);
}
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list