зеркало из https://github.com/mozilla/gecko-dev.git
Bug 75700, fixed bad internal namespace with xmlns=''. r=harishd,sr=jst.
This commit is contained in:
Родитель
212c48c2f1
Коммит
d54af4e833
|
@ -391,11 +391,17 @@ NameSpaceManagerImpl::RegisterNameSpace(const nsAReadableString& aURI,
|
|||
PRInt32 id = FindNameSpaceID(aURI);
|
||||
|
||||
if (kNameSpaceID_Unknown == id) {
|
||||
nsString* uri = new nsString(aURI);
|
||||
gURIArray->AppendElement(uri);
|
||||
id = gURIArray->Count(); // id is index + 1
|
||||
nsStringKey key(*uri);
|
||||
gURIToIDTable->Put(&key, (void*)id);
|
||||
if (aURI.IsEmpty()) {
|
||||
id = kNameSpaceID_None; // xmlns="", see bug 75700 for details
|
||||
} else {
|
||||
nsString* uri = new nsString(aURI);
|
||||
if (!uri)
|
||||
return NS_ERROR_OUT_OF_MEMORY;
|
||||
gURIArray->AppendElement(uri);
|
||||
id = gURIArray->Count(); // id is index + 1
|
||||
nsStringKey key(*uri);
|
||||
gURIToIDTable->Put(&key, (void*)id);
|
||||
}
|
||||
}
|
||||
aNameSpaceID = id;
|
||||
return NS_OK;
|
||||
|
|
|
@ -210,17 +210,14 @@ nsNodeInfoManager::GetNodeInfo(const nsAReadableString& aName, const nsAReadable
|
|||
NS_ENSURE_TRUE(prefix, NS_ERROR_OUT_OF_MEMORY);
|
||||
}
|
||||
|
||||
PRInt32 nsid = kNameSpaceID_None;
|
||||
|
||||
if (aNamespaceURI.Length()) {
|
||||
if (!mNameSpaceManager) {
|
||||
return NS_ERROR_NOT_INITIALIZED;
|
||||
}
|
||||
|
||||
nsresult rv = mNameSpaceManager->RegisterNameSpace(aNamespaceURI, nsid);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
if (!mNameSpaceManager) {
|
||||
return NS_ERROR_NOT_INITIALIZED;
|
||||
}
|
||||
|
||||
PRInt32 nsid;
|
||||
nsresult rv = mNameSpaceManager->RegisterNameSpace(aNamespaceURI, nsid);
|
||||
NS_ENSURE_SUCCESS(rv, rv);
|
||||
|
||||
return GetNodeInfo(name, prefix, nsid, aNodeInfo);
|
||||
}
|
||||
|
||||
|
|
|
@ -50,7 +50,6 @@
|
|||
#include "nsIDOMCDATASection.h"
|
||||
#include "nsIDOMProcessingInstruction.h"
|
||||
#include "nsIDOMDocumentType.h"
|
||||
#include "nsExpatDTD.h"
|
||||
#include "nsINameSpaceManager.h"
|
||||
#include "nsICSSLoader.h"
|
||||
#include "nsCOMPtr.h"
|
||||
|
|
Загрузка…
Ссылка в новой задаче