<?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>212676</bug_id>
          
          <creation_ts>2020-06-02 17:55:39 -0700</creation_ts>
          <short_desc>VMInspector APIs should be taking a VM* instead of a JSGlobalObject*.</short_desc>
          <delta_ts>2020-06-02 18:27:16 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Lam">mark.lam</reporter>
          <assigned_to name="Mark Lam">mark.lam</assigned_to>
          <cc>ews-watchlist</cc>
    
    <cc>keith_miller</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
    
    <cc>tzagallo</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1658522</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2020-06-02 17:55:39 -0700</bug_when>
    <thetext>This because:
1. none of the functions currently taking a JSGlobalObject* actually need the globalObject.  All of them need the VM.
2. the role of the VMInspector is to enable inspection of the VM.  By requiring that it be passed a JSGlobalObject*, we were actually preventing the VMInspector from being used in code that have a VM to inspect but don&apos;t have a JSGlobalObject to use.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1658526</commentid>
    <comment_count>1</comment_count>
      <attachid>400871</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2020-06-02 18:00:09 -0700</bug_when>
    <thetext>Created attachment 400871
proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1658539</commentid>
    <comment_count>2</comment_count>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2020-06-02 18:26:21 -0700</bug_when>
    <thetext>Thanks for the reviews.  Landed in r262467: &lt;http://trac.webkit.org/r262467&gt;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1658540</commentid>
    <comment_count>3</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2020-06-02 18:27:16 -0700</bug_when>
    <thetext>&lt;rdar://problem/63902729&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>400871</attachid>
            <date>2020-06-02 18:00:09 -0700</date>
            <delta_ts>2020-06-02 18:01:51 -0700</delta_ts>
            <desc>proposed patch.</desc>
            <filename>bug-212676.patch</filename>
            <type>text/plain</type>
            <size>11145</size>
            <attacher name="Mark Lam">mark.lam</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMjYyNDY1KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDM2IEBA
