<?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>237875</bug_id>
          
          <creation_ts>2022-03-14 21:55:33 -0700</creation_ts>
          <short_desc>[WebGPU] [NSString stringWithCString:encoding:] fails on a null pointer</short_desc>
          <delta_ts>2022-03-15 22:32:57 -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>WebGPU</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>237942</dup_id>
          
          <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>237871</dependson>
          <blocked>237583</blocked>
    
    <blocked>237876</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Myles C. Maxfield">mmaxfield</reporter>
          <assigned_to name="Myles C. Maxfield">mmaxfield</assigned_to>
          <cc>dino</cc>
    
    <cc>djg</cc>
    
    <cc>kkinnunen</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1851146</commentid>
    <comment_count>0</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-03-14 21:55:33 -0700</bug_when>
    <thetext>.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851147</commentid>
    <comment_count>1</comment_count>
      <attachid>454661</attachid>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-03-14 21:57:32 -0700</bug_when>
    <thetext>Created attachment 454661
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851305</commentid>
    <comment_count>2</comment_count>
      <attachid>454661</attachid>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-03-15 08:37:31 -0700</bug_when>
    <thetext>Comment on attachment 454661
Patch

I think API type conversion should be done ASAP, e.g. a layer below. You wouldn&apos;t write &quot;const char*&quot; in WebKit level code, so why WebGPU level code.
For me, overloaded ToAPI, FromAPI functions have been useful. In this case you would have String FromAPI(const char*) or NSString* FromAPI(const char*)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851307</commentid>
    <comment_count>3</comment_count>
    <who name="Kimmo Kinnunen">kkinnunen</who>
    <bug_when>2022-03-15 08:39:00 -0700</bug_when>
    <thetext>and the code would be like

