<?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>83805</bug_id>
          
          <creation_ts>2012-04-12 12:14:21 -0700</creation_ts>
          <short_desc>Nightly Back/Forward no longer calls plug-in&apos;s NPP_NewStream</short_desc>
          <delta_ts>2012-04-16 14:03:19 -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>Plug-ins</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Rudi Sherry">rsherry</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          <cc>andersca</cc>
    
    <cc>beidson</cc>
    
    <cc>eric.carlson</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>601426</commentid>
    <comment_count>0</comment_count>
      <attachid>136952</attachid>
    <who name="Rudi Sherry">rsherry</who>
    <bug_when>2012-04-12 12:14:21 -0700</bug_when>
    <thetext>Created attachment 136952
Plugin that calls CFShow for each NPP call

When a URL to a plugin (for instance, PDF) is shown, and the user goes Back/Forward, the nightly build no longer calls NPP_NewStream() with the resource for the URL.

Safari 5.1.5 does not have that.

To set up:
* Set up a webserver with the following (this is in etc/apache2/mime.types):
         application/vnd.pluginbug   pluginbug
* put any file with extension .pluginbug so the server can serve it (content doesn&apos;t matter)
* decompress and put the attached plug-in into /Library/Internet Plug-ins
* using the nightly build, surf to the URL for the .pluginbug file
* go Back, then Forward

... you will see that NPP_Destroy, NPP_New is called but no NPP_NewStream.  Using Safari, NPP_NewStream is called.

Sample logs below (the plugin calls CFShow so output goes to the console):

================================================================================================
Running Safari with the plugin, going to a pluginbug file:

4/12/12 12:00:54.022 PM [0x0-0x154154].com.apple.Safari: NPP_New
4/12/12 12:00:54.022 PM [0x0-0x154154].com.apple.Safari: NPP_SetWindow
4/12/12 12:00:54.022 PM [0x0-0x154154].com.apple.Safari: NPP_HandleEvent NPCocoaEventWindowFocusChanged ON 
4/12/12 12:00:54.022 PM [0x0-0x154154].com.apple.Safari: NPP_HandleEvent NPCocoaEventWindowFocusChanged ON 
4/12/12 12:00:54.033 PM [0x0-0x154154].com.apple.Safari: NPP_NewStream
4/12/12 12:00:54.034 PM [0x0-0x154154].com.apple.Safari: NPP_StreamAsFile
4/12/12 12:00:54.034 PM [0x0-0x154154].com.apple.Safari: NPP_DestroyStream
4/12/12 12:00:54.039 PM [0x0-0x154154].com.apple.Safari: NPP_HandleEvent NPCocoaEventDrawRect
4/12/12 12:00:54.277 PM [0x0-0x154154].com.apple.Safari: NPP_GetValue 15
4/12/12 12:00:54.914 PM [0x0-0x154154].com.apple.Safari: NPP_HandleEvent NPCocoaEventWindowFocusChanged 
4/12/12 12:00:54.915 PM [0x0-0x154154].com.apple.Safari: OFF
4/12/12 12:00:54.915 PM [0x0-0x154154].com.apple.Safari: NPP_HandleEvent NPCocoaEventWindowFocusChanged OFF

Back/Forward (notice NPP_StreamAsFile):

4/12/12 12:03:43.647 PM [0x0-0x154154].com.apple.Safari: NPP_Destroy
4/12/12 12:03:44.173 PM [0x0-0x154154].com.apple.Safari: NPP_New
4/12/12 12:03:44.174 PM [0x0-0x154154].com.apple.Safari: NPP_SetWindow
4/12/12 12:03:44.174 PM [0x0-0x154154].com.apple.Safari: NPP_HandleEvent NPCocoaEventWindowFocusChanged ON 
4/12/12 12:03:44.175 PM [0x0-0x154154].com.apple.Safari: NPP_HandleEvent NPCocoaEventWindowFocusChanged ON 
4/12/12 12:03:44.175 PM [0x0-0x154154].com.apple.Safari: NPP_NewStream
4/12/12 12:03:44.175 PM [0x0-0x154154].com.apple.Safari: NPP_StreamAsFile
4/12/12 12:03:44.176 PM [0x0-0x154154].com.apple.Safari: NPP_DestroyStream
4/12/12 12:03:44.179 PM [0x0-0x154154].com.apple.Safari: NPP_HandleEvent NPCocoaEventDrawRect
4/12/12 12:03:44.429 PM [0x0-0x154154].com.apple.Safari: NPP_GetValue 15
4/12/12 12:03:44.653 PM [0x0-0x154154].com.apple.Safari: NPP_HandleEvent NPCocoaEventFlagsChanged
4/12/12 12:03:45.830 PM [0x0-0x154154].com.apple.Safari: NPP_HandleEvent NPCocoaEventWindowFocusChanged OFF

================================================================================================
Running the 04/12/2012 nightly build:

4/12/12 12:02:43.490 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_HandleEvent NPCocoaEventWindowFocusChanged ON 
4/12/12 12:02:43.490 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_HandleEvent NPCocoaEventWindowFocusChanged ON 
4/12/12 12:02:43.749 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_HandleEvent NPCocoaEventDrawRect
4/12/12 12:02:44.796 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_Destroy
4/12/12 12:02:44.805 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_New
4/12/12 12:02:44.808 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_SetWindow
4/12/12 12:02:44.808 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_HandleEvent NPCocoaEventWindowFocusChanged ON 
4/12/12 12:02:44.808 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_HandleEvent NPCocoaEventWindowFocusChanged ON 
4/12/12 12:02:44.808 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_NewStream
4/12/12 12:02:44.808 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_StreamAsFile
4/12/12 12:02:44.808 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_DestroyStream
4/12/12 12:02:44.811 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_HandleEvent NPCocoaEventDrawRect
4/12/12 12:02:45.061 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_GetValue 15

Back/forward (Notice *NO* NPP_StreamAsFile)

