| Index: Tools/Scripts/webkitpy/w3c/test_converter.py | 
| diff --git a/Tools/Scripts/webkitpy/w3c/test_converter.py b/Tools/Scripts/webkitpy/w3c/test_converter.py | 
| index 169e0342cc1efaad5a7c200bba0b59468d263239..9d9578865c308a67efed406d7975e56438924280 100644 | 
| --- a/Tools/Scripts/webkitpy/w3c/test_converter.py | 
| +++ b/Tools/Scripts/webkitpy/w3c/test_converter.py | 
| @@ -73,19 +73,19 @@ class W3CTestConverter(object): | 
| Returns the list of modified properties and the modified text if the file was modifed, None otherwise.""" | 
| contents = self._filesystem.read_binary_file(filename) | 
| if filename.endswith('.css'): | 
| -            return self.convert_css(contents) | 
| -        return self.convert_html(new_path, contents) | 
| +            return self.convert_css(contents, filename) | 
| +        return self.convert_html(new_path, contents, filename) | 
|  | 
| -    def convert_css(self, contents): | 
| -        return self.add_webkit_prefix_to_unprefixed_properties(contents) | 
| +    def convert_css(self, contents, filename): | 
| +        return self.add_webkit_prefix_to_unprefixed_properties(contents, filename) | 
|  | 
| -    def convert_html(self, new_path, contents): | 
| +    def convert_html(self, new_path, contents, filename): | 
| doc = BeautifulSoup(contents) | 
| -        did_modify_paths = self.convert_testharness_paths(doc, new_path) | 
| -        converted_properties_and_content = self.convert_prefixed_properties(doc) | 
| +        did_modify_paths = self.convert_testharness_paths(doc, new_path, filename) | 
| +        converted_properties_and_content = self.convert_prefixed_properties(doc, filename) | 
| return converted_properties_and_content if (did_modify_paths or converted_properties_and_content[0]) else None | 
|  | 
| -    def convert_testharness_paths(self, doc, new_path): | 
| +    def convert_testharness_paths(self, doc, new_path, filename): | 
| """ Update links to testharness.js in the BeautifulSoup |doc| to point to the copy in |new_path|. | 
|  | 
| Returns whether the document was modified.""" | 
| @@ -108,6 +108,12 @@ class W3CTestConverter(object): | 
| if tag.name != 'script': | 
| attr = 'href' | 
|  | 
| +            if not attr in tag: | 
| +                # FIXME: Figure out what to do w/ invalid tags. For now, we return False | 
| +                # and leave the document unmodified, which means that it'll probably fail to run. | 
| +                print "Error: missing an attr in %s" % filename | 
| +                return False | 
| + | 
| old_path = tag[attr] | 
| new_tag = Tag(doc, tag.name, tag.attrs) | 
| new_tag[attr] = re.sub(pattern, resources_relpath + '/testharness', old_path) | 
| @@ -116,7 +122,7 @@ class W3CTestConverter(object): | 
|  | 
| return True | 
|  | 
| -    def convert_prefixed_properties(self, doc): | 
| +    def convert_prefixed_properties(self, doc, filename): | 
| """ Searches a BeautifulSoup |doc| for any CSS properties requiring the -webkit- prefix and converts them. | 
|  | 
| Returns the list of converted properties and the modified document as a string """ | 
| @@ -139,7 +145,7 @@ class W3CTestConverter(object): | 
| else: | 
| style_text = tag['style'] | 
|  | 
| -            updated_style_text = self.add_webkit_prefix_to_unprefixed_properties(style_text) | 
| +            updated_style_text = self.add_webkit_prefix_to_unprefixed_properties(style_text, filename) | 
|  | 
| # Rewrite tag only if changes were made. | 
| if updated_style_text[0]: | 
| @@ -152,7 +158,7 @@ class W3CTestConverter(object): | 
|  | 
| return (converted_properties, doc.prettify()) | 
|  | 
| -    def add_webkit_prefix_to_unprefixed_properties(self, text): | 
| +    def add_webkit_prefix_to_unprefixed_properties(self, text, filename): | 
| """ Searches |text| for instances of properties requiring the -webkit- prefix and adds the prefix to them. | 
|  | 
| Returns the list of converted properties and the modified text.""" | 
|  |