Version 1.2.0-dev.5.3

svn merge -c 32621 https://dart.googlecode.com/svn/branches/bleeding_edge trunk

R=whesse@google.com

Review URL: https://codereview.chromium.org//163443002

git-svn-id: http://dart.googlecode.com/svn/trunk@32651 260f80e4-7a28-3924-810f-c04153c831b5
diff --git a/tools/VERSION b/tools/VERSION
index 9a19a4b..c93926f 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -28,4 +28,4 @@
 MINOR 2
 PATCH 0
 PRERELEASE 5
-PRERELEASE_PATCH 2
+PRERELEASE_PATCH 3
diff --git a/tools/dom/scripts/htmldartgenerator.py b/tools/dom/scripts/htmldartgenerator.py
index d549d98..5701cc8 100644
--- a/tools/dom/scripts/htmldartgenerator.py
+++ b/tools/dom/scripts/htmldartgenerator.py
@@ -477,6 +477,11 @@
 
   def _AddConstructor(self,
       constructor_info, factory_name, factory_constructor_name):
+    # Hack to ignore the Image constructor used by JavaScript.
+    if (self._interface.id == 'HTMLImageElement'
+      and not constructor_info.pure_dart_constructor):
+      return
+
     if self.GenerateCustomFactory(constructor_info):
       return
 
diff --git a/tools/dom/scripts/systemhtml.py b/tools/dom/scripts/systemhtml.py
index c5c0434..54ad00d 100644
--- a/tools/dom/scripts/systemhtml.py
+++ b/tools/dom/scripts/systemhtml.py
@@ -512,10 +512,10 @@
 
     for info in infos:
       constructors.append(info.ConstructorInfo(self._interface.id))
-      if factory_provider:
-        assert factory_provider == info.factory_provider_name
-      else:
-        factory_provider = info.factory_provider_name
+      if factory_provider and factory_provider != info.factory_provider_name:
+        _logger.warn('Conflicting factory provider names: %s != %s' %
+          (factory_provider, info.factory_provider_name))
+      factory_provider = info.factory_provider_name
 
     implementation_emitter = self._ImplementationEmitter()