CisyMDIwLTA2LTAyICBNYXJrIExhbSAgPG1hcmsubGFtQGFwcGxlLmNvbT4KKworICAgICAgICBW
TUluc3BlY3RvciBBUElzIHNob3VsZCBiZSB0YWtpbmcgYSBWTSogaW5zdGVhZCBvZiBhIEpTR2xv
YmFsT2JqZWN0Ki4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTIxMjY3NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFRoaXMgYmVjYXVzZToKKyAgICAgICAgMS4gTm9uZSBvZiB0aGUgZnVuY3Rpb25zIGN1cnJl
bnRseSB0YWtpbmcgYSBKU0dsb2JhbE9iamVjdCogYWN0dWFsbHkgbmVlZCB0aGUKKyAgICAgICAg
ICAgZ2xvYmFsT2JqZWN0LiAgQWxsIG9mIHRoZW0gbmVlZCB0aGUgVk0uCisgICAgICAgIDIuIFRo
ZSByb2xlIG9mIHRoZSBWTUluc3BlY3RvciBpcyB0byBlbmFibGUgaW5zcGVjdGlvbiBvZiB0aGUg
Vk0uICBCeSByZXF1aXJpbmcKKyAgICAgICAgICAgdGhhdCBpdCBiZSBwYXNzZWQgYSBKU0dsb2Jh
bE9iamVjdCosIHdlIHdlcmUgYWN0dWFsbHkgcHJldmVudGluZyB0aGUgVk1JbnNwZWN0b3IKKyAg
ICAgICAgICAgZnJvbSBiZWluZyB1c2VkIGluIGNvZGUgdGhhdCBoYXZlIGEgVk0gdG8gaW5zcGVj
dCBidXQgZG9uJ3QgaGF2ZSBhIEpTR2xvYmFsT2JqZWN0CisgICAgICAgICAgIHRvIHVzZS4KKwor
ICAgICAgICAqIHRvb2xzL0pTRG9sbGFyVk0uY3BwOgorICAgICAgICAoSlNDOjpmdW5jdGlvbkdD
KToKKyAgICAgICAgKEpTQzo6ZnVuY3Rpb25FZGVuR0MpOgorICAgICAgICAoSlNDOjpmdW5jdGlv
bkNvZGVCbG9ja0ZvckZyYW1lKToKKyAgICAgICAgKEpTQzo6Y29kZUJsb2NrRnJvbUFyZyk6Cisg
ICAgICAgIChKU0M6OmZ1bmN0aW9uRHVtcENhbGxGcmFtZSk6CisgICAgICAgIChKU0M6OmZ1bmN0
aW9uRHVtcFN0YWNrKToKKyAgICAgICAgKiB0b29scy9WTUluc3BlY3Rvci5jcHA6CisgICAgICAg
IChKU0M6OlZNSW5zcGVjdG9yOjpjdXJyZW50VGhyZWFkT3duc0pTTG9jayk6CisgICAgICAgIChK
U0M6OmVuc3VyZUN1cnJlbnRUaHJlYWRPd25zSlNMb2NrKToKKyAgICAgICAgKEpTQzo6Vk1JbnNw
ZWN0b3I6OmdjKToKKyAgICAgICAgKEpTQzo6Vk1JbnNwZWN0b3I6OmVkZW5HQyk6CisgICAgICAg
IChKU0M6OlZNSW5zcGVjdG9yOjppc1ZhbGlkQ29kZUJsb2NrKToKKyAgICAgICAgKEpTQzo6Vk1J
bnNwZWN0b3I6OmNvZGVCbG9ja0ZvckZyYW1lKToKKyAgICAgICAgKEpTQzo6Vk1JbnNwZWN0b3I6
OmR1bXBDYWxsRnJhbWUpOgorICAgICAgICAoSlNDOjpWTUluc3BlY3Rvcjo6ZHVtcFN0YWNrKToK
KyAgICAgICAgKiB0b29scy9WTUluc3BlY3Rvci5oOgorCiAyMDIwLTA2LTAyICBLZWl0aCBSb2xs
aW4gIDxrcm9sbGluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZlcnQgRkVBVFVSRVNfREVGSU5F
UyByZWxhdGVkIGNoYW5nZXMKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9KU0Rv
bGxhclZNLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvdG9vbHMvSlNE
b2xsYXJWTS5jcHAJKHJldmlzaW9uIDI2MjQyNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90
b29scy9KU0RvbGxhclZNLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTc3Nyw3ICsxNzc3LDcgQEAg
c3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgZnVuYwogc3RhdGljIEVuY29kZWRK
U1ZhbHVlIEpTQ19IT1NUX0NBTEwgZnVuY3Rpb25HQyhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2Jq
ZWN0LCBDYWxsRnJhbWUqKQogewogICAgIERvbGxhclZNQXNzZXJ0U2NvcGUgYXNzZXJ0U2NvcGU7
Ci0gICAgVk1JbnNwZWN0b3I6OmdjKGdsb2JhbE9iamVjdCk7CisgICAgVk1JbnNwZWN0b3I6Omdj
KCZnbG9iYWxPYmplY3QtPnZtKCkpOwogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRl
ZmluZWQoKSk7CiB9CiAKQEAgLTE3ODYsNyArMTc4Niw3IEBAIHN0YXRpYyBFbmNvZGVkSlNWYWx1
ZSBKU0NfSE9TVF9DQUxMIGZ1bmMKIHN0YXRpYyBFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxM
IGZ1bmN0aW9uRWRlbkdDKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENhbGxGcmFtZSop
CiB7CiAgICAgRG9sbGFyVk1Bc3NlcnRTY29wZSBhc3NlcnRTY29wZTsKLSAgICBWTUluc3BlY3Rv
cjo6ZWRlbkdDKGdsb2JhbE9iamVjdCk7CisgICAgVk1JbnNwZWN0b3I6OmVkZW5HQygmZ2xvYmFs
T2JqZWN0LT52bSgpKTsKICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzVW5kZWZpbmVkKCkp
OwogfQogCkBAIC0xODU5LDcgKzE4NTksNyBAQCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hP
U1RfQ0FMTCBmdW5jCiAgICAgICAgIGZyYW1lTnVtYmVyID0gdmFsdWUuYXNVSW50MzIoKSArIDE7
CiAgICAgfQogCi0gICAgQ29kZUJsb2NrKiBjb2RlQmxvY2sgPSBWTUluc3BlY3Rvcjo6Y29kZUJs
b2NrRm9yRnJhbWUoZ2xvYmFsT2JqZWN0LCBjYWxsRnJhbWUsIGZyYW1lTnVtYmVyKTsKKyAgICBD
b2RlQmxvY2sqIGNvZGVCbG9jayA9IFZNSW5zcGVjdG9yOjpjb2RlQmxvY2tGb3JGcmFtZSgmZ2xv
YmFsT2JqZWN0LT52bSgpLCBjYWxsRnJhbWUsIGZyYW1lTnVtYmVyKTsKICAgICBpZiAoY29kZUJs
b2NrKQogICAgICAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGNvZGVCbG9jayk7CiAgICAgcmV0
dXJuIEpTVmFsdWU6OmVuY29kZShqc1VuZGVmaW5lZCgpKTsKQEAgLTE4ODUsNyArMTg4NSw3IEBA
IHN0YXRpYyBDb2RlQmxvY2sqIGNvZGVCbG9ja0Zyb21BcmcoSlNHbG8KICAgICAgICAgICAgIGNh
bmRpZGF0ZUNvZGVCbG9jayA9IHN0YXRpY19jYXN0PENvZGVCbG9jayo+KHZhbHVlLmFzQ2VsbCgp
KTsKICAgICB9CiAKLSAgICBpZiAoY2FuZGlkYXRlQ29kZUJsb2NrICYmIFZNSW5zcGVjdG9yOjpp
c1ZhbGlkQ29kZUJsb2NrKGdsb2JhbE9iamVjdCwgY2FuZGlkYXRlQ29kZUJsb2NrKSkKKyAgICBp
ZiAoY2FuZGlkYXRlQ29kZUJsb2NrICYmIFZNSW5zcGVjdG9yOjppc1ZhbGlkQ29kZUJsb2NrKCZ2
bSwgY2FuZGlkYXRlQ29kZUJsb2NrKSkKICAgICAgICAgcmV0dXJuIGNhbmRpZGF0ZUNvZGVCbG9j
azsKIAogICAgIGlmIChjYW5kaWRhdGVDb2RlQmxvY2spCkBAIC0xOTgwLDcgKzE5ODAsNyBAQCBz
dGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5jCiAgICAgRG9sbGFyVk1Bc3Nl
cnRTY29wZSBhc3NlcnRTY29wZTsKICAgICAvLyBXaGVuIHRoZSBjYWxsZXJzIGNhbGwgdGhpcyBm
dW5jdGlvbiwgdGhleSBhcmUgZXhwZWN0aW5nIHRvIGR1bXAgdGhlaXIKICAgICAvLyBvd24gZnJh
bWUuIFNvIHNraXAgMSBmb3IgdGhpcyBmcmFtZS4KLSAgICBWTUluc3BlY3Rvcjo6ZHVtcENhbGxG
cmFtZShnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgMSk7CisgICAgVk1JbnNwZWN0b3I6OmR1bXBD
YWxsRnJhbWUoJmdsb2JhbE9iamVjdC0+dm0oKSwgY2FsbEZyYW1lLCAxKTsKICAgICByZXR1cm4g
SlNWYWx1ZTo6ZW5jb2RlKGpzVW5kZWZpbmVkKCkpOwogfQogCkBAIC0xOTkxLDcgKzE5OTEsNyBA
QCBzdGF0aWMgRW5jb2RlZEpTVmFsdWUgSlNDX0hPU1RfQ0FMTCBmdW5jCiAgICAgRG9sbGFyVk1B
c3NlcnRTY29wZSBhc3NlcnRTY29wZTsKICAgICAvLyBXaGVuIHRoZSBjYWxsZXJzIGNhbGwgdGhp
cyBmdW5jdGlvbiwgdGhleSBhcmUgZXhwZWN0aW5nIHRvIGR1bXAgdGhlCiAgICAgLy8gc3RhY2sg
c3RhcnRpbmcgdGhlaXIgb3duIGZyYW1lLiBTbyBza2lwIDEgZm9yIHRoaXMgZnJhbWUuCi0gICAg
Vk1JbnNwZWN0b3I6OmR1bXBTdGFjayhnbG9iYWxPYmplY3QsIGNhbGxGcmFtZSwgMSk7CisgICAg
Vk1JbnNwZWN0b3I6OmR1bXBTdGFjaygmZ2xvYmFsT2JqZWN0LT52bSgpLCBjYWxsRnJhbWUsIDEp
OwogICAgIHJldHVybiBKU1ZhbHVlOjplbmNvZGUoanNVbmRlZmluZWQoKSk7CiB9CiAKSW5kZXg6
IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9WTUluc3BlY3Rvci5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1ZNSW5zcGVjdG9yLmNwcAkocmV2aXNpb24g
MjYyNDI0KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1ZNSW5zcGVjdG9yLmNwcAko
d29ya2luZyBjb3B5KQpAQCAtMSw1ICsxLDUgQEAKIC8qCi0gKiBDb3B5cmlnaHQgKEMpIDIwMTct
MjAxOSBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCisgKiBDb3B5cmlnaHQgKEMpIDIw
MTctMjAyMCBBcHBsZSBJbmMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogUmVkaXN0cmli
dXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0
CiAgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93
aW5nIGNvbmRpdGlvbnMKQEAgLTIwMywzMyArMjAzLDMxIEBAIGF1dG8gVk1JbnNwZWN0b3I6OmNv
ZGVCbG9ja0Zvck1hY2hpbmVQQygKICNlbmRpZgogfQogCi1ib29sIFZNSW5zcGVjdG9yOjpjdXJy
ZW50VGhyZWFkT3duc0pTTG9jayhKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0KQorYm9vbCBW
TUluc3BlY3Rvcjo6Y3VycmVudFRocmVhZE93bnNKU0xvY2soVk0qIHZtKQogewotICAgIHJldHVy
biBnbG9iYWxPYmplY3QtPnZtKCkuY3VycmVudFRocmVhZElzSG9sZGluZ0FQSUxvY2soKTsKKyAg
ICByZXR1cm4gdm0tPmN1cnJlbnRUaHJlYWRJc0hvbGRpbmdBUElMb2NrKCk7CiB9CiAKLXN0YXRp
YyBib29sIGVuc3VyZUN1cnJlbnRUaHJlYWRPd25zSlNMb2NrKEpTR2xvYmFsT2JqZWN0KiBnbG9i
YWxPYmplY3QpCitzdGF0aWMgYm9vbCBlbnN1cmVDdXJyZW50VGhyZWFkT3duc0pTTG9jayhWTSog
dm0pCiB7Ci0gICAgaWYgKFZNSW5zcGVjdG9yOjpjdXJyZW50VGhyZWFkT3duc0pTTG9jayhnbG9i
YWxPYmplY3QpKQorICAgIGlmIChWTUluc3BlY3Rvcjo6Y3VycmVudFRocmVhZE93bnNKU0xvY2so
dm0pKQogICAgICAgICByZXR1cm4gdHJ1ZTsKICAgICBkYXRhTG9nKCJFUlJPUjogY3VycmVudCB0
aHJlYWQgZG9lcyBub3Qgb3duIHRoZSBKU0xvY2tcbiIpOwogICAgIHJldHVybiBmYWxzZTsKIH0K
IAotdm9pZCBWTUluc3BlY3Rvcjo6Z2MoSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCkKK3Zv
aWQgVk1JbnNwZWN0b3I6OmdjKFZNKiB2bSkKIHsKLSAgICBWTSYgdm0gPSBnbG9iYWxPYmplY3Qt
PnZtKCk7Ci0gICAgaWYgKCFlbnN1cmVDdXJyZW50VGhyZWFkT3duc0pTTG9jayhnbG9iYWxPYmpl
Y3QpKQorICAgIGlmICghZW5zdXJlQ3VycmVudFRocmVhZE93bnNKU0xvY2sodm0pKQogICAgICAg
ICByZXR1cm47Ci0gICAgdm0uaGVhcC5jb2xsZWN0Tm93KFN5bmMsIENvbGxlY3Rpb25TY29wZTo6
RnVsbCk7CisgICAgdm0tPmhlYXAuY29sbGVjdE5vdyhTeW5jLCBDb2xsZWN0aW9uU2NvcGU6OkZ1
bGwpOwogfQogCi12b2lkIFZNSW5zcGVjdG9yOjplZGVuR0MoSlNHbG9iYWxPYmplY3QqIGdsb2Jh
bE9iamVjdCkKK3ZvaWQgVk1JbnNwZWN0b3I6OmVkZW5HQyhWTSogdm0pCiB7Ci0gICAgVk0mIHZt
ID0gZ2xvYmFsT2JqZWN0LT52bSgpOwotICAgIGlmICghZW5zdXJlQ3VycmVudFRocmVhZE93bnNK
U0xvY2soZ2xvYmFsT2JqZWN0KSkKKyAgICBpZiAoIWVuc3VyZUN1cnJlbnRUaHJlYWRPd25zSlNM
b2NrKHZtKSkKICAgICAgICAgcmV0dXJuOwotICAgIHZtLmhlYXAuY29sbGVjdFN5bmMoQ29sbGVj
dGlvblNjb3BlOjpFZGVuKTsKKyAgICB2bS0+aGVhcC5jb2xsZWN0U3luYyhDb2xsZWN0aW9uU2Nv
cGU6OkVkZW4pOwogfQogCiBib29sIFZNSW5zcGVjdG9yOjppc0luSGVhcChIZWFwKiBoZWFwLCB2
b2lkKiBwdHIpCkBAIC0yNzEsOSArMjY5LDkgQEAgYm9vbCBWTUluc3BlY3Rvcjo6aXNWYWxpZENl
bGwoSGVhcCogaGVhcAogICAgIHJldHVybiBmdW5jdG9yLmZvdW5kOwogfQogCi1ib29sIFZNSW5z
cGVjdG9yOjppc1ZhbGlkQ29kZUJsb2NrKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmplY3QsIENv
ZGVCbG9jayogY2FuZGlkYXRlKQorYm9vbCBWTUluc3BlY3Rvcjo6aXNWYWxpZENvZGVCbG9jayhW
TSogdm0sIENvZGVCbG9jayogY2FuZGlkYXRlKQogewotICAgIGlmICghZW5zdXJlQ3VycmVudFRo
cmVhZE93bnNKU0xvY2soZ2xvYmFsT2JqZWN0KSkKKyAgICBpZiAoIWVuc3VyZUN1cnJlbnRUaHJl
YWRPd25zSlNMb2NrKHZtKSkKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgc3RydWN0IENv
ZGVCbG9ja1ZhbGlkYXRpb25GdW5jdG9yIHsKQEAgLTI5MiwxNiArMjkwLDE0IEBAIGJvb2wgVk1J
bnNwZWN0b3I6OmlzVmFsaWRDb2RlQmxvY2soSlNHbG8KICAgICAgICAgbXV0YWJsZSBib29sIGZv
dW5kIHsgZmFsc2UgfTsKICAgICB9OwogCi0gICAgVk0mIHZtID0gZ2xvYmFsT2JqZWN0LT52bSgp
OwogICAgIENvZGVCbG9ja1ZhbGlkYXRpb25GdW5jdG9yIGZ1bmN0b3IoY2FuZGlkYXRlKTsKLSAg
ICB2bS5oZWFwLmZvckVhY2hDb2RlQmxvY2soZnVuY3Rvcik7CisgICAgdm0tPmhlYXAuZm9yRWFj
aENvZGVCbG9jayhmdW5jdG9yKTsKICAgICByZXR1cm4gZnVuY3Rvci5mb3VuZDsKIH0KIAotQ29k
ZUJsb2NrKiBWTUluc3BlY3Rvcjo6Y29kZUJsb2NrRm9yRnJhbWUoSlNHbG9iYWxPYmplY3QqIGds
b2JhbE9iamVjdCwgQ2FsbEZyYW1lKiB0b3BDYWxsRnJhbWUsIHVuc2lnbmVkIGZyYW1lTnVtYmVy
KQorQ29kZUJsb2NrKiBWTUluc3BlY3Rvcjo6Y29kZUJsb2NrRm9yRnJhbWUoVk0qIHZtLCBDYWxs
RnJhbWUqIHRvcENhbGxGcmFtZSwgdW5zaWduZWQgZnJhbWVOdW1iZXIpCiB7Ci0gICAgVk0mIHZt
ID0gZ2xvYmFsT2JqZWN0LT52bSgpOwotICAgIGlmICghZW5zdXJlQ3VycmVudFRocmVhZE93bnNK
U0xvY2soZ2xvYmFsT2JqZWN0KSkKKyAgICBpZiAoIWVuc3VyZUN1cnJlbnRUaHJlYWRPd25zSlNM
b2NrKHZtKSkKICAgICAgICAgcmV0dXJuIG51bGxwdHI7CiAKICAgICBpZiAoIXRvcENhbGxGcmFt
ZSkKQEAgLTMzMCw3ICszMjYsNyBAQCBDb2RlQmxvY2sqIFZNSW5zcGVjdG9yOjpjb2RlQmxvY2tG
b3JGcmFtCiAgICAgfTsKIAogICAgIEZldGNoQ29kZUJsb2NrRnVuY3RvciBmdW5jdG9yKGZyYW1l
TnVtYmVyKTsKLSAgICB0b3BDYWxsRnJhbWUtPml0ZXJhdGUodm0sIGZ1bmN0b3IpOworICAgIHRv
cENhbGxGcmFtZS0+aXRlcmF0ZSgqdm0sIGZ1bmN0b3IpOwogICAgIHJldHVybiBmdW5jdG9yLmNv
ZGVCbG9jazsKIH0KIApAQCAtMzY2LDEyICszNjIsMTIgQEAgcHJpdmF0ZToKICAgICBtdXRhYmxl
IHVuc2lnbmVkIG1fY3VycmVudEZyYW1lIHsgMCB9OwogfTsKIAotdm9pZCBWTUluc3BlY3Rvcjo6
ZHVtcENhbGxGcmFtZShKU0dsb2JhbE9iamVjdCogZ2xvYmFsT2JqZWN0LCBDYWxsRnJhbWUqIGNh
bGxGcmFtZSwgdW5zaWduZWQgZnJhbWVzVG9Ta2lwKQordm9pZCBWTUluc3BlY3Rvcjo6ZHVtcENh
bGxGcmFtZShWTSogdm0sIENhbGxGcmFtZSogY2FsbEZyYW1lLCB1bnNpZ25lZCBmcmFtZXNUb1Nr
aXApCiB7Ci0gICAgaWYgKCFlbnN1cmVDdXJyZW50VGhyZWFkT3duc0pTTG9jayhnbG9iYWxPYmpl
Y3QpKQorICAgIGlmICghZW5zdXJlQ3VycmVudFRocmVhZE93bnNKU0xvY2sodm0pKQogICAgICAg
ICByZXR1cm47CiAgICAgRHVtcEZyYW1lRnVuY3RvciBmdW5jdG9yKER1bXBGcmFtZUZ1bmN0b3I6
OkR1bXBPbmUsIGZyYW1lc1RvU2tpcCk7Ci0gICAgY2FsbEZyYW1lLT5pdGVyYXRlKGdsb2JhbE9i
amVjdC0+dm0oKSwgZnVuY3Rvcik7CisgICAgY2FsbEZyYW1lLT5pdGVyYXRlKCp2bSwgZnVuY3Rv
cik7CiB9CiAKIHZvaWQgVk1JbnNwZWN0b3I6OmR1bXBSZWdpc3RlcnMoQ2FsbEZyYW1lKiBjYWxs
RnJhbWUpCkBAIC00NjUsMTQgKzQ2MSwxNCBAQCB2b2lkIFZNSW5zcGVjdG9yOjpkdW1wUmVnaXN0
ZXJzKENhbGxGcmFtCiAgICAgZGF0YUxvZ0YoIi0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4iKTsKIH0K
IAotdm9pZCBWTUluc3BlY3Rvcjo6ZHVtcFN0YWNrKEpTR2xvYmFsT2JqZWN0KiBnbG9iYWxPYmpl
Y3QsIENhbGxGcmFtZSogdG9wQ2FsbEZyYW1lLCB1bnNpZ25lZCBmcmFtZXNUb1NraXApCit2b2lk
IFZNSW5zcGVjdG9yOjpkdW1wU3RhY2soVk0qIHZtLCBDYWxsRnJhbWUqIHRvcENhbGxGcmFtZSwg
dW5zaWduZWQgZnJhbWVzVG9Ta2lwKQogewotICAgIGlmICghZW5zdXJlQ3VycmVudFRocmVhZE93
bnNKU0xvY2soZ2xvYmFsT2JqZWN0KSkKKyAgICBpZiAoIWVuc3VyZUN1cnJlbnRUaHJlYWRPd25z
SlNMb2NrKHZtKSkKICAgICAgICAgcmV0dXJuOwogICAgIGlmICghdG9wQ2FsbEZyYW1lKQogICAg
ICAgICByZXR1cm47CiAgICAgRHVtcEZyYW1lRnVuY3RvciBmdW5jdG9yKER1bXBGcmFtZUZ1bmN0
b3I6OkR1bXBBbGwsIGZyYW1lc1RvU2tpcCk7Ci0gICAgdG9wQ2FsbEZyYW1lLT5pdGVyYXRlKGds
b2JhbE9iamVjdC0+dm0oKSwgZnVuY3Rvcik7CisgICAgdG9wQ2FsbEZyYW1lLT5pdGVyYXRlKCp2
bSwgZnVuY3Rvcik7CiB9CiAKIHZvaWQgVk1JbnNwZWN0b3I6OmR1bXBWYWx1ZShKU1ZhbHVlIHZh
bHVlKQpJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1ZNSW5zcGVjdG9yLmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL3Rvb2xzL1ZNSW5zcGVjdG9yLmgJKHJl
dmlzaW9uIDI2MjQyNCkKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS90b29scy9WTUluc3BlY3Rv
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC0xLDUgKzEsNSBAQAogLyoKLSAqIENvcHlyaWdodCAoQykg
MjAxNy0yMDE5IEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KKyAqIENvcHlyaWdodCAo
QykgMjAxNy0yMDIwIEFwcGxlIEluYy4gQWxsIHJpZ2h0cyByZXNlcnZlZC4KICAqCiAgKiBSZWRp
c3RyaWJ1dGlvbiBhbmQgdXNlIGluIHNvdXJjZSBhbmQgYmluYXJ5IGZvcm1zLCB3aXRoIG9yIHdp
dGhvdXQKICAqIG1vZGlmaWNhdGlvbiwgYXJlIHBlcm1pdHRlZCBwcm92aWRlZCB0aGF0IHRoZSBm
b2xsb3dpbmcgY29uZGl0aW9ucwpAQCAtNjcsMTYgKzY3LDE2IEBAIHB1YmxpYzoKICAgICBFeHBl
Y3RlZDxib29sLCBFcnJvcj4gaXNWYWxpZEV4ZWN1dGFibGVNZW1vcnkoY29uc3QgTG9ja2VyJiwg
dm9pZCopOwogICAgIEV4cGVjdGVkPENvZGVCbG9jayosIEVycm9yPiBjb2RlQmxvY2tGb3JNYWNo
aW5lUEMoY29uc3QgTG9ja2VyJiwgdm9pZCopOwogCi0gICAgSlNfRVhQT1JUX1BSSVZBVEUgc3Rh
dGljIGJvb2wgY3VycmVudFRocmVhZE93bnNKU0xvY2soSlNHbG9iYWxPYmplY3QqKTsKLSAgICBK
U19FWFBPUlRfUFJJVkFURSBzdGF0aWMgdm9pZCBnYyhKU0dsb2JhbE9iamVjdCopOwotICAgIEpT
X0VYUE9SVF9QUklWQVRFIHN0YXRpYyB2b2lkIGVkZW5HQyhKU0dsb2JhbE9iamVjdCopOworICAg
IEpTX0VYUE9SVF9QUklWQVRFIHN0YXRpYyBib29sIGN1cnJlbnRUaHJlYWRPd25zSlNMb2NrKFZN
Kik7CisgICAgSlNfRVhQT1JUX1BSSVZBVEUgc3RhdGljIHZvaWQgZ2MoVk0qKTsKKyAgICBKU19F
WFBPUlRfUFJJVkFURSBzdGF0aWMgdm9pZCBlZGVuR0MoVk0qKTsKICAgICBKU19FWFBPUlRfUFJJ
VkFURSBzdGF0aWMgYm9vbCBpc0luSGVhcChIZWFwKiwgdm9pZCopOwogICAgIEpTX0VYUE9SVF9Q
UklWQVRFIHN0YXRpYyBib29sIGlzVmFsaWRDZWxsKEhlYXAqLCBKU0NlbGwqKTsKLSAgICBKU19F
WFBPUlRfUFJJVkFURSBzdGF0aWMgYm9vbCBpc1ZhbGlkQ29kZUJsb2NrKEpTR2xvYmFsT2JqZWN0
KiwgQ29kZUJsb2NrKik7Ci0gICAgSlNfRVhQT1JUX1BSSVZBVEUgc3RhdGljIENvZGVCbG9jayog
Y29kZUJsb2NrRm9yRnJhbWUoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqIHRvcENhbGxGcmFt
ZSwgdW5zaWduZWQgZnJhbWVOdW1iZXIpOwotICAgIEpTX0VYUE9SVF9QUklWQVRFIHN0YXRpYyB2
b2lkIGR1bXBDYWxsRnJhbWUoSlNHbG9iYWxPYmplY3QqLCBDYWxsRnJhbWUqLCB1bnNpZ25lZCBm
cmFtZXNUb1NraXAgPSAwKTsKKyAgICBKU19FWFBPUlRfUFJJVkFURSBzdGF0aWMgYm9vbCBpc1Zh
bGlkQ29kZUJsb2NrKFZNKiwgQ29kZUJsb2NrKik7CisgICAgSlNfRVhQT1JUX1BSSVZBVEUgc3Rh
dGljIENvZGVCbG9jayogY29kZUJsb2NrRm9yRnJhbWUoVk0qLCBDYWxsRnJhbWUqIHRvcENhbGxG
cmFtZSwgdW5zaWduZWQgZnJhbWVOdW1iZXIpOworICAgIEpTX0VYUE9SVF9QUklWQVRFIHN0YXRp
YyB2b2lkIGR1bXBDYWxsRnJhbWUoVk0qLCBDYWxsRnJhbWUqLCB1bnNpZ25lZCBmcmFtZXNUb1Nr
aXAgPSAwKTsKICAgICBKU19FWFBPUlRfUFJJVkFURSBzdGF0aWMgdm9pZCBkdW1wUmVnaXN0ZXJz
KENhbGxGcmFtZSopOwotICAgIEpTX0VYUE9SVF9QUklWQVRFIHN0YXRpYyB2b2lkIGR1bXBTdGFj
ayhKU0dsb2JhbE9iamVjdCosIENhbGxGcmFtZSogdG9wQ2FsbEZyYW1lLCB1bnNpZ25lZCBmcmFt
ZXNUb1NraXAgPSAwKTsKKyAgICBKU19FWFBPUlRfUFJJVkFURSBzdGF0aWMgdm9pZCBkdW1wU3Rh
Y2soVk0qLCBDYWxsRnJhbWUqIHRvcENhbGxGcmFtZSwgdW5zaWduZWQgZnJhbWVzVG9Ta2lwID0g
MCk7CiAgICAgSlNfRVhQT1JUX1BSSVZBVEUgc3RhdGljIHZvaWQgZHVtcFZhbHVlKEpTVmFsdWUp
OwogICAgIEpTX0VYUE9SVF9QUklWQVRFIHN0YXRpYyB2b2lkIGR1bXBDZWxsTWVtb3J5KEpTQ2Vs
bCopOwogICAgIEpTX0VYUE9SVF9QUklWQVRFIHN0YXRpYyB2b2lkIGR1bXBDZWxsTWVtb3J5VG9T
dHJlYW0oSlNDZWxsKiwgUHJpbnRTdHJlYW0mKTsK
</data>
<flag name="review"
          id="416263"
          type_id="1"
          status="+"
          setter="saam"
    />
          </attachment>
      

    </bug>

</bugzilla>