void wgpuBindGroupSetLabel(WGPUBindGroup bindGroup, const char* label)
{
    FromAPI(bindGroup)-&gt;setLabel(FromAPI(label));
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851652</commentid>
    <comment_count>4</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-03-15 22:32:29 -0700</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 237942 ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1851654</commentid>
    <comment_count>5</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2022-03-15 22:32:57 -0700</bug_when>
    <thetext>(In reply to Kimmo Kinnunen from comment #2)
&gt; Comment on attachment 454661 [details]
&gt; Patch
&gt; 
&gt; I think API type conversion should be done ASAP, e.g. a layer below. You
&gt; wouldn&apos;t write &quot;const char*&quot; in WebKit level code, so why WebGPU level code.
&gt; For me, overloaded ToAPI, FromAPI functions have been useful. In this case
&gt; you would have String FromAPI(const char*) or NSString* FromAPI(const char*)

https://bugs.webkit.org/show_bug.cgi?id=237942 [WebGPU] Use the fromAPI() pattern</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>454661</attachid>
            <date>2022-03-14 21:57:32 -0700</date>
            <delta_ts>2022-03-15 08:37:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>14368</size>
            <attacher name="Myles C. Maxfield">mmaxfield</attacher>
            
              <data encoding="base64">Y29tbWl0IGM1NDBiOWQyMjQ0NDU3OWNiZjY0ZTU2OWRhMDhkY2VlNDQwZDZlYzEKQXV0aG9yOiBN
eWxlcyBDLiBNYXhmaWVsZCA8bW1heGZpZWxkQGFwcGxlLmNvbT4KRGF0ZTogICBNb24gTWFyIDE0
IDIxOjU3OjA0IDIwMjIgLTA3MDAKCiAgICBQYXJ0IDgKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
R1BVL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJHUFUvQ2hhbmdlTG9nCmluZGV4IGI4NzVkOTFkN2My
Ny4uODJkYzU2NDAzOTVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViR1BVL0NoYW5nZUxvZworKysg
Yi9Tb3VyY2UvV2ViR1BVL0NoYW5nZUxvZwpAQCAtMSwzICsxLDU0IEBACisyMDIyLTAzLTE0ICBN
eWxlcyBDLiBNYXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CisKKyAgICAgICAgW1dlYkdQ
VV0gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5nOmVuY29kaW5nOl0gZmFpbHMgb24gYSBudWxs
IHBvaW50ZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lk
PTIzNzg3NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IFNpbXBseSBndWFyZCBjYWxscyBiZWhpbmQgYSBudWxsIGNoZWNrLgorICAgICAgICBFdmVuIGlm
IHRoZSBwb2ludGVyIGlzIG51bGwsIHdlIHN0aWxsIG5lZWQgdG8gc2V0IHRoZSBsYWJlbCBvZiB0
aGUgdW5kZXJseWluZyBvYmplY3Q6CisKKyAgICAgICAgb2JqZWN0LnNldExhYmVsKCJmb28iKTsK
KyAgICAgICAgLy8gdXNlIG9iamVjdAorICAgICAgICBvYmplY3Quc2V0TGFiZWwoTlVMTCk7Cisg
ICAgICAgIC8vIHVzZSBvYmplY3QgYWdhaW4KKyAgICAgICAgLy8gVGhlIGxhYmVsIGhlcmUgaGFz
IHRvIG5vdCBiZSAiZm9vIi4KKworICAgICAgICAqIFdlYkdQVS9CaW5kR3JvdXAubW06CisgICAg
ICAgIChXZWJHUFU6OkRldmljZTo6Y3JlYXRlQmluZEdyb3VwKToKKyAgICAgICAgKFdlYkdQVTo6
QmluZEdyb3VwOjpzZXRMYWJlbCk6CisgICAgICAgICogV2ViR1BVL0JpbmRHcm91cExheW91dC5t
bToKKyAgICAgICAgKFdlYkdQVTo6RGV2aWNlOjpjcmVhdGVCaW5kR3JvdXBMYXlvdXQpOgorICAg
ICAgICAoV2ViR1BVOjpCaW5kR3JvdXBMYXlvdXQ6OnNldExhYmVsKToKKyAgICAgICAgKiBXZWJH
UFUvQnVmZmVyLm1tOgorICAgICAgICAoV2ViR1BVOjpEZXZpY2U6OmNyZWF0ZUJ1ZmZlcik6Cisg
ICAgICAgIChXZWJHUFU6OkJ1ZmZlcjo6c2V0TGFiZWwpOgorICAgICAgICAqIFdlYkdQVS9Db21t
YW5kQnVmZmVyLm1tOgorICAgICAgICAoV2ViR1BVOjpDb21tYW5kQnVmZmVyOjpzZXRMYWJlbCk6
CisgICAgICAgICogV2ViR1BVL0NvbW1hbmRFbmNvZGVyLm1tOgorICAgICAgICAoV2ViR1BVOjpE
ZXZpY2U6OmNyZWF0ZUNvbW1hbmRFbmNvZGVyKToKKyAgICAgICAgKFdlYkdQVTo6Q29tbWFuZEVu
Y29kZXI6OmZpbmlzaCk6CisgICAgICAgIChXZWJHUFU6OkNvbW1hbmRFbmNvZGVyOjpzZXRMYWJl
bCk6CisgICAgICAgICogV2ViR1BVL0NvbXB1dGVQYXNzRW5jb2Rlci5tbToKKyAgICAgICAgKFdl
YkdQVTo6Q29tcHV0ZVBhc3NFbmNvZGVyOjpzZXRMYWJlbCk6CisgICAgICAgICogV2ViR1BVL0Nv
bXB1dGVQaXBlbGluZS5tbToKKyAgICAgICAgKFdlYkdQVTo6RGV2aWNlOjpjcmVhdGVDb21wdXRl
UGlwZWxpbmUpOgorICAgICAgICAqIFdlYkdQVS9RdWV1ZS5tbToKKyAgICAgICAgKFdlYkdQVTo6
UXVldWU6OnNldExhYmVsKToKKyAgICAgICAgKiBXZWJHUFUvUmVuZGVyQnVuZGxlLm1tOgorICAg
ICAgICAoV2ViR1BVOjpSZW5kZXJCdW5kbGU6OnNldExhYmVsKToKKyAgICAgICAgKiBXZWJHUFUv
UmVuZGVyQnVuZGxlRW5jb2Rlci5tbToKKyAgICAgICAgKFdlYkdQVTo6UmVuZGVyQnVuZGxlRW5j
b2Rlcjo6c2V0TGFiZWwpOgorICAgICAgICAqIFdlYkdQVS9SZW5kZXJQYXNzRW5jb2Rlci5tbToK
KyAgICAgICAgKFdlYkdQVTo6UmVuZGVyUGFzc0VuY29kZXI6OnNldExhYmVsKToKKyAgICAgICAg
KiBXZWJHUFUvU2hhZGVyTW9kdWxlLm1tOgorICAgICAgICAoV2ViR1BVOjpEZXZpY2U6OmNyZWF0
ZVNoYWRlck1vZHVsZSk6CisgICAgICAgIChXZWJHUFU6OlNoYWRlck1vZHVsZTo6c2V0TGFiZWwp
OgorICAgICAgICAqIFdlYkdQVS9UZXh0dXJlLm1tOgorICAgICAgICAoV2ViR1BVOjpUZXh0dXJl
OjpzZXRMYWJlbCk6CisgICAgICAgICogV2ViR1BVL1RleHR1cmVWaWV3Lm1tOgorICAgICAgICAo
V2ViR1BVOjpUZXh0dXJlVmlldzo6c2V0TGFiZWwpOgorCiAyMDIyLTAzLTE0ICBNeWxlcyBDLiBN
YXhmaWVsZCAgPG1tYXhmaWVsZEBhcHBsZS5jb20+CiAKICAgICAgICAgW1dlYkdQVV0gSW1wbGVt
ZW50IGZpcnN0IGRyYWZ0IG9mIGJ1ZmZlciBjb3B5aW5nIGFjY29yZGluZyB0byB0aGUgc3BlYwpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYkdQVS9XZWJHUFUvQmluZEdyb3VwLm1tIGIvU291cmNlL1dl
YkdQVS9XZWJHUFUvQmluZEdyb3VwLm1tCmluZGV4IDc4YmFjN2MzMGQ0Yi4uZTVhODVkZWVhMWQ1
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9CaW5kR3JvdXAubW0KKysrIGIvU291
cmNlL1dlYkdQVS9XZWJHUFUvQmluZEdyb3VwLm1tCkBAIC02NCw3ICs2NCw3IEBAIFJlZlB0cjxC
aW5kR3JvdXA+IERldmljZTo6Y3JlYXRlQmluZEdyb3VwKGNvbnN0IFdHUFVCaW5kR3JvdXBEZXNj
cmlwdG9yJiBkZXNjcmlwCiAgICAgaWYgKCF2ZXJ0ZXhBcmd1bWVudEJ1ZmZlciB8fCAhZnJhZ21l
bnRBcmd1bWVudEJ1ZmZlciB8fCAhY29tcHV0ZUFyZ3VtZW50QnVmZmVyKQogICAgICAgICByZXR1
cm4gbnVsbHB0cjsKIAotICAgIGF1dG8gbGFiZWwgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJp
bmc6ZGVzY3JpcHRvci5sYWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ107CisgICAg
YXV0byBsYWJlbCA9IGRlc2NyaXB0b3IubGFiZWwgPyBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJp
bmc6ZGVzY3JpcHRvci5sYWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ10gOiBuaWw7
CiAgICAgdmVydGV4QXJndW1lbnRCdWZmZXIubGFiZWwgPSBsYWJlbDsKICAgICBmcmFnbWVudEFy
Z3VtZW50QnVmZmVyLmxhYmVsID0gbGFiZWw7CiAgICAgY29tcHV0ZUFyZ3VtZW50QnVmZmVyLmxh
YmVsID0gbGFiZWw7CkBAIC0xMjQsNyArMTI0LDcgQEAgQmluZEdyb3VwOjp+QmluZEdyb3VwKCkg
PSBkZWZhdWx0OwogCiB2b2lkIEJpbmRHcm91cDo6c2V0TGFiZWwoY29uc3QgY2hhciogbGFiZWwp
CiB7Ci0gICAgYXV0byBsYWJlbFN0cmluZyA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ1N0cmluZzps
YWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ107CisgICAgYXV0byBsYWJlbFN0cmlu
ZyA9IGxhYmVsID8gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5nOmxhYmVsIGVuY29kaW5nOk5T
VVRGOFN0cmluZ0VuY29kaW5nXSA6IG5pbDsKICAgICBtX3ZlcnRleEFyZ3VtZW50QnVmZmVyLmxh
YmVsID0gbGFiZWxTdHJpbmc7CiAgICAgbV9mcmFnbWVudEFyZ3VtZW50QnVmZmVyLmxhYmVsID0g
bGFiZWxTdHJpbmc7CiAgICAgbV9jb21wdXRlQXJndW1lbnRCdWZmZXIubGFiZWwgPSBsYWJlbFN0
cmluZzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0JpbmRHcm91cExheW91dC5t
bSBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0JpbmRHcm91cExheW91dC5tbQppbmRleCA4NjA4ZTkx
ZDgzOTkuLmI1M2E0ZWFjMzM4NCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkdQVS9XZWJHUFUvQmlu
ZEdyb3VwTGF5b3V0Lm1tCisrKyBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0JpbmRHcm91cExheW91
dC5tbQpAQCAtMjA1LDcgKzIwNSw3IEBAIFJlZlB0cjxCaW5kR3JvdXBMYXlvdXQ+IERldmljZTo6
Y3JlYXRlQmluZEdyb3VwTGF5b3V0KGNvbnN0IFdHUFVCaW5kR3JvdXBMYXlvdXRECiAgICAgaWYg
KCF2ZXJ0ZXhBcmd1bWVudEVuY29kZXIgfHwgIWZyYWdtZW50QXJndW1lbnRFbmNvZGVyIHx8ICFj
b21wdXRlQXJndW1lbnRFbmNvZGVyKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAotICAgIGF1
dG8gbGFiZWwgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6ZGVzY3JpcHRvci5sYWJlbCBl
bmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ107CisgICAgYXV0byBsYWJlbCA9IGRlc2NyaXB0
b3IubGFiZWwgPyBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6ZGVzY3JpcHRvci5sYWJlbCBl
bmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ10gOiBuaWw7CiAgICAgdmVydGV4QXJndW1lbnRF
bmNvZGVyLmxhYmVsID0gbGFiZWw7CiAgICAgZnJhZ21lbnRBcmd1bWVudEVuY29kZXIubGFiZWwg
PSBsYWJlbDsKICAgICBjb21wdXRlQXJndW1lbnRFbmNvZGVyLmxhYmVsID0gbGFiZWw7CkBAIC0y
MjQsNyArMjI0LDcgQEAgQmluZEdyb3VwTGF5b3V0Ojp+QmluZEdyb3VwTGF5b3V0KCkgPSBkZWZh
dWx0OwogCiB2b2lkIEJpbmRHcm91cExheW91dDo6c2V0TGFiZWwoY29uc3QgY2hhciogbGFiZWwp
CiB7Ci0gICAgYXV0byBsYWJlbFN0cmluZyA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ1N0cmluZzps
YWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ107CisgICAgYXV0byBsYWJlbFN0cmlu
ZyA9IGxhYmVsID8gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5nOmxhYmVsIGVuY29kaW5nOk5T
VVRGOFN0cmluZ0VuY29kaW5nXSA6IG5pbDsKICAgICBtX3ZlcnRleEFyZ3VtZW50RW5jb2Rlci5s
YWJlbCA9IGxhYmVsU3RyaW5nOwogICAgIG1fZnJhZ21lbnRBcmd1bWVudEVuY29kZXIubGFiZWwg
PSBsYWJlbFN0cmluZzsKICAgICBtX2NvbXB1dGVBcmd1bWVudEVuY29kZXIubGFiZWwgPSBsYWJl
bFN0cmluZzsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0J1ZmZlci5tbSBiL1Nv
dXJjZS9XZWJHUFUvV2ViR1BVL0J1ZmZlci5tbQppbmRleCBmMjEwNjczYTEwZDQuLjUxYTNiYzk5
ZDI2NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkdQVS9XZWJHUFUvQnVmZmVyLm1tCisrKyBiL1Nv
dXJjZS9XZWJHUFUvV2ViR1BVL0J1ZmZlci5tbQpAQCAtMTExLDcgKzExMSw3IEBAIFJlZlB0cjxC
dWZmZXI+IERldmljZTo6Y3JlYXRlQnVmZmVyKGNvbnN0IFdHUFVCdWZmZXJEZXNjcmlwdG9yJiBk
ZXNjcmlwdG9yKQogICAgIGlmICghYnVmZmVyKQogICAgICAgICByZXR1cm4gbnVsbHB0cjsKIAot
ICAgIGJ1ZmZlci5sYWJlbCA9IFtOU1N0cmluZyBzdHJpbmdXaXRoQ1N0cmluZzpkZXNjcmlwdG9y
LmxhYmVsIGVuY29kaW5nOk5TVVRGOFN0cmluZ0VuY29kaW5nXTsKKyAgICBidWZmZXIubGFiZWwg
PSBkZXNjcmlwdG9yLmxhYmVsID8gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5nOmRlc2NyaXB0
b3IubGFiZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddIDogbmlsOwogCiAgICAgLy8g
RklYTUU6IEhhbmRsZSBkZXNjcmlwdG9yLm1hcHBlZEF0Q3JlYXRpb24uCiAgICAgLy8gQmVjYXVz
ZSBub24tbWFwcGFibGUgYnVmZmVycyBjYW4gYmUgbWFwcGVkIGF0IGNyZWF0aW9uLApAQCAtMzgz
LDcgKzM4Myw3IEBAIHZvaWQgQnVmZmVyOjp1bm1hcCgpCiAKIHZvaWQgQnVmZmVyOjpzZXRMYWJl
bChjb25zdCBjaGFyKiBsYWJlbCkKIHsKLSAgICBtX2J1ZmZlci5sYWJlbCA9IFtOU1N0cmluZyBz
dHJpbmdXaXRoQ1N0cmluZzpsYWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ107Cisg
ICAgbV9idWZmZXIubGFiZWwgPSBsYWJlbCA/IFtOU1N0cmluZyBzdHJpbmdXaXRoQ1N0cmluZzps
YWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ10gOiBuaWw7CiB9CiAKIH0gLy8gbmFt
ZXNwYWNlIFdlYkdQVQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkdQVS9XZWJHUFUvQ29tbWFuZEJ1
ZmZlci5tbSBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0NvbW1hbmRCdWZmZXIubW0KaW5kZXggMDgx
ZGUwYmZjYzlmLi4zZDgwMmFhODlmNGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJHUFUvV2ViR1BV
L0NvbW1hbmRCdWZmZXIubW0KKysrIGIvU291cmNlL1dlYkdQVS9XZWJHUFUvQ29tbWFuZEJ1ZmZl
ci5tbQpAQCAtMzgsNyArMzgsNyBAQCBDb21tYW5kQnVmZmVyOjp+Q29tbWFuZEJ1ZmZlcigpID0g
ZGVmYXVsdDsKIAogdm9pZCBDb21tYW5kQnVmZmVyOjpzZXRMYWJlbChjb25zdCBjaGFyKiBsYWJl
bCkKIHsKLSAgICBtX2NvbW1hbmRCdWZmZXIubGFiZWwgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENT
dHJpbmc6bGFiZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddOworICAgIG1fY29tbWFu
ZEJ1ZmZlci5sYWJlbCA9IGxhYmVsID8gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5nOmxhYmVs
IGVuY29kaW5nOk5TVVRGOFN0cmluZ0VuY29kaW5nXSA6IG5pbDsKIH0KIAogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkdQVS9XZWJHUFUvQ29tbWFuZEVuY29kZXIubW0gYi9Tb3VyY2UvV2ViR1BV
L1dlYkdQVS9Db21tYW5kRW5jb2Rlci5tbQppbmRleCA3NDRjNDFkZDg1NWIuLjVjNTc1ZThkMGUx
MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkdQVS9XZWJHUFUvQ29tbWFuZEVuY29kZXIubW0KKysr
IGIvU291cmNlL1dlYkdQVS9XZWJHUFUvQ29tbWFuZEVuY29kZXIubW0KQEAgLTQ5LDcgKzQ5LDcg
QEAgUmVmUHRyPENvbW1hbmRFbmNvZGVyPiBEZXZpY2U6OmNyZWF0ZUNvbW1hbmRFbmNvZGVyKGNv
bnN0IFdHUFVDb21tYW5kRW5jb2RlckRlc2MKICAgICBpZiAoIWNvbW1hbmRCdWZmZXIpCiAgICAg
ICAgIHJldHVybiBudWxscHRyOwogCi0gICAgY29tbWFuZEJ1ZmZlci5sYWJlbCA9IFtOU1N0cmlu
ZyBzdHJpbmdXaXRoQ1N0cmluZzpkZXNjcmlwdG9yLmxhYmVsIGVuY29kaW5nOk5TVVRGOFN0cmlu
Z0VuY29kaW5nXTsKKyAgICBjb21tYW5kQnVmZmVyLmxhYmVsID0gZGVzY3JpcHRvci5sYWJlbCA/
IFtOU1N0cmluZyBzdHJpbmdXaXRoQ1N0cmluZzpkZXNjcmlwdG9yLmxhYmVsIGVuY29kaW5nOk5T
VVRGOFN0cmluZ0VuY29kaW5nXSA6IG5pbDsKIAogICAgIHJldHVybiBDb21tYW5kRW5jb2Rlcjo6
Y3JlYXRlKGNvbW1hbmRCdWZmZXIpOwogfQpAQCAtMjIzLDcgKzIyMyw3IEBAIFJlZlB0cjxDb21t
YW5kQnVmZmVyPiBDb21tYW5kRW5jb2Rlcjo6ZmluaXNoKGNvbnN0IFdHUFVDb21tYW5kQnVmZmVy
RGVzY3JpcHRvciYKICAgICBhdXRvICpjb21tYW5kQnVmZmVyID0gbV9jb21tYW5kQnVmZmVyOwog
ICAgIG1fY29tbWFuZEJ1ZmZlciA9IG5pbDsKIAotICAgIGNvbW1hbmRCdWZmZXIubGFiZWwgPSBb
TlNTdHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6ZGVzY3JpcHRvci5sYWJlbCBlbmNvZGluZzpOU1VU
RjhTdHJpbmdFbmNvZGluZ107CisgICAgY29tbWFuZEJ1ZmZlci5sYWJlbCA9IGRlc2NyaXB0b3Iu
bGFiZWwgPyBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6ZGVzY3JpcHRvci5sYWJlbCBlbmNv
ZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ10gOiBuaWw7CiAKICAgICByZXR1cm4gQ29tbWFuZEJ1
ZmZlcjo6Y3JlYXRlKGNvbW1hbmRCdWZmZXIpOwogfQpAQCAtMjU5LDcgKzI1OSw3IEBAIHZvaWQg
Q29tbWFuZEVuY29kZXI6OndyaXRlVGltZXN0YW1wKGNvbnN0IFF1ZXJ5U2V0JiBxdWVyeVNldCwg
dWludDMyX3QgcXVlcnlJbmRlCiAKIHZvaWQgQ29tbWFuZEVuY29kZXI6OnNldExhYmVsKGNvbnN0
IGNoYXIqIGxhYmVsKQogewotICAgIG1fY29tbWFuZEJ1ZmZlci5sYWJlbCA9IFtOU1N0cmluZyBz
dHJpbmdXaXRoQ1N0cmluZzpsYWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ107Cisg
ICAgbV9jb21tYW5kQnVmZmVyLmxhYmVsID0gbGFiZWwgPyBbTlNTdHJpbmcgc3RyaW5nV2l0aENT
dHJpbmc6bGFiZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddIDogbmlsOwogfQogCiB9
IC8vIG5hbWVzcGFjZSBXZWJHUFUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0Nv
bXB1dGVQYXNzRW5jb2Rlci5tbSBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL0NvbXB1dGVQYXNzRW5j
b2Rlci5tbQppbmRleCAwMjQ1ZGY5MWY3YWIuLjFmZWM1MWRiYzE5MyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkdQVS9XZWJHUFUvQ29tcHV0ZVBhc3NFbmNvZGVyLm1tCisrKyBiL1NvdXJjZS9XZWJH
UFUvV2ViR1BVL0NvbXB1dGVQYXNzRW5jb2Rlci5tbQpAQCAtOTYsNyArOTYsNyBAQCB2b2lkIENv
bXB1dGVQYXNzRW5jb2Rlcjo6c2V0UGlwZWxpbmUoY29uc3QgQ29tcHV0ZVBpcGVsaW5lJiBwaXBl
bGluZSkKIAogdm9pZCBDb21wdXRlUGFzc0VuY29kZXI6OnNldExhYmVsKGNvbnN0IGNoYXIqIGxh
YmVsKQogewotICAgIG1fY29tcHV0ZUNvbW1hbmRFbmNvZGVyLmxhYmVsID0gW05TU3RyaW5nIHN0
cmluZ1dpdGhDU3RyaW5nOmxhYmVsIGVuY29kaW5nOk5TVVRGOFN0cmluZ0VuY29kaW5nXTsKKyAg
ICBtX2NvbXB1dGVDb21tYW5kRW5jb2Rlci5sYWJlbCA9IGxhYmVsID8gW05TU3RyaW5nIHN0cmlu
Z1dpdGhDU3RyaW5nOmxhYmVsIGVuY29kaW5nOk5TVVRGOFN0cmluZ0VuY29kaW5nXSA6IG5pbDsK
IH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViR1BVCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViR1BVL1dl
YkdQVS9Db21wdXRlUGlwZWxpbmUubW0gYi9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9Db21wdXRlUGlw
ZWxpbmUubW0KaW5kZXggNmE4ZTdmZDc3MDRmLi40NTEwOGQ2MDA4NWMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJHUFUvV2ViR1BVL0NvbXB1dGVQaXBlbGluZS5tbQorKysgYi9Tb3VyY2UvV2ViR1BV
L1dlYkdQVS9Db21wdXRlUGlwZWxpbmUubW0KQEAgLTE1MCw3ICsxNTAsNyBAQCBSZWZQdHI8Q29t
cHV0ZVBpcGVsaW5lPiBEZXZpY2U6OmNyZWF0ZUNvbXB1dGVQaXBlbGluZShjb25zdCBXR1BVQ29t
cHV0ZVBpcGVsaW5lRAogCiAgICAgY29uc3QgU2hhZGVyTW9kdWxlJiBzaGFkZXJNb2R1bGUgPSBk
ZXNjcmlwdG9yLmNvbXB1dGUubW9kdWxlLT5zaGFkZXJNb2R1bGU7CiAgICAgY29uc3QgUGlwZWxp
bmVMYXlvdXQmIHBpcGVsaW5lTGF5b3V0ID0gZGVzY3JpcHRvci5sYXlvdXQtPnBpcGVsaW5lTGF5
b3V0OwotICAgIGF1dG8gbGFiZWwgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6ZGVzY3Jp
cHRvci5sYWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ107CisgICAgYXV0byBsYWJl
bCA9IGRlc2NyaXB0b3IubGFiZWwgPyBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6ZGVzY3Jp
cHRvci5sYWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ10gOiBuaWw7CiAKICAgICBh
dXRvIGxpYnJhcnlDcmVhdGlvblJlc3VsdCA9IGNyZWF0ZUxpYnJhcnkobV9kZXZpY2UsIHNoYWRl
ck1vZHVsZSwgcGlwZWxpbmVMYXlvdXQsIGRlc2NyaXB0b3IuY29tcHV0ZS5lbnRyeVBvaW50LCBs
YWJlbCk7CiAgICAgaWYgKCFsaWJyYXJ5Q3JlYXRpb25SZXN1bHQpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViR1BVL1dlYkdQVS9RdWV1ZS5tbSBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1F1ZXVlLm1t
CmluZGV4IGFkYTA0ZDdjZDMxNC4uNTA3M2MxMmFjY2NlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
R1BVL1dlYkdQVS9RdWV1ZS5tbQorKysgYi9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9RdWV1ZS5tbQpA
QCAtMTE4LDcgKzExOCw3IEBAIHZvaWQgUXVldWU6OndyaXRlVGV4dHVyZShjb25zdCBXR1BVSW1h
Z2VDb3B5VGV4dHVyZSYgZGVzdGluYXRpb24sIGNvbnN0IHZvaWQqIGRhCiAKIHZvaWQgUXVldWU6
OnNldExhYmVsKGNvbnN0IGNoYXIqIGxhYmVsKQogewotICAgIG1fY29tbWFuZFF1ZXVlLmxhYmVs
ID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5nOmxhYmVsIGVuY29kaW5nOk5TVVRGOFN0cmlu
Z0VuY29kaW5nXTsKKyAgICBtX2NvbW1hbmRRdWV1ZS5sYWJlbCA9IGxhYmVsID8gW05TU3RyaW5n
IHN0cmluZ1dpdGhDU3RyaW5nOmxhYmVsIGVuY29kaW5nOk5TVVRGOFN0cmluZ0VuY29kaW5nXSA6
IG5pbDsKIH0KIAogdm9pZCBRdWV1ZTo6c2NoZWR1bGVXb3JrKEluc3RhbmNlOjpXb3JrSXRlbSYm
IHdvcmtJdGVtKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkdQVS9XZWJHUFUvUmVuZGVyQnVuZGxl
Lm1tIGIvU291cmNlL1dlYkdQVS9XZWJHUFUvUmVuZGVyQnVuZGxlLm1tCmluZGV4IDM3MzhhZjdh
YTA1Ny4uYWE1ZjQ2N2QyOTYzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9SZW5k
ZXJCdW5kbGUubW0KKysrIGIvU291cmNlL1dlYkdQVS9XZWJHUFUvUmVuZGVyQnVuZGxlLm1tCkBA
IC0zOCw3ICszOCw3IEBAIFJlbmRlckJ1bmRsZTo6flJlbmRlckJ1bmRsZSgpID0gZGVmYXVsdDsK
IAogdm9pZCBSZW5kZXJCdW5kbGU6OnNldExhYmVsKGNvbnN0IGNoYXIqIGxhYmVsKQogewotICAg
IG1faW5kaXJlY3RDb21tYW5kQnVmZmVyLmxhYmVsID0gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3Ry
aW5nOmxhYmVsIGVuY29kaW5nOk5TVVRGOFN0cmluZ0VuY29kaW5nXTsKKyAgICBtX2luZGlyZWN0
Q29tbWFuZEJ1ZmZlci5sYWJlbCA9IGxhYmVsID8gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5n
OmxhYmVsIGVuY29kaW5nOk5TVVRGOFN0cmluZ0VuY29kaW5nXSA6IG5pbDsKIH0KIAogfQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkdQVS9XZWJHUFUvUmVuZGVyQnVuZGxlRW5jb2Rlci5tbSBiL1Nv
dXJjZS9XZWJHUFUvV2ViR1BVL1JlbmRlckJ1bmRsZUVuY29kZXIubW0KaW5kZXggYTQ0Y2EwZDAx
MmFjLi43NGEzZDY1NmJjZDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1JlbmRl
ckJ1bmRsZUVuY29kZXIubW0KKysrIGIvU291cmNlL1dlYkdQVS9XZWJHUFUvUmVuZGVyQnVuZGxl
RW5jb2Rlci5tbQpAQCAtMTI4LDcgKzEyOCw3IEBAIHZvaWQgUmVuZGVyQnVuZGxlRW5jb2Rlcjo6
c2V0VmVydGV4QnVmZmVyKHVpbnQzMl90IHNsb3QsIGNvbnN0IEJ1ZmZlciYgYnVmZmVyLCB1CiAK
IHZvaWQgUmVuZGVyQnVuZGxlRW5jb2Rlcjo6c2V0TGFiZWwoY29uc3QgY2hhciogbGFiZWwpCiB7
Ci0gICAgbV9pbmRpcmVjdENvbW1hbmRCdWZmZXIubGFiZWwgPSBbTlNTdHJpbmcgc3RyaW5nV2l0
aENTdHJpbmc6bGFiZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddOworICAgIG1faW5k
aXJlY3RDb21tYW5kQnVmZmVyLmxhYmVsID0gbGFiZWwgPyBbTlNTdHJpbmcgc3RyaW5nV2l0aENT
dHJpbmc6bGFiZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddIDogbmlsOwogfQogCiB9
IC8vIG5hbWVzcGFjZSBXZWJHUFUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1Jl
bmRlclBhc3NFbmNvZGVyLm1tIGIvU291cmNlL1dlYkdQVS9XZWJHUFUvUmVuZGVyUGFzc0VuY29k
ZXIubW0KaW5kZXggNTBmZmE3ZjA5NjVhLi4yY2I5ZmIyYzg3YWQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJHUFUvV2ViR1BVL1JlbmRlclBhc3NFbmNvZGVyLm1tCisrKyBiL1NvdXJjZS9XZWJHUFUv
V2ViR1BVL1JlbmRlclBhc3NFbmNvZGVyLm1tCkBAIC0xNzUsNyArMTc1LDcgQEAgdm9pZCBSZW5k
ZXJQYXNzRW5jb2Rlcjo6c2V0Vmlld3BvcnQoZmxvYXQgeCwgZmxvYXQgeSwgZmxvYXQgd2lkdGgs
IGZsb2F0IGhlaWdodCwKIAogdm9pZCBSZW5kZXJQYXNzRW5jb2Rlcjo6c2V0TGFiZWwoY29uc3Qg
Y2hhciogbGFiZWwpCiB7Ci0gICAgbV9yZW5kZXJDb21tYW5kRW5jb2Rlci5sYWJlbCA9IFtOU1N0
cmluZyBzdHJpbmdXaXRoQ1N0cmluZzpsYWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGlu
Z107CisgICAgbV9yZW5kZXJDb21tYW5kRW5jb2Rlci5sYWJlbCA9IGxhYmVsID8gW05TU3RyaW5n
IHN0cmluZ1dpdGhDU3RyaW5nOmxhYmVsIGVuY29kaW5nOk5TVVRGOFN0cmluZ0VuY29kaW5nXSA6
IG5pbDsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViR1BVCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
R1BVL1dlYkdQVS9TaGFkZXJNb2R1bGUubW0gYi9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9TaGFkZXJN
b2R1bGUubW0KaW5kZXggMWU1MjEyOWZlMWJmLi42ZGMxOWQxZTU4YzcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJHUFUvV2ViR1BVL1NoYWRlck1vZHVsZS5tbQorKysgYi9Tb3VyY2UvV2ViR1BVL1dl
YkdQVS9TaGFkZXJNb2R1bGUubW0KQEAgLTExMCw3ICsxMTAsNyBAQCBSZWZQdHI8U2hhZGVyTW9k
dWxlPiBEZXZpY2U6OmNyZWF0ZVNoYWRlck1vZHVsZShjb25zdCBXR1BVU2hhZGVyTW9kdWxlRGVz
Y3JpcHRvcgogICAgIGF1dG8gY2hlY2tSZXN1bHQgPSBXR1NMOjpzdGF0aWNDaGVjayhTdHJpbmco
c2hhZGVyTW9kdWxlUGFyYW1ldGVycy0+d2dzbC5jb2RlKSwgc3RkOjpudWxsb3B0KTsKIAogICAg
IGlmIChzdGQ6OmhvbGRzX2FsdGVybmF0aXZlPFdHU0w6OlN1Y2Nlc3NmdWxDaGVjaz4oY2hlY2tS
ZXN1bHQpICYmIHNoYWRlck1vZHVsZVBhcmFtZXRlcnMtPmhpbnRzICYmIHNoYWRlck1vZHVsZVBh
cmFtZXRlcnMtPmhpbnRzLT5oaW50c0NvdW50KSB7Ci0gICAgICAgIGlmIChhdXRvIHJlc3VsdCA9
IGVhcmx5Q29tcGlsZVNoYWRlck1vZHVsZShtX2RldmljZSwgV1RGTW92ZShjaGVja1Jlc3VsdCks
ICpzaGFkZXJNb2R1bGVQYXJhbWV0ZXJzLT5oaW50cywgW05TU3RyaW5nIHN0cmluZ1dpdGhDU3Ry
aW5nOmRlc2NyaXB0b3IubGFiZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddKSkKKyAg
ICAgICAgaWYgKGF1dG8gcmVzdWx0ID0gZWFybHlDb21waWxlU2hhZGVyTW9kdWxlKG1fZGV2aWNl
LCBXVEZNb3ZlKGNoZWNrUmVzdWx0KSwgKnNoYWRlck1vZHVsZVBhcmFtZXRlcnMtPmhpbnRzLCBk
ZXNjcmlwdG9yLmxhYmVsID8gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5nOmRlc2NyaXB0b3Iu
bGFiZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddIDogbmlsKSkKICAgICAgICAgICAg
IHJldHVybiByZXN1bHQ7CiAgICAgfQogCkBAIC0yMDgsNyArMjA4LDcgQEAgdm9pZCBTaGFkZXJN
b2R1bGU6OmdldENvbXBpbGF0aW9uSW5mbyhXVEY6OkZ1bmN0aW9uPHZvaWQoV0dQVUNvbXBpbGF0
aW9uSW5mb1JlcXUKIHZvaWQgU2hhZGVyTW9kdWxlOjpzZXRMYWJlbChjb25zdCBjaGFyKiBsYWJl
bCkKIHsKICAgICBpZiAobV9saWJyYXJ5KQotICAgICAgICBtX2xpYnJhcnkubGFiZWwgPSBbTlNT
dHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6bGFiZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2Rp
bmddOworICAgICAgICBtX2xpYnJhcnkubGFiZWwgPSBsYWJlbCA/IFtOU1N0cmluZyBzdHJpbmdX
aXRoQ1N0cmluZzpsYWJlbCBlbmNvZGluZzpOU1VURjhTdHJpbmdFbmNvZGluZ10gOiBuaWw7CiB9
CiAKIFdHU0w6OlBpcGVsaW5lTGF5b3V0IFNoYWRlck1vZHVsZTo6Y29udmVydFBpcGVsaW5lTGF5
b3V0KGNvbnN0IFBpcGVsaW5lTGF5b3V0JiBwaXBlbGluZUxheW91dCkKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJHUFUvV2ViR1BVL1RleHR1cmUubW0gYi9Tb3VyY2UvV2ViR1BVL1dlYkdQVS9UZXh0
dXJlLm1tCmluZGV4IDI3ODNiN2JjN2VlOS4uZTU0MDgyOTc4MTA1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViR1BVL1dlYkdQVS9UZXh0dXJlLm1tCisrKyBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1Rl
eHR1cmUubW0KQEAgLTU2LDcgKzU2LDcgQEAgdm9pZCBUZXh0dXJlOjpkZXN0cm95KCkKIAogdm9p
ZCBUZXh0dXJlOjpzZXRMYWJlbChjb25zdCBjaGFyKiBsYWJlbCkKIHsKLSAgICBtX3RleHR1cmUu
bGFiZWwgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENTdHJpbmc6bGFiZWwgZW5jb2Rpbmc6TlNVVEY4
U3RyaW5nRW5jb2RpbmddOworICAgIG1fdGV4dHVyZS5sYWJlbCA9IGxhYmVsID8gW05TU3RyaW5n
IHN0cmluZ1dpdGhDU3RyaW5nOmxhYmVsIGVuY29kaW5nOk5TVVRGOFN0cmluZ0VuY29kaW5nXSA6
IG5pbDsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2ViR1BVCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
R1BVL1dlYkdQVS9UZXh0dXJlVmlldy5tbSBiL1NvdXJjZS9XZWJHUFUvV2ViR1BVL1RleHR1cmVW
aWV3Lm1tCmluZGV4IGQ2ZGNjYmQ1YThiMi4uYWY2YTBiZDAwOWZlIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViR1BVL1dlYkdQVS9UZXh0dXJlVmlldy5tbQorKysgYi9Tb3VyY2UvV2ViR1BVL1dlYkdQ
VS9UZXh0dXJlVmlldy5tbQpAQCAtMzcsNyArMzcsNyBAQCBUZXh0dXJlVmlldzo6flRleHR1cmVW
aWV3KCkgPSBkZWZhdWx0OwogCiB2b2lkIFRleHR1cmVWaWV3OjpzZXRMYWJlbChjb25zdCBjaGFy
KiBsYWJlbCkKIHsKLSAgICBtX3RleHR1cmUubGFiZWwgPSBbTlNTdHJpbmcgc3RyaW5nV2l0aENT
dHJpbmc6bGFiZWwgZW5jb2Rpbmc6TlNVVEY4U3RyaW5nRW5jb2RpbmddOworICAgIG1fdGV4dHVy
ZS5sYWJlbCA9IGxhYmVsID8gW05TU3RyaW5nIHN0cmluZ1dpdGhDU3RyaW5nOmxhYmVsIGVuY29k
aW5nOk5TVVRGOFN0cmluZ0VuY29kaW5nXSA6IG5pbDsKIH0KIAogfSAvLyBuYW1lc3BhY2UgV2Vi
R1BVCg==
</data>
<flag name="review"
          id="482381"
          type_id="1"
          status="+"
          setter="kkinnunen"
    />
          </attachment>
      

    </bug>

</bugzilla>