<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>105656</bug_id>
          
          <creation_ts>2012-12-21 13:59:50 -0800</creation_ts>
          <short_desc>Further harden FastMalloc</short_desc>
          <delta_ts>2012-12-21 14:23:25 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Oliver Hunt">oliver</reporter>
          <assigned_to name="Oliver Hunt">oliver</assigned_to>
          <cc>benjamin</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>796451</commentid>
    <comment_count>0</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2012-12-21 13:59:50 -0800</bug_when>
    <thetext>Further harden FastMalloc</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796453</commentid>
    <comment_count>1</comment_count>
      <attachid>180554</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2012-12-21 14:04:04 -0800</bug_when>
    <thetext>Created attachment 180554
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796456</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-21 14:07:31 -0800</bug_when>
    <thetext>Attachment 180554 did not pass style-queue:

Source/WTF/wtf/FastMalloc.cpp:690:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:694:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1034:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1035:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1036:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1037:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1040:  One space before end of line comments  [whitespace/comments] [5]
Source/WTF/wtf/FastMalloc.cpp:1040:  Extra space between Span* and m_next  [whitespace/declaration] [3]
Source/WTF/wtf/FastMalloc.cpp:1040:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1041:  One space before end of line comments  [whitespace/comments] [5]
Source/WTF/wtf/FastMalloc.cpp:1041:  Extra space between Span* and m_prev  [whitespace/declaration] [3]
Source/WTF/wtf/FastMalloc.cpp:1041:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1100:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1101:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1105:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1106:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1107:  Use 0 instead of NULL.  [readability/null] [5]
Source/WTF/wtf/FastMalloc.cpp:1107:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1108:  Use 0 instead of NULL.  [readability/null] [5]
Source/WTF/wtf/FastMalloc.cpp:1108:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1112:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1117:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1134:  Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]
Source/WTF/wtf/FastMalloc.cpp:1134:  Use 0 instead of NULL.  [readability/null] [5]
Source/WTF/wtf/FastMalloc.cpp:1134:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1135:  Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]
Source/WTF/wtf/FastMalloc.cpp:1135:  Use 0 instead of NULL.  [readability/null] [5]
Source/WTF/wtf/FastMalloc.cpp:1135:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1136:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1137:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1138:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1139:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1920:  Weird number of spaces at linFailed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WTF/ChangeLog&apos;, u&apos;Source/WTF/wtf/Fa...&quot; exit_code: 1
e-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1922:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1934:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:1936:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:2315:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:2316:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:2344:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Source/WTF/wtf/FastMalloc.cpp:2889:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
Total errors found: 40 in 2 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>796461</commentid>
    <comment_count>3</comment_count>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2012-12-21 14:23:25 -0800</bug_when>
    <thetext>Committed r138398: &lt;http://trac.webkit.org/changeset/138398&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>180554</attachid>
            <date>2012-12-21 14:04:04 -0800</date>
            <delta_ts>2012-12-21 14:11:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105656-20121221140120.patch</filename>
            <type>text/plain</type>
            <size>10904</size>
            <attacher name="Oliver Hunt">oliver</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM4MzkyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV1RGL0NoYW5n
