diff options
author | MATSUMURA Tetsuro <tm900102@gmail.com> | 2016-04-13 20:35:45 +0900 |
---|---|---|
committer | Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> | 2016-04-13 13:15:30 +0000 |
commit | 96ff51f856c34c7826c13c2d4c376022e6b7d027 (patch) | |
tree | 17f3503af6011affa3906666d599056377bc51ef /qmake | |
parent | 208f364a953146223fe5cb41ca44875f4c85cdd9 (diff) |
Fix dependency scanner being confused by UTF-8 BOM
Update QMakeSourceFileInfo::findDeps to skip UTF-8 BOM if exists.
Task-number: QTBUG-34182
Change-Id: I7a3e30ecab08f485c53e2ca2eab197619b11c2c7
Reviewed-by: Edward Welbourne <edward.welbourne@theqtcompany.com>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Diffstat (limited to 'qmake')
-rw-r--r-- | qmake/generators/makefiledeps.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/qmake/generators/makefiledeps.cpp b/qmake/generators/makefiledeps.cpp index 047d17f18a..ae81ebc1db 100644 --- a/qmake/generators/makefiledeps.cpp +++ b/qmake/generators/makefiledeps.cpp @@ -554,7 +554,14 @@ bool QMakeSourceFileInfo::findDeps(SourceFile *file) InCode // after directive, parsing non-#include directive or in actual code } cpp_state = AtStart; - for(int x = 0; x < buffer_len; ++x) { + int x = 0; + if (buffer_len >= 3) { + const unsigned char *p = (unsigned char *)buffer; + // skip UTF-8 BOM, if present + if (p[0] == 0xEF && p[1] == 0xBB && p[2] == 0xBF) + x += 3; + } + for (; x < buffer_len; ++x) { bool try_local = true; char *inc = 0; if(file->type == QMakeSourceFileInfo::TYPE_UI) { |