Fix some memory leaks.

Adjusted a unit test or two to make leaks easier to find, and then fixed
a few leaks.

Change-Id: I47a20df8de7cac113d34a2015f76a65ab957dedd
Reviewed-by: Dmytro Poplavskiy <dmytro.poplavskiy@nokia.com>
This commit is contained in:
Michael Goddard
2012-03-05 11:00:10 +10:00
committed by Qt by Nokia
parent 707be63361
commit 362e443896
7 changed files with 18 additions and 5 deletions

View File

@@ -216,6 +216,8 @@ QCameraExposure::~QCameraExposure()
Q_D(QCameraExposure); Q_D(QCameraExposure);
if (d->exposureControl) if (d->exposureControl)
d->camera->service()->releaseControl(d->exposureControl); d->camera->service()->releaseControl(d->exposureControl);
delete d;
} }
/*! /*!

View File

@@ -394,6 +394,7 @@ QCameraFocus::QCameraFocus(QCamera *camera):
QCameraFocus::~QCameraFocus() QCameraFocus::~QCameraFocus()
{ {
delete d_ptr;
} }
/*! /*!

View File

@@ -178,6 +178,8 @@ QCameraImageCapture::~QCameraImageCapture()
if (d->mediaObject) if (d->mediaObject)
d->mediaObject->unbind(this); d->mediaObject->unbind(this);
delete d_ptr;
} }
/*! /*!

View File

@@ -162,6 +162,7 @@ QCameraImageProcessing::QCameraImageProcessing(QCamera *camera):
QCameraImageProcessing::~QCameraImageProcessing() QCameraImageProcessing::~QCameraImageProcessing()
{ {
delete d_ptr;
} }

View File

@@ -101,6 +101,7 @@ QMediaRecorderPrivate::QMediaRecorderPrivate():
videoControl(0), videoControl(0),
metaDataControl(0), metaDataControl(0),
availabilityControl(0), availabilityControl(0),
settingsChanged(false),
notifyTimer(0), notifyTimer(0),
state(QMediaRecorder::StoppedState), state(QMediaRecorder::StoppedState),
error(QMediaRecorder::NoError) error(QMediaRecorder::NoError)
@@ -146,6 +147,7 @@ void QMediaRecorderPrivate::_q_serviceDestroyed()
videoControl = 0; videoControl = 0;
metaDataControl = 0; metaDataControl = 0;
availabilityControl = 0; availabilityControl = 0;
settingsChanged = true;
} }
void QMediaRecorderPrivate::_q_updateActualLocation(const QUrl &location) void QMediaRecorderPrivate::_q_updateActualLocation(const QUrl &location)
@@ -249,6 +251,7 @@ QMediaRecorder::QMediaRecorder(QMediaRecorderPrivate &dd, QMediaObject *mediaObj
QMediaRecorder::~QMediaRecorder() QMediaRecorder::~QMediaRecorder()
{ {
delete d_ptr;
} }
/*! /*!

View File

@@ -891,6 +891,8 @@ void tst_QMediaPlayer::testPlaylist()
QCOMPARE(player->media(), content2); QCOMPARE(player->media(), content2);
} }
delete playlist;
delete playlist2;
} }
void tst_QMediaPlayer::testPlayerFlags() void tst_QMediaPlayer::testPlayerFlags()
@@ -1081,6 +1083,8 @@ void tst_QMediaPlayer::testPositionPropertyWatch()
positionSpy.clear(); positionSpy.clear();
QTRY_COMPARE(positionSpy.count(), 0); QTRY_COMPARE(positionSpy.count(), 0);
delete playlist;
} }
void tst_QMediaPlayer::debugEnums() void tst_QMediaPlayer::debugEnums()

View File

@@ -62,11 +62,11 @@ public:
mockAvailabilityControl(availability), mockAvailabilityControl(availability),
hasControls(true) hasControls(true)
{ {
mockAudioEndpointSelector = new MockAudioEndpointSelector(parent); mockAudioEndpointSelector = new MockAudioEndpointSelector(this);
mockAudioEncoderControl = new MockAudioEncoderControl(parent); mockAudioEncoderControl = new MockAudioEncoderControl(this);
mockFormatControl = new MockMediaContainerControl(parent); mockFormatControl = new MockMediaContainerControl(this);
mockVideoEncoderControl = new MockVideoEncoderControl(parent); mockVideoEncoderControl = new MockVideoEncoderControl(this);
mockMetaDataControl = new MockMetaDataWriterControl(parent); mockMetaDataControl = new MockMetaDataWriterControl(this);
} }
QMediaControl* requestControl(const char *name) QMediaControl* requestControl(const char *name)