4/12/12 12:02:49.009 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_Destroy
4/12/12 12:02:49.461 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_New
4/12/12 12:02:49.462 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_HandleEvent NPCocoaEventWindowFocusChanged ON 
4/12/12 12:02:49.462 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_HandleEvent NPCocoaEventWindowFocusChanged ON 
4/12/12 12:02:49.462 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_SetWindow
4/12/12 12:02:49.469 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_HandleEvent NPCocoaEventDrawRect
4/12/12 12:02:50.368 PM [0x0-0x15d15d].org.webkit.nightly.WebKit: NPP_GetValue 15
================================================================================================</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>601452</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2012-04-12 12:57:24 -0700</bug_when>
    <thetext>&lt;rdar://problem/11238748&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>603387</commentid>
    <comment_count>2</comment_count>
      <attachid>137392</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-04-16 13:34:17 -0700</bug_when>
    <thetext>Created attachment 137392
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>603392</commentid>
    <comment_count>3</comment_count>
      <attachid>137392</attachid>
    <who name="Simon Fraser (smfr)">simon.fraser</who>
    <bug_when>2012-04-16 13:39:35 -0700</bug_when>
    <thetext>Comment on attachment 137392
Patch

Is it possible to make a layout test for this?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>603396</commentid>
    <comment_count>4</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-04-16 13:44:59 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 137392 [details])
&gt; Is it possible to make a layout test for this?

I tried but I couldn&apos;t make one that reliably reproduced the bug...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>603416</commentid>
    <comment_count>5</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-04-16 14:03:19 -0700</bug_when>
    <thetext>Committed r114295: &lt;http://trac.webkit.org/changeset/114295&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>136952</attachid>
            <date>2012-04-12 12:14:21 -0700</date>
            <delta_ts>2012-04-12 12:14:21 -0700</delta_ts>
            <desc>Plugin that calls CFShow for each NPP call</desc>
            <filename>PluginBug.plugin.zip</filename>
            <type>application/octet-stream</type>
            <size>15347</size>
            <attacher name="Rudi Sherry">rsherry</attacher>
            
              <data encoding="base64">UEsDBAoAAAAAAMRejEAAAAAAAAAAAAAAAAARABAAUGx1Z2luQnVnLnBsdWdpbi9VWAwAFSmHT88k
