summaryrefslogtreecommitdiffstats
path: root/WebCore/loader/archive/ArchiveFactory.cpp
diff options
context:
space:
mode:
authorThe Android Open Source Project <initial-contribution@android.com>2009-03-05 14:34:32 -0800
committerThe Android Open Source Project <initial-contribution@android.com>2009-03-05 14:34:32 -0800
commit635860845790a19bf50bbc51ba8fb66a96dde068 (patch)
treeef6ad9ff73a5b57f65249d4232a202fa77e6a140 /WebCore/loader/archive/ArchiveFactory.cpp
parent8e35f3cfc7fba1d1c829dc557ebad6409cbe16a2 (diff)
downloadexternal_webkit-635860845790a19bf50bbc51ba8fb66a96dde068.zip
external_webkit-635860845790a19bf50bbc51ba8fb66a96dde068.tar.gz
external_webkit-635860845790a19bf50bbc51ba8fb66a96dde068.tar.bz2
auto import from //depot/cupcake/@136594
Diffstat (limited to 'WebCore/loader/archive/ArchiveFactory.cpp')
-rw-r--r--WebCore/loader/archive/ArchiveFactory.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/WebCore/loader/archive/ArchiveFactory.cpp b/WebCore/loader/archive/ArchiveFactory.cpp
index c42b5df..1322dbb 100644
--- a/WebCore/loader/archive/ArchiveFactory.cpp
+++ b/WebCore/loader/archive/ArchiveFactory.cpp
@@ -37,10 +37,12 @@
#include <wtf/HashMap.h>
#include <wtf/HashSet.h>
+#include <wtf/StdLibExtras.h>
namespace WebCore {
typedef PassRefPtr<Archive> RawDataCreationFunction(SharedBuffer*);
+typedef HashMap<String, RawDataCreationFunction*, CaseFoldingHash> ArchiveMIMETypesMap;
// The create functions in the archive classes return PassRefPtr to concrete subclasses
// of Archive. This adaptor makes the functions have a uniform return type.
@@ -49,9 +51,9 @@ template <typename ArchiveClass> static PassRefPtr<Archive> archiveFactoryCreate
return ArchiveClass::create(buffer);
}
-static HashMap<String, RawDataCreationFunction*, CaseFoldingHash>& archiveMIMETypes()
+static ArchiveMIMETypesMap& archiveMIMETypes()
{
- static HashMap<String, RawDataCreationFunction*, CaseFoldingHash> mimeTypes;
+ DEFINE_STATIC_LOCAL(ArchiveMIMETypesMap, mimeTypes, ());
static bool initialized = false;
if (initialized)
@@ -79,8 +81,8 @@ PassRefPtr<Archive> ArchiveFactory::create(SharedBuffer* data, const String& mim
void ArchiveFactory::registerKnownArchiveMIMETypes()
{
HashSet<String>& mimeTypes = MIMETypeRegistry::getSupportedNonImageMIMETypes();
- HashMap<String, RawDataCreationFunction*, CaseFoldingHash>::iterator i = archiveMIMETypes().begin();
- HashMap<String, RawDataCreationFunction*, CaseFoldingHash>::iterator end = archiveMIMETypes().end();
+ ArchiveMIMETypesMap::iterator i = archiveMIMETypes().begin();
+ ArchiveMIMETypesMap::iterator end = archiveMIMETypes().end();
for (; i != end; ++i)
mimeTypes.add(i->first);