From kde-commits Wed Aug 31 23:23:01 2005 From: Rob Buis Date: Wed, 31 Aug 2005 23:23:01 +0000 To: kde-commits Subject: kdenonbeta/kdom/core (silent) Message-Id: <1125530581.916292.19978.nullmailer () svn ! kde ! org> X-MARC-Message: https://marc.info/?l=kde-commits&m=112553059021459 SVN commit 455606 by buis: SVN_SILENT: some leak fixes. M +1 -1 DocumentImpl.cpp M +8 -5 NamedAttrMapImpl.cpp --- trunk/kdenonbeta/kdom/core/DocumentImpl.cpp #455605:455606 @@ -880,7 +880,7 @@ case NodeImpl::NamespaceId: { // ### Id == 0 can't be used with ((void *) int) based QDicts... - if(!strcasecmp(name ? name->string().latin1() : 0, defaultNS() ? defaultNS()->string().latin1() : 0)) + if(!strcasecmp(name ? name->string().latin1() : 0, DOMString(defaultNS()).string().latin1())) return 0; map = m_namespaceMap; --- trunk/kdenonbeta/kdom/core/NamedAttrMapImpl.cpp #455605:455606 @@ -287,9 +287,9 @@ { // if we are called with a qualified name, filter out // NS-aware elements with non-matching name. - if(qNameImpl && (m_attrs[i].id() & NodeImpl_IdNSMask) && - strcasecmp(DOMString(m_attrs[i].name()), qName)) - continue; + //if(qNameImpl && (m_attrs[i].id() & NodeImpl_IdNSMask) && + // strcasecmp(DOMString(m_attrs[i].name()), qName)) + // continue; if(prefix) m_attrs[i].attr()->setPrefix(prefix); @@ -329,7 +329,7 @@ if(m_ownerElement) { m_ownerElement->parseAttribute(&m_attrs[m_attrCount - 1]); - + dispatchAttrMutationEvent(m_ownerElement, 0, value, m_attrs[m_attrCount - 1].name(), ADDITION); dispatchSubtreeModifiedEvent(); } @@ -443,8 +443,10 @@ { DocumentImpl *document = (m_ownerElement ? m_ownerElement->ownerDocument() : 0); if(!document || !document->hasListenerType(DOMATTRMODIFIED_EVENT)) + { + if(name) name->deref(); return; - + } DOMStringImpl *eventType = new DOMStringImpl("MutationEvents"); eventType->ref(); @@ -458,6 +460,7 @@ event->deref(); eventType->deref(); + if(name) name->deref(); } void NamedAttrMapImpl::dispatchSubtreeModifiedEvent()