ZUxvZyBiL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCmluZGV4IGRhOWIyZGI1Mjg5MGVhYmMxYjcxMmNm
MjUyOTcxZmFkZjJkYjlkMmMuLmQ5MDJlZmFiNjEwMWM3YzliMzFiNTZjNTYzYjI5MTYwYjgyZmRm
MzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XVEYvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XVEYvQ2hh
bmdlTG9nCkBAIC0xLDMgKzEsNDMgQEAKKzIwMTItMTItMjEgIE9saXZlciBIdW50ICA8b2xpdmVy
QGFwcGxlLmNvbT4KKworICAgICAgICBGdXJ0aGVyIGhhcmRlbiBGYXN0TWFsbG9jCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDU2NTYKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIGluY3JlYXNlcyB0
aGUgZGVncmVlIHRvIHdoaWNoIHdlIGhhcmRlbiB0aGUgRmFzdE1hbGxvYworICAgICAgICBsaW5r
ZWQgbGlzdHMuICBXZSBub3cgYWxzbyBtYXNrIHRoZSBwcmV2aW91cyBhbmQgbmV4dCBwb2ludGVy
cworICAgICAgICBpbiB0aGUgZG91Ymx5IGxpbmtlZCBsaXN0IGltcGxlbWVudGF0aW9uLiAgSSd2
ZSBhbHNvIG1hZGUKKyAgICAgICAgdGhlIG1hc2tpbmcgaXRzZWxmIHNvbWV3aGF0IG1vcmUgY29t
cGxleCB3aXRob3V0IGEgbWVhc3VyYWJsZQorICAgICAgICBjb3N0LiAgV2Ugc3RpbGwgdXNlIEFT
TFIgdG8gcHJvdmlkZSBzb21lIGdlbmVyYWwgZW50cm9weSwgYnV0CisgICAgICAgIHdlIGJsaW5k
IHRoZSBwb2ludGVycyBhZ2FpbnN0IGVhY2ggbm9kZXMgJ3RoaXMnIHBvaW50ZXIuCisKKyAgICAg
ICAgKiB3dGYvRmFzdE1hbGxvYy5jcHA6CisgICAgICAgIChXVEY6OkNsYXNzSW5kZXgpOgorICAg
ICAgICAoV1RGOjpTTExfTmV4dCk6CisgICAgICAgIChXVEY6OlNMTF9TZXROZXh0KToKKyAgICAg
ICAgKFdURjo6U3Bhbjo6bmV4dCk6CisgICAgICAgIChXVEY6OlNwYW46OnByZXYpOgorICAgICAg
ICAoV1RGOjpTcGFuOjpzZXROZXh0KToKKyAgICAgICAgKFdURjo6U3Bhbjo6c2V0UHJldik6Cisg
ICAgICAgIChTcGFuKToKKyAgICAgICAgICBBcyBTcGFuIG5vdyBoYXMgdG8gZG8gbWFza2luZyBv
biB0aGUgbmV4dCBhbmQgcHJldmlvdXMgcG9pbnRlcnMsCisgICAgICAgICAgSSd2ZSB1cGRhdGVk
IHRoZSBjb2RlIHRvIHVzZSBhY2Nlc3NvcnMgaW5zdGVhZC4KKyAgICAgICAgKFdURjo6RExMX0lu
aXQpOgorICAgICAgICAoV1RGOjpETExfUmVtb3ZlKToKKyAgICAgICAgKFdURjo6RExMX0lzRW1w
dHkpOgorICAgICAgICAoV1RGOjpETExfTGVuZ3RoKToKKyAgICAgICAgKFdURjo6RExMX1ByZXBl
bmQpOgorICAgICAgICAoV1RGOjpUQ01hbGxvY19DZW50cmFsX0ZyZWVMaXN0OjplbnVtZXJhdGVG
cmVlT2JqZWN0cyk6CisgICAgICAgIChXVEY6OlRDTWFsbG9jX1BhZ2VIZWFwOjpzY2F2ZW5nZSk6
CisgICAgICAgIChXVEY6OlRDTWFsbG9jX1BhZ2VIZWFwOjpOZXcpOgorICAgICAgICAoV1RGOjpU
Q01hbGxvY19QYWdlSGVhcDo6QWxsb2NMYXJnZSk6CisgICAgICAgIChXVEY6OlRDTWFsbG9jX1Bh
Z2VIZWFwOjpSZXR1cm5lZEJ5dGVzKToKKyAgICAgICAgKFdURjo6VENNYWxsb2NfUGFnZUhlYXA6
OkNoZWNrKToKKyAgICAgICAgKFdURjo6VENNYWxsb2NfUGFnZUhlYXA6OkNoZWNrTGlzdCk6Cisg
ICAgICAgIChXVEY6OlRDTWFsbG9jX1BhZ2VIZWFwOjpSZWxlYXNlRnJlZUxpc3QpOgorICAgICAg
ICAoV1RGOjpUQ01hbGxvY19DZW50cmFsX0ZyZWVMaXN0OjpGZXRjaEZyb21TcGFucyk6CisKIDIw
MTItMTItMjAgIFJ5dWFuIENob2kgIDxyeXVhbi5jaG9pQHNhbXN1bmcuY29tPgogCiAgICAgICAg
IFtFRkxdIEJ1aWxkIGJyZWFrIHdpdGggbGF0ZXN0IEVGTCBsaWJyYXJpZXMuCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV1RGL3d0Zi9GYXN0TWFsbG9jLmNwcCBiL1NvdXJjZS9XVEYvd3RmL0Zhc3RNYWxs
b2MuY3BwCmluZGV4IGU0Yzk3OGExNmM1OTdjMDQyMmI0MDc4N2I0ZTBiZjk4NjAxNzlkYTguLmJl
OWY5OGFhNTQwZTc1ZjM0ZTRjM2RkNzY3MjFiZWJmYzMwMmJmYjcgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XVEYvd3RmL0Zhc3RNYWxsb2MuY3BwCisrKyBiL1NvdXJjZS9XVEYvd3RmL0Zhc3RNYWxsb2Mu
Y3BwCkBAIC01MTAsMTEgKzUxMCwxNCBAQCBuYW1lc3BhY2UgV1RGIHsKICAqIGZyZWVsaXN0IG1h
bmlwdWxhdGlvbiBtdWNoIG1vcmUgZGlmZmljdWx0LgogICovCiBzdGF0aWMgY29uc3QgY2hhciBr
TExIYXJkZW5pbmdNYXNrID0gMDsKLSNkZWZpbmUgTUFTS19QVFIocHRyKSAocmVpbnRlcnByZXRf
Y2FzdDx0eXBlb2YocHRyKT4ocmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KHB0cilecmVpbnRl
cnByZXRfY2FzdDx1aW50cHRyX3Q+KCZrTExIYXJkZW5pbmdNYXNrKSkpCi0jZGVmaW5lIFVOTUFT
S19QVFIocHRyKSAocmVpbnRlcnByZXRfY2FzdDx0eXBlb2YocHRyKT4ocmVpbnRlcnByZXRfY2Fz
dDx1aW50cHRyX3Q+KHB0cilecmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KCZrTExIYXJkZW5p
bmdNYXNrKSkpCitlbnVtIHsKKyAgICBNYXNrQWRkclNoaWZ0ID0gOCwKKyAgICBNYXNrS2V5U2hp
ZnQgPSA0Cit9OworI2RlZmluZSBST1RBVEVfVkFMVUUodmFsdWUsIGFtb3VudCkgKCgodmFsdWUp
ID4+IChhbW91bnQpKSB8ICgodmFsdWUpIDw8IChzaXplb2YodmFsdWUpICogOCAtIChhbW91bnQp
KSkpCisjZGVmaW5lIFhPUl9NQVNLX1BUUl9XSVRIX0tFWShwdHIsIGtleSkgKHJlaW50ZXJwcmV0
X2Nhc3Q8dHlwZW9mKHB0cik+KHJlaW50ZXJwcmV0X2Nhc3Q8dWludHB0cl90PihwdHIpXlJPVEFU
RV9WQUxVRShyZWludGVycHJldF9jYXN0PHVpbnRwdHJfdD4oa2V5KSwgTWFza0tleVNoaWZ0KV5S
T1RBVEVfVkFMVUUocmVpbnRlcnByZXRfY2FzdDx1aW50cHRyX3Q+KCZrTExIYXJkZW5pbmdNYXNr
KSwgTWFza0FkZHJTaGlmdCkpKQogI2Vsc2UKLSNkZWZpbmUgTUFTS19QVFIocHRyKSAocHRyKQot
I2RlZmluZSBVTk1BU0tfUFRSKHB0cikgKHB0cikKKyNkZWZpbmUgWE9SX01BU0tfUFRSKHB0ciwg
a2V5KSAocHRyMSkKICNlbmRpZgogCiAKQEAgLTY4NCwxMSArNjg3LDExIEBAIHN0YXRpYyBpbmxp
bmUgaW50IExnRmxvb3Ioc2l6ZV90IG4pIHsKIC8vIHN0b3JhZ2UuCiAKIHN0YXRpYyBpbmxpbmUg
dm9pZCAqU0xMX05leHQodm9pZCAqdCkgewotICByZXR1cm4gVU5NQVNLX1BUUigqKHJlaW50ZXJw
cmV0X2Nhc3Q8dm9pZCoqPih0KSkpOworICByZXR1cm4gWE9SX01BU0tfUFRSX1dJVEhfS0VZKCoo
cmVpbnRlcnByZXRfY2FzdDx2b2lkKio+KHQpKSwgdCk7CiB9CiAKIHN0YXRpYyBpbmxpbmUgdm9p
ZCBTTExfU2V0TmV4dCh2b2lkICp0LCB2b2lkICpuKSB7Ci0gICoocmVpbnRlcnByZXRfY2FzdDx2
b2lkKio+KHQpKSA9IE1BU0tfUFRSKG4pOworICAqKHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPih0
KSkgPSBYT1JfTUFTS19QVFJfV0lUSF9LRVkobiwgdCk7CiB9CiAKIHN0YXRpYyBpbmxpbmUgdm9p
ZCBTTExfUHVzaCh2b2lkICoqbGlzdCwgdm9pZCAqZWxlbWVudCkgewpAQCAtMTAyOCw4ICsxMDMx
LDE1IEBAIHN0YXRpYyBzaXplX3QgQWxsb2NhdGlvblNpemUoc2l6ZV90IGJ5dGVzKSB7CiBzdHJ1
Y3QgU3BhbiB7CiAgIFBhZ2VJRCAgICAgICAgc3RhcnQ7ICAgICAgICAgIC8vIFN0YXJ0aW5nIHBh
Z2UgbnVtYmVyCiAgIExlbmd0aCAgICAgICAgbGVuZ3RoOyAgICAgICAgIC8vIE51bWJlciBvZiBw
YWdlcyBpbiBzcGFuCi0gIFNwYW4qICAgICAgICAgbmV4dDsgICAgICAgICAgIC8vIFVzZWQgd2hl
biBpbiBsaW5rIGxpc3QKLSAgU3BhbiogICAgICAgICBwcmV2OyAgICAgICAgICAgLy8gVXNlZCB3
aGVuIGluIGxpbmsgbGlzdAorICBTcGFuKiBuZXh0KCkgY29uc3QgeyByZXR1cm4gWE9SX01BU0tf
UFRSX1dJVEhfS0VZKG1fbmV4dCwgdGhpcyk7IH0KKyAgU3BhbiogcHJldigpIGNvbnN0IHsgcmV0
dXJuIFhPUl9NQVNLX1BUUl9XSVRIX0tFWShtX3ByZXYsIHRoaXMpOyB9CisgIHZvaWQgc2V0TmV4
dChTcGFuKiBuZXh0KSB7IG1fbmV4dCA9IFhPUl9NQVNLX1BUUl9XSVRIX0tFWShuZXh0LCB0aGlz
KTsgfQorICB2b2lkIHNldFByZXYoU3BhbiogcHJldikgeyBtX3ByZXYgPSBYT1JfTUFTS19QVFJf
V0lUSF9LRVkocHJldiwgdGhpcyk7IH0KKworcHJpdmF0ZToKKyAgU3BhbiogICAgICAgICBtX25l
eHQ7ICAgICAgICAgICAvLyBVc2VkIHdoZW4gaW4gbGluayBsaXN0CisgIFNwYW4qICAgICAgICAg
bV9wcmV2OyAgICAgICAgICAgLy8gVXNlZCB3aGVuIGluIGxpbmsgbGlzdAorcHVibGljOgogICB2
b2lkKiAgICAgICAgIG9iamVjdHM7ICAgICAgICAvLyBMaW5rZWQgbGlzdCBvZiBmcmVlIG9iamVj
dHMKICAgdW5zaWduZWQgaW50ICBmcmVlIDogMTsgICAgICAgLy8gSXMgdGhlIHNwYW4gZnJlZQog
I2lmbmRlZiBOT19UQ01BTExPQ19TQU1QTEVTCkBAIC0xMDg3LDI0ICsxMDk3LDI0IEBAIHN0YXRp
YyBpbmxpbmUgdm9pZCBEZWxldGVTcGFuKFNwYW4qIHNwYW4pIHsKIC8vIC0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0KIAogc3RhdGljIGlubGluZSB2b2lkIERMTF9Jbml0KFNwYW4qIGxpc3QpIHsKLSAgbGlzdC0+
bmV4dCA9IGxpc3Q7Ci0gIGxpc3QtPnByZXYgPSBsaXN0OworICBsaXN0LT5zZXROZXh0KGxpc3Qp
OworICBsaXN0LT5zZXRQcmV2KGxpc3QpOwogfQogCiBzdGF0aWMgaW5saW5lIHZvaWQgRExMX1Jl
bW92ZShTcGFuKiBzcGFuKSB7Ci0gIHNwYW4tPnByZXYtPm5leHQgPSBzcGFuLT5uZXh0OwotICBz
cGFuLT5uZXh0LT5wcmV2ID0gc3Bhbi0+cHJldjsKLSAgc3Bhbi0+cHJldiA9IE5VTEw7Ci0gIHNw
YW4tPm5leHQgPSBOVUxMOworICBzcGFuLT5wcmV2KCktPnNldE5leHQoc3Bhbi0+bmV4dCgpKTsK
KyAgc3Bhbi0+bmV4dCgpLT5zZXRQcmV2KHNwYW4tPnByZXYoKSk7CisgIHNwYW4tPnNldFByZXYo
TlVMTCk7CisgIHNwYW4tPnNldE5leHQoTlVMTCk7CiB9CiAKIHN0YXRpYyBBTFdBWVNfSU5MSU5F
IGJvb2wgRExMX0lzRW1wdHkoY29uc3QgU3BhbiogbGlzdCkgewotICByZXR1cm4gbGlzdC0+bmV4
dCA9PSBsaXN0OworICByZXR1cm4gbGlzdC0+bmV4dCgpID09IGxpc3Q7CiB9CiAKIHN0YXRpYyBp
bnQgRExMX0xlbmd0aChjb25zdCBTcGFuKiBsaXN0KSB7CiAgIGludCByZXN1bHQgPSAwOwotICBm
b3IgKFNwYW4qIHMgPSBsaXN0LT5uZXh0OyBzICE9IGxpc3Q7IHMgPSBzLT5uZXh0KSB7CisgIGZv
ciAoU3BhbiogcyA9IGxpc3QtPm5leHQoKTsgcyAhPSBsaXN0OyBzID0gcy0+bmV4dCgpKSB7CiAg
ICAgcmVzdWx0Kys7CiAgIH0KICAgcmV0dXJuIHJlc3VsdDsKQEAgLTExMjEsMTIgKzExMzEsMTIg
QEAgc3RhdGljIHZvaWQgRExMX1ByaW50KGNvbnN0IGNoYXIqIGxhYmVsLCBjb25zdCBTcGFuKiBs
aXN0KSB7CiAjZW5kaWYKIAogc3RhdGljIGlubGluZSB2b2lkIERMTF9QcmVwZW5kKFNwYW4qIGxp
c3QsIFNwYW4qIHNwYW4pIHsKLSAgQVNTRVJUKHNwYW4tPm5leHQgPT0gTlVMTCk7Ci0gIEFTU0VS
VChzcGFuLT5wcmV2ID09IE5VTEwpOwotICBzcGFuLT5uZXh0ID0gbGlzdC0+bmV4dDsKLSAgc3Bh
bi0+cHJldiA9IGxpc3Q7Ci0gIGxpc3QtPm5leHQtPnByZXYgPSBzcGFuOwotICBsaXN0LT5uZXh0
ID0gc3BhbjsKKyAgQVNTRVJUKHNwYW4tPm5leHQoKSA9PSBOVUxMKTsKKyAgQVNTRVJUKHNwYW4t
PnByZXYoKSA9PSBOVUxMKTsKKyAgc3Bhbi0+c2V0TmV4dChsaXN0LT5uZXh0KCkpOworICBzcGFu
LT5zZXRQcmV2KGxpc3QpOworICBsaXN0LT5uZXh0KCktPnNldFByZXYoc3Bhbik7CisgIGxpc3Qt
PnNldE5leHQoc3Bhbik7CiB9CiAKIC8vLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQpAQCAtMTE2MiwxNiArMTE3MiwxNiBA
QCBjbGFzcyBUQ01hbGxvY19DZW50cmFsX0ZyZWVMaXN0IHsKICAgdGVtcGxhdGUgPGNsYXNzIEZp
bmRlciwgY2xhc3MgUmVhZGVyPgogICB2b2lkIGVudW1lcmF0ZUZyZWVPYmplY3RzKEZpbmRlciYg
ZmluZGVyLCBjb25zdCBSZWFkZXImIHJlYWRlciwgVENNYWxsb2NfQ2VudHJhbF9GcmVlTGlzdCog
cmVtb3RlQ2VudHJhbEZyZWVMaXN0KQogICB7Ci0gICAgZm9yIChTcGFuKiBzcGFuID0gJmVtcHR5
Xzsgc3BhbiAmJiBzcGFuICE9ICZlbXB0eV87IHNwYW4gPSAoc3Bhbi0+bmV4dCA/IHJlYWRlcihz
cGFuLT5uZXh0KSA6IDApKQorICAgIGZvciAoU3Bhbiogc3BhbiA9ICZlbXB0eV87IHNwYW4gJiYg
c3BhbiAhPSAmZW1wdHlfOyBzcGFuID0gKHNwYW4tPm5leHQoKSA/IHJlYWRlcihzcGFuLT5uZXh0
KCkpIDogMCkpCiAgICAgICBBU1NFUlQoIXNwYW4tPm9iamVjdHMpOwogCiAgICAgQVNTRVJUKCFu
b25lbXB0eV8ub2JqZWN0cyk7CiAgICAgc3RhdGljIGNvbnN0IHB0cmRpZmZfdCBub25lbXB0eU9m
ZnNldCA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgY2hhcio+KCZub25lbXB0eV8pIC0gcmVpbnRl
cnByZXRfY2FzdDxjb25zdCBjaGFyKj4odGhpcyk7CiAKICAgICBTcGFuKiByZW1vdGVOb25lbXB0
eSA9IHJlaW50ZXJwcmV0X2Nhc3Q8U3Bhbio+KHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KHJlbW90
ZUNlbnRyYWxGcmVlTGlzdCkgKyBub25lbXB0eU9mZnNldCk7Ci0gICAgU3BhbiogcmVtb3RlU3Bh
biA9IG5vbmVtcHR5Xy5uZXh0OworICAgIFNwYW4qIHJlbW90ZVNwYW4gPSBub25lbXB0eV8ubmV4
dCgpOwogCi0gICAgZm9yIChTcGFuKiBzcGFuID0gcmVhZGVyKHJlbW90ZVNwYW4pOyBzcGFuICYm
IHJlbW90ZVNwYW4gIT0gcmVtb3RlTm9uZW1wdHk7IHJlbW90ZVNwYW4gPSBzcGFuLT5uZXh0LCBz
cGFuID0gKHNwYW4tPm5leHQgPyByZWFkZXIoc3Bhbi0+bmV4dCkgOiAwKSkgeworICAgIGZvciAo
U3Bhbiogc3BhbiA9IHJlYWRlcihyZW1vdGVTcGFuKTsgc3BhbiAmJiByZW1vdGVTcGFuICE9IHJl
bW90ZU5vbmVtcHR5OyByZW1vdGVTcGFuID0gc3Bhbi0+bmV4dCgpLCBzcGFuID0gKHNwYW4tPm5l
eHQoKSA/IHJlYWRlcihzcGFuLT5uZXh0KCkpIDogMCkpIHsKICAgICAgIGZvciAodm9pZCogbmV4
dE9iamVjdCA9IHNwYW4tPm9iamVjdHM7IG5leHRPYmplY3Q7IG5leHRPYmplY3QgPSByZWFkZXIu
bmV4dEVudHJ5SW5MaW5rZWRMaXN0KHJlaW50ZXJwcmV0X2Nhc3Q8dm9pZCoqPihuZXh0T2JqZWN0
KSkpCiAgICAgICAgIGZpbmRlci52aXNpdChuZXh0T2JqZWN0KTsKICAgICB9CkBAIC0xODIxLDcg
KzE4MzEsNyBAQCB2b2lkIFRDTWFsbG9jX1BhZ2VIZWFwOjpzY2F2ZW5nZSgpCiAgICAgICAgICAg
ICBzaXplX3QgbGVuZ3RoID0gRExMX0xlbmd0aCgmc2xpc3QtPm5vcm1hbCk7CiAgICAgICAgICAg
ICBzaXplX3QgbnVtU3BhbnNUb1JldHVybiA9IChpID4ga01pblNwYW5MaXN0c1dpdGhTcGFucykg
PyBsZW5ndGggOiBsZW5ndGggLyAyOwogICAgICAgICAgICAgZm9yIChpbnQgaiA9IDA7IHN0YXRp
Y19jYXN0PHNpemVfdD4oaikgPCBudW1TcGFuc1RvUmV0dXJuICYmICFETExfSXNFbXB0eSgmc2xp
c3QtPm5vcm1hbCkgJiYgZnJlZV9jb21taXR0ZWRfcGFnZXNfID4gdGFyZ2V0UGFnZUNvdW50OyBq
KyspIHsKLSAgICAgICAgICAgICAgICBTcGFuKiBzID0gc2xpc3QtPm5vcm1hbC5wcmV2OyAKKyAg
ICAgICAgICAgICAgICBTcGFuKiBzID0gc2xpc3QtPm5vcm1hbC5wcmV2KCk7CiAgICAgICAgICAg
ICAgICAgRExMX1JlbW92ZShzKTsKICAgICAgICAgICAgICAgICBBU1NFUlQoIXMtPmRlY29tbWl0
dGVkKTsKICAgICAgICAgICAgICAgICBpZiAoIXMtPmRlY29tbWl0dGVkKSB7CkBAIC0xODcwLDcg
KzE4ODAsNyBAQCBpbmxpbmUgU3BhbiogVENNYWxsb2NfUGFnZUhlYXA6Ok5ldyhMZW5ndGggbikg
ewogICAgICAgY29udGludWU7CiAgICAgfQogCi0gICAgU3BhbiogcmVzdWx0ID0gbGwtPm5leHQ7
CisgICAgU3BhbiogcmVzdWx0ID0gbGwtPm5leHQoKTsKICAgICBDYXJ2ZShyZXN1bHQsIG4sIHJl
bGVhc2VkKTsKICNpZiBVU0VfQkFDS0dST1VORF9USFJFQURfVE9fU0NBVkVOR0VfTUVNT1JZCiAg
ICAgLy8gVGhlIG5ld2x5IGFsbG9jYXRlZCBtZW1vcnkgaXMgZnJvbSBhIHNwYW4gdGhhdCdzIGlu
IHRoZSBub3JtYWwgc3BhbiBsaXN0IChhbHJlYWR5IGNvbW1pdHRlZCkuICBVcGRhdGUgdGhlCkBA
IC0xOTA3LDkgKzE5MTcsOSBAQCBTcGFuKiBUQ01hbGxvY19QYWdlSGVhcDo6QWxsb2NMYXJnZShM
ZW5ndGggbikgewogICBTcGFuICpiZXN0ID0gTlVMTDsKIAogICAvLyBTZWFyY2ggdGhyb3VnaCBu
b3JtYWwgbGlzdAotICBmb3IgKFNwYW4qIHNwYW4gPSBsYXJnZV8ubm9ybWFsLm5leHQ7CisgIGZv
ciAoU3Bhbiogc3BhbiA9IGxhcmdlXy5ub3JtYWwubmV4dCgpOwogICAgICAgIHNwYW4gIT0gJmxh
cmdlXy5ub3JtYWw7Ci0gICAgICAgc3BhbiA9IHNwYW4tPm5leHQpIHsKKyAgICAgICBzcGFuID0g
c3Bhbi0+bmV4dCgpKSB7CiAgICAgaWYgKHNwYW4tPmxlbmd0aCA+PSBuKSB7CiAgICAgICBpZiAo
KGJlc3QgPT0gTlVMTCkKICAgICAgICAgICB8fCAoc3Bhbi0+bGVuZ3RoIDwgYmVzdC0+bGVuZ3Ro
KQpAQCAtMTkyMSw5ICsxOTMxLDkgQEAgU3BhbiogVENNYWxsb2NfUGFnZUhlYXA6OkFsbG9jTGFy
Z2UoTGVuZ3RoIG4pIHsKICAgfQogCiAgIC8vIFNlYXJjaCB0aHJvdWdoIHJlbGVhc2VkIGxpc3Qg
aW4gY2FzZSBpdCBoYXMgYSBiZXR0ZXIgZml0Ci0gIGZvciAoU3Bhbiogc3BhbiA9IGxhcmdlXy5y
ZXR1cm5lZC5uZXh0OworICBmb3IgKFNwYW4qIHNwYW4gPSBsYXJnZV8ucmV0dXJuZWQubmV4dCgp
OwogICAgICAgIHNwYW4gIT0gJmxhcmdlXy5yZXR1cm5lZDsKLSAgICAgICBzcGFuID0gc3Bhbi0+
bmV4dCkgeworICAgICAgIHNwYW4gPSBzcGFuLT5uZXh0KCkpIHsKICAgICBpZiAoc3Bhbi0+bGVu
Z3RoID49IG4pIHsKICAgICAgIGlmICgoYmVzdCA9PSBOVUxMKQogICAgICAgICAgIHx8IChzcGFu
LT5sZW5ndGggPCBiZXN0LT5sZW5ndGgpCkBAIC0yMTc1LDcgKzIxODUsNyBAQCBzaXplX3QgVENN
YWxsb2NfUGFnZUhlYXA6OlJldHVybmVkQnl0ZXMoKSBjb25zdCB7CiAgICAgICAgIHJlc3VsdCAr
PSByX3BhZ2VzIDw8IGtQYWdlU2hpZnQ7CiAgICAgfQogICAgIAotICAgIGZvciAoU3BhbiogcyA9
IGxhcmdlXy5yZXR1cm5lZC5uZXh0OyBzICE9ICZsYXJnZV8ucmV0dXJuZWQ7IHMgPSBzLT5uZXh0
KQorICAgIGZvciAoU3BhbiogcyA9IGxhcmdlXy5yZXR1cm5lZC5uZXh0KCk7IHMgIT0gJmxhcmdl
Xy5yZXR1cm5lZDsgcyA9IHMtPm5leHQoKSkKICAgICAgICAgcmVzdWx0ICs9IHMtPmxlbmd0aCA8
PCBrUGFnZVNoaWZ0OwogICAgIHJldHVybiByZXN1bHQ7CiB9CkBAIC0yMzAyLDggKzIzMTIsOCBA
QCBib29sIFRDTWFsbG9jX1BhZ2VIZWFwOjpDaGVjaygpIHsKICNpZiBVU0VfQkFDS0dST1VORF9U
SFJFQURfVE9fU0NBVkVOR0VfTUVNT1JZCiAgIHNpemVfdCB0b3RhbEZyZWVDb21taXR0ZWQgPSAw
OwogI2VuZGlmCi0gIEFTU0VSVChmcmVlX1swXS5ub3JtYWwubmV4dCA9PSAmZnJlZV9bMF0ubm9y
bWFsKTsKLSAgQVNTRVJUKGZyZWVfWzBdLnJldHVybmVkLm5leHQgPT0gJmZyZWVfWzBdLnJldHVy
bmVkKTsKKyAgQVNTRVJUKGZyZWVfWzBdLm5vcm1hbC5uZXh0KCkgPT0gJmZyZWVfWzBdLm5vcm1h
bCk7CisgIEFTU0VSVChmcmVlX1swXS5yZXR1cm5lZC5uZXh0KCkgPT0gJmZyZWVfWzBdLnJldHVy
bmVkKTsKICNpZiBVU0VfQkFDS0dST1VORF9USFJFQURfVE9fU0NBVkVOR0VfTUVNT1JZCiAgIHRv
dGFsRnJlZUNvbW1pdHRlZCA9IENoZWNrTGlzdCgmbGFyZ2VfLm5vcm1hbCwga01heFBhZ2VzLCAx
MDAwMDAwMDAwLCBmYWxzZSk7CiAjZWxzZQpAQCAtMjMzMSw3ICsyMzQxLDcgQEAgc2l6ZV90IFRD
TWFsbG9jX1BhZ2VIZWFwOjpDaGVja0xpc3QoU3BhbiosIExlbmd0aCwgTGVuZ3RoLCBib29sKSB7
CiAjZWxzZQogc2l6ZV90IFRDTWFsbG9jX1BhZ2VIZWFwOjpDaGVja0xpc3QoU3BhbiogbGlzdCwg
TGVuZ3RoIG1pbl9wYWdlcywgTGVuZ3RoIG1heF9wYWdlcywgYm9vbCBkZWNvbW1pdHRlZCkgewog
ICBzaXplX3QgZnJlZUNvdW50ID0gMDsKLSAgZm9yIChTcGFuKiBzID0gbGlzdC0+bmV4dDsgcyAh
PSBsaXN0OyBzID0gcy0+bmV4dCkgeworICBmb3IgKFNwYW4qIHMgPSBsaXN0LT5uZXh0KCk7IHMg
IT0gbGlzdDsgcyA9IHMtPm5leHQoKSkgewogICAgIENIRUNLX0NPTkRJVElPTihzLT5mcmVlKTsK
ICAgICBDSEVDS19DT05ESVRJT04ocy0+bGVuZ3RoID49IG1pbl9wYWdlcyk7CiAgICAgQ0hFQ0tf
Q09ORElUSU9OKHMtPmxlbmd0aCA8PSBtYXhfcGFnZXMpOwpAQCAtMjM1Miw3ICsyMzYyLDcgQEAg
dm9pZCBUQ01hbGxvY19QYWdlSGVhcDo6UmVsZWFzZUZyZWVMaXN0KFNwYW4qIGxpc3QsIFNwYW4q
IHJldHVybmVkKSB7CiAjZW5kaWYKIAogICB3aGlsZSAoIURMTF9Jc0VtcHR5KGxpc3QpKSB7Ci0g
ICAgU3BhbiogcyA9IGxpc3QtPnByZXY7CisgICAgU3BhbiogcyA9IGxpc3QtPnByZXYoKTsKIAog
ICAgIERMTF9SZW1vdmUocyk7CiAgICAgcy0+ZGVjb21taXR0ZWQgPSB0cnVlOwpAQCAtMjg3Niw3
ICsyODg2LDcgQEAgdm9pZCogVENNYWxsb2NfQ2VudHJhbF9GcmVlTGlzdDo6RmV0Y2hGcm9tU3Bh
bnNTYWZlKCkgewogCiB2b2lkKiBUQ01hbGxvY19DZW50cmFsX0ZyZWVMaXN0OjpGZXRjaEZyb21T
cGFucygpIHsKICAgaWYgKERMTF9Jc0VtcHR5KCZub25lbXB0eV8pKSByZXR1cm4gTlVMTDsKLSAg
U3Bhbiogc3BhbiA9IG5vbmVtcHR5Xy5uZXh0OworICBTcGFuKiBzcGFuID0gbm9uZW1wdHlfLm5l
eHQoKTsKIAogICBBU1NFUlQoc3Bhbi0+b2JqZWN0cyAhPSBOVUxMKTsKICAgQVNTRVJUX1NQQU5f
Q09NTUlUVEVEKHNwYW4pOwo=
</data>
<flag name="review"
          id="197852"
          type_id="1"
          status="+"
          setter="barraclough"
    />
          </attachment>
      

    </bug>

</bugzilla>