Magellan Linux

Annotation of /trunk/kdemultimedia4/patches/kdemultimedia4-4.6.5-memleak.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1436 - (hide annotations) (download)
Fri Jul 22 13:28:41 2011 UTC (12 years, 10 months ago) by niro
File size: 1931 byte(s)
fixed a memleak
1 niro 1436 Index: kdemultimedia/kmix/backends/mixer_pulse.cpp
2     ===================================================================
3     --- kdemultimedia/kmix/backends/mixer_pulse.cpp (revision 1241345)
4     +++ kdemultimedia/kmix/backends/mixer_pulse.cpp (revision 1241346)
5     @@ -754,7 +754,12 @@
6     return;
7     }
8     addDevice((*map)[index]);
9     - emit controlsReconfigured(_mixer->id());
10     + // Do not emit directly to ensure all connected slots are executed
11     + // in their own event loop.
12     + QMetaObject::invokeMethod(this,
13     + "controlsReconfigured",
14     + Qt::QueuedConnection,
15     + Q_ARG(QString, _mixer->id()));
16     }
17    
18     void Mixer_PULSE::removeWidget(int index)
19     @@ -778,7 +783,12 @@
20     {
21     delete *iter;
22     m_mixDevices.erase(iter);
23     - emit controlsReconfigured(_mixer->id());
24     + // Do not emit directly to ensure all connected slots are executed
25     + // in their own event loop.
26     + QMetaObject::invokeMethod(this,
27     + "controlsReconfigured",
28     + Qt::QueuedConnection,
29     + Q_ARG(QString, _mixer->id()));
30     return;
31     }
32     }
33     @@ -799,7 +809,12 @@
34     delete *iter;
35     m_mixDevices.erase(iter);
36     }
37     - emit controlsReconfigured(_mixer->id());
38     + // Do not emit directly to ensure all connected slots are executed
39     + // in their own event loop.
40     + QMetaObject::invokeMethod(this,
41     + "controlsReconfigured",
42     + Qt::QueuedConnection,
43     + Q_ARG(QString, _mixer->id()));
44     }
45    
46     void Mixer_PULSE::addDevice(devinfo& dev)
47     @@ -990,7 +1005,7 @@
48     kDebug(67100) << "Using PulseAudio for mixer: " << m_mixerName;
49     m_isOpen = true;
50     }
51     -
52     +
53     return 0;
54     }
55