<?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>108064</bug_id>
          
          <creation_ts>2013-01-28 01:42:11 -0800</creation_ts>
          <short_desc>Web Inspector: [Canvas] refactoring in CanvasAgent to reduce code dups</short_desc>
          <delta_ts>2013-01-28 04:03:03 -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>Web Inspector (Deprecated)</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</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>
          <dependson>107951</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andrey Adaikin">aandrey</reporter>
          <assigned_to name="Andrey Adaikin">aandrey</assigned_to>
          <cc>apavlov</cc>
    
    <cc>keishi</cc>
    
    <cc>loislo</cc>
    
    <cc>pfeldman</cc>
    
    <cc>pmuellr</cc>
    
    <cc>vsevik</cc>
    
    <cc>web-inspector-bugs</cc>
    
    <cc>yurys</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>817609</commentid>
    <comment_count>0</comment_count>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2013-01-28 01:42:11 -0800</bug_when>
    <thetext>Refactoring extracted from https://bugs.webkit.org/show_bug.cgi?id=107951

Patch to follow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>817611</commentid>
    <comment_count>1</comment_count>
      <attachid>184954</attachid>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2013-01-28 01:44:46 -0800</bug_when>
    <thetext>Created attachment 184954
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>817617</commentid>
    <comment_count>2</comment_count>
      <attachid>184954</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2013-01-28 01:54:04 -0800</bug_when>
    <thetext>Comment on attachment 184954
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=184954&amp;action=review

&gt; Source/WebCore/ChangeLog:6
&gt; +        Reviewed by NOBODY (OOPS!).

Please explain what changed and why prior to landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>817675</commentid>
    <comment_count>3</comment_count>
    <who name="Andrey Adaikin">aandrey</who>
    <bug_when>2013-01-28 04:03:03 -0800</bug_when>
    <thetext>Committed r140963: &lt;http://trac.webkit.org/changeset/140963&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>184954</attachid>
            <date>2013-01-28 01:44:46 -0800</date>
            <delta_ts>2013-01-28 02:34:25 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108064-20130128134132.patch</filename>
            <type>text/plain</type>
            <size>14113</size>
            <attacher name="Andrey Adaikin">aandrey</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQwNjgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzdiOWZmZGVhZmI2NDg1
