From 99a30ca4ce33c40ba5a469a6f47f5905108381f4 Mon Sep 17 00:00:00 2001 From: Jian Liang Date: Wed, 29 Feb 2012 09:04:34 +0800 Subject: Make sure we release IAdviseSink interface IAdviseSink interface is not released if spViewObject is 0 in QAxClientSite::activateObject(). This patch fix this problem. Change-Id: I5d215e18468660eab59ef69e6fd71405337264b3 Reviewed-by: Joerg Bornemann --- src/activeqt/container/qaxwidget.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/activeqt/container/qaxwidget.cpp b/src/activeqt/container/qaxwidget.cpp index a11ac7a..9dd3689 100644 --- a/src/activeqt/container/qaxwidget.cpp +++ b/src/activeqt/container/qaxwidget.cpp @@ -663,8 +663,9 @@ bool QAxClientSite::activateObject(bool initialized, const QByteArray &data) if (spAdviseSink && spViewObject) { if (spViewObject) spViewObject->SetAdvise(DVASPECT_CONTENT, 0, spAdviseSink); - spAdviseSink->Release(); } + if (spAdviseSink) + spAdviseSink->Release(); if (spViewObject) spViewObject->Release(); -- cgit v0.12