Index: Source/bindings/scripts/generate-bindings.pl |
diff --git a/Source/bindings/scripts/generate-bindings.pl b/Source/bindings/scripts/generate-bindings.pl |
index 072489848c82ff7db48710ab84a8127cef21a1dc..1444fa0014875a81b1ba8b17a2bce34158d05586 100755 |
--- a/Source/bindings/scripts/generate-bindings.pl |
+++ b/Source/bindings/scripts/generate-bindings.pl |
@@ -84,12 +84,12 @@ my @supplementedIdlFiles; |
if ($supplementalDependencyFile) { |
# The format of a supplemental dependency file: |
# |
- # Window.idl P.idl Q.idl R.idl |
+ # DOMWindow.idl P.idl Q.idl R.idl |
# Document.idl S.idl |
# Event.idl |
# ... |
# |
- # The above indicates that Window.idl is supplemented by P.idl, Q.idl and R.idl, |
+ # The above indicates that DOMWindow.idl is supplemented by P.idl, Q.idl and R.idl, |
# Document.idl is supplemented by S.idl, and Event.idl is supplemented by no IDLs. |
# The IDL that supplements another IDL (e.g. P.idl) never appears in the dependency file. |
open FH, "< $supplementalDependencyFile" or die "Cannot open $supplementalDependencyFile\n"; |
@@ -150,8 +150,9 @@ foreach my $idlFile (@supplementedIdlFiles) { |
$attribute->signature->extendedAttributes->{"ImplementedBy"} = $interfaceName; |
# Add interface-wide extended attributes to each attribute. |
- applyInterfaceExtendedAttributes($interface, $attribute->signature->extendedAttributes); |
- |
+ foreach my $extendedAttributeName (keys %{$interface->extendedAttributes}) { |
+ $attribute->signature->extendedAttributes->{$extendedAttributeName} = $interface->extendedAttributes->{$extendedAttributeName}; |
+ } |
push(@{$targetDataNode->attributes}, $attribute); |
} |
@@ -161,8 +162,9 @@ foreach my $idlFile (@supplementedIdlFiles) { |
$function->signature->extendedAttributes->{"ImplementedBy"} = $interfaceName; |
# Add interface-wide extended attributes to each method. |
- applyInterfaceExtendedAttributes($interface, $function->signature->extendedAttributes); |
- |
+ foreach my $extendedAttributeName (keys %{$interface->extendedAttributes}) { |
+ $function->signature->extendedAttributes->{$extendedAttributeName} = $interface->extendedAttributes->{$extendedAttributeName}; |
+ } |
push(@{$targetDataNode->functions}, $function); |
} |
@@ -172,8 +174,9 @@ foreach my $idlFile (@supplementedIdlFiles) { |
$constant->extendedAttributes->{"ImplementedBy"} = $interfaceName; |
# Add interface-wide extended attributes to each constant. |
- applyInterfaceExtendedAttributes($interface, $constant->extendedAttributes); |
- |
+ foreach my $extendedAttributeName (keys %{$interface->extendedAttributes}) { |
+ $constant->extendedAttributes->{$extendedAttributeName} = $interface->extendedAttributes->{$extendedAttributeName}; |
+ } |
push(@{$targetDataNode->constants}, $constant); |
} |
} else { |
@@ -272,17 +275,6 @@ sub checkIDLAttributes |
} |
} |
-sub applyInterfaceExtendedAttributes |
-{ |
- my $interface = shift; |
- my $extendedAttributes = shift; |
- |
- foreach my $extendedAttributeName (keys %{$interface->extendedAttributes}) { |
- next if $extendedAttributeName eq "ImplementedAs"; |
- $extendedAttributes->{$extendedAttributeName} = $interface->extendedAttributes->{$extendedAttributeName}; |
- } |
-} |
- |
sub checkIfIDLAttributesExists |
{ |
my $idlAttributes = shift; |