webrtc_m130/third_party/libxml/chromium/chromium-issue-599427.patch
Artem Titov 739351d476 Roll chromium_revision 95336cb92b..191d55580e (557816:557824)
Change log: 95336cb92b..191d55580e
Full diff: 95336cb92b..191d55580e

Roll chromium third_party 4e16929f46..3a8f2a9e1e
Change log: 4e16929f46..3a8f2a9e1e

Changed dependencies:
* src/tools: c44a3f5eca..f524a53b81
DEPS diff: 95336cb92b..191d55580e/DEPS

No update to Clang.

TBR=titovartem@google.com,
BUG=None
CQ_INCLUDE_TRYBOTS=master.internal.tryserver.corp.webrtc:linux_internal

Change-Id: Ic9c4a62b050383646e9fcf5cc07a5653c14ac06e
Reviewed-on: https://webrtc-review.googlesource.com/76120
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23205}
2018-05-11 11:17:05 +00:00

29 lines
820 B
Diff

--- a/xmlstring.c 2016-05-13 17:24:58.870079372 +0900
+++ b/xmlstring.c 2016-04-25 13:58:09.879238595 +0900
@@ -835,16 +835,20 @@
while ( len-- > 0) {
if ( !*ptr )
break;
- if ( (ch = *ptr++) & 0x80)
- while ((ch<<=1) & 0x80 ) {
- if (*ptr == 0) break;
+ if ( (ch = *ptr++) & 0x80) {
+ // Workaround for an optimization bug in VS 2015 Update 2, remove
+ // once the fix is released. crbug.com/599427
+ // https://connect.microsoft.com/VisualStudio/feedback/details/2582138
+ xmlChar ch2 = ch;
+ while ((ch2<<=1) & 0x80 ) {
ptr++;
- }
+ if (*ptr == 0) break;
+ }
+ }
}
return (ptr - utf);
}
-
/**
* xmlUTF8Strndup:
* @utf: the input UTF8 *