| OLD | NEW |
| 1 # Copyright (C) 2010 Apple Inc. All rights reserved. | 1 # Copyright (C) 2010 Apple Inc. All rights reserved. |
| 2 # | 2 # |
| 3 # Redistribution and use in source and binary forms, with or without | 3 # Redistribution and use in source and binary forms, with or without |
| 4 # modification, are permitted provided that the following conditions | 4 # modification, are permitted provided that the following conditions |
| 5 # are met: | 5 # are met: |
| 6 # 1. Redistributions of source code must retain the above copyright | 6 # 1. Redistributions of source code must retain the above copyright |
| 7 # notice, this list of conditions and the following disclaimer. | 7 # notice, this list of conditions and the following disclaimer. |
| 8 # 2. Redistributions in binary form must reproduce the above copyright | 8 # 2. Redistributions in binary form must reproduce the above copyright |
| 9 # notice, this list of conditions and the following disclaimer in the | 9 # notice, this list of conditions and the following disclaimer in the |
| 10 # documentation and/or other materials provided with the distribution. | 10 # documentation and/or other materials provided with the distribution. |
| (...skipping 10 matching lines...) Expand all Loading... |
| 21 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 21 # OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 22 | 22 |
| 23 """Checks WebKit style for XML files.""" | 23 """Checks WebKit style for XML files.""" |
| 24 | 24 |
| 25 from __future__ import absolute_import | 25 from __future__ import absolute_import |
| 26 | 26 |
| 27 from xml.parsers import expat | 27 from xml.parsers import expat |
| 28 | 28 |
| 29 | 29 |
| 30 class XMLChecker(object): | 30 class XMLChecker(object): |
| 31 |
| 31 """Processes XML lines for checking style.""" | 32 """Processes XML lines for checking style.""" |
| 32 | 33 |
| 33 def __init__(self, file_path, handle_style_error): | 34 def __init__(self, file_path, handle_style_error): |
| 34 self._handle_style_error = handle_style_error | 35 self._handle_style_error = handle_style_error |
| 35 self._handle_style_error.turn_off_line_filtering() | 36 self._handle_style_error.turn_off_line_filtering() |
| 36 | 37 |
| 37 def check(self, lines): | 38 def check(self, lines): |
| 38 parser = expat.ParserCreate() | 39 parser = expat.ParserCreate() |
| 39 try: | 40 try: |
| 40 for line in lines: | 41 for line in lines: |
| 41 parser.Parse(line) | 42 parser.Parse(line) |
| 42 parser.Parse('\n') | 43 parser.Parse('\n') |
| 43 parser.Parse('', True) | 44 parser.Parse('', True) |
| 44 except expat.ExpatError, error: | 45 except expat.ExpatError as error: |
| 45 self._handle_style_error(error.lineno, 'xml/syntax', 5, expat.ErrorS
tring(error.code)) | 46 self._handle_style_error(error.lineno, 'xml/syntax', 5, expat.ErrorS
tring(error.code)) |
| OLD | NEW |