X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=activex%2Fconnectioncontainer.h;h=704c57fd1716075f7b8e420ce23577a620b0c704;hb=b941c1e48ddf3de05bde370ab6495f4580587dda;hp=3713e9ee77aea0ed8b4869ae5bbdfea980547985;hpb=35db6dd6ecab2daf4c03ccc2c0be4b25a42c092c;p=vlc diff --git a/activex/connectioncontainer.h b/activex/connectioncontainer.h index 3713e9ee77..704c57fd17 100644 --- a/activex/connectioncontainer.h +++ b/activex/connectioncontainer.h @@ -17,7 +17,7 @@ * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA. *****************************************************************************/ #ifndef __CONNECTIONCONTAINER_H__ @@ -26,6 +26,7 @@ #include #include #include +#include class VLCConnectionPoint : public IConnectionPoint { @@ -39,9 +40,11 @@ public: // IUnknown methods STDMETHODIMP QueryInterface(REFIID riid, void **ppv) { - if( NULL == ppv ) return E_POINTER; - if( (IID_IUnknown == riid) - && (IID_IConnectionPoint == riid) ) { + if( NULL == ppv ) + return E_POINTER; + if( (IID_IUnknown == riid) + || (IID_IConnectionPoint == riid) ) + { AddRef(); *ppv = reinterpret_cast(this); return NOERROR; @@ -67,7 +70,7 @@ private: REFIID _iid; IConnectionPointContainer *_p_cpc; - std::vector _connections; + std::map _connections; }; ////////////////////////////////////////////////////////////////////////// @@ -95,9 +98,11 @@ public: // IUnknown methods STDMETHODIMP QueryInterface(REFIID riid, void **ppv) { - if( (NULL != ppv) - && (IID_IUnknown == riid) - && (IID_IConnectionPointContainer == riid) ) { + if( NULL == ppv) + return E_POINTER; + if( (IID_IUnknown == riid) + || (IID_IConnectionPointContainer == riid) ) + { AddRef(); *ppv = reinterpret_cast(this); return NOERROR;