h0/1AQ1eUEsDBAoAAAAAAB1MjEAAAAAAAAAAAAAAAAAaABAAUGx1Z2luQnVnLnBsdWdpbi9Db250
ZW50cy9VWAwAFSmHT7kDh0/1AQ1eUEsDBBQACAAIAB1MjEAAAAAAAAAAAAAAAAAkABAAUGx1Z2lu
QnVnLnBsdWdpbi9Db250ZW50cy9JbmZvLnBsaXN0VVgMABUph0+5A4dP9QENXpVU2W6jMBR9br7C
w3swjNJqOqKpmkBGqFlQobM8GnCIVbCRMVn+fuxAScIizTyx+Jxzz118redjloI95gVh9EkzdUMD
mEYsJjR50t6Dxfib9jwdWV/szTz44zkgT0khgPc+W7pzoI0hfMnzFENoBzbwlq4fAKkBobPWgLYT
Iv8O4eFw0JFC6RHLFLCAHmc55uK0lGJjSdBjEWsyTKV+Y0f+jUkkpqM76wOfprOSpPEKRTtC8cY/
f1lQHcjzQnBpe2qa9r0RWrD+rInzxaykcYptvMcpyzNMxRtOZJg23aGJdLEb4jtHHJUChSluE720
TAidlckQ1Y1lULIlmLepsjA6ilmIdYELkZ+F9OoxKEa3zJaFkRkgfvpZlayt+6AbQ/w1yv4/Aw9F
HyjBwSnvcGdv3nKI5u8YF7VF/4zo9GzYqE8SikTJOxFXG98fIg3UoyeMHcxZlpO025Qu0kuR2DKe
9Y7dxDYfH4c5A45+rLoU337tH2zj9X7SE0Li+7qZoYgVR9PQH7qU3/KKdwjG5GtPec7Qf8/4Fw6r
MbJxEXGSi56kAznkYO29eC5QQz7uTnmjsnJXjhq3otGot0GFU3uFREgFgXsa13cmLJsBu+Bbws5R
YKo60ihLBOIcVa+N1yvFxqI8hRfora4y25P63W3yFRYsiFojF10Lfu46eL30GvG+Nl8VU4HG7lUx
P2UseN6s09FfUEsHCGe7F7EVAgAA8AUAAFBLAwQKAAAAAADEXoxAAAAAAAAAAAAAAAAAIAAQAFBs
dWdpbkJ1Zy5wbHVnaW4vQ29udGVudHMvTWFjT1MvVVgMAOckh0/PJIdP9QENXlBLAwQUAAgACADE
XoxAAAAAAAAAAAAAAAAAKQAQAFBsdWdpbkJ1Zy5wbHVnaW4vQ29udGVudHMvTWFjT1MvUGx1Z2lu
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
7ySTBH7KRXrSvymTLOTT/wVQSwcILkRDyd4xAABw9AAAUEsDBAoAAAAAAK9LjEAAAAAAAAAAAAAA
AAAkABAAUGx1Z2luQnVnLnBsdWdpbi9Db250ZW50cy9SZXNvdXJjZXMvVVgMABUph0/pAodP9QEN
XlBLAwQKAAAAAACvS4xAAAAAAAAAAAAAAAAAMgAQAFBsdWdpbkJ1Zy5wbHVnaW4vQ29udGVudHMv
UmVzb3VyY2VzL0VuZ2xpc2gubHByb2ovVVgMABUph0/pAodP9QENXlBLAwQUAAgACACvS4xAAAAA
AAAAAAAAAAAAQwAQAFBsdWdpbkJ1Zy5wbHVnaW4vQ29udGVudHMvUmVzb3VyY2VzL0VuZ2xpc2gu
bHByb2ovSW5mb1BsaXN0LnN0cmluZ3NVWAwAFSmHT+kCh0/1AQ1ePY47CsJAFEVP7SoktYXYiViY
gGgjYlYwmhAF8yExhUtyk+pJEBnmvXlzz70zn3fClpieiow7OQcCpX3K2h1x9Lan4CYRj6eIFRO5
lJ1zKV9x0hFMCJzHlISahietvoIrj3/ey7qRrCWHV1KpTj03qXPem3ZRbfUPNYxaxkxtwdy1/P3g
C1BLBwgApbZ9hQAAALwAAABQSwMEFAAIAAgAr0uMQAAAAAAAAAAAAAAAAEAAEABQbHVnaW5CdWcu
cGx1Z2luL0NvbnRlbnRzL1Jlc291cmNlcy9FbmdsaXNoLmxwcm9qL0xvY2FsaXplZC5yc3JjVVgM
AOckh0/pAodP9QENXmNgYGRgYGCsAxIg7MUw8oAzA5NucGZuQU6qgl9qSXFyYkGqQkFOabpuZp5C
Wn6RQklqcUlmXrpCZl5JalFaYnKqUAhQRMEvwDHAUyEApNAzD2gMOwMjC0gCyNRgYJJKLCjIyUxO
LMnMz9Mvy0vRA5kIMqG4hAvBZMAS+pwgQgbEDg4JUmZgYuBiqPv/H+7aejDbHcxuALODQEwAUEsH
CBTGkHGbAAAAyAEAAFBLAQIVAwoAAAAAAMRejEAAAAAAAAAAAAAAAAARAAwAAAAAAAAAAED/QQAA
AABQbHVnaW5CdWcucGx1Z2luL1VYCAAVKYdPzySHT1BLAQIVAwoAAAAAAB1MjEAAAAAAAAAAAAAA
AAAaAAwAAAAAAAAAAED/QT8AAABQbHVnaW5CdWcucGx1Z2luL0NvbnRlbnRzL1VYCAAVKYdPuQOH
T1BLAQIVAxQACAAIAB1MjEBnuxexFQIAAPAFAAAkAAwAAAAAAAAAAEC2gYcAAABQbHVnaW5CdWcu
cGx1Z2luL0NvbnRlbnRzL0luZm8ucGxpc3RVWAgAFSmHT7kDh09QSwECFQMKAAAAAADEXoxAAAAA
AAAAAAAAAAAAIAAMAAAAAAAAAABA/0H+AgAAUGx1Z2luQnVnLnBsdWdpbi9Db250ZW50cy9NYWNP
Uy9VWAgA5ySHT88kh09QSwECFQMUAAgACADEXoxALkRDyd4xAABw9AAAKQAMAAAAAAAAAABA7YFM
AwAAUGx1Z2luQnVnLnBsdWdpbi9Db250ZW50cy9NYWNPUy9QbHVnaW5CdWdVWAgAFSmHT88kh09Q
SwECFQMKAAAAAACvS4xAAAAAAAAAAAAAAAAAJAAMAAAAAAAAAABA/0GRNQAAUGx1Z2luQnVnLnBs
dWdpbi9Db250ZW50cy9SZXNvdXJjZXMvVVgIABUph0/pAodPUEsBAhUDCgAAAAAAr0uMQAAAAAAA
AAAAAAAAADIADAAAAAAAAAAAQP9B4zUAAFBsdWdpbkJ1Zy5wbHVnaW4vQ29udGVudHMvUmVzb3Vy
Y2VzL0VuZ2xpc2gubHByb2ovVVgIABUph0/pAodPUEsBAhUDFAAIAAgAr0uMQACltn2FAAAAvAAA
AEMADAAAAAAAAAAAQLaBQzYAAFBsdWdpbkJ1Zy5wbHVnaW4vQ29udGVudHMvUmVzb3VyY2VzL0Vu
Z2xpc2gubHByb2ovSW5mb1BsaXN0LnN0cmluZ3NVWAgAFSmHT+kCh09QSwECFQMUAAgACACvS4xA
FMaQcZsAAADIAQAAQAAMAAAAAAAAAABAtoFJNwAAUGx1Z2luQnVnLnBsdWdpbi9Db250ZW50cy9S
ZXNvdXJjZXMvRW5nbGlzaC5scHJvai9Mb2NhbGl6ZWQucnNyY1VYCADnJIdP6QKHT1BLBQYAAAAA
CQAJAHsDAABiOAAAAAA=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>137392</attachid>
            <date>2012-04-16 13:34:17 -0700</date>
            <delta_ts>2012-04-16 13:45:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-83805-20120416133556.patch</filename>
            <type>text/plain</type>
            <size>11512</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE0Mjg2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggMTcyZWM5ZmM5NjUxMmFj