MzQxMTk2YjU3MDE4YzMyNDRlNzkxYTQ5YS4uMWU4ZTMzOGUyNGE1ZmMwYzQzOGYwODY5ZGVjZDk1
NjgxYmViNTcwNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEzLTAxLTI4ICBBbmRy
ZXkgQWRhaWtpbiAgPGFhbmRyZXlAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFdlYiBJbnNwZWN0
b3I6IFtDYW52YXNdIHJlZmFjdG9yaW5nIGluIENhbnZhc0FnZW50IHRvIHJlZHVjZSBjb2RlIGR1
cHMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwODA2
NAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogaW5z
cGVjdG9yL0luc3BlY3RvckNhbnZhc0FnZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvckNhbnZhc0FnZW50Ojpkcm9wVHJhY2VMb2cpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yQ2FudmFzQWdlbnQ6OmNhcHR1cmVGcmFtZSk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JDYW52YXNBZ2VudDo6c3RhcnRDYXB0dXJpbmcpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yQ2FudmFzQWdlbnQ6OnN0b3BDYXB0dXJpbmcpOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVj
dG9yQ2FudmFzQWdlbnQ6OmdldFRyYWNlTG9nKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3Rv
ckNhbnZhc0FnZW50OjpyZXBsYXlUcmFjZUxvZyk6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0
b3JDYW52YXNBZ2VudDo6Z2V0UmVzb3VyY2VJbmZvKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3Bl
Y3RvckNhbnZhc0FnZW50OjpnZXRSZXNvdXJjZVN0YXRlKToKKyAgICAgICAgKFdlYkNvcmU6Oklu
c3BlY3RvckNhbnZhc0FnZW50Ojp3cmFwQ2FudmFzMkRSZW5kZXJpbmdDb250ZXh0Rm9ySW5zdHJ1
bWVudGF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNhbnZhc0FnZW50Ojp3cmFw
V2ViR0xSZW5kZXJpbmdDb250ZXh0Rm9ySW5zdHJ1bWVudGF0aW9uKToKKyAgICAgICAgKFdlYkNv
cmU6Okluc3BlY3RvckNhbnZhc0FnZW50OjppbmplY3RlZFNjcmlwdENhbnZhc01vZHVsZSk6Cisg
ICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKFdlYkNvcmU6Okluc3BlY3RvckNhbnZhc0FnZW50
OjpmaW5kRnJhbWVzV2l0aFVuaW5zdHJ1bWVudGVkQ2FudmFzZXMpOgorICAgICAgICAqIGluc3Bl
Y3Rvci9JbnNwZWN0b3JDYW52YXNBZ2VudC5oOgorICAgICAgICAoSW5zcGVjdG9yQ2FudmFzQWdl
bnQpOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6SW5zcGVjdG9yUGFnZUFnZW50Ojphc3NlcnRGcmFtZSk6CisgICAgICAgIChX
ZWJDb3JlOjpJbnNwZWN0b3JQYWdlQWdlbnQ6OmFzc2VydERvY3VtZW50TG9hZGVyKToKKyAgICAg
ICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50Lmg6CisgICAgICAgIChJbnNwZWN0b3JQ
YWdlQWdlbnQpOgorCiAyMDEzLTAxLTI0ICBab2x0YW4gQXJ2YWkgIDx6YXJ2YWlAaW5mLnUtc3pl
Z2VkLmh1PgogCiAgICAgICAgIFJlbW92aW5nIGRlbGV0ZWQgZmlsZXMgZnJvbSBXZWJDb3JlL1Rh
cmdldC5wcmkgYWZ0ZXIgcjE0MDM5OS4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3Bl
Y3Rvci9JbnNwZWN0b3JDYW52YXNBZ2VudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yQ2FudmFzQWdlbnQuY3BwCmluZGV4IGIyMTBlNGI0NjUxYmQ5YTY0NTg5NjlmMTJj
MzAwZTAwODFjZDA3ZjMuLjgzNDU4YWQwNDg3YTk2ZTk2Y2ZkZjA1NDgyYjZlYTZjNWIyZWRjMmYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDYW52YXNBZ2Vu
dC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckNhbnZhc0FnZW50
LmNwcApAQCAtMTA4LDcgKzEwOCw3IEBAIHZvaWQgSW5zcGVjdG9yQ2FudmFzQWdlbnQ6OmRpc2Fi
bGUoRXJyb3JTdHJpbmcqKQogCiB2b2lkIEluc3BlY3RvckNhbnZhc0FnZW50Ojpkcm9wVHJhY2VM
b2coRXJyb3JTdHJpbmcqIGVycm9yU3RyaW5nLCBjb25zdCBTdHJpbmcmIHRyYWNlTG9nSWQpCiB7
Ci0gICAgSW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUgbW9kdWxlID0gaW5qZWN0ZWRTY3JpcHRD
YW52YXNNb2R1bGVGb3JUcmFjZUxvZ0lkKGVycm9yU3RyaW5nLCB0cmFjZUxvZ0lkKTsKKyAgICBJ
bmplY3RlZFNjcmlwdENhbnZhc01vZHVsZSBtb2R1bGUgPSBpbmplY3RlZFNjcmlwdENhbnZhc01v
ZHVsZShlcnJvclN0cmluZywgdHJhY2VMb2dJZCk7CiAgICAgaWYgKCFtb2R1bGUuaGFzTm9WYWx1
ZSgpKQogICAgICAgICBtb2R1bGUuZHJvcFRyYWNlTG9nKGVycm9yU3RyaW5nLCB0cmFjZUxvZ0lk
KTsKIH0KQEAgLTEyMiwxMjggKzEyMiwxMTYgQEAgdm9pZCBJbnNwZWN0b3JDYW52YXNBZ2VudDo6
aGFzVW5pbnN0cnVtZW50ZWRDYW52YXNlcyhFcnJvclN0cmluZyogZXJyb3JTdHJpbmcsIGIKIAog
dm9pZCBJbnNwZWN0b3JDYW52YXNBZ2VudDo6Y2FwdHVyZUZyYW1lKEVycm9yU3RyaW5nKiBlcnJv
clN0cmluZywgU3RyaW5nKiB0cmFjZUxvZ0lkKQogewotICAgIGlmICghY2hlY2tJc0VuYWJsZWQo
ZXJyb3JTdHJpbmcpKQotICAgICAgICByZXR1cm47Ci0gICAgU2NyaXB0U3RhdGUqIHNjcmlwdFN0
YXRlID0gbWFpbldvcmxkU2NyaXB0U3RhdGUobV9pbnNwZWN0ZWRQYWdlLT5tYWluRnJhbWUoKSk7
Ci0gICAgSW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUgbW9kdWxlID0gSW5qZWN0ZWRTY3JpcHRD
YW52YXNNb2R1bGU6Om1vZHVsZUZvclN0YXRlKG1faW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLCBzY3Jp
cHRTdGF0ZSk7Ci0gICAgaWYgKG1vZHVsZS5oYXNOb1ZhbHVlKCkpIHsKLSAgICAgICAgKmVycm9y
U3RyaW5nID0gIkluc3BlY3RlZCBmcmFtZSBoYXMgZ29uZSI7Ci0gICAgICAgIHJldHVybjsKLSAg
ICB9Ci0gICAgbW9kdWxlLmNhcHR1cmVGcmFtZShlcnJvclN0cmluZywgdHJhY2VMb2dJZCk7Cisg
ICAgSW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUgbW9kdWxlID0gaW5qZWN0ZWRTY3JpcHRDYW52
YXNNb2R1bGUoZXJyb3JTdHJpbmcsIG1haW5Xb3JsZFNjcmlwdFN0YXRlKG1faW5zcGVjdGVkUGFn
ZS0+bWFpbkZyYW1lKCkpKTsKKyAgICBpZiAoIW1vZHVsZS5oYXNOb1ZhbHVlKCkpCisgICAgICAg
IG1vZHVsZS5jYXB0dXJlRnJhbWUoZXJyb3JTdHJpbmcsIHRyYWNlTG9nSWQpOwogfQogCiB2b2lk
IEluc3BlY3RvckNhbnZhc0FnZW50OjpzdGFydENhcHR1cmluZyhFcnJvclN0cmluZyogZXJyb3JT
dHJpbmcsIFN0cmluZyogdHJhY2VMb2dJZCkKIHsKLSAgICBpZiAoIWNoZWNrSXNFbmFibGVkKGVy
cm9yU3RyaW5nKSkKLSAgICAgICAgcmV0dXJuOwotICAgIFNjcmlwdFN0YXRlKiBzY3JpcHRTdGF0
ZSA9IG1haW5Xb3JsZFNjcmlwdFN0YXRlKG1faW5zcGVjdGVkUGFnZS0+bWFpbkZyYW1lKCkpOwot
ICAgIEluamVjdGVkU2NyaXB0Q2FudmFzTW9kdWxlIG1vZHVsZSA9IEluamVjdGVkU2NyaXB0Q2Fu
dmFzTW9kdWxlOjptb2R1bGVGb3JTdGF0ZShtX2luamVjdGVkU2NyaXB0TWFuYWdlciwgc2NyaXB0
U3RhdGUpOwotICAgIGlmIChtb2R1bGUuaGFzTm9WYWx1ZSgpKSB7Ci0gICAgICAgICplcnJvclN0
cmluZyA9ICJJbnNwZWN0ZWQgZnJhbWUgaGFzIGdvbmUiOwotICAgICAgICByZXR1cm47Ci0gICAg
fQotICAgIG1vZHVsZS5zdGFydENhcHR1cmluZyhlcnJvclN0cmluZywgdHJhY2VMb2dJZCk7Cisg
ICAgSW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUgbW9kdWxlID0gaW5qZWN0ZWRTY3JpcHRDYW52
YXNNb2R1bGUoZXJyb3JTdHJpbmcsIG1haW5Xb3JsZFNjcmlwdFN0YXRlKG1faW5zcGVjdGVkUGFn
ZS0+bWFpbkZyYW1lKCkpKTsKKyAgICBpZiAoIW1vZHVsZS5oYXNOb1ZhbHVlKCkpCisgICAgICAg
IG1vZHVsZS5zdGFydENhcHR1cmluZyhlcnJvclN0cmluZywgdHJhY2VMb2dJZCk7CiB9CiAKIHZv
aWQgSW5zcGVjdG9yQ2FudmFzQWdlbnQ6OnN0b3BDYXB0dXJpbmcoRXJyb3JTdHJpbmcqIGVycm9y
U3RyaW5nLCBjb25zdCBTdHJpbmcmIHRyYWNlTG9nSWQpCiB7Ci0gICAgaWYgKCFjaGVja0lzRW5h
YmxlZChlcnJvclN0cmluZykpCi0gICAgICAgIHJldHVybjsKLSAgICBJbmplY3RlZFNjcmlwdENh
bnZhc01vZHVsZSBtb2R1bGUgPSBpbmplY3RlZFNjcmlwdENhbnZhc01vZHVsZUZvclRyYWNlTG9n
SWQoZXJyb3JTdHJpbmcsIHRyYWNlTG9nSWQpOworICAgIEluamVjdGVkU2NyaXB0Q2FudmFzTW9k
dWxlIG1vZHVsZSA9IGluamVjdGVkU2NyaXB0Q2FudmFzTW9kdWxlKGVycm9yU3RyaW5nLCB0cmFj
ZUxvZ0lkKTsKICAgICBpZiAoIW1vZHVsZS5oYXNOb1ZhbHVlKCkpCiAgICAgICAgIG1vZHVsZS5z
dG9wQ2FwdHVyaW5nKGVycm9yU3RyaW5nLCB0cmFjZUxvZ0lkKTsKIH0KIAogdm9pZCBJbnNwZWN0
b3JDYW52YXNBZ2VudDo6Z2V0VHJhY2VMb2coRXJyb3JTdHJpbmcqIGVycm9yU3RyaW5nLCBjb25z
dCBTdHJpbmcmIHRyYWNlTG9nSWQsIGNvbnN0IGludCogc3RhcnRPZmZzZXQsIGNvbnN0IGludCog
bWF4TGVuZ3RoLCBSZWZQdHI8VHlwZUJ1aWxkZXI6OkNhbnZhczo6VHJhY2VMb2c+JiB0cmFjZUxv
ZykKIHsKLSAgICBpZiAoIWNoZWNrSXNFbmFibGVkKGVycm9yU3RyaW5nKSkKLSAgICAgICAgcmV0
dXJuOwotICAgIEluamVjdGVkU2NyaXB0Q2FudmFzTW9kdWxlIG1vZHVsZSA9IGluamVjdGVkU2Ny
aXB0Q2FudmFzTW9kdWxlRm9yVHJhY2VMb2dJZChlcnJvclN0cmluZywgdHJhY2VMb2dJZCk7Cisg
ICAgSW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUgbW9kdWxlID0gaW5qZWN0ZWRTY3JpcHRDYW52
YXNNb2R1bGUoZXJyb3JTdHJpbmcsIHRyYWNlTG9nSWQpOwogICAgIGlmICghbW9kdWxlLmhhc05v
VmFsdWUoKSkKICAgICAgICAgbW9kdWxlLnRyYWNlTG9nKGVycm9yU3RyaW5nLCB0cmFjZUxvZ0lk
LCBzdGFydE9mZnNldCwgbWF4TGVuZ3RoLCAmdHJhY2VMb2cpOwogfQogCiB2b2lkIEluc3BlY3Rv
ckNhbnZhc0FnZW50OjpyZXBsYXlUcmFjZUxvZyhFcnJvclN0cmluZyogZXJyb3JTdHJpbmcsIGNv
bnN0IFN0cmluZyYgdHJhY2VMb2dJZCwgaW50IHN0ZXBObywgUmVmUHRyPFR5cGVCdWlsZGVyOjpD
YW52YXM6OlJlc291cmNlU3RhdGU+JiByZXN1bHQpCiB7Ci0gICAgaWYgKCFjaGVja0lzRW5hYmxl
ZChlcnJvclN0cmluZykpCi0gICAgICAgIHJldHVybjsKLSAgICBJbmplY3RlZFNjcmlwdENhbnZh
c01vZHVsZSBtb2R1bGUgPSBpbmplY3RlZFNjcmlwdENhbnZhc01vZHVsZUZvclRyYWNlTG9nSWQo
ZXJyb3JTdHJpbmcsIHRyYWNlTG9nSWQpOworICAgIEluamVjdGVkU2NyaXB0Q2FudmFzTW9kdWxl
IG1vZHVsZSA9IGluamVjdGVkU2NyaXB0Q2FudmFzTW9kdWxlKGVycm9yU3RyaW5nLCB0cmFjZUxv
Z0lkKTsKICAgICBpZiAoIW1vZHVsZS5oYXNOb1ZhbHVlKCkpCiAgICAgICAgIG1vZHVsZS5yZXBs
YXlUcmFjZUxvZyhlcnJvclN0cmluZywgdHJhY2VMb2dJZCwgc3RlcE5vLCAmcmVzdWx0KTsKIH0K
IAogdm9pZCBJbnNwZWN0b3JDYW52YXNBZ2VudDo6Z2V0UmVzb3VyY2VJbmZvKEVycm9yU3RyaW5n
KiBlcnJvclN0cmluZywgY29uc3QgU3RyaW5nJiByZXNvdXJjZUlkLCBSZWZQdHI8VHlwZUJ1aWxk
ZXI6OkNhbnZhczo6UmVzb3VyY2VJbmZvPiYgcmVzdWx0KQogewotICAgIGlmICghY2hlY2tJc0Vu
YWJsZWQoZXJyb3JTdHJpbmcpKQotICAgICAgICByZXR1cm47Ci0gICAgSW5qZWN0ZWRTY3JpcHRD
YW52YXNNb2R1bGUgbW9kdWxlID0gaW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGVGb3JUcmFjZUxv
Z0lkKGVycm9yU3RyaW5nLCByZXNvdXJjZUlkKTsKKyAgICBJbmplY3RlZFNjcmlwdENhbnZhc01v
ZHVsZSBtb2R1bGUgPSBpbmplY3RlZFNjcmlwdENhbnZhc01vZHVsZShlcnJvclN0cmluZywgcmVz
b3VyY2VJZCk7CiAgICAgaWYgKCFtb2R1bGUuaGFzTm9WYWx1ZSgpKQogICAgICAgICBtb2R1bGUu
cmVzb3VyY2VJbmZvKGVycm9yU3RyaW5nLCByZXNvdXJjZUlkLCAmcmVzdWx0KTsKIH0KIAogdm9p
ZCBJbnNwZWN0b3JDYW52YXNBZ2VudDo6Z2V0UmVzb3VyY2VTdGF0ZShFcnJvclN0cmluZyogZXJy
b3JTdHJpbmcsIGNvbnN0IFN0cmluZyYgdHJhY2VMb2dJZCwgY29uc3QgU3RyaW5nJiByZXNvdXJj
ZUlkLCBSZWZQdHI8VHlwZUJ1aWxkZXI6OkNhbnZhczo6UmVzb3VyY2VTdGF0ZT4mIHJlc3VsdCkK
IHsKLSAgICBpZiAoIWNoZWNrSXNFbmFibGVkKGVycm9yU3RyaW5nKSkKLSAgICAgICAgcmV0dXJu
OwotICAgIEluamVjdGVkU2NyaXB0Q2FudmFzTW9kdWxlIG1vZHVsZSA9IGluamVjdGVkU2NyaXB0
Q2FudmFzTW9kdWxlRm9yVHJhY2VMb2dJZChlcnJvclN0cmluZywgdHJhY2VMb2dJZCk7CisgICAg
SW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUgbW9kdWxlID0gaW5qZWN0ZWRTY3JpcHRDYW52YXNN
b2R1bGUoZXJyb3JTdHJpbmcsIHRyYWNlTG9nSWQpOwogICAgIGlmICghbW9kdWxlLmhhc05vVmFs
dWUoKSkKICAgICAgICAgbW9kdWxlLnJlc291cmNlU3RhdGUoZXJyb3JTdHJpbmcsIHRyYWNlTG9n
SWQsIHJlc291cmNlSWQsICZyZXN1bHQpOwogfQogCiBTY3JpcHRPYmplY3QgSW5zcGVjdG9yQ2Fu
dmFzQWdlbnQ6OndyYXBDYW52YXMyRFJlbmRlcmluZ0NvbnRleHRGb3JJbnN0cnVtZW50YXRpb24o
Y29uc3QgU2NyaXB0T2JqZWN0JiBjb250ZXh0KQogewotICAgIGlmIChjb250ZXh0Lmhhc05vVmFs
dWUoKSkgewotICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAgcmV0dXJuIFNj
cmlwdE9iamVjdCgpOwotICAgIH0KLSAgICBJbmplY3RlZFNjcmlwdENhbnZhc01vZHVsZSBtb2R1
bGUgPSBJbmplY3RlZFNjcmlwdENhbnZhc01vZHVsZTo6bW9kdWxlRm9yU3RhdGUobV9pbmplY3Rl
ZFNjcmlwdE1hbmFnZXIsIGNvbnRleHQuc2NyaXB0U3RhdGUoKSk7Ci0gICAgaWYgKG1vZHVsZS5o
YXNOb1ZhbHVlKCkpIHsKLSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgRXJyb3JT
dHJpbmcgZXJyb3I7CisgICAgSW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUgbW9kdWxlID0gaW5q
ZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUoJmVycm9yLCBjb250ZXh0KTsKKyAgICBpZiAobW9kdWxl
Lmhhc05vVmFsdWUoKSkKICAgICAgICAgcmV0dXJuIFNjcmlwdE9iamVjdCgpOwotICAgIH0KICAg
ICByZXR1cm4gbW9kdWxlLndyYXBDYW52YXMyRENvbnRleHQoY29udGV4dCk7CiB9CiAKICNpZiBF
TkFCTEUoV0VCR0wpCiBTY3JpcHRPYmplY3QgSW5zcGVjdG9yQ2FudmFzQWdlbnQ6OndyYXBXZWJH
TFJlbmRlcmluZ0NvbnRleHRGb3JJbnN0cnVtZW50YXRpb24oY29uc3QgU2NyaXB0T2JqZWN0JiBn
bENvbnRleHQpCiB7Ci0gICAgaWYgKGdsQ29udGV4dC5oYXNOb1ZhbHVlKCkpIHsKLSAgICAgICAg
QVNTRVJUX05PVF9SRUFDSEVEKCk7Ci0gICAgICAgIHJldHVybiBTY3JpcHRPYmplY3QoKTsKLSAg
ICB9Ci0gICAgSW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUgbW9kdWxlID0gSW5qZWN0ZWRTY3Jp
cHRDYW52YXNNb2R1bGU6Om1vZHVsZUZvclN0YXRlKG1faW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLCBn
bENvbnRleHQuc2NyaXB0U3RhdGUoKSk7Ci0gICAgaWYgKG1vZHVsZS5oYXNOb1ZhbHVlKCkpIHsK
LSAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVEKCk7CisgICAgRXJyb3JTdHJpbmcgZXJyb3I7Cisg
ICAgSW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUgbW9kdWxlID0gaW5qZWN0ZWRTY3JpcHRDYW52
YXNNb2R1bGUoJmVycm9yLCBnbENvbnRleHQpOworICAgIGlmIChtb2R1bGUuaGFzTm9WYWx1ZSgp
KQogICAgICAgICByZXR1cm4gU2NyaXB0T2JqZWN0KCk7Ci0gICAgfQogICAgIHJldHVybiBtb2R1
bGUud3JhcFdlYkdMQ29udGV4dChnbENvbnRleHQpOwogfQogI2VuZGlmCiAKLUluamVjdGVkU2Ny
aXB0Q2FudmFzTW9kdWxlIEluc3BlY3RvckNhbnZhc0FnZW50OjppbmplY3RlZFNjcmlwdENhbnZh
c01vZHVsZUZvclRyYWNlTG9nSWQoRXJyb3JTdHJpbmcqIGVycm9yU3RyaW5nLCBjb25zdCBTdHJp
bmcmIHRyYWNlTG9nSWQpCitJbmplY3RlZFNjcmlwdENhbnZhc01vZHVsZSBJbnNwZWN0b3JDYW52
YXNBZ2VudDo6aW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUoRXJyb3JTdHJpbmcqIGVycm9yU3Ry
aW5nLCBTY3JpcHRTdGF0ZSogc2NyaXB0U3RhdGUpCiB7Ci0gICAgSW5qZWN0ZWRTY3JpcHQgaW5q
ZWN0ZWRTY3JpcHQgPSBtX2luamVjdGVkU2NyaXB0TWFuYWdlci0+aW5qZWN0ZWRTY3JpcHRGb3JP
YmplY3RJZCh0cmFjZUxvZ0lkKTsKLSAgICBpZiAoaW5qZWN0ZWRTY3JpcHQuaGFzTm9WYWx1ZSgp
KSB7Ci0gICAgICAgICplcnJvclN0cmluZyA9ICJJbnNwZWN0ZWQgZnJhbWUgaGFzIGdvbmUiOwor
ICAgIGlmICghY2hlY2tJc0VuYWJsZWQoZXJyb3JTdHJpbmcpKQogICAgICAgICByZXR1cm4gSW5q
ZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUoKTsKLSAgICB9Ci0gICAgSW5qZWN0ZWRTY3JpcHRDYW52
YXNNb2R1bGUgbW9kdWxlID0gSW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGU6Om1vZHVsZUZvclN0
YXRlKG1faW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLCBpbmplY3RlZFNjcmlwdC5zY3JpcHRTdGF0ZSgp
KTsKKyAgICBJbmplY3RlZFNjcmlwdENhbnZhc01vZHVsZSBtb2R1bGUgPSBJbmplY3RlZFNjcmlw
dENhbnZhc01vZHVsZTo6bW9kdWxlRm9yU3RhdGUobV9pbmplY3RlZFNjcmlwdE1hbmFnZXIsIHNj
cmlwdFN0YXRlKTsKICAgICBpZiAobW9kdWxlLmhhc05vVmFsdWUoKSkgewogICAgICAgICBBU1NF
UlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgKmVycm9yU3RyaW5nID0gIkludGVybmFsIGVycm9y
OiBubyBDYW52YXMgbW9kdWxlIjsKLSAgICAgICAgcmV0dXJuIEluamVjdGVkU2NyaXB0Q2FudmFz
TW9kdWxlKCk7CiAgICAgfQogICAgIHJldHVybiBtb2R1bGU7CiB9CiAKK0luamVjdGVkU2NyaXB0
Q2FudmFzTW9kdWxlIEluc3BlY3RvckNhbnZhc0FnZW50OjppbmplY3RlZFNjcmlwdENhbnZhc01v
ZHVsZShFcnJvclN0cmluZyogZXJyb3JTdHJpbmcsIGNvbnN0IFNjcmlwdE9iamVjdCYgc2NyaXB0
T2JqZWN0KQoreworICAgIGlmICghY2hlY2tJc0VuYWJsZWQoZXJyb3JTdHJpbmcpKQorICAgICAg
ICByZXR1cm4gSW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUoKTsKKyAgICBpZiAoc2NyaXB0T2Jq
ZWN0Lmhhc05vVmFsdWUoKSkgeworICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAg
ICAgKmVycm9yU3RyaW5nID0gIkludGVybmFsIGVycm9yOiBvcmlnaW5hbCBTY3JpcHRPYmplY3Qg
aGFzIG5vIHZhbHVlIjsKKyAgICAgICAgcmV0dXJuIEluamVjdGVkU2NyaXB0Q2FudmFzTW9kdWxl
KCk7CisgICAgfQorICAgIHJldHVybiBpbmplY3RlZFNjcmlwdENhbnZhc01vZHVsZShlcnJvclN0
cmluZywgc2NyaXB0T2JqZWN0LnNjcmlwdFN0YXRlKCkpOworfQorCitJbmplY3RlZFNjcmlwdENh
bnZhc01vZHVsZSBJbnNwZWN0b3JDYW52YXNBZ2VudDo6aW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1
bGUoRXJyb3JTdHJpbmcqIGVycm9yU3RyaW5nLCBjb25zdCBTdHJpbmcmIG9iamVjdElkKQorewor
ICAgIGlmICghY2hlY2tJc0VuYWJsZWQoZXJyb3JTdHJpbmcpKQorICAgICAgICByZXR1cm4gSW5q
ZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUoKTsKKyAgICBJbmplY3RlZFNjcmlwdCBpbmplY3RlZFNj
cmlwdCA9IG1faW5qZWN0ZWRTY3JpcHRNYW5hZ2VyLT5pbmplY3RlZFNjcmlwdEZvck9iamVjdElk
KG9iamVjdElkKTsKKyAgICBpZiAoaW5qZWN0ZWRTY3JpcHQuaGFzTm9WYWx1ZSgpKSB7CisgICAg
ICAgICplcnJvclN0cmluZyA9ICJJbnNwZWN0ZWQgZnJhbWUgaGFzIGdvbmUiOworICAgICAgICBy
ZXR1cm4gSW5qZWN0ZWRTY3JpcHRDYW52YXNNb2R1bGUoKTsKKyAgICB9CisgICAgcmV0dXJuIGlu
amVjdGVkU2NyaXB0Q2FudmFzTW9kdWxlKGVycm9yU3RyaW5nLCBpbmplY3RlZFNjcmlwdC5zY3Jp
cHRTdGF0ZSgpKTsKK30KKwogdm9pZCBJbnNwZWN0b3JDYW52YXNBZ2VudDo6ZmluZEZyYW1lc1dp
dGhVbmluc3RydW1lbnRlZENhbnZhc2VzKCkKIHsKICAgICBjbGFzcyBOb2RlVmlzaXRvciA6IHB1
YmxpYyBXcmFwcGVkTm9kZVZpc2l0b3IgewogICAgIHB1YmxpYzoKLSAgICAgICAgTm9kZVZpc2l0
b3IoUGFnZSogcGFnZSwgRnJhbWVzV2l0aFVuaW5zdHJ1bWVudGVkQ2FudmFzZXMmIGhhc1VuaW5z
dHJ1bWVudGVkQ2FudmFzZXNSZXN1bHRzKQorICAgICAgICBOb2RlVmlzaXRvcihQYWdlKiBwYWdl
LCBIYXNoU2V0PEZyYW1lKj4mIHJlc3VsdCkKICAgICAgICAgICAgIDogbV9wYWdlKHBhZ2UpCi0g
ICAgICAgICAgICAsIG1fZnJhbWVzV2l0aFVuaW5zdHJ1bWVudGVkQ2FudmFzZXMoaGFzVW5pbnN0
cnVtZW50ZWRDYW52YXNlc1Jlc3VsdHMpCisgICAgICAgICAgICAsIG1fZnJhbWVzV2l0aFVuaW5z
dHJ1bWVudGVkQ2FudmFzZXMocmVzdWx0KQogICAgICAgICB7CiAgICAgICAgIH0KIApAQCAtMjYz
LDcgKzI1MSw3IEBAIHZvaWQgSW5zcGVjdG9yQ2FudmFzQWdlbnQ6OmZpbmRGcmFtZXNXaXRoVW5p
bnN0cnVtZW50ZWRDYW52YXNlcygpCiAKICAgICBwcml2YXRlOgogICAgICAgICBQYWdlKiBtX3Bh
Z2U7Ci0gICAgICAgIEZyYW1lc1dpdGhVbmluc3RydW1lbnRlZENhbnZhc2VzJiBtX2ZyYW1lc1dp
dGhVbmluc3RydW1lbnRlZENhbnZhc2VzOworICAgICAgICBIYXNoU2V0PEZyYW1lKj4mIG1fZnJh
bWVzV2l0aFVuaW5zdHJ1bWVudGVkQ2FudmFzZXM7CiAgICAgfSBub2RlVmlzaXRvcihtX2luc3Bl
Y3RlZFBhZ2UsIG1fZnJhbWVzV2l0aFVuaW5zdHJ1bWVudGVkQ2FudmFzZXMpOwogCiAgICAgU2Ny
aXB0UHJvZmlsZXI6OnZpc2l0Tm9kZVdyYXBwZXJzKCZub2RlVmlzaXRvcik7CmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQ2FudmFzQWdlbnQuaCBiL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JDYW52YXNBZ2VudC5oCmluZGV4IDY3MzdmNjUy
NTJiOTA0ZTc5ODdjZTBkOWMzYTgzYWZjNmJlZjE5MTIuLjE1YTQ2NDNlY2RlODAyMThiNmUzMThj
ODQ0Mzc1NWQ4NmUyZDc0YTkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JDYW52YXNBZ2VudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JDYW52YXNBZ2VudC5oCkBAIC05MSw3ICs5MSwxMCBAQCBwdWJsaWM6CiBwcml2YXRlOgog
ICAgIEluc3BlY3RvckNhbnZhc0FnZW50KEluc3RydW1lbnRpbmdBZ2VudHMqLCBJbnNwZWN0b3JD
b21wb3NpdGVTdGF0ZSosIFBhZ2UqLCBJbmplY3RlZFNjcmlwdE1hbmFnZXIqKTsKIAotICAgIElu
amVjdGVkU2NyaXB0Q2FudmFzTW9kdWxlIGluamVjdGVkU2NyaXB0Q2FudmFzTW9kdWxlRm9yVHJh
Y2VMb2dJZChFcnJvclN0cmluZyosIGNvbnN0IFN0cmluZyYpOworICAgIEluamVjdGVkU2NyaXB0
Q2FudmFzTW9kdWxlIGluamVjdGVkU2NyaXB0Q2FudmFzTW9kdWxlKEVycm9yU3RyaW5nKiwgU2Ny
aXB0U3RhdGUqKTsKKyAgICBJbmplY3RlZFNjcmlwdENhbnZhc01vZHVsZSBpbmplY3RlZFNjcmlw
dENhbnZhc01vZHVsZShFcnJvclN0cmluZyosIGNvbnN0IFNjcmlwdE9iamVjdCYpOworICAgIElu
amVjdGVkU2NyaXB0Q2FudmFzTW9kdWxlIGluamVjdGVkU2NyaXB0Q2FudmFzTW9kdWxlKEVycm9y
U3RyaW5nKiwgY29uc3QgU3RyaW5nJik7CisKICAgICB2b2lkIGZpbmRGcmFtZXNXaXRoVW5pbnN0
cnVtZW50ZWRDYW52YXNlcygpOwogICAgIGJvb2wgY2hlY2tJc0VuYWJsZWQoRXJyb3JTdHJpbmcq
KSBjb25zdDsKIApAQCAtOTksOCArMTAyLDcgQEAgcHJpdmF0ZToKICAgICBJbmplY3RlZFNjcmlw
dE1hbmFnZXIqIG1faW5qZWN0ZWRTY3JpcHRNYW5hZ2VyOwogICAgIEluc3BlY3RvckZyb250ZW5k
OjpDYW52YXMqIG1fZnJvbnRlbmQ7CiAgICAgYm9vbCBtX2VuYWJsZWQ7Ci0gICAgdHlwZWRlZiBI
YXNoU2V0PEZyYW1lKj4gRnJhbWVzV2l0aFVuaW5zdHJ1bWVudGVkQ2FudmFzZXM7Ci0gICAgRnJh
bWVzV2l0aFVuaW5zdHJ1bWVudGVkQ2FudmFzZXMgbV9mcmFtZXNXaXRoVW5pbnN0cnVtZW50ZWRD
YW52YXNlczsKKyAgICBIYXNoU2V0PEZyYW1lKj4gbV9mcmFtZXNXaXRoVW5pbnN0cnVtZW50ZWRD
YW52YXNlczsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuY3BwIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2VudC5jcHAKaW5kZXggYzQ3YjVlMmM1YjY0MWRj
N2E3OTQwZmJkYmQ0MGM0NTM2Yjc3ZTY3ZC4uMWVkYTY2ZjBkZmE1NDI4NDAzMDcyOGVhMGFhNDg4
ZjBhYzBlMjk4MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
clBhZ2VBZ2VudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBh
Z2VBZ2VudC5jcHAKQEAgLTg3MywxMiArODczLDExIEBAIFN0cmluZyBJbnNwZWN0b3JQYWdlQWdl
bnQ6OmxvYWRlcklkKERvY3VtZW50TG9hZGVyKiBsb2FkZXIpCiAgICAgcmV0dXJuIGlkZW50aWZp
ZXI7CiB9CiAKLUZyYW1lKiBJbnNwZWN0b3JQYWdlQWdlbnQ6OmFzc2VydEZyYW1lKEVycm9yU3Ry
aW5nKiBlcnJvclN0cmluZywgU3RyaW5nIGZyYW1lSWQpCitGcmFtZSogSW5zcGVjdG9yUGFnZUFn
ZW50Ojphc3NlcnRGcmFtZShFcnJvclN0cmluZyogZXJyb3JTdHJpbmcsIGNvbnN0IFN0cmluZyYg
ZnJhbWVJZCkKIHsKICAgICBGcmFtZSogZnJhbWUgPSBmcmFtZUZvcklkKGZyYW1lSWQpOwogICAg
IGlmICghZnJhbWUpCiAgICAgICAgICplcnJvclN0cmluZyA9ICJObyBmcmFtZSBmb3IgZ2l2ZW4g
aWQgZm91bmQiOwotCiAgICAgcmV0dXJuIGZyYW1lOwogfQogCkBAIC04ODksNyArODg4LDYgQEAg
RG9jdW1lbnRMb2FkZXIqIEluc3BlY3RvclBhZ2VBZ2VudDo6YXNzZXJ0RG9jdW1lbnRMb2FkZXIo
RXJyb3JTdHJpbmcqIGVycm9yU3RyaW4KICAgICBEb2N1bWVudExvYWRlciogZG9jdW1lbnRMb2Fk
ZXIgPSBmcmFtZUxvYWRlciA/IGZyYW1lTG9hZGVyLT5kb2N1bWVudExvYWRlcigpIDogMDsKICAg
ICBpZiAoIWRvY3VtZW50TG9hZGVyKQogICAgICAgICAqZXJyb3JTdHJpbmcgPSAiTm8gZG9jdW1l
bnRMb2FkZXIgZm9yIGdpdmVuIGZyYW1lIGZvdW5kIjsKLQogICAgIHJldHVybiBkb2N1bWVudExv
YWRlcjsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
clBhZ2VBZ2VudC5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvclBhZ2VBZ2Vu
dC5oCmluZGV4IDk3M2UxNWMyYWY2YTc2MTY4ZTdlNTI5YzUzZTZjZDdkMDQxNGY4ZTUuLjcwMzVh
OTc4NmMwYzc4ZjRiNjVmZTRhMzJkMmRhM2QxN2E5YWY0ZjkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JQYWdlQWdlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yUGFnZUFnZW50LmgKQEAgLTE2NCw3ICsxNjQsNyBAQCBwdWJs
aWM6CiAgICAgRnJhbWUqIGZyYW1lRm9ySWQoY29uc3QgU3RyaW5nJiBmcmFtZUlkKTsKICAgICBT
dHJpbmcgZnJhbWVJZChGcmFtZSopOwogICAgIFN0cmluZyBsb2FkZXJJZChEb2N1bWVudExvYWRl
ciopOwotICAgIEZyYW1lKiBhc3NlcnRGcmFtZShFcnJvclN0cmluZyosIFN0cmluZyBmcmFtZUlk
KTsKKyAgICBGcmFtZSogYXNzZXJ0RnJhbWUoRXJyb3JTdHJpbmcqLCBjb25zdCBTdHJpbmcmIGZy
YW1lSWQpOwogICAgIFN0cmluZyBzY3JpcHRQcmVwcm9jZXNzb3IoKSB7IHJldHVybiBtX3Njcmlw
dFByZXByb2Nlc3NvcjsgfQogICAgIHN0YXRpYyBEb2N1bWVudExvYWRlciogYXNzZXJ0RG9jdW1l
bnRMb2FkZXIoRXJyb3JTdHJpbmcqLCBGcmFtZSopOwogCg==
</data>
<flag name="review"
          id="203854"
          type_id="1"
          status="+"
          setter="pfeldman"
    />
          </attachment>
      

    </bug>

</bugzilla>