NzgxNzU3NmY4NmY0M2VhOTExOWY4YmJjMS4uOTFhYzU0ODRjMTRlZTlkYzZjOWUxM2NmNjBkZDUw
Y2NhNjYzMjg4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDUyIEBACisyMDEyLTA0LTE2ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgTmlnaHRseSBCYWNr
L0ZvcndhcmQgbm8gbG9uZ2VyIGNhbGxzIHBsdWctaW4ncyBOUFBfTmV3U3RyZWFtCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04MzgwNQorICAgICAgICA8
cmRhcjovL3Byb2JsZW0vMTEyMzg3NDg+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgV2hlbiBhIHBhZ2Ugd2l0aCBhIGZ1bGwtZnJhbWUgcGx1Zy1pbiBp
cyByZXN0b3JlZCBmcm9tIHRoZSBwYWdlIGNhY2hlLCBpdCBuZWVkcyB0byByZS1mZXRjaCB0aGUg
cGx1Zy1pbiBzdHJlYW0uCisKKyAgICAgICAgRml4IHRoaXMgYnkgYnJlYWtpbmcgdGhlIGFzc3Vt
cHRpb24gdGhhdCBhIHBsdWctaW4gd2lsbCBhbHdheXMgZ2V0IGl0cyBkYXRhIGZyb20gV2ViQ29y
ZSBpZiBpdCdzIGEgZnVsbC1mcmFtZSBwbHVnLWluOworICAgICAgICBpbnN0ZWFkIGl0IG9ubHkg
Z2V0IGl0cyBkYXRhIGZyb20gV2ViQ29yZSBpZiBpdCdzIGEgZnVsbC1mcmFtZSBwbHVnLWluIHRo
YXQncyBub3QgYmVpbmcgcmVzdG9yZWQgZnJvbSB0aGUgcGFnZSBjYWNoZS4KKyAgICAgICAgCisg
ICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL05ldHNjYXBlL05ldHNjYXBlUGx1Z2luLmNwcDoK
KyAgICAgICAgKFdlYktpdDo6TmV0c2NhcGVQbHVnaW46Ok5ldHNjYXBlUGx1Z2luKToKKyAgICAg
ICAgUmVuYW1lIG1fbG9hZE1hbnVhbGx5IHRvIG1fc2hvdWxkVXNlTWFudWFsTG9hZGVyLgorCisg
ICAgICAgIChXZWJLaXQ6Ok5ldHNjYXBlUGx1Z2luOjppbml0aWFsaXplKToKKyAgICAgICAgR2V0
IHRoZSBtb2RlIGZyb20gcGFyYW1ldGVycy5pc0Z1bGxGcmFtZVBsdWdpbiBpbnN0ZWFkLgorCisg
ICAgICAgIChXZWJLaXQ6Ok5ldHNjYXBlUGx1Z2luOjptYW51YWxTdHJlYW1EaWRSZWNlaXZlUmVz
cG9uc2UpOgorICAgICAgICAoV2ViS2l0OjpOZXRzY2FwZVBsdWdpbjo6bWFudWFsU3RyZWFtRGlk
UmVjZWl2ZURhdGEpOgorICAgICAgICAoV2ViS2l0OjpOZXRzY2FwZVBsdWdpbjo6bWFudWFsU3Ry
ZWFtRGlkRmluaXNoTG9hZGluZyk6CisgICAgICAgIChXZWJLaXQ6Ok5ldHNjYXBlUGx1Z2luOjpt
YW51YWxTdHJlYW1EaWRGYWlsKToKKyAgICAgICAgUmVuYW1lIG1fbG9hZE1hbnVhbGx5IHRvIG1f
c2hvdWxkVXNlTWFudWFsTG9hZGVyLgorCisgICAgICAgICogV2ViUHJvY2Vzcy9QbHVnaW5zL05l
dHNjYXBlL05ldHNjYXBlUGx1Z2luLmg6CisgICAgICAgIFJlbmFtZSBtX2xvYWRNYW51YWxseSB0
byBtX3Nob3VsZFVzZU1hbnVhbExvYWRlci4KKworICAgICAgICAqIFdlYlByb2Nlc3MvUGx1Z2lu
cy9QbHVnaW4uY3BwOgorICAgICAgICAoV2ViS2l0OjpQbHVnaW46OlBhcmFtZXRlcnM6OmVuY29k
ZSk6CisgICAgICAgIChXZWJLaXQ6OlBsdWdpbjo6UGFyYW1ldGVyczo6ZGVjb2RlKToKKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1BsdWdpbnMvUGx1Z2luLmg6CisgICAgICAgIChQYXJhbWV0ZXJzKToK
KyAgICAgICAgQWRkIGFuIGV4dHJhIGlzRnVsbEZyYW1lUGx1Z2luIHBhcmFtZXRlciwgYW5kIHJl
bmFtZSBsb2FkTWFudWFsbHkgdG8gc2hvdWxkVXNlTWFudWFsTG9hZGVyLgorCisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHA6CisgICAg
ICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50OjpXZWJGcmFtZUxvYWRlckNsaWVudCk6
CisgICAgICAgIEluaXRpYWxpemUgbV9mcmFtZUNhbWVGcm9tUGFnZUNhY2hlLgorCisgICAgICAg
IChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50Ojp0cmFuc2l0aW9uVG9Db21taXR0ZWRGcm9t
Q2FjaGVkRnJhbWUpOgorICAgICAgICBTZXQgbV9mcmFtZUNhbWVGcm9tUGFnZUNhY2hlIHRvIHRy
dWUuCisKKyAgICAgICAgKFdlYktpdDo6V2ViRnJhbWVMb2FkZXJDbGllbnQ6OnRyYW5zaXRpb25U
b0NvbW1pdHRlZEZvck5ld1BhZ2UpOgorICAgICAgICBTZXQgbV9mcmFtZUNhbWVGcm9tUGFnZUNh
Y2hlIHRvIGZhbHNlLgorCisgICAgICAgIChXZWJLaXQ6OldlYkZyYW1lTG9hZGVyQ2xpZW50Ojpj
cmVhdGVQbHVnaW4pOgorICAgICAgICBJbml0aWFsaXplIGlzRnVsbEZyYW1lUGx1Z2luIGFuZCBz
aG91bGRVc2VNYW51YWxMb2FkZXIuCisKIDIwMTItMDQtMTYgIEFsZXhleSBQcm9za3VyeWFrb3Yg
IDxhcEBhcHBsZS5jb20+CiAKICAgICAgICAgRW5kUHJpbnRpbmcgbWVzc2FnZSBzaG91bGQgYmUg
c2VudCBzeW5jaHJvbm91c2x5IHdoZW4gcHJpbnRpbmcgd2FzIGluaXRpYXRlZCBmcm9tIERPTS4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9O
ZXRzY2FwZVBsdWdpbi5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0
c2NhcGUvTmV0c2NhcGVQbHVnaW4uY3BwCmluZGV4IGU2MmQ1MzlkYmJmOTJlNzIyZGZmNGYwOTZk
YTJhOWQ4NzVhZmJkZDEuLmRiNmQ4ZDg2ZTNmYWYxNDJiOTRmMTlhZjU5NmUwYTMzNjI3ZTU1MTgg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9O
ZXRzY2FwZVBsdWdpbi5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5z
L05ldHNjYXBlL05ldHNjYXBlUGx1Z2luLmNwcApAQCAtNjgsNyArNjgsNyBAQCBOZXRzY2FwZVBs
dWdpbjo6TmV0c2NhcGVQbHVnaW4oUGFzc1JlZlB0cjxOZXRzY2FwZVBsdWdpbk1vZHVsZT4gcGx1
Z2luTW9kdWxlKQogI2VuZGlmCiAgICAgLCBtX2lzVHJhbnNwYXJlbnQoZmFsc2UpCiAgICAgLCBt
X2luTlBQTmV3KGZhbHNlKQotICAgICwgbV9sb2FkTWFudWFsbHkoZmFsc2UpCisgICAgLCBtX3No
b3VsZFVzZU1hbnVhbExvYWRlcihmYWxzZSkKICAgICAsIG1fbmV4dFRpbWVySUQoMCkKICNpZiBQ
TEFURk9STShNQUMpCiAgICAgLCBtX2RyYXdpbmdNb2RlbChzdGF0aWNfY2FzdDxOUERyYXdpbmdN
b2RlbD4oLTEpKQpAQCAtNTQzLDkgKzU0Myw5IEBAIGJvb2wgTmV0c2NhcGVQbHVnaW46OmFsbG93
UG9wdXBzKCkgY29uc3QKIAogYm9vbCBOZXRzY2FwZVBsdWdpbjo6aW5pdGlhbGl6ZShjb25zdCBQ
YXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogewotICAgIHVpbnQxNl90IG1vZGUgPSBwYXJhbWV0ZXJz
LmxvYWRNYW51YWxseSA/IE5QX0ZVTEwgOiBOUF9FTUJFRDsKKyAgICB1aW50MTZfdCBtb2RlID0g
cGFyYW1ldGVycy5pc0Z1bGxGcmFtZVBsdWdpbiA/IE5QX0ZVTEwgOiBOUF9FTUJFRDsKICAgICAK
LSAgICBtX2xvYWRNYW51YWxseSA9IHBhcmFtZXRlcnMubG9hZE1hbnVhbGx5OworICAgIG1fc2hv
dWxkVXNlTWFudWFsTG9hZGVyID0gcGFyYW1ldGVycy5zaG91bGRVc2VNYW51YWxMb2FkZXI7CiAK
ICAgICBDU3RyaW5nIG1pbWVUeXBlQ1N0cmluZyA9IHBhcmFtZXRlcnMubWltZVR5cGUudXRmOCgp
OwogCkBAIC02MTEsNyArNjExLDcgQEAgYm9vbCBOZXRzY2FwZVBsdWdpbjo6aW5pdGlhbGl6ZShj
b25zdCBQYXJhbWV0ZXJzJiBwYXJhbWV0ZXJzKQogICAgIH0KIAogICAgIC8vIExvYWQgdGhlIHNy
YyBVUkwgaWYgbmVlZGVkLgotICAgIGlmICghcGFyYW1ldGVycy5sb2FkTWFudWFsbHkgJiYgIXBh
cmFtZXRlcnMudXJsLmlzRW1wdHkoKSAmJiBzaG91bGRMb2FkU3JjVVJMKCkpCisgICAgaWYgKCFw
YXJhbWV0ZXJzLnNob3VsZFVzZU1hbnVhbExvYWRlciAmJiAhcGFyYW1ldGVycy51cmwuaXNFbXB0
eSgpICYmIHNob3VsZExvYWRTcmNVUkwoKSkKICAgICAgICAgbG9hZFVSTCgiR0VUIiwgcGFyYW1l
dGVycy51cmwuc3RyaW5nKCksIFN0cmluZygpLCBIVFRQSGVhZGVyTWFwKCksIFZlY3Rvcjx1aW50
OF90PigpLCBmYWxzZSwgMCk7CiAgICAgCiAgICAgcmV0dXJuIHRydWU7CkBAIC03ODcsNyArNzg3
LDcgQEAgdm9pZCBOZXRzY2FwZVBsdWdpbjo6bWFudWFsU3RyZWFtRGlkUmVjZWl2ZVJlc3BvbnNl
KGNvbnN0IEtVUkwmIHJlc3BvbnNlVVJMLCB1aW4KICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBTdHJpbmcmIG1pbWVUeXBlLCBjb25zdCBT
dHJpbmcmIGhlYWRlcnMsIGNvbnN0IFN0cmluZyYgLyogc3VnZ2VzdGVkRmlsZU5hbWUgKi8pCiB7
CiAgICAgQVNTRVJUKG1faXNTdGFydGVkKTsKLSAgICBBU1NFUlQobV9sb2FkTWFudWFsbHkpOwor
ICAgIEFTU0VSVChtX3Nob3VsZFVzZU1hbnVhbExvYWRlcik7CiAgICAgQVNTRVJUKCFtX21hbnVh
bFN0cmVhbSk7CiAgICAgCiAgICAgbV9tYW51YWxTdHJlYW0gPSBOZXRzY2FwZVBsdWdpblN0cmVh
bTo6Y3JlYXRlKHRoaXMsIDAsIHJlc3BvbnNlVVJMLnN0cmluZygpLCBmYWxzZSwgMCk7CkBAIC03
OTcsNyArNzk3LDcgQEAgdm9pZCBOZXRzY2FwZVBsdWdpbjo6bWFudWFsU3RyZWFtRGlkUmVjZWl2
ZVJlc3BvbnNlKGNvbnN0IEtVUkwmIHJlc3BvbnNlVVJMLCB1aW4KIHZvaWQgTmV0c2NhcGVQbHVn
aW46Om1hbnVhbFN0cmVhbURpZFJlY2VpdmVEYXRhKGNvbnN0IGNoYXIqIGJ5dGVzLCBpbnQgbGVu
Z3RoKQogewogICAgIEFTU0VSVChtX2lzU3RhcnRlZCk7Ci0gICAgQVNTRVJUKG1fbG9hZE1hbnVh
bGx5KTsKKyAgICBBU1NFUlQobV9zaG91bGRVc2VNYW51YWxMb2FkZXIpOwogICAgIEFTU0VSVCht
X21hbnVhbFN0cmVhbSk7CiAKICAgICBtX21hbnVhbFN0cmVhbS0+ZGlkUmVjZWl2ZURhdGEoYnl0
ZXMsIGxlbmd0aCk7CkBAIC04MDYsNyArODA2LDcgQEAgdm9pZCBOZXRzY2FwZVBsdWdpbjo6bWFu
dWFsU3RyZWFtRGlkUmVjZWl2ZURhdGEoY29uc3QgY2hhciogYnl0ZXMsIGludCBsZW5ndGgpCiB2
b2lkIE5ldHNjYXBlUGx1Z2luOjptYW51YWxTdHJlYW1EaWRGaW5pc2hMb2FkaW5nKCkKIHsKICAg
ICBBU1NFUlQobV9pc1N0YXJ0ZWQpOwotICAgIEFTU0VSVChtX2xvYWRNYW51YWxseSk7CisgICAg
QVNTRVJUKG1fc2hvdWxkVXNlTWFudWFsTG9hZGVyKTsKICAgICBBU1NFUlQobV9tYW51YWxTdHJl
YW0pOwogCiAgICAgbV9tYW51YWxTdHJlYW0tPmRpZEZpbmlzaExvYWRpbmcoKTsKQEAgLTgxNSw3
ICs4MTUsNyBAQCB2b2lkIE5ldHNjYXBlUGx1Z2luOjptYW51YWxTdHJlYW1EaWRGaW5pc2hMb2Fk
aW5nKCkKIHZvaWQgTmV0c2NhcGVQbHVnaW46Om1hbnVhbFN0cmVhbURpZEZhaWwoYm9vbCB3YXND
YW5jZWxsZWQpCiB7CiAgICAgQVNTRVJUKG1faXNTdGFydGVkKTsKLSAgICBBU1NFUlQobV9sb2Fk
TWFudWFsbHkpOworICAgIEFTU0VSVChtX3Nob3VsZFVzZU1hbnVhbExvYWRlcik7CiAKICAgICBp
ZiAoIW1fbWFudWFsU3RyZWFtKQogICAgICAgICByZXR1cm47CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1BsdWdpbnMvTmV0c2NhcGUvTmV0c2NhcGVQbHVnaW4uaCBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9OZXRzY2FwZVBsdWdpbi5o
CmluZGV4IGQ0Y2E5MDEzN2ExMGQ1ODkyMTkyMTYzNDQ5NjE5OGQwZTExODljYzguLjU2OWZmZDc2
NTYzNWYyZGUzZWI0ZDVmNjEyOTdlMjg0MjdmZWU2MDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9OZXRzY2FwZVBsdWdpbi5oCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9OZXRzY2FwZS9OZXRzY2FwZVBsdWdpbi5o
CkBAIC0yNjMsNyArMjYzLDcgQEAgcHJpdmF0ZToKICAgICBib29sIG1faXNXaW5kb3dlZDsKICAg
ICBib29sIG1faXNUcmFuc3BhcmVudDsKICAgICBib29sIG1faW5OUFBOZXc7Ci0gICAgYm9vbCBt
X2xvYWRNYW51YWxseTsKKyAgICBib29sIG1fc2hvdWxkVXNlTWFudWFsTG9hZGVyOwogICAgIFJl
ZlB0cjxOZXRzY2FwZVBsdWdpblN0cmVhbT4gbV9tYW51YWxTdHJlYW07CiAgICAgVmVjdG9yPGJv
b2wsIDg+IG1fcG9wdXBFbmFibGVkU3RhdGVzOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1BsdWdpbnMvUERGL0J1aWx0SW5QREZWaWV3LmNwcCBiL1NvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QREYvQnVpbHRJblBERlZpZXcuY3BwCmluZGV4IDU3OTQ2
OTk3NjY0ZDZiNTk2OWQxYzZkYzg2NjQxYWE4OWNiOWU3ZTQuLjk1MDI2ZWU4NmQxZTIzZThiYWQ2
MGVkNWQ3MmE2MmE1ZGI0YjEwMTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvUGx1Z2lucy9QREYvQnVpbHRJblBERlZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvUGx1Z2lucy9QREYvQnVpbHRJblBERlZpZXcuY3BwCkBAIC0zMzEsNyArMzMxLDcg
QEAgYm9vbCBCdWlsdEluUERGVmlldzo6aW5pdGlhbGl6ZShjb25zdCBQYXJhbWV0ZXJzJiBwYXJh
bWV0ZXJzKQogewogICAgIC8vIExvYWQgdGhlIHNyYyBVUkwgaWYgbmVlZGVkLgogICAgIG1fc291
cmNlVVJMID0gcGFyYW1ldGVycy51cmw7Ci0gICAgaWYgKCFwYXJhbWV0ZXJzLmxvYWRNYW51YWxs
eSAmJiAhcGFyYW1ldGVycy51cmwuaXNFbXB0eSgpKQorICAgIGlmICghcGFyYW1ldGVycy5zaG91
bGRVc2VNYW51YWxMb2FkZXIgJiYgIXBhcmFtZXRlcnMudXJsLmlzRW1wdHkoKSkKICAgICAgICAg
Y29udHJvbGxlcigpLT5sb2FkVVJMKHBkZkRvY3VtZW50UmVxdWVzdElELCAiR0VUIiwgcGFyYW1l
dGVycy51cmwuc3RyaW5nKCksIFN0cmluZygpLCBIVFRQSGVhZGVyTWFwKCksIFZlY3Rvcjx1aW50
OF90PigpLCBmYWxzZSk7CiAKICAgICByZXR1cm4gdHJ1ZTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvUGx1Z2lucy9QbHVnaW4uY3BwIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9QbHVnaW5zL1BsdWdpbi5jcHAKaW5kZXggODhlODI4ZDk4ODBiOWYzYmQzYTJhMDVl
NGZhOTg1NzViYTk1MGI0Mi4uYmM4ODRiOTYyYTFlYzM4NDY4ZTk2OTkwMGQxN2ExZGMyZDVlZjQ1
MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpbi5j
cHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpbi5jcHAKQEAg
LTM4LDcgKzM4LDggQEAgdm9pZCBQbHVnaW46OlBhcmFtZXRlcnM6OmVuY29kZShDb3JlSVBDOjpB
cmd1bWVudEVuY29kZXIqIGVuY29kZXIpIGNvbnN0CiAgICAgZW5jb2Rlci0+ZW5jb2RlKG5hbWVz
KTsKICAgICBlbmNvZGVyLT5lbmNvZGUodmFsdWVzKTsKICAgICBlbmNvZGVyLT5lbmNvZGUobWlt
ZVR5cGUpOwotICAgIGVuY29kZXItPmVuY29kZShsb2FkTWFudWFsbHkpOworICAgIGVuY29kZXIt
PmVuY29kZShpc0Z1bGxGcmFtZVBsdWdpbik7CisgICAgZW5jb2Rlci0+ZW5jb2RlKHNob3VsZFVz
ZU1hbnVhbExvYWRlcik7CiAjaWYgUExBVEZPUk0oTUFDKQogICAgIGVuY29kZXItPmVuY29kZUVu
dW0obGF5ZXJIb3N0aW5nTW9kZSk7CiAjZW5kaWYKQEAgLTU4LDcgKzU5LDkgQEAgYm9vbCBQbHVn
aW46OlBhcmFtZXRlcnM6OmRlY29kZShDb3JlSVBDOjpBcmd1bWVudERlY29kZXIqIGRlY29kZXIs
IFBhcmFtZXRlcnMmIHAKICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgIGlmICghZGVjb2Rlci0+
ZGVjb2RlKHBhcmFtZXRlcnMubWltZVR5cGUpKQogICAgICAgICByZXR1cm4gZmFsc2U7Ci0gICAg
aWYgKCFkZWNvZGVyLT5kZWNvZGUocGFyYW1ldGVycy5sb2FkTWFudWFsbHkpKQorICAgIGlmICgh
ZGVjb2Rlci0+ZGVjb2RlKHBhcmFtZXRlcnMuaXNGdWxsRnJhbWVQbHVnaW4pKQorICAgICAgICBy
ZXR1cm4gZmFsc2U7CisgICAgaWYgKCFkZWNvZGVyLT5kZWNvZGUocGFyYW1ldGVycy5zaG91bGRV
c2VNYW51YWxMb2FkZXIpKQogICAgICAgICByZXR1cm4gZmFsc2U7CiAjaWYgUExBVEZPUk0oTUFD
KQogICAgIGlmICghZGVjb2Rlci0+ZGVjb2RlRW51bShwYXJhbWV0ZXJzLmxheWVySG9zdGluZ01v
ZGUpKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdp
bi5oIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9QbHVnaW5zL1BsdWdpbi5oCmluZGV4IDQw
NTI1OGE2MDhiYTc5ZjM2OTUxMWRiMzdlNjRkNzUxMzIyMmU1ODIuLmIxNjIzOWIzYTJiOWQxNjYz
NWU0ZTNhNzFhMTM3ODZiYjM4ZmRiOTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvUGx1Z2lucy9QbHVnaW4uaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1Bs
dWdpbnMvUGx1Z2luLmgKQEAgLTY4LDcgKzY4LDggQEAgcHVibGljOgogICAgICAgICBWZWN0b3I8
U3RyaW5nPiBuYW1lczsKICAgICAgICAgVmVjdG9yPFN0cmluZz4gdmFsdWVzOwogICAgICAgICBT
dHJpbmcgbWltZVR5cGU7Ci0gICAgICAgIGJvb2wgbG9hZE1hbnVhbGx5OworICAgICAgICBib29s
IGlzRnVsbEZyYW1lUGx1Z2luOworICAgICAgICBib29sIHNob3VsZFVzZU1hbnVhbExvYWRlcjsK
ICNpZiBQTEFURk9STShNQUMpCiAgICAgICAgIExheWVySG9zdGluZ01vZGUgbGF5ZXJIb3N0aW5n
TW9kZTsKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAppbmRleCA5ZTdj
NmJlOTk0ZThlYjEwMzk2MTYwOGYxNGUxNmQyNjIyYjEzMDIxLi5kYzk2MTYzMjU2ODc1MWU1NGY3
MTQ1YmIxM2ZmMjU4M2QzMWNhMjU3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNwcAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmNw
cApAQCAtNzgsNiArNzgsNyBAQCBXZWJGcmFtZUxvYWRlckNsaWVudDo6V2ViRnJhbWVMb2FkZXJD
bGllbnQoV2ViRnJhbWUqIGZyYW1lKQogICAgIDogbV9mcmFtZShmcmFtZSkKICAgICAsIG1faGFz
U2VudFJlc3BvbnNlVG9QbHVnaW5WaWV3KGZhbHNlKQogICAgICwgbV9mcmFtZUhhc0N1c3RvbVJl
cHJlc2VudGF0aW9uKGZhbHNlKQorICAgICwgbV9mcmFtZUNhbWVGcm9tUGFnZUNhY2hlKGZhbHNl
KQogewogfQogCkBAIC0xMTY1LDYgKzExNjYsNyBAQCB2b2lkIFdlYkZyYW1lTG9hZGVyQ2xpZW50
Ojp0cmFuc2l0aW9uVG9Db21taXR0ZWRGcm9tQ2FjaGVkRnJhbWUoQ2FjaGVkRnJhbWUqKQogICAg
IAogICAgIGNvbnN0IFJlc291cmNlUmVzcG9uc2UmIHJlc3BvbnNlID0gbV9mcmFtZS0+Y29yZUZy
YW1lKCktPmxvYWRlcigpLT5kb2N1bWVudExvYWRlcigpLT5yZXNwb25zZSgpOwogICAgIG1fZnJh
bWVIYXNDdXN0b21SZXByZXNlbnRhdGlvbiA9IGlzTWFpbkZyYW1lICYmIFdlYlByb2Nlc3M6OnNo
YXJlZCgpLnNob3VsZFVzZUN1c3RvbVJlcHJlc2VudGF0aW9uRm9yUmVzcG9uc2UocmVzcG9uc2Up
OworICAgIG1fZnJhbWVDYW1lRnJvbVBhZ2VDYWNoZSA9IHRydWU7CiB9CiAKIHZvaWQgV2ViRnJh
bWVMb2FkZXJDbGllbnQ6OnRyYW5zaXRpb25Ub0NvbW1pdHRlZEZvck5ld1BhZ2UoKQpAQCAtMTE3
Nyw2ICsxMTc5LDcgQEAgdm9pZCBXZWJGcmFtZUxvYWRlckNsaWVudDo6dHJhbnNpdGlvblRvQ29t
bWl0dGVkRm9yTmV3UGFnZSgpCiAKICAgICBjb25zdCBSZXNvdXJjZVJlc3BvbnNlJiByZXNwb25z
ZSA9IG1fZnJhbWUtPmNvcmVGcmFtZSgpLT5sb2FkZXIoKS0+ZG9jdW1lbnRMb2FkZXIoKS0+cmVz
cG9uc2UoKTsKICAgICBtX2ZyYW1lSGFzQ3VzdG9tUmVwcmVzZW50YXRpb24gPSBpc01haW5GcmFt
ZSAmJiBXZWJQcm9jZXNzOjpzaGFyZWQoKS5zaG91bGRVc2VDdXN0b21SZXByZXNlbnRhdGlvbkZv
clJlc3BvbnNlKHJlc3BvbnNlKTsKKyAgICBtX2ZyYW1lQ2FtZUZyb21QYWdlQ2FjaGUgPSBmYWxz
ZTsKIAogICAgIG1fZnJhbWUtPmNvcmVGcmFtZSgpLT5jcmVhdGVWaWV3KHdlYlBhZ2UtPnNpemUo
KSwgYmFja2dyb3VuZENvbG9yLCAvKiB0cmFuc3BhcmVudCAqLyBmYWxzZSwgSW50U2l6ZSgpLCBz
aG91bGRVc2VGaXhlZExheW91dCk7CiAgICAgbV9mcmFtZS0+Y29yZUZyYW1lKCktPnZpZXcoKS0+
c2V0VHJhbnNwYXJlbnQoIXdlYlBhZ2UtPmRyYXdzQmFja2dyb3VuZCgpKTsKQEAgLTEyNjcsNyAr
MTI3MCw4IEBAIFBhc3NSZWZQdHI8V2lkZ2V0PiBXZWJGcmFtZUxvYWRlckNsaWVudDo6Y3JlYXRl
UGx1Z2luKGNvbnN0IEludFNpemUmLCBIVE1MUGx1Z0luCiAgICAgcGFyYW1ldGVycy5uYW1lcyA9
IHBhcmFtTmFtZXM7CiAgICAgcGFyYW1ldGVycy52YWx1ZXMgPSBwYXJhbVZhbHVlczsKICAgICBw
YXJhbWV0ZXJzLm1pbWVUeXBlID0gbWltZVR5cGU7Ci0gICAgcGFyYW1ldGVycy5sb2FkTWFudWFs
bHkgPSBsb2FkTWFudWFsbHk7CisgICAgcGFyYW1ldGVycy5pc0Z1bGxGcmFtZVBsdWdpbiA9IGxv
YWRNYW51YWxseTsKKyAgICBwYXJhbWV0ZXJzLnNob3VsZFVzZU1hbnVhbExvYWRlciA9IHBhcmFt
ZXRlcnMuaXNGdWxsRnJhbWVQbHVnaW4gJiYgIW1fZnJhbWVDYW1lRnJvbVBhZ2VDYWNoZTsKICNp
ZiBQTEFURk9STShNQUMpCiAgICAgcGFyYW1ldGVycy5sYXllckhvc3RpbmdNb2RlID0gd2ViUGFn
ZS0+bGF5ZXJIb3N0aW5nTW9kZSgpOwogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50LmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkZyYW1lTG9hZGVyQ2xpZW50
LmgKaW5kZXggM2M3ZDViZjE2NTY3YTk2OTJkYjBiM2YwZDA0NDJkYjIzNDhhNGM2OC4uYjJlMWYx
NGNmMjA4ZjdkZTc2MzVjMTA3MzIyNzM5ODQxZmE2MDhlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJGcmFtZUxvYWRlckNsaWVudC5oCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViRnJhbWVMb2Fk
ZXJDbGllbnQuaApAQCAtMjIxLDYgKzIyMSw3IEBAIHByaXZhdGU6CiAgICAgUmVmUHRyPFBsdWdp
blZpZXc+IG1fcGx1Z2luVmlldzsKICAgICBib29sIG1faGFzU2VudFJlc3BvbnNlVG9QbHVnaW5W
aWV3OwogICAgIGJvb2wgbV9mcmFtZUhhc0N1c3RvbVJlcHJlc2VudGF0aW9uOworICAgIGJvb2wg
bV9mcmFtZUNhbWVGcm9tUGFnZUNhY2hlOwogfTsKIAogfSAvLyBuYW1lc3BhY2UgV2ViS2l0Cg==
</data>
<flag name="review"
          id="142421"
          type_id="1"
          status="+"
          setter="simon.fraser"
    />
          </attachment>
      

    </bug>

</bugzilla>