<?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>15984</bug_id>
          
          <creation_ts>2007-11-14 04:40:43 -0800</creation_ts>
          <short_desc>Implement &quot;navigation-requested&quot; signal for WebKit Gtk</short_desc>
          <delta_ts>2007-11-22 17:56:08 -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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</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>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Enhancement</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Michael Natterer">mitch</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>alp</cc>
    
    <cc>cosimoc</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>61197</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Natterer">mitch</who>
    <bug_when>2007-11-14 04:40:43 -0800</bug_when>
    <thetext>The GTK+ frontend lacks the implementation of the &quot;navigation-requested&quot;
signal. Patch follows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61198</commentid>
    <comment_count>1</comment_count>
      <attachid>17267</attachid>
    <who name="Michael Natterer">mitch</who>
    <bug_when>2007-11-14 06:12:07 -0800</bug_when>
    <thetext>Created attachment 17267
Patch implementing the above

- implement WebKitNetworkRequest
- made WebKitPage::navigation-requested a signal
- fix enum name:
  s/WEBKIT_NAVIGATION_REQUEST_RESPONSE/WebkitNavigationRequestResponse/
- emit it when navigation is requested
- in GtkLauncher, connect to WebKitPage::navigation-requested</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61810</commentid>
    <comment_count>2</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-20 11:28:23 -0800</bug_when>
    <thetext>Hey,

Don&apos;t forget to mark patches for review otherwise they won&apos;t get looked at promptly.

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61848</commentid>
    <comment_count>3</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-20 14:34:31 -0800</bug_when>
    <thetext>At first glance I noticed the capitalisation of WebkitNavigationRequestResponse is wrong. Some gtkdoc would be nice too, but that can be added after this lands I guess.

Will look at it more closely soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61852</commentid>
    <comment_count>4</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-20 15:05:43 -0800</bug_when>
    <thetext>I Have a feeling this set of policy decisions should be made through WebKitFrame, not WebKitPage. That&apos;s how the Win port does it. WebKitPage is just the view widget the way I see things.

Did you follow the example of the Qt port here rather than Win? I wonder what the merits of the two approaches are -- we need to choose one and stick to it.

I think the request class will be mostly a wrapper around ResourceRequest, though just carrying around a URL string is OK for an initial implementation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61924</commentid>
    <comment_count>5</comment_count>
      <attachid>17432</attachid>
    <who name="Michael Natterer">mitch</who>
    <bug_when>2007-11-21 08:55:48 -0800</bug_when>
    <thetext>Created attachment 17432
updated patch

Fixes the enum name and moves typedefs to right file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61926</commentid>
    <comment_count>6</comment_count>
      <attachid>17432</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-21 09:27:03 -0800</bug_when>
    <thetext>Comment on attachment 17432
updated patch

&gt;diff --git a/WebKit/gtk/Api/webkitgtkpage.h b/WebKit/gtk/Api/webkitgtkpage.h
&gt;index 23215b4..920ca7c 100644
&gt;--- a/WebKit/gtk/Api/webkitgtkpage.h
&gt;+++ b/WebKit/gtk/Api/webkitgtkpage.h
&gt;@@ -48,7 +48,7 @@ typedef enum {
&gt;     WEBKIT_ACCEPT_NAVIGATION_REQUEST,
&gt;     WEBKIT_IGNORE_NAVIGATION_REQUEST,
&gt;     WEBKIT_DOWNLOAD_NAVIGATION_REQUEST
&gt;-} WEBKIT_NAVIGATION_REQUEST_RESPONSE;
&gt;+} WebKitNavigationRequestResponse;

typedef enum {
     WEBKIT_NAVIGATION_RESPONSE_ACCEPT,
     WEBKIT_NAVIGATION_RESPONSE_IGNORE,
     WEBKIT_NAVIGATION_RESPONSE_DOWNLOAD
} WebKitNavigationResponse;

My suggestion looks more conventional. &quot;RequestResponse&quot; sounds redundant, and I wasn&apos;t too sure about naming of the enum members. What do you think of this change?

Looks good otherwise.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61931</commentid>
    <comment_count>7</comment_count>
    <who name="Michael Natterer">mitch</who>
    <bug_when>2007-11-21 10:41:32 -0800</bug_when>
    <thetext>I completely agree with this change, I just kept the names as they were before :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61933</commentid>
    <comment_count>8</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-21 10:54:45 -0800</bug_when>
    <thetext>No API stability yet. Now&apos;s the time to make this API as elegant and succinct as possible before it starts to freeze. Waiting for your changes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61958</commentid>
    <comment_count>9</comment_count>
      <attachid>17432</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-21 18:41:24 -0800</bug_when>
    <thetext>Comment on attachment 17432
updated patch

Please update the enum name and order of the element names as we discussed.

I tried to apply this patch and it does not compile. Can you test against a non-git checkout to make sure the next revision applies cleanly and builds?

Also, could you use the closest available ChangeLog file rather than the root ChangeLog?

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>61990</commentid>
    <comment_count>10</comment_count>
      <attachid>17442</attachid>
    <who name="Michael Natterer">mitch</who>
    <bug_when>2007-11-22 08:50:16 -0800</bug_when>
    <thetext>Created attachment 17442
Updated patch

This one has the enum values sanitized, uses the right ChangeLogs
and is against latest upstream.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>62035</commentid>
    <comment_count>11</comment_count>
      <attachid>17442</attachid>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-22 17:50:20 -0800</bug_when>
    <thetext>Comment on attachment 17442
Updated patch

Thanks Mitch!

I&apos;m landing this (with a couple of whitespace fixes).

It&apos;ll become apparent whether this API is good for the long term as we start to add support for more delegates and get more applications trying to use them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>62036</commentid>
    <comment_count>12</comment_count>
    <who name="Alp Toker">alp</who>
    <bug_when>2007-11-22 17:56:08 -0800</bug_when>
    <thetext>All of the patch except the GtkLauncher change landed in r27976.

GtkLauncher shouldn&apos;t be so chatty on the console, but it&apos;d still be nice to provide example code for this feature.

Mitch: Looks like a _DOWNLOAD response may not be handled by your code. Would it be correct to use a switch here and take that case into account as well? If so, please submit a follow up patch.

We also need to start looking at how we can provide more context for policy decisions now.

Thanks!</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17267</attachid>
            <date>2007-11-14 06:12:07 -0800</date>
            <delta_ts>2007-11-21 08:55:48 -0800</delta_ts>
            <desc>Patch implementing the above</desc>
            <filename>navigation-requested.patch</filename>
            <type>text/plain</type>
            <size>9880</size>
            <attacher name="Michael Natterer">mitch</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAwODliMGRjLi4wODRkMTA5
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQgQEAK
KzIwMDctMTEtMTQgIE1pY2hhZWwgTmF0dGVyZXIgIDxtaXRjaEBpbWVuZGlvLmNvbT4KKworICAg
ICAgICAqIFdlYktpdC9ndGsvQXBpL3dlYmtpdGd0a25ldHdvcmtyZXF1ZXN0Lmg6IGZpeCBwYXJl
bnQgY2xhc3MgbWVtYmVyLgorCisgICAgICAgICogV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrbmV0
d29ya3JlcXVlc3QuY3BwCisgICAgICAgICogV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrcHJpdmF0
ZS5oOiBiYXNpYyBpbXBsZW1lbnRhdGlvbiBmZWF0dXJpbmcKKyAgICAgICAgYW4gInVybCIgbWVt
YmVyIGFuZCBBUEkuCisKKyAgICAgICAgKiBXZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtwYWdlLmg6
IGZpeCBlbnVtIG5hbWU6CisgICAgICAgIHMvV0VCS0lUX05BVklHQVRJT05fUkVRVUVTVF9SRVNQ
T05TRS9XZWJraXROYXZpZ2F0aW9uUmVxdWVzdFJlc3BvbnNlLworCisgICAgICAgICogV2ViS2l0
L2d0ay9BcGkvd2Via2l0Z3RrcGFnZS5jcHA6IG1hZGUgIm5hdmlnYXRpb24tcmVxdWVzdGVkIiBh
IAorICAgICAgICBzaWduYWwuCisKKyAgICAgICAgKiBXZWJLaXQvZ3RrL0FwaS93ZWJraXRndGst
bWFyc2hhbC5saXN0OiBhZGRlZCBJTlQ6T0JKRUNULE9CSkVDVAorCisgICAgICAgICogV2ViS2l0
L2d0ay9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudEd0ay5jcHA6IGVtaXQgdGhlCisg
ICAgICAgIG5ldyBzaWduYWwgaW4gZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0
aW9uKCkuCisKKyAgICAgICAgKiBXZWJLaXRUb29scy9HdGtMYXVuY2hlci9tYWluLmNwcDogY29u
bmVjdCB0byB0aGUgc2lnbmFsLgorCiAyMDA3LTEwLTAzICBMYXJzIEtub2xsICA8bGFyc0B0cm9s
bHRlY2guY29tPgogCiAgICAgICAgIFNpZ25lZCBvZmYgYnkgb2xsaWVqLgpkaWZmIC0tZ2l0IGEv
V2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrLW1hcnNoYWwubGlzdCBiL1dlYktpdC9ndGsvQXBpL3dl
YmtpdGd0ay1tYXJzaGFsLmxpc3QKaW5kZXggNDBkMWU4Ny4uOTkxNzJhMyAxMDA2NDQKLS0tIGEv
V2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrLW1hcnNoYWwubGlzdAorKysgYi9XZWJLaXQvZ3RrL0Fw
aS93ZWJraXRndGstbWFyc2hhbC5saXN0CkBAIC0xLDMgKzEsNCBAQAogVk9JRDpTVFJJTkcsU1RS
SU5HCiBWT0lEOk9CSkVDVCxCT09MRUFOCiBWT0lEOk9CSkVDVCxPQkpFQ1QKK0lOVDpPQkpFQ1Qs
T0JKRUNUCmRpZmYgLS1naXQgYS9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtuZXR3b3JrcmVxdWVz
dC5jcHAgYi9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtuZXR3b3JrcmVxdWVzdC5jcHAKaW5kZXgg
YjMxNzFmNS4uNjliODgyMiAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrbmV0
d29ya3JlcXVlc3QuY3BwCisrKyBiL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a25ldHdvcmtyZXF1
ZXN0LmNwcApAQCAtMjYsNCArMjYsNjkgQEAKICAqIFRISVMgU09GVFdBUkUsIEVWRU4gSUYgQURW
SVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8KIAorI2luY2x1ZGUg
ImNvbmZpZy5oIgorCiAjaW5jbHVkZSAid2Via2l0Z3RrbmV0d29ya3JlcXVlc3QuaCIKKyNpbmNs
dWRlICJ3ZWJraXRndGtwcml2YXRlLmgiCisKK3VzaW5nIG5hbWVzcGFjZSBXZWJLaXQ7Cit1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKKworZXh0ZXJuICJDIiB7CisKK0dfREVGSU5FX1RZUEUoV2Vi
S2l0TmV0d29ya1JlcXVlc3QsIHdlYmtpdF9uZXR3b3JrX3JlcXVlc3QsIEdfVFlQRV9PQkpFQ1Qp
OworCitzdGF0aWMgdm9pZCB3ZWJraXRfbmV0d29ya19yZXF1ZXN0X2ZpbmFsaXplKEdPYmplY3Qq
IG9iamVjdCkKK3sKKyAgICBXZWJLaXROZXR3b3JrUmVxdWVzdFByaXZhdGUqIHJlcXVlc3RQcml2
YXRlID0gV0VCS0lUX05FVFdPUktfUkVRVUVTVF9HRVRfUFJJVkFURShvYmplY3QpOworCisgICAg
Z19mcmVlKHJlcXVlc3RQcml2YXRlLT51cmwpOworCisgICAgR19PQkpFQ1RfQ0xBU1Mod2Via2l0
X25ldHdvcmtfcmVxdWVzdF9wYXJlbnRfY2xhc3MpLT5maW5hbGl6ZShvYmplY3QpOworfQorCitz
dGF0aWMgdm9pZCB3ZWJraXRfbmV0d29ya19yZXF1ZXN0X2NsYXNzX2luaXQoV2ViS2l0TmV0d29y
a1JlcXVlc3RDbGFzcyogcmVxdWVzdENsYXNzKQoreworICAgIGdfdHlwZV9jbGFzc19hZGRfcHJp
dmF0ZShyZXF1ZXN0Q2xhc3MsIHNpemVvZihXZWJLaXROZXR3b3JrUmVxdWVzdFByaXZhdGUpKTsK
KworICAgIEdfT0JKRUNUX0NMQVNTKHJlcXVlc3RDbGFzcyktPmZpbmFsaXplID0gd2Via2l0X25l
dHdvcmtfcmVxdWVzdF9maW5hbGl6ZTsKK30KKworc3RhdGljIHZvaWQgd2Via2l0X25ldHdvcmtf
cmVxdWVzdF9pbml0KFdlYktpdE5ldHdvcmtSZXF1ZXN0KiByZXF1ZXN0KQoreworfQorCitXZWJL
aXROZXR3b3JrUmVxdWVzdCogd2Via2l0X25ldHdvcmtfcmVxdWVzdF9uZXcoY29uc3QgZ2NoYXIq
IHVybCkKK3sKKyAgICBXZWJLaXROZXR3b3JrUmVxdWVzdCogcmVxdWVzdCA9IFdFQktJVF9ORVRX
T1JLX1JFUVVFU1QoZ19vYmplY3RfbmV3KFdFQktJVF9UWVBFX05FVFdPUktfUkVRVUVTVCwgTlVM
TCkpOworICAgIFdlYktpdE5ldHdvcmtSZXF1ZXN0UHJpdmF0ZSogcmVxdWVzdFByaXZhdGUgPSBX
RUJLSVRfTkVUV09SS19SRVFVRVNUX0dFVF9QUklWQVRFKHJlcXVlc3QpOworCisgICAgcmVxdWVz
dFByaXZhdGUtPnVybCA9IGdfc3RyZHVwKHVybCk7CisKKyAgICByZXR1cm4gcmVxdWVzdDsKK30K
Kwordm9pZCB3ZWJraXRfbmV0d29ya19yZXF1ZXN0X3NldF91cmwoV2ViS2l0TmV0d29ya1JlcXVl
c3QqIHJlcXVlc3QsIGNvbnN0IGdjaGFyKiB1cmwpCit7CisgICAgV2ViS2l0TmV0d29ya1JlcXVl
c3RQcml2YXRlKiByZXF1ZXN0UHJpdmF0ZTsKKworICAgIGdfcmV0dXJuX2lmX2ZhaWwoV0VCS0lU
X0lTX05FVFdPUktfUkVRVUVTVChyZXF1ZXN0KSk7CisKKyAgICByZXF1ZXN0UHJpdmF0ZSA9IFdF
QktJVF9ORVRXT1JLX1JFUVVFU1RfR0VUX1BSSVZBVEUocmVxdWVzdCk7CisKKyAgICBnX2ZyZWUo
cmVxdWVzdFByaXZhdGUtPnVybCk7CisgICAgcmVxdWVzdFByaXZhdGUtPnVybCA9IGdfc3RyZHVw
KHVybCk7Cit9CisKK2NvbnN0IGdjaGFyKiB3ZWJraXRfbmV0d29ya19yZXF1ZXN0X2dldF91cmwo
V2ViS2l0TmV0d29ya1JlcXVlc3QqIHJlcXVlc3QpCit7CisgICAgV2ViS2l0TmV0d29ya1JlcXVl
c3RQcml2YXRlKiByZXF1ZXN0UHJpdmF0ZTsKKworICAgIGdfcmV0dXJuX3ZhbF9pZl9mYWlsKFdF
QktJVF9JU19ORVRXT1JLX1JFUVVFU1QocmVxdWVzdCksIE5VTEwpOworCisgICAgcmVxdWVzdFBy
aXZhdGUgPSBXRUJLSVRfTkVUV09SS19SRVFVRVNUX0dFVF9QUklWQVRFKHJlcXVlc3QpOworCisg
ICAgcmV0dXJuIHJlcXVlc3RQcml2YXRlLT51cmw7Cit9CisKK30KZGlmZiAtLWdpdCBhL1dlYktp
dC9ndGsvQXBpL3dlYmtpdGd0a25ldHdvcmtyZXF1ZXN0LmggYi9XZWJLaXQvZ3RrL0FwaS93ZWJr
aXRndGtuZXR3b3JrcmVxdWVzdC5oCmluZGV4IGM5MWU5NjkuLjYwZGUzYTcgMTAwNjQ0Ci0tLSBh
L1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a25ldHdvcmtyZXF1ZXN0LmgKKysrIGIvV2ViS2l0L2d0
ay9BcGkvd2Via2l0Z3RrbmV0d29ya3JlcXVlc3QuaApAQCAtNTEsMTQgKzUxLDIwIEBAIHN0cnVj
dCBfV2ViS2l0TmV0d29ya1JlcXVlc3QgewogfTsKIAogc3RydWN0IF9XZWJLaXROZXR3b3JrUmVx
dWVzdENsYXNzIHsKLSAgICBHT2JqZWN0IHBhcmVudDsKKyAgICBHT2JqZWN0Q2xhc3MgcGFyZW50
OwogfTsKIAogV0VCS0lUX0FQSSBHVHlwZQogd2Via2l0X25ldHdvcmtfcmVxdWVzdF9nZXRfdHlw
ZSAodm9pZCk7CiAKLVdFQktJVF9BUEkgR09iamVjdCoKLXdlYmtpdF9uZXR3b3JrX3JlcXVlc3Rf
bmV3ICh2b2lkKTsKK1dFQktJVF9BUEkgV2ViS2l0TmV0d29ya1JlcXVlc3QqCit3ZWJraXRfbmV0
d29ya19yZXF1ZXN0X25ldyAoY29uc3QgZ2NoYXIqIHVybCk7CisKK1dFQktJVF9BUEkgdm9pZAor
d2Via2l0X25ldHdvcmtfcmVxdWVzdF9zZXRfdXJsKFdlYktpdE5ldHdvcmtSZXF1ZXN0KiByZXF1
ZXN0LCBjb25zdCBnY2hhciogdXJsKTsKKworV0VCS0lUX0FQSSBjb25zdCBnY2hhcioKK3dlYmtp
dF9uZXR3b3JrX3JlcXVlc3RfZ2V0X3VybChXZWJLaXROZXR3b3JrUmVxdWVzdCogcmVxdWVzdCk7
CiAKIEdfRU5EX0RFQ0xTCiAKZGlmZiAtLWdpdCBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3Bh
Z2UuY3BwIGIvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrcGFnZS5jcHAKaW5kZXggYzkyZWY3Ny4u
M2VjNTFkZiAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrcGFnZS5jcHAKKysr
IGIvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrcGFnZS5jcHAKQEAgLTY0LDYgKzY0LDcgQEAgZW51
bSB7CiAgICAgU1RBVFVTX0JBUl9URVhUX0NIQU5HRUQsCiAgICAgSUNPTkRfTE9BREVELAogICAg
IFNFTEVDVElPTl9DSEFOR0VELAorICAgIE5BVklHQVRJT05fUkVRVUVTVEVELAogICAgIExBU1Rf
U0lHTkFMCiB9OwogCkBAIC0yMjUsNyArMjI2LDcgQEAgc3RhdGljIFdlYktpdFBhZ2UqIHdlYmtp
dF9wYWdlX3JlYWxfY3JlYXRlX3BhZ2UoV2ViS2l0UGFnZSopCiAgICAgcmV0dXJuIDA7CiB9CiAK
LXN0YXRpYyBXRUJLSVRfTkFWSUdBVElPTl9SRVFVRVNUX1JFU1BPTlNFIHdlYmtpdF9wYWdlX3Jl
YWxfbmF2aWdhdGlvbl9yZXF1ZXN0ZWQoV2ViS2l0UGFnZSosIFdlYktpdEZyYW1lKiBmcmFtZSwg
V2ViS2l0TmV0d29ya1JlcXVlc3QqKQorc3RhdGljIFdlYmtpdE5hdmlnYXRpb25SZXF1ZXN0UmVz
cG9uc2Ugd2Via2l0X3BhZ2VfcmVhbF9uYXZpZ2F0aW9uX3JlcXVlc3RlZChXZWJLaXRQYWdlKiwg
V2ViS2l0RnJhbWUqIGZyYW1lLCBXZWJLaXROZXR3b3JrUmVxdWVzdCopCiB7CiAgICAgbm90SW1w
bGVtZW50ZWQoKTsKICAgICByZXR1cm4gV0VCS0lUX0FDQ0VQVF9OQVZJR0FUSU9OX1JFUVVFU1Q7
CkBAIC0zNzYsNiArMzc3LDE3IEBAIHN0YXRpYyB2b2lkIHdlYmtpdF9wYWdlX2NsYXNzX2luaXQo
V2ViS2l0UGFnZUNsYXNzKiBwYWdlQ2xhc3MpCiAgICAgICAgICAgICBnX2NjbG9zdXJlX21hcnNo
YWxfVk9JRF9fVk9JRCwKICAgICAgICAgICAgIEdfVFlQRV9OT05FLCAwKTsKIAorICAgIHdlYmtp
dF9wYWdlX3NpZ25hbHNbTkFWSUdBVElPTl9SRVFVRVNURURdID0gZ19zaWduYWxfbmV3KCJuYXZp
Z2F0aW9uX3JlcXVlc3RlZCIsCisgICAgICAgICAgICBHX1RZUEVfRlJPTV9DTEFTUyhwYWdlQ2xh
c3MpLAorICAgICAgICAgICAgKEdTaWduYWxGbGFncykoR19TSUdOQUxfUlVOX0xBU1QgfCBHX1NJ
R05BTF9BQ1RJT04pLAorICAgICAgICAgICAgR19TVFJVQ1RfT0ZGU0VUIChXZWJLaXRQYWdlQ2xh
c3MsIG5hdmlnYXRpb25fcmVxdWVzdGVkKSwKKyAgICAgICAgICAgIE5VTEwsCisgICAgICAgICAg
ICBOVUxMLAorICAgICAgICAgICAgd2Via2l0X21hcnNoYWxfSU5UX19PQkpFQ1RfT0JKRUNULAor
ICAgICAgICAgICAgR19UWVBFX0lOVCwgMiwKKyAgICAgICAgICAgIEdfVFlQRV9PQkpFQ1QsCisg
ICAgICAgICAgICBHX1RZUEVfT0JKRUNUKTsKKwogCiAgICAgLyoKICAgICAgKiBpbXBsZW1lbnRh
dGlvbnMgb2YgdmlydHVhbCBtZXRob2RzCmRpZmYgLS1naXQgYS9XZWJLaXQvZ3RrL0FwaS93ZWJr
aXRndGtwYWdlLmggYi9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtwYWdlLmgKaW5kZXggMjMyMTVi
NC4uMzJlZDM5MyAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrcGFnZS5oCisr
KyBiL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3BhZ2UuaApAQCAtNDgsNyArNDgsNyBAQCB0eXBl
ZGVmIGVudW0gewogICAgIFdFQktJVF9BQ0NFUFRfTkFWSUdBVElPTl9SRVFVRVNULAogICAgIFdF
QktJVF9JR05PUkVfTkFWSUdBVElPTl9SRVFVRVNULAogICAgIFdFQktJVF9ET1dOTE9BRF9OQVZJ
R0FUSU9OX1JFUVVFU1QKLX0gV0VCS0lUX05BVklHQVRJT05fUkVRVUVTVF9SRVNQT05TRTsKK30g
V2Via2l0TmF2aWdhdGlvblJlcXVlc3RSZXNwb25zZTsKIAogCiAKQEAgLTcwLDcgKzcwLDcgQEAg
c3RydWN0IF9XZWJLaXRQYWdlQ2xhc3MgewogICAgIC8qCiAgICAgICogVE9ETzogRklYTUU6IENy
ZWF0ZSBzb21ldGhpbmcgbGlrZSBXZWJQb2xpY3lEZWNpc2lvbkxpc3RlbmVyX1Byb3RvY29sIGlu
c3RlYWQKICAgICAgKi8KLSAgICBXRUJLSVRfTkFWSUdBVElPTl9SRVFVRVNUX1JFU1BPTlNFICgq
bmF2aWdhdGlvbl9yZXF1ZXN0ZWQpIChXZWJLaXRQYWdlKiBwYWdlLCBXZWJLaXRGcmFtZSogZnJh
bWUsIFdlYktpdE5ldHdvcmtSZXF1ZXN0KiByZXF1ZXN0KTsKKyAgICBXZWJraXROYXZpZ2F0aW9u
UmVxdWVzdFJlc3BvbnNlICgqbmF2aWdhdGlvbl9yZXF1ZXN0ZWQpIChXZWJLaXRQYWdlKiBwYWdl
LCBXZWJLaXRGcmFtZSogZnJhbWUsIFdlYktpdE5ldHdvcmtSZXF1ZXN0KiByZXF1ZXN0KTsKIAog
ICAgIC8qCiAgICAgICogVE9ETzogRElTQ1VTUzogU2hvdWxkIHRoZXNlIGJlIHNpZ25hbHMgYXMg
d2VsbD8KZGlmZiAtLWdpdCBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3ByaXZhdGUuaCBiL1dl
YktpdC9ndGsvQXBpL3dlYmtpdGd0a3ByaXZhdGUuaAppbmRleCAxMGY2N2I3Li45ZjE2N2E0IDEw
MDY0NAotLS0gYS9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtwcml2YXRlLmgKKysrIGIvV2ViS2l0
L2d0ay9BcGkvd2Via2l0Z3RrcHJpdmF0ZS5oCkBAIC04Myw2ICs4MywxMiBAQCBleHRlcm4gIkMi
IHsKICAgICAgICAgZ2NoYXIqIGxvY2F0aW9uOwogICAgIH07CiAKKyAgICAjZGVmaW5lIFdFQktJ
VF9ORVRXT1JLX1JFUVVFU1RfR0VUX1BSSVZBVEUob2JqKSAgICAoR19UWVBFX0lOU1RBTkNFX0dF
VF9QUklWQVRFKChvYmopLCBXRUJLSVRfVFlQRV9ORVRXT1JLX1JFUVVFU1QsIFdlYktpdE5ldHdv
cmtSZXF1ZXN0UHJpdmF0ZSkpCisgICAgdHlwZWRlZiBzdHJ1Y3QgX1dlYktpdE5ldHdvcmtSZXF1
ZXN0UHJpdmF0ZSBXZWJLaXROZXR3b3JrUmVxdWVzdFByaXZhdGU7CisgICAgc3RydWN0IF9XZWJL
aXROZXR3b3JrUmVxdWVzdFByaXZhdGUgeworICAgICAgICBnY2hhciogdXJsOworICAgIH07CisK
IAogICAgIEdPYmplY3QqIHdlYmtpdF9mcmFtZV9pbml0X3dpdGhfcGFnZShXZWJLaXRQYWdlKiwg
V2ViQ29yZTo6SFRNTEZyYW1lT3duZXJFbGVtZW50Kik7CiB9CmRpZmYgLS1naXQgYS9XZWJLaXQv
Z3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50R3RrLmNwcCBiL1dlYktpdC9ndGsv
V2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRHdGsuY3BwCmluZGV4IGM5MzBjZWUuLjQz
YjhjMDggMTAwNjQ0Ci0tLSBhL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJD
bGllbnRHdGsuY3BwCisrKyBiL1dlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJD
bGllbnRHdGsuY3BwCkBAIC0xNjIsMTEgKzE2MiwyNSBAQCB2b2lkIEZyYW1lTG9hZGVyQ2xpZW50
OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5ld1dpbmRvd0FjdGlvbihGcmFtZVBvbGljeUZ1bmN0
aQogICAgIChjb3JlKG1fZnJhbWUpLT5sb2FkZXIoKS0+KnBvbGljeUZ1bmN0aW9uKShQb2xpY3lJ
Z25vcmUpOwogfQogCi12b2lkIEZyYW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGlj
eUZvck5hdmlnYXRpb25BY3Rpb24oRnJhbWVQb2xpY3lGdW5jdGlvbiBwb2xpY3lGdW5jdGlvbiwg
Y29uc3QgTmF2aWdhdGlvbkFjdGlvbiYsIGNvbnN0IFJlc291cmNlUmVxdWVzdCYpCit2b2lkIEZy
YW1lTG9hZGVyQ2xpZW50OjpkaXNwYXRjaERlY2lkZVBvbGljeUZvck5hdmlnYXRpb25BY3Rpb24o
RnJhbWVQb2xpY3lGdW5jdGlvbiBwb2xpY3lGdW5jdGlvbiwgY29uc3QgTmF2aWdhdGlvbkFjdGlv
biYgYWN0aW9uLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmIHJlc291cmNlUmVxdWVzdCkKIHsKICAg
ICBBU1NFUlQocG9saWN5RnVuY3Rpb24pOwogICAgIGlmICghcG9saWN5RnVuY3Rpb24pCiAgICAg
ICAgIHJldHVybjsKKworICAgIFdlYktpdFBhZ2UqIHBhZ2UgPSBnZXRQYWdlRnJvbUZyYW1lKG1f
ZnJhbWUpOworICAgIFdlYktpdE5ldHdvcmtSZXF1ZXN0KiByZXF1ZXN0ID0gd2Via2l0X25ldHdv
cmtfcmVxdWVzdF9uZXcocmVzb3VyY2VSZXF1ZXN0LnVybCgpLnVybCgpLnV0ZjgoKS5kYXRhKCkp
OworICAgIFdlYmtpdE5hdmlnYXRpb25SZXF1ZXN0UmVzcG9uc2UgcmVzcG9uc2U7CisKKyAgICBn
X3NpZ25hbF9lbWl0X2J5X25hbWUgKHBhZ2UsICJuYXZpZ2F0aW9uX3JlcXVlc3RlZCIsIG1fZnJh
bWUsIHJlcXVlc3QsICZyZXNwb25zZSk7CisKKyAgICBnX29iamVjdF91bnJlZihyZXF1ZXN0KTsK
KworICAgIGlmIChyZXNwb25zZSA9PSBXRUJLSVRfSUdOT1JFX05BVklHQVRJT05fUkVRVUVTVCkg
eworICAgICAgICAoY29yZShtX2ZyYW1lKS0+bG9hZGVyKCktPipwb2xpY3lGdW5jdGlvbikoUG9s
aWN5SWdub3JlKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKwogICAgIChjb3JlKG1fZnJhbWUp
LT5sb2FkZXIoKS0+KnBvbGljeUZ1bmN0aW9uKShQb2xpY3lVc2UpOwogfQogCmRpZmYgLS1naXQg
YS9XZWJLaXRUb29scy9HdGtMYXVuY2hlci9tYWluLmNwcCBiL1dlYktpdFRvb2xzL0d0a0xhdW5j
aGVyL21haW4uY3BwCmluZGV4IGYwZDA3MmUuLmMxMGNhMWIgMTAwNjQ0Ci0tLSBhL1dlYktpdFRv
b2xzL0d0a0xhdW5jaGVyL21haW4uY3BwCisrKyBiL1dlYktpdFRvb2xzL0d0a0xhdW5jaGVyL21h
aW4uY3BwCkBAIC0xLDQgKzEsNSBAQAogI2luY2x1ZGUgIndlYmtpdGd0a3BhZ2UuaCIKKyNpbmNs
dWRlICJ3ZWJraXRndGtuZXR3b3JrcmVxdWVzdC5oIgogI2luY2x1ZGUgIndlYmtpdGd0a2dsb2Jh
bC5oIgogCiAjaW5jbHVkZSA8Z3RrL2d0ay5oPgpAQCAtNzgsNiArNzksMTIgQEAgc3RhdGljIHZv
aWQgcHJvZ3Jlc3NDaGFuZ2VkKFdlYktpdFBhZ2UqLCBnaW50IHByb2dyZXNzLCBXZWJLaXRQYWdl
KikKICAgICB1cGRhdGVXaW5kb3dUaXRsZSgpOwogfQogCitzdGF0aWMgV2Via2l0TmF2aWdhdGlv
blJlcXVlc3RSZXNwb25zZSBuYXZpZ2F0aW9uUmVxdWVzdGVkKFdlYktpdFBhZ2UqLCBXZWJLaXRG
cmFtZSosIFdlYktpdE5ldHdvcmtSZXF1ZXN0KiByZXF1ZXN0KQoreworICAgIGdfcHJpbnQoIm5h
dmlnYXRpb25SZXF1ZXN0ZWQ6ICVzXG4iLCB3ZWJraXRfbmV0d29ya19yZXF1ZXN0X2dldF91cmwo
cmVxdWVzdCkpOworICAgIHJldHVybiBXRUJLSVRfQUNDRVBUX05BVklHQVRJT05fUkVRVUVTVDsK
K30KKwogc3RhdGljIHZvaWQgZnJhbWVEZXN0cm95Q2FsbGJhY2soR3RrV2lkZ2V0KiwgZ3BvaW50
ZXIpCiB7CiAgICAgZ3RrX21haW5fcXVpdCgpOwpAQCAtMTY4LDYgKzE3NSw3IEBAIHN0YXRpYyB2
b2lkIHNldHVwTWFpbldpbmRvd1VJKCkKICAgICBnX3NpZ25hbF9jb25uZWN0KGdQYWdlLCAidGl0
bGUtY2hhbmdlZCIsIEdfQ0FMTEJBQ0sodGl0bGVDaGFuZ2VkKSwgZ1BhZ2UpOwogICAgIGdfc2ln
bmFsX2Nvbm5lY3QoZ1BhZ2UsICJsb2FkLXByb2dyZXNzLWNoYW5nZWQiLCBHX0NBTExCQUNLKHBy
b2dyZXNzQ2hhbmdlZCksIGdQYWdlKTsKICAgICBnX3NpZ25hbF9jb25uZWN0KGdQYWdlLCAiaG92
ZXJpbmctb3Zlci1saW5rIiwgR19DQUxMQkFDSyhob3ZlcmluZ092ZXJMaW5rKSwgZ1BhZ2UpOwor
ICAgIGdfc2lnbmFsX2Nvbm5lY3QoZ1BhZ2UsICJuYXZpZ2F0aW9uLXJlcXVlc3RlZCIsIEdfQ0FM
TEJBQ0sobmF2aWdhdGlvblJlcXVlc3RlZCksIGdQYWdlKTsKIH0KIAogaW50IG1haW4oaW50IGFy
Z2MsIGNoYXIqIGFyZ3ZbXSkgCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17432</attachid>
            <date>2007-11-21 08:55:48 -0800</date>
            <delta_ts>2007-11-22 08:50:16 -0800</delta_ts>
            <desc>updated patch</desc>
            <filename>navigation-requested.patch-2</filename>
            <type>text/plain</type>
            <size>10856</size>
            <attacher name="Michael Natterer">mitch</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCAwODliMGRjLi44ZmI5NDQ0
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYgQEAK
KzIwMDctMTEtMjEgIE1pY2hhZWwgTmF0dGVyZXIgIDxtaXRjaEBpbWVuZGlvLmNvbT4KKworICAg
ICAgICAqIFdlYktpdC9ndGsvQXBpL3dlYmtpdGd0a25ldHdvcmtyZXF1ZXN0Lmg6IGZpeCBwYXJl
bnQgY2xhc3MgbWVtYmVyLgorCisgICAgICAgICogV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrbmV0
d29ya3JlcXVlc3QuY3BwCisgICAgICAgICogV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrcHJpdmF0
ZS5oOiBiYXNpYyBpbXBsZW1lbnRhdGlvbiBmZWF0dXJpbmcKKyAgICAgICAgYW4gInVybCIgbWVt
YmVyIGFuZCBBUEkuCisKKwkqIFdlYktpdC9ndGsvQXBpL3dlYmtpdGd0a2RlZmluZXMuaDogYWRk
ZWQgbmV0d29yayByZXF1ZXN0IHR5cGVkZWZzLgorCisgICAgICAgICogV2ViS2l0L2d0ay9BcGkv
d2Via2l0Z3RrcGFnZS5oOiBmaXggZW51bSBuYW1lOgorICAgICAgICBzL1dFQktJVF9OQVZJR0FU
SU9OX1JFUVVFU1RfUkVTUE9OU0UvV2ViS2l0TmF2aWdhdGlvblJlcXVlc3RSZXNwb25zZS8KKwor
ICAgICAgICAqIFdlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3BhZ2UuY3BwOiBtYWRlICJuYXZpZ2F0
aW9uLXJlcXVlc3RlZCIgYSAKKyAgICAgICAgc2lnbmFsLgorCisgICAgICAgICogV2ViS2l0L2d0
ay9BcGkvd2Via2l0Z3RrLW1hcnNoYWwubGlzdDogYWRkZWQgSU5UOk9CSkVDVCxPQkpFQ1QKKwor
ICAgICAgICAqIFdlYktpdC9ndGsvV2ViQ29yZVN1cHBvcnQvRnJhbWVMb2FkZXJDbGllbnRHdGsu
Y3BwOiBlbWl0IHRoZQorICAgICAgICBuZXcgc2lnbmFsIGluIGRpc3BhdGNoRGVjaWRlUG9saWN5
Rm9yTmF2aWdhdGlvbkFjdGlvbigpLgorCisgICAgICAgICogV2ViS2l0VG9vbHMvR3RrTGF1bmNo
ZXIvbWFpbi5jcHA6IGNvbm5lY3QgdG8gdGhlIHNpZ25hbC4KKwogMjAwNy0xMC0wMyAgTGFycyBL
bm9sbCAgPGxhcnNAdHJvbGx0ZWNoLmNvbT4KIAogICAgICAgICBTaWduZWQgb2ZmIGJ5IG9sbGll
ai4KZGlmZiAtLWdpdCBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0ay1tYXJzaGFsLmxpc3QgYi9X
ZWJLaXQvZ3RrL0FwaS93ZWJraXRndGstbWFyc2hhbC5saXN0CmluZGV4IDQwZDFlODcuLjk5MTcy
YTMgMTAwNjQ0Ci0tLSBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0ay1tYXJzaGFsLmxpc3QKKysr
IGIvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrLW1hcnNoYWwubGlzdApAQCAtMSwzICsxLDQgQEAK
IFZPSUQ6U1RSSU5HLFNUUklORwogVk9JRDpPQkpFQ1QsQk9PTEVBTgogVk9JRDpPQkpFQ1QsT0JK
RUNUCitJTlQ6T0JKRUNULE9CSkVDVApkaWZmIC0tZ2l0IGEvV2ViS2l0L2d0ay9BcGkvd2Via2l0
Z3RrZGVmaW5lcy5oIGIvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrZGVmaW5lcy5oCmluZGV4IGVh
ZjU5M2YuLjE4M2U2NmQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a2RlZmlu
ZXMuaAorKysgYi9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtkZWZpbmVzLmgKQEAgLTQwLDYgKzQw
LDkgQEAgdHlwZWRlZiBzdHJ1Y3QgX1dlYktpdE5ldHdvcmtSZXF1ZXN0IFdlYktpdE5ldHdvcmtS
ZXF1ZXN0OwogdHlwZWRlZiBzdHJ1Y3QgX1dlYktpdFBhZ2UgV2ViS2l0UGFnZTsKIHR5cGVkZWYg
c3RydWN0IF9XZWJLaXRQYWdlQ2xhc3MgV2ViS2l0UGFnZUNsYXNzOwogCit0eXBlZGVmIHN0cnVj
dCBfV2ViS2l0TmV0d29ya1JlcXVlc3QgV2ViS2l0TmV0d29ya1JlcXVlc3Q7Cit0eXBlZGVmIHN0
cnVjdCBfV2ViS2l0TmV0d29ya1JlcXVlc3RDbGFzcyBXZWJLaXROZXR3b3JrUmVxdWVzdENsYXNz
OworCiAjaWZkZWYgR19PU19XSU4zMgogICAgICNpZmRlZiBCVUlMRElOR19XRUJLSVQKICAgICAg
ICAgI2RlZmluZSBXRUJLSVRfQVBJIF9fZGVjbHNwZWMoZGxsZXhwb3J0KQpkaWZmIC0tZ2l0IGEv
V2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrbmV0d29ya3JlcXVlc3QuY3BwIGIvV2ViS2l0L2d0ay9B
cGkvd2Via2l0Z3RrbmV0d29ya3JlcXVlc3QuY3BwCmluZGV4IGIzMTcxZjUuLjY5Yjg4MjIgMTAw
NjQ0Ci0tLSBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a25ldHdvcmtyZXF1ZXN0LmNwcAorKysg
Yi9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtuZXR3b3JrcmVxdWVzdC5jcHAKQEAgLTI2LDQgKzI2
LDY5IEBACiAgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBPU1NJQklM
SVRZIE9GIFNVQ0ggREFNQUdFLgogICovCiAKKyNpbmNsdWRlICJjb25maWcuaCIKKwogI2luY2x1
ZGUgIndlYmtpdGd0a25ldHdvcmtyZXF1ZXN0LmgiCisjaW5jbHVkZSAid2Via2l0Z3RrcHJpdmF0
ZS5oIgorCit1c2luZyBuYW1lc3BhY2UgV2ViS2l0OwordXNpbmcgbmFtZXNwYWNlIFdlYkNvcmU7
CisKK2V4dGVybiAiQyIgeworCitHX0RFRklORV9UWVBFKFdlYktpdE5ldHdvcmtSZXF1ZXN0LCB3
ZWJraXRfbmV0d29ya19yZXF1ZXN0LCBHX1RZUEVfT0JKRUNUKTsKKworc3RhdGljIHZvaWQgd2Vi
a2l0X25ldHdvcmtfcmVxdWVzdF9maW5hbGl6ZShHT2JqZWN0KiBvYmplY3QpCit7CisgICAgV2Vi
S2l0TmV0d29ya1JlcXVlc3RQcml2YXRlKiByZXF1ZXN0UHJpdmF0ZSA9IFdFQktJVF9ORVRXT1JL
X1JFUVVFU1RfR0VUX1BSSVZBVEUob2JqZWN0KTsKKworICAgIGdfZnJlZShyZXF1ZXN0UHJpdmF0
ZS0+dXJsKTsKKworICAgIEdfT0JKRUNUX0NMQVNTKHdlYmtpdF9uZXR3b3JrX3JlcXVlc3RfcGFy
ZW50X2NsYXNzKS0+ZmluYWxpemUob2JqZWN0KTsKK30KKworc3RhdGljIHZvaWQgd2Via2l0X25l
dHdvcmtfcmVxdWVzdF9jbGFzc19pbml0KFdlYktpdE5ldHdvcmtSZXF1ZXN0Q2xhc3MqIHJlcXVl
c3RDbGFzcykKK3sKKyAgICBnX3R5cGVfY2xhc3NfYWRkX3ByaXZhdGUocmVxdWVzdENsYXNzLCBz
aXplb2YoV2ViS2l0TmV0d29ya1JlcXVlc3RQcml2YXRlKSk7CisKKyAgICBHX09CSkVDVF9DTEFT
UyhyZXF1ZXN0Q2xhc3MpLT5maW5hbGl6ZSA9IHdlYmtpdF9uZXR3b3JrX3JlcXVlc3RfZmluYWxp
emU7Cit9CisKK3N0YXRpYyB2b2lkIHdlYmtpdF9uZXR3b3JrX3JlcXVlc3RfaW5pdChXZWJLaXRO
ZXR3b3JrUmVxdWVzdCogcmVxdWVzdCkKK3sKK30KKworV2ViS2l0TmV0d29ya1JlcXVlc3QqIHdl
YmtpdF9uZXR3b3JrX3JlcXVlc3RfbmV3KGNvbnN0IGdjaGFyKiB1cmwpCit7CisgICAgV2ViS2l0
TmV0d29ya1JlcXVlc3QqIHJlcXVlc3QgPSBXRUJLSVRfTkVUV09SS19SRVFVRVNUKGdfb2JqZWN0
X25ldyhXRUJLSVRfVFlQRV9ORVRXT1JLX1JFUVVFU1QsIE5VTEwpKTsKKyAgICBXZWJLaXROZXR3
b3JrUmVxdWVzdFByaXZhdGUqIHJlcXVlc3RQcml2YXRlID0gV0VCS0lUX05FVFdPUktfUkVRVUVT
VF9HRVRfUFJJVkFURShyZXF1ZXN0KTsKKworICAgIHJlcXVlc3RQcml2YXRlLT51cmwgPSBnX3N0
cmR1cCh1cmwpOworCisgICAgcmV0dXJuIHJlcXVlc3Q7Cit9CisKK3ZvaWQgd2Via2l0X25ldHdv
cmtfcmVxdWVzdF9zZXRfdXJsKFdlYktpdE5ldHdvcmtSZXF1ZXN0KiByZXF1ZXN0LCBjb25zdCBn
Y2hhciogdXJsKQoreworICAgIFdlYktpdE5ldHdvcmtSZXF1ZXN0UHJpdmF0ZSogcmVxdWVzdFBy
aXZhdGU7CisKKyAgICBnX3JldHVybl9pZl9mYWlsKFdFQktJVF9JU19ORVRXT1JLX1JFUVVFU1Qo
cmVxdWVzdCkpOworCisgICAgcmVxdWVzdFByaXZhdGUgPSBXRUJLSVRfTkVUV09SS19SRVFVRVNU
X0dFVF9QUklWQVRFKHJlcXVlc3QpOworCisgICAgZ19mcmVlKHJlcXVlc3RQcml2YXRlLT51cmwp
OworICAgIHJlcXVlc3RQcml2YXRlLT51cmwgPSBnX3N0cmR1cCh1cmwpOworfQorCitjb25zdCBn
Y2hhciogd2Via2l0X25ldHdvcmtfcmVxdWVzdF9nZXRfdXJsKFdlYktpdE5ldHdvcmtSZXF1ZXN0
KiByZXF1ZXN0KQoreworICAgIFdlYktpdE5ldHdvcmtSZXF1ZXN0UHJpdmF0ZSogcmVxdWVzdFBy
aXZhdGU7CisKKyAgICBnX3JldHVybl92YWxfaWZfZmFpbChXRUJLSVRfSVNfTkVUV09SS19SRVFV
RVNUKHJlcXVlc3QpLCBOVUxMKTsKKworICAgIHJlcXVlc3RQcml2YXRlID0gV0VCS0lUX05FVFdP
UktfUkVRVUVTVF9HRVRfUFJJVkFURShyZXF1ZXN0KTsKKworICAgIHJldHVybiByZXF1ZXN0UHJp
dmF0ZS0+dXJsOworfQorCit9CmRpZmYgLS1naXQgYS9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtu
ZXR3b3JrcmVxdWVzdC5oIGIvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrbmV0d29ya3JlcXVlc3Qu
aAppbmRleCBjOTFlOTY5Li4xYWVlMGIxIDEwMDY0NAotLS0gYS9XZWJLaXQvZ3RrL0FwaS93ZWJr
aXRndGtuZXR3b3JrcmVxdWVzdC5oCisrKyBiL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a25ldHdv
cmtyZXF1ZXN0LmgKQEAgLTQzLDIyICs0MywyNSBAQCBHX0JFR0lOX0RFQ0xTCiAjZGVmaW5lIFdF
QktJVF9ORVRXT1JLX1JFUVVFU1RfR0VUX0NMQVNTKG9iaikgIChHX1RZUEVfSU5TVEFOQ0VfR0VU
X0NMQVNTKChvYmopLCAgV0VCS0lUX1RZUEVfTkVUV09SS19SRVFVRVNULCBXZWJLaXROZXR3b3Jr
UmVxdWVzdENsYXNzKSkKIAogCi10eXBlZGVmIHN0cnVjdCBfV2ViS2l0TmV0d29ya1JlcXVlc3Qg
V2ViS2l0TmV0d29ya1JlcXVlc3Q7Ci10eXBlZGVmIHN0cnVjdCBfV2ViS2l0TmV0d29ya1JlcXVl
c3RDbGFzcyBXZWJLaXROZXR3b3JrUmVxdWVzdENsYXNzOwotCiBzdHJ1Y3QgX1dlYktpdE5ldHdv
cmtSZXF1ZXN0IHsKICAgICBHT2JqZWN0IHBhcmVudDsKIH07CiAKIHN0cnVjdCBfV2ViS2l0TmV0
d29ya1JlcXVlc3RDbGFzcyB7Ci0gICAgR09iamVjdCBwYXJlbnQ7CisgICAgR09iamVjdENsYXNz
IHBhcmVudDsKIH07CiAKIFdFQktJVF9BUEkgR1R5cGUKIHdlYmtpdF9uZXR3b3JrX3JlcXVlc3Rf
Z2V0X3R5cGUgKHZvaWQpOwogCi1XRUJLSVRfQVBJIEdPYmplY3QqCi13ZWJraXRfbmV0d29ya19y
ZXF1ZXN0X25ldyAodm9pZCk7CitXRUJLSVRfQVBJIFdlYktpdE5ldHdvcmtSZXF1ZXN0Kgord2Vi
a2l0X25ldHdvcmtfcmVxdWVzdF9uZXcgKGNvbnN0IGdjaGFyKiB1cmwpOworCitXRUJLSVRfQVBJ
IHZvaWQKK3dlYmtpdF9uZXR3b3JrX3JlcXVlc3Rfc2V0X3VybChXZWJLaXROZXR3b3JrUmVxdWVz
dCogcmVxdWVzdCwgY29uc3QgZ2NoYXIqIHVybCk7CisKK1dFQktJVF9BUEkgY29uc3QgZ2NoYXIq
Cit3ZWJraXRfbmV0d29ya19yZXF1ZXN0X2dldF91cmwoV2ViS2l0TmV0d29ya1JlcXVlc3QqIHJl
cXVlc3QpOwogCiBHX0VORF9ERUNMUwogCmRpZmYgLS1naXQgYS9XZWJLaXQvZ3RrL0FwaS93ZWJr
aXRndGtwYWdlLmNwcCBiL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3BhZ2UuY3BwCmluZGV4IGM5
MmVmNzcuLjUzNTJjODQgMTAwNjQ0Ci0tLSBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3BhZ2Uu
Y3BwCisrKyBiL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3BhZ2UuY3BwCkBAIC02NCw2ICs2NCw3
IEBAIGVudW0gewogICAgIFNUQVRVU19CQVJfVEVYVF9DSEFOR0VELAogICAgIElDT05EX0xPQURF
RCwKICAgICBTRUxFQ1RJT05fQ0hBTkdFRCwKKyAgICBOQVZJR0FUSU9OX1JFUVVFU1RFRCwKICAg
ICBMQVNUX1NJR05BTAogfTsKIApAQCAtMjI1LDcgKzIyNiw3IEBAIHN0YXRpYyBXZWJLaXRQYWdl
KiB3ZWJraXRfcGFnZV9yZWFsX2NyZWF0ZV9wYWdlKFdlYktpdFBhZ2UqKQogICAgIHJldHVybiAw
OwogfQogCi1zdGF0aWMgV0VCS0lUX05BVklHQVRJT05fUkVRVUVTVF9SRVNQT05TRSB3ZWJraXRf
cGFnZV9yZWFsX25hdmlnYXRpb25fcmVxdWVzdGVkKFdlYktpdFBhZ2UqLCBXZWJLaXRGcmFtZSog
ZnJhbWUsIFdlYktpdE5ldHdvcmtSZXF1ZXN0KikKK3N0YXRpYyBXZWJLaXROYXZpZ2F0aW9uUmVx
dWVzdFJlc3BvbnNlIHdlYmtpdF9wYWdlX3JlYWxfbmF2aWdhdGlvbl9yZXF1ZXN0ZWQoV2ViS2l0
UGFnZSosIFdlYktpdEZyYW1lKiBmcmFtZSwgV2ViS2l0TmV0d29ya1JlcXVlc3QqKQogewogICAg
IG5vdEltcGxlbWVudGVkKCk7CiAgICAgcmV0dXJuIFdFQktJVF9BQ0NFUFRfTkFWSUdBVElPTl9S
RVFVRVNUOwpAQCAtMzc2LDYgKzM3NywxNyBAQCBzdGF0aWMgdm9pZCB3ZWJraXRfcGFnZV9jbGFz
c19pbml0KFdlYktpdFBhZ2VDbGFzcyogcGFnZUNsYXNzKQogICAgICAgICAgICAgZ19jY2xvc3Vy
ZV9tYXJzaGFsX1ZPSURfX1ZPSUQsCiAgICAgICAgICAgICBHX1RZUEVfTk9ORSwgMCk7CiAKKyAg
ICB3ZWJraXRfcGFnZV9zaWduYWxzW05BVklHQVRJT05fUkVRVUVTVEVEXSA9IGdfc2lnbmFsX25l
dygibmF2aWdhdGlvbl9yZXF1ZXN0ZWQiLAorICAgICAgICAgICAgR19UWVBFX0ZST01fQ0xBU1Mo
cGFnZUNsYXNzKSwKKyAgICAgICAgICAgIChHU2lnbmFsRmxhZ3MpKEdfU0lHTkFMX1JVTl9MQVNU
IHwgR19TSUdOQUxfQUNUSU9OKSwKKyAgICAgICAgICAgIEdfU1RSVUNUX09GRlNFVCAoV2ViS2l0
UGFnZUNsYXNzLCBuYXZpZ2F0aW9uX3JlcXVlc3RlZCksCisgICAgICAgICAgICBOVUxMLAorICAg
ICAgICAgICAgTlVMTCwKKyAgICAgICAgICAgIHdlYmtpdF9tYXJzaGFsX0lOVF9fT0JKRUNUX09C
SkVDVCwKKyAgICAgICAgICAgIEdfVFlQRV9JTlQsIDIsCisgICAgICAgICAgICBHX1RZUEVfT0JK
RUNULAorICAgICAgICAgICAgR19UWVBFX09CSkVDVCk7CisKIAogICAgIC8qCiAgICAgICogaW1w
bGVtZW50YXRpb25zIG9mIHZpcnR1YWwgbWV0aG9kcwpkaWZmIC0tZ2l0IGEvV2ViS2l0L2d0ay9B
cGkvd2Via2l0Z3RrcGFnZS5oIGIvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrcGFnZS5oCmluZGV4
IDIzMjE1YjQuLjkyMGNhN2MgMTAwNjQ0Ci0tLSBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3Bh
Z2UuaAorKysgYi9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtwYWdlLmgKQEAgLTQ4LDcgKzQ4LDcg
QEAgdHlwZWRlZiBlbnVtIHsKICAgICBXRUJLSVRfQUNDRVBUX05BVklHQVRJT05fUkVRVUVTVCwK
ICAgICBXRUJLSVRfSUdOT1JFX05BVklHQVRJT05fUkVRVUVTVCwKICAgICBXRUJLSVRfRE9XTkxP
QURfTkFWSUdBVElPTl9SRVFVRVNUCi19IFdFQktJVF9OQVZJR0FUSU9OX1JFUVVFU1RfUkVTUE9O
U0U7Cit9IFdlYktpdE5hdmlnYXRpb25SZXF1ZXN0UmVzcG9uc2U7CiAKIAogCkBAIC03MCw3ICs3
MCw3IEBAIHN0cnVjdCBfV2ViS2l0UGFnZUNsYXNzIHsKICAgICAvKgogICAgICAqIFRPRE86IEZJ
WE1FOiBDcmVhdGUgc29tZXRoaW5nIGxpa2UgV2ViUG9saWN5RGVjaXNpb25MaXN0ZW5lcl9Qcm90
b2NvbCBpbnN0ZWFkCiAgICAgICovCi0gICAgV0VCS0lUX05BVklHQVRJT05fUkVRVUVTVF9SRVNQ
T05TRSAoKm5hdmlnYXRpb25fcmVxdWVzdGVkKSAoV2ViS2l0UGFnZSogcGFnZSwgV2ViS2l0RnJh
bWUqIGZyYW1lLCBXZWJLaXROZXR3b3JrUmVxdWVzdCogcmVxdWVzdCk7CisgICAgV2ViS2l0TmF2
aWdhdGlvblJlcXVlc3RSZXNwb25zZSAoKm5hdmlnYXRpb25fcmVxdWVzdGVkKSAoV2ViS2l0UGFn
ZSogcGFnZSwgV2ViS2l0RnJhbWUqIGZyYW1lLCBXZWJLaXROZXR3b3JrUmVxdWVzdCogcmVxdWVz
dCk7CiAKICAgICAvKgogICAgICAqIFRPRE86IERJU0NVU1M6IFNob3VsZCB0aGVzZSBiZSBzaWdu
YWxzIGFzIHdlbGw/CmRpZmYgLS1naXQgYS9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtwcml2YXRl
LmggYi9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtwcml2YXRlLmgKaW5kZXggMTBmNjdiNy4uOWYx
NjdhNCAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrcHJpdmF0ZS5oCisrKyBi
L1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3ByaXZhdGUuaApAQCAtODMsNiArODMsMTIgQEAgZXh0
ZXJuICJDIiB7CiAgICAgICAgIGdjaGFyKiBsb2NhdGlvbjsKICAgICB9OwogCisgICAgI2RlZmlu
ZSBXRUJLSVRfTkVUV09SS19SRVFVRVNUX0dFVF9QUklWQVRFKG9iaikgICAgKEdfVFlQRV9JTlNU
QU5DRV9HRVRfUFJJVkFURSgob2JqKSwgV0VCS0lUX1RZUEVfTkVUV09SS19SRVFVRVNULCBXZWJL
aXROZXR3b3JrUmVxdWVzdFByaXZhdGUpKQorICAgIHR5cGVkZWYgc3RydWN0IF9XZWJLaXROZXR3
b3JrUmVxdWVzdFByaXZhdGUgV2ViS2l0TmV0d29ya1JlcXVlc3RQcml2YXRlOworICAgIHN0cnVj
dCBfV2ViS2l0TmV0d29ya1JlcXVlc3RQcml2YXRlIHsKKyAgICAgICAgZ2NoYXIqIHVybDsKKyAg
ICB9OworCiAKICAgICBHT2JqZWN0KiB3ZWJraXRfZnJhbWVfaW5pdF93aXRoX3BhZ2UoV2ViS2l0
UGFnZSosIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCopOwogfQpkaWZmIC0tZ2l0IGEv
V2ViS2l0L2d0ay9XZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudEd0ay5jcHAgYi9XZWJL
aXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50R3RrLmNwcAppbmRleCBjOTMw
Y2VlLi4zZTVkM2Q3IDEwMDY0NAotLS0gYS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1l
TG9hZGVyQ2xpZW50R3RrLmNwcAorKysgYi9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1l
TG9hZGVyQ2xpZW50R3RrLmNwcApAQCAtMTYyLDExICsxNjIsMjUgQEAgdm9pZCBGcmFtZUxvYWRl
ckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oRnJhbWVQb2xp
Y3lGdW5jdGkKICAgICAoY29yZShtX2ZyYW1lKS0+bG9hZGVyKCktPipwb2xpY3lGdW5jdGlvbiko
UG9saWN5SWdub3JlKTsKIH0KIAotdm9pZCBGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNp
ZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKEZyYW1lUG9saWN5RnVuY3Rpb24gcG9saWN5RnVu
Y3Rpb24sIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKQor
dm9pZCBGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9u
QWN0aW9uKEZyYW1lUG9saWN5RnVuY3Rpb24gcG9saWN5RnVuY3Rpb24sIGNvbnN0IE5hdmlnYXRp
b25BY3Rpb24mIGFjdGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXNvdXJjZVJlcXVlc3Qp
CiB7CiAgICAgQVNTRVJUKHBvbGljeUZ1bmN0aW9uKTsKICAgICBpZiAoIXBvbGljeUZ1bmN0aW9u
KQogICAgICAgICByZXR1cm47CisKKyAgICBXZWJLaXRQYWdlKiBwYWdlID0gZ2V0UGFnZUZyb21G
cmFtZShtX2ZyYW1lKTsKKyAgICBXZWJLaXROZXR3b3JrUmVxdWVzdCogcmVxdWVzdCA9IHdlYmtp
dF9uZXR3b3JrX3JlcXVlc3RfbmV3KHJlc291cmNlUmVxdWVzdC51cmwoKS51cmwoKS51dGY4KCku
ZGF0YSgpKTsKKyAgICBXZWJLaXROYXZpZ2F0aW9uUmVxdWVzdFJlc3BvbnNlIHJlc3BvbnNlOwor
CisgICAgZ19zaWduYWxfZW1pdF9ieV9uYW1lIChwYWdlLCAibmF2aWdhdGlvbl9yZXF1ZXN0ZWQi
LCBtX2ZyYW1lLCByZXF1ZXN0LCAmcmVzcG9uc2UpOworCisgICAgZ19vYmplY3RfdW5yZWYocmVx
dWVzdCk7CisKKyAgICBpZiAocmVzcG9uc2UgPT0gV0VCS0lUX0lHTk9SRV9OQVZJR0FUSU9OX1JF
UVVFU1QpIHsKKyAgICAgICAgKGNvcmUobV9mcmFtZSktPmxvYWRlcigpLT4qcG9saWN5RnVuY3Rp
b24pKFBvbGljeUlnbm9yZSk7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAgICAoY29yZSht
X2ZyYW1lKS0+bG9hZGVyKCktPipwb2xpY3lGdW5jdGlvbikoUG9saWN5VXNlKTsKIH0KIApkaWZm
IC0tZ2l0IGEvV2ViS2l0VG9vbHMvR3RrTGF1bmNoZXIvbWFpbi5jcHAgYi9XZWJLaXRUb29scy9H
dGtMYXVuY2hlci9tYWluLmNwcAppbmRleCBmMGQwNzJlLi5jMGQ3NmRlIDEwMDY0NAotLS0gYS9X
ZWJLaXRUb29scy9HdGtMYXVuY2hlci9tYWluLmNwcAorKysgYi9XZWJLaXRUb29scy9HdGtMYXVu
Y2hlci9tYWluLmNwcApAQCAtMSw0ICsxLDUgQEAKICNpbmNsdWRlICJ3ZWJraXRndGtwYWdlLmgi
CisjaW5jbHVkZSAid2Via2l0Z3RrbmV0d29ya3JlcXVlc3QuaCIKICNpbmNsdWRlICJ3ZWJraXRn
dGtnbG9iYWwuaCIKIAogI2luY2x1ZGUgPGd0ay9ndGsuaD4KQEAgLTc4LDYgKzc5LDEyIEBAIHN0
YXRpYyB2b2lkIHByb2dyZXNzQ2hhbmdlZChXZWJLaXRQYWdlKiwgZ2ludCBwcm9ncmVzcywgV2Vi
S2l0UGFnZSopCiAgICAgdXBkYXRlV2luZG93VGl0bGUoKTsKIH0KIAorc3RhdGljIFdlYktpdE5h
dmlnYXRpb25SZXF1ZXN0UmVzcG9uc2UgbmF2aWdhdGlvblJlcXVlc3RlZChXZWJLaXRQYWdlKiwg
V2ViS2l0RnJhbWUqLCBXZWJLaXROZXR3b3JrUmVxdWVzdCogcmVxdWVzdCkKK3sKKyAgICBnX3By
aW50KCJuYXZpZ2F0aW9uUmVxdWVzdGVkOiAlc1xuIiwgd2Via2l0X25ldHdvcmtfcmVxdWVzdF9n
ZXRfdXJsKHJlcXVlc3QpKTsKKyAgICByZXR1cm4gV0VCS0lUX0FDQ0VQVF9OQVZJR0FUSU9OX1JF
UVVFU1Q7Cit9CisKIHN0YXRpYyB2b2lkIGZyYW1lRGVzdHJveUNhbGxiYWNrKEd0a1dpZGdldCos
IGdwb2ludGVyKQogewogICAgIGd0a19tYWluX3F1aXQoKTsKQEAgLTE2OCw2ICsxNzUsNyBAQCBz
dGF0aWMgdm9pZCBzZXR1cE1haW5XaW5kb3dVSSgpCiAgICAgZ19zaWduYWxfY29ubmVjdChnUGFn
ZSwgInRpdGxlLWNoYW5nZWQiLCBHX0NBTExCQUNLKHRpdGxlQ2hhbmdlZCksIGdQYWdlKTsKICAg
ICBnX3NpZ25hbF9jb25uZWN0KGdQYWdlLCAibG9hZC1wcm9ncmVzcy1jaGFuZ2VkIiwgR19DQUxM
QkFDSyhwcm9ncmVzc0NoYW5nZWQpLCBnUGFnZSk7CiAgICAgZ19zaWduYWxfY29ubmVjdChnUGFn
ZSwgImhvdmVyaW5nLW92ZXItbGluayIsIEdfQ0FMTEJBQ0soaG92ZXJpbmdPdmVyTGluayksIGdQ
YWdlKTsKKyAgICBnX3NpZ25hbF9jb25uZWN0KGdQYWdlLCAibmF2aWdhdGlvbi1yZXF1ZXN0ZWQi
LCBHX0NBTExCQUNLKG5hdmlnYXRpb25SZXF1ZXN0ZWQpLCBnUGFnZSk7CiB9CiAKIGludCBtYWlu
KGludCBhcmdjLCBjaGFyKiBhcmd2W10pIAo=
</data>
<flag name="review"
          id="7479"
          type_id="1"
          status="-"
          setter="alp"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>17442</attachid>
            <date>2007-11-22 08:50:16 -0800</date>
            <delta_ts>2007-11-22 17:50:20 -0800</delta_ts>
            <desc>Updated patch</desc>
            <filename>navigation-requested.patch-4</filename>
            <type>text/plain</type>
            <size>11825</size>
            <attacher name="Michael Natterer">mitch</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0ay1tYXJzaGFsLmxpc3QgYi9XZWJL
aXQvZ3RrL0FwaS93ZWJraXRndGstbWFyc2hhbC5saXN0CmluZGV4IDFhMDExZmQuLjViYWZhNDEg
MTAwNjQ0Ci0tLSBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0ay1tYXJzaGFsLmxpc3QKKysrIGIv
V2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrLW1hcnNoYWwubGlzdApAQCAtNSwzICs1LDQgQEAgQk9P
TEVBTjpTVFJJTkcsSU5ULFNUUklORwogQk9PTEVBTjpPQkpFQ1QsU1RSSU5HCiBCT09MRUFOOk9C
SkVDVCxTVFJJTkcsQk9PTEVBTgogQk9PTEVBTjpPQkpFQ1QsU1RSSU5HLFNUUklORyxTVFJJTkcK
K0lOVDpPQkpFQ1QsT0JKRUNUCmRpZmYgLS1naXQgYS9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtk
ZWZpbmVzLmggYi9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtkZWZpbmVzLmgKaW5kZXggZWFmNTkz
Zi4uZDk0NTQ4OCAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrZGVmaW5lcy5o
CisrKyBiL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a2RlZmluZXMuaApAQCAtMzUsMTEgKzM1LDEz
IEBAIHR5cGVkZWYgc3RydWN0IF9XZWJLaXRGcmFtZSBXZWJLaXRGcmFtZTsKIHR5cGVkZWYgc3Ry
dWN0IF9XZWJLaXRGcmFtZUNsYXNzIFdlYktpdEZyYW1lQ2xhc3M7CiAKIHR5cGVkZWYgc3RydWN0
IF9XZWJLaXRGcmFtZURhdGEgV2ViS2l0RnJhbWVEYXRhOwotdHlwZWRlZiBzdHJ1Y3QgX1dlYktp
dE5ldHdvcmtSZXF1ZXN0IFdlYktpdE5ldHdvcmtSZXF1ZXN0OwogCiB0eXBlZGVmIHN0cnVjdCBf
V2ViS2l0UGFnZSBXZWJLaXRQYWdlOwogdHlwZWRlZiBzdHJ1Y3QgX1dlYktpdFBhZ2VDbGFzcyBX
ZWJLaXRQYWdlQ2xhc3M7CiAKK3R5cGVkZWYgc3RydWN0IF9XZWJLaXROZXR3b3JrUmVxdWVzdCBX
ZWJLaXROZXR3b3JrUmVxdWVzdDsKK3R5cGVkZWYgc3RydWN0IF9XZWJLaXROZXR3b3JrUmVxdWVz
dENsYXNzIFdlYktpdE5ldHdvcmtSZXF1ZXN0Q2xhc3M7CisKICNpZmRlZiBHX09TX1dJTjMyCiAg
ICAgI2lmZGVmIEJVSUxESU5HX1dFQktJVAogICAgICAgICAjZGVmaW5lIFdFQktJVF9BUEkgX19k
ZWNsc3BlYyhkbGxleHBvcnQpCmRpZmYgLS1naXQgYS9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtu
ZXR3b3JrcmVxdWVzdC5jcHAgYi9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtuZXR3b3JrcmVxdWVz
dC5jcHAKaW5kZXggYjMxNzFmNS4uNjliODgyMiAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0ay9BcGkv
d2Via2l0Z3RrbmV0d29ya3JlcXVlc3QuY3BwCisrKyBiL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0
a25ldHdvcmtyZXF1ZXN0LmNwcApAQCAtMjYsNCArMjYsNjkgQEAKICAqIFRISVMgU09GVFdBUkUs
IEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCiAgKi8K
IAorI2luY2x1ZGUgImNvbmZpZy5oIgorCiAjaW5jbHVkZSAid2Via2l0Z3RrbmV0d29ya3JlcXVl
c3QuaCIKKyNpbmNsdWRlICJ3ZWJraXRndGtwcml2YXRlLmgiCisKK3VzaW5nIG5hbWVzcGFjZSBX
ZWJLaXQ7Cit1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKKworZXh0ZXJuICJDIiB7CisKK0dfREVG
SU5FX1RZUEUoV2ViS2l0TmV0d29ya1JlcXVlc3QsIHdlYmtpdF9uZXR3b3JrX3JlcXVlc3QsIEdf
VFlQRV9PQkpFQ1QpOworCitzdGF0aWMgdm9pZCB3ZWJraXRfbmV0d29ya19yZXF1ZXN0X2ZpbmFs
aXplKEdPYmplY3QqIG9iamVjdCkKK3sKKyAgICBXZWJLaXROZXR3b3JrUmVxdWVzdFByaXZhdGUq
IHJlcXVlc3RQcml2YXRlID0gV0VCS0lUX05FVFdPUktfUkVRVUVTVF9HRVRfUFJJVkFURShvYmpl
Y3QpOworCisgICAgZ19mcmVlKHJlcXVlc3RQcml2YXRlLT51cmwpOworCisgICAgR19PQkpFQ1Rf
Q0xBU1Mod2Via2l0X25ldHdvcmtfcmVxdWVzdF9wYXJlbnRfY2xhc3MpLT5maW5hbGl6ZShvYmpl
Y3QpOworfQorCitzdGF0aWMgdm9pZCB3ZWJraXRfbmV0d29ya19yZXF1ZXN0X2NsYXNzX2luaXQo
V2ViS2l0TmV0d29ya1JlcXVlc3RDbGFzcyogcmVxdWVzdENsYXNzKQoreworICAgIGdfdHlwZV9j
bGFzc19hZGRfcHJpdmF0ZShyZXF1ZXN0Q2xhc3MsIHNpemVvZihXZWJLaXROZXR3b3JrUmVxdWVz
dFByaXZhdGUpKTsKKworICAgIEdfT0JKRUNUX0NMQVNTKHJlcXVlc3RDbGFzcyktPmZpbmFsaXpl
ID0gd2Via2l0X25ldHdvcmtfcmVxdWVzdF9maW5hbGl6ZTsKK30KKworc3RhdGljIHZvaWQgd2Vi
a2l0X25ldHdvcmtfcmVxdWVzdF9pbml0KFdlYktpdE5ldHdvcmtSZXF1ZXN0KiByZXF1ZXN0KQor
eworfQorCitXZWJLaXROZXR3b3JrUmVxdWVzdCogd2Via2l0X25ldHdvcmtfcmVxdWVzdF9uZXco
Y29uc3QgZ2NoYXIqIHVybCkKK3sKKyAgICBXZWJLaXROZXR3b3JrUmVxdWVzdCogcmVxdWVzdCA9
IFdFQktJVF9ORVRXT1JLX1JFUVVFU1QoZ19vYmplY3RfbmV3KFdFQktJVF9UWVBFX05FVFdPUktf
UkVRVUVTVCwgTlVMTCkpOworICAgIFdlYktpdE5ldHdvcmtSZXF1ZXN0UHJpdmF0ZSogcmVxdWVz
dFByaXZhdGUgPSBXRUJLSVRfTkVUV09SS19SRVFVRVNUX0dFVF9QUklWQVRFKHJlcXVlc3QpOwor
CisgICAgcmVxdWVzdFByaXZhdGUtPnVybCA9IGdfc3RyZHVwKHVybCk7CisKKyAgICByZXR1cm4g
cmVxdWVzdDsKK30KKwordm9pZCB3ZWJraXRfbmV0d29ya19yZXF1ZXN0X3NldF91cmwoV2ViS2l0
TmV0d29ya1JlcXVlc3QqIHJlcXVlc3QsIGNvbnN0IGdjaGFyKiB1cmwpCit7CisgICAgV2ViS2l0
TmV0d29ya1JlcXVlc3RQcml2YXRlKiByZXF1ZXN0UHJpdmF0ZTsKKworICAgIGdfcmV0dXJuX2lm
X2ZhaWwoV0VCS0lUX0lTX05FVFdPUktfUkVRVUVTVChyZXF1ZXN0KSk7CisKKyAgICByZXF1ZXN0
UHJpdmF0ZSA9IFdFQktJVF9ORVRXT1JLX1JFUVVFU1RfR0VUX1BSSVZBVEUocmVxdWVzdCk7CisK
KyAgICBnX2ZyZWUocmVxdWVzdFByaXZhdGUtPnVybCk7CisgICAgcmVxdWVzdFByaXZhdGUtPnVy
bCA9IGdfc3RyZHVwKHVybCk7Cit9CisKK2NvbnN0IGdjaGFyKiB3ZWJraXRfbmV0d29ya19yZXF1
ZXN0X2dldF91cmwoV2ViS2l0TmV0d29ya1JlcXVlc3QqIHJlcXVlc3QpCit7CisgICAgV2ViS2l0
TmV0d29ya1JlcXVlc3RQcml2YXRlKiByZXF1ZXN0UHJpdmF0ZTsKKworICAgIGdfcmV0dXJuX3Zh
bF9pZl9mYWlsKFdFQktJVF9JU19ORVRXT1JLX1JFUVVFU1QocmVxdWVzdCksIE5VTEwpOworCisg
ICAgcmVxdWVzdFByaXZhdGUgPSBXRUJLSVRfTkVUV09SS19SRVFVRVNUX0dFVF9QUklWQVRFKHJl
cXVlc3QpOworCisgICAgcmV0dXJuIHJlcXVlc3RQcml2YXRlLT51cmw7Cit9CisKK30KZGlmZiAt
LWdpdCBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a25ldHdvcmtyZXF1ZXN0LmggYi9XZWJLaXQv
Z3RrL0FwaS93ZWJraXRndGtuZXR3b3JrcmVxdWVzdC5oCmluZGV4IGM5MWU5NjkuLjFhZWUwYjEg
MTAwNjQ0Ci0tLSBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a25ldHdvcmtyZXF1ZXN0LmgKKysr
IGIvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrbmV0d29ya3JlcXVlc3QuaApAQCAtNDMsMjIgKzQz
LDI1IEBAIEdfQkVHSU5fREVDTFMKICNkZWZpbmUgV0VCS0lUX05FVFdPUktfUkVRVUVTVF9HRVRf
Q0xBU1Mob2JqKSAgKEdfVFlQRV9JTlNUQU5DRV9HRVRfQ0xBU1MoKG9iaiksICBXRUJLSVRfVFlQ
RV9ORVRXT1JLX1JFUVVFU1QsIFdlYktpdE5ldHdvcmtSZXF1ZXN0Q2xhc3MpKQogCiAKLXR5cGVk
ZWYgc3RydWN0IF9XZWJLaXROZXR3b3JrUmVxdWVzdCBXZWJLaXROZXR3b3JrUmVxdWVzdDsKLXR5
cGVkZWYgc3RydWN0IF9XZWJLaXROZXR3b3JrUmVxdWVzdENsYXNzIFdlYktpdE5ldHdvcmtSZXF1
ZXN0Q2xhc3M7Ci0KIHN0cnVjdCBfV2ViS2l0TmV0d29ya1JlcXVlc3QgewogICAgIEdPYmplY3Qg
cGFyZW50OwogfTsKIAogc3RydWN0IF9XZWJLaXROZXR3b3JrUmVxdWVzdENsYXNzIHsKLSAgICBH
T2JqZWN0IHBhcmVudDsKKyAgICBHT2JqZWN0Q2xhc3MgcGFyZW50OwogfTsKIAogV0VCS0lUX0FQ
SSBHVHlwZQogd2Via2l0X25ldHdvcmtfcmVxdWVzdF9nZXRfdHlwZSAodm9pZCk7CiAKLVdFQktJ
VF9BUEkgR09iamVjdCoKLXdlYmtpdF9uZXR3b3JrX3JlcXVlc3RfbmV3ICh2b2lkKTsKK1dFQktJ
VF9BUEkgV2ViS2l0TmV0d29ya1JlcXVlc3QqCit3ZWJraXRfbmV0d29ya19yZXF1ZXN0X25ldyAo
Y29uc3QgZ2NoYXIqIHVybCk7CisKK1dFQktJVF9BUEkgdm9pZAord2Via2l0X25ldHdvcmtfcmVx
dWVzdF9zZXRfdXJsKFdlYktpdE5ldHdvcmtSZXF1ZXN0KiByZXF1ZXN0LCBjb25zdCBnY2hhciog
dXJsKTsKKworV0VCS0lUX0FQSSBjb25zdCBnY2hhcioKK3dlYmtpdF9uZXR3b3JrX3JlcXVlc3Rf
Z2V0X3VybChXZWJLaXROZXR3b3JrUmVxdWVzdCogcmVxdWVzdCk7CiAKIEdfRU5EX0RFQ0xTCiAK
ZGlmZiAtLWdpdCBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3BhZ2UuY3BwIGIvV2ViS2l0L2d0
ay9BcGkvd2Via2l0Z3RrcGFnZS5jcHAKaW5kZXggNGZjNWQ5Zi4uOTRhZGQwYiAxMDA2NDQKLS0t
IGEvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrcGFnZS5jcHAKKysrIGIvV2ViS2l0L2d0ay9BcGkv
d2Via2l0Z3RrcGFnZS5jcHAKQEAgLTU3LDYgKzU3LDcgQEAgZXh0ZXJuICJDIiB7CiAKIGVudW0g
ewogICAgIC8qIG5vcm1hbCBzaWduYWxzICovCisgICAgTkFWSUdBVElPTl9SRVFVRVNURUQsCiAg
ICAgTE9BRF9TVEFSVEVELAogICAgIExPQURfUFJPR1JFU1NfQ0hBTkdFRCwKICAgICBMT0FEX0ZJ
TklTSEVELApAQCAtMjA4LDEwICsyMDksMTAgQEAgc3RhdGljIFdlYktpdFBhZ2UqIHdlYmtpdF9w
YWdlX3JlYWxfY3JlYXRlX3BhZ2UoV2ViS2l0UGFnZSopCiAgICAgcmV0dXJuIDA7CiB9CiAKLXN0
YXRpYyBXRUJLSVRfTkFWSUdBVElPTl9SRVFVRVNUX1JFU1BPTlNFIHdlYmtpdF9wYWdlX3JlYWxf
bmF2aWdhdGlvbl9yZXF1ZXN0ZWQoV2ViS2l0UGFnZSosIFdlYktpdEZyYW1lKiBmcmFtZSwgV2Vi
S2l0TmV0d29ya1JlcXVlc3QqKQorc3RhdGljIFdlYktpdE5hdmlnYXRpb25SZXNwb25zZSB3ZWJr
aXRfcGFnZV9yZWFsX25hdmlnYXRpb25fcmVxdWVzdGVkKFdlYktpdFBhZ2UqLCBXZWJLaXRGcmFt
ZSogZnJhbWUsIFdlYktpdE5ldHdvcmtSZXF1ZXN0KikKIHsKICAgICBub3RJbXBsZW1lbnRlZCgp
OwotICAgIHJldHVybiBXRUJLSVRfQUNDRVBUX05BVklHQVRJT05fUkVRVUVTVDsKKyAgICByZXR1
cm4gV0VCS0lUX05BVklHQVRJT05fUkVTUE9OU0VfQUNDRVBUOwogfQogCiBzdGF0aWMgZ2NoYXIq
IHdlYmtpdF9wYWdlX3JlYWxfY2hvb3NlX2ZpbGUoV2ViS2l0UGFnZSosIFdlYktpdEZyYW1lKiwg
Y29uc3QgZ2NoYXIqIG9sZF9uYW1lKQpAQCAtMzM3LDYgKzMzOCwxNyBAQCBzdGF0aWMgdm9pZCB3
ZWJraXRfcGFnZV9jbGFzc19pbml0KFdlYktpdFBhZ2VDbGFzcyogcGFnZUNsYXNzKQogewogICAg
IGdfdHlwZV9jbGFzc19hZGRfcHJpdmF0ZShwYWdlQ2xhc3MsIHNpemVvZihXZWJLaXRQYWdlUHJp
dmF0ZSkpOwogCisgICAgd2Via2l0X3BhZ2Vfc2lnbmFsc1tOQVZJR0FUSU9OX1JFUVVFU1RFRF0g
PSBnX3NpZ25hbF9uZXcoIm5hdmlnYXRpb25fcmVxdWVzdGVkIiwKKyAgICAgICAgICAgIEdfVFlQ
RV9GUk9NX0NMQVNTKHBhZ2VDbGFzcyksCisgICAgICAgICAgICAoR1NpZ25hbEZsYWdzKShHX1NJ
R05BTF9SVU5fTEFTVCB8IEdfU0lHTkFMX0FDVElPTiksCisgICAgICAgICAgICBHX1NUUlVDVF9P
RkZTRVQgKFdlYktpdFBhZ2VDbGFzcywgbmF2aWdhdGlvbl9yZXF1ZXN0ZWQpLAorICAgICAgICAg
ICAgTlVMTCwKKyAgICAgICAgICAgIE5VTEwsCisgICAgICAgICAgICB3ZWJraXRfbWFyc2hhbF9J
TlRfX09CSkVDVF9PQkpFQ1QsCisgICAgICAgICAgICBHX1RZUEVfSU5ULCAyLAorICAgICAgICAg
ICAgR19UWVBFX09CSkVDVCwKKyAgICAgICAgICAgIEdfVFlQRV9PQkpFQ1QpOworCiAKICAgICAv
KgogICAgICAqIHNpZ25hbHMKZGlmZiAtLWdpdCBhL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3Bh
Z2UuaCBiL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3BhZ2UuaAppbmRleCA1ZjEyMDFlLi4yNWZi
ODg3IDEwMDY0NAotLS0gYS9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtwYWdlLmgKKysrIGIvV2Vi
S2l0L2d0ay9BcGkvd2Via2l0Z3RrcGFnZS5oCkBAIC00NSwxMCArNDUsMTAgQEAgR19CRUdJTl9E
RUNMUwogCiAKIHR5cGVkZWYgZW51bSB7Ci0gICAgV0VCS0lUX0FDQ0VQVF9OQVZJR0FUSU9OX1JF
UVVFU1QsCi0gICAgV0VCS0lUX0lHTk9SRV9OQVZJR0FUSU9OX1JFUVVFU1QsCi0gICAgV0VCS0lU
X0RPV05MT0FEX05BVklHQVRJT05fUkVRVUVTVAotfSBXRUJLSVRfTkFWSUdBVElPTl9SRVFVRVNU
X1JFU1BPTlNFOworICAgIFdFQktJVF9OQVZJR0FUSU9OX1JFU1BPTlNFX0FDQ0VQVCwKKyAgICBX
RUJLSVRfTkFWSUdBVElPTl9SRVNQT05TRV9JR05PUkUsCisgICAgV0VCS0lUX05BVklHQVRJT05f
UkVTUE9OU0VfRE9XTkxPQUQKK30gV2ViS2l0TmF2aWdhdGlvblJlc3BvbnNlOwogCiAKIApAQCAt
NzAsNyArNzAsNyBAQCBzdHJ1Y3QgX1dlYktpdFBhZ2VDbGFzcyB7CiAgICAgLyoKICAgICAgKiBU
T0RPOiBGSVhNRTogQ3JlYXRlIHNvbWV0aGluZyBsaWtlIFdlYlBvbGljeURlY2lzaW9uTGlzdGVu
ZXJfUHJvdG9jb2wgaW5zdGVhZAogICAgICAqLwotICAgIFdFQktJVF9OQVZJR0FUSU9OX1JFUVVF
U1RfUkVTUE9OU0UgKCpuYXZpZ2F0aW9uX3JlcXVlc3RlZCkgKFdlYktpdFBhZ2UqIHBhZ2UsIFdl
YktpdEZyYW1lKiBmcmFtZSwgV2ViS2l0TmV0d29ya1JlcXVlc3QqIHJlcXVlc3QpOworICAgIFdl
YktpdE5hdmlnYXRpb25SZXNwb25zZSAoKm5hdmlnYXRpb25fcmVxdWVzdGVkKSAoV2ViS2l0UGFn
ZSogcGFnZSwgV2ViS2l0RnJhbWUqIGZyYW1lLCBXZWJLaXROZXR3b3JrUmVxdWVzdCogcmVxdWVz
dCk7CiAKICAgICBnY2hhciogICAoKmNob29zZV9maWxlKSAoV2ViS2l0UGFnZSogcGFnZSwgV2Vi
S2l0RnJhbWUqIGZyYW1lLCBjb25zdCBnY2hhciogb2xkX2ZpbGUpOwogICAgIGdib29sZWFuICgq
c2NyaXB0X2FsZXJ0KSAoV2ViS2l0UGFnZSogcGFnZSwgV2ViS2l0RnJhbWUqIGZyYW1lLCBjb25z
dCBnY2hhciogYWxlcnRfbWVzc2FnZSk7CmRpZmYgLS1naXQgYS9XZWJLaXQvZ3RrL0FwaS93ZWJr
aXRndGtwcml2YXRlLmggYi9XZWJLaXQvZ3RrL0FwaS93ZWJraXRndGtwcml2YXRlLmgKaW5kZXgg
MTBmNjdiNy4uOWYxNjdhNCAxMDA2NDQKLS0tIGEvV2ViS2l0L2d0ay9BcGkvd2Via2l0Z3RrcHJp
dmF0ZS5oCisrKyBiL1dlYktpdC9ndGsvQXBpL3dlYmtpdGd0a3ByaXZhdGUuaApAQCAtODMsNiAr
ODMsMTIgQEAgZXh0ZXJuICJDIiB7CiAgICAgICAgIGdjaGFyKiBsb2NhdGlvbjsKICAgICB9Owog
CisgICAgI2RlZmluZSBXRUJLSVRfTkVUV09SS19SRVFVRVNUX0dFVF9QUklWQVRFKG9iaikgICAg
KEdfVFlQRV9JTlNUQU5DRV9HRVRfUFJJVkFURSgob2JqKSwgV0VCS0lUX1RZUEVfTkVUV09SS19S
RVFVRVNULCBXZWJLaXROZXR3b3JrUmVxdWVzdFByaXZhdGUpKQorICAgIHR5cGVkZWYgc3RydWN0
IF9XZWJLaXROZXR3b3JrUmVxdWVzdFByaXZhdGUgV2ViS2l0TmV0d29ya1JlcXVlc3RQcml2YXRl
OworICAgIHN0cnVjdCBfV2ViS2l0TmV0d29ya1JlcXVlc3RQcml2YXRlIHsKKyAgICAgICAgZ2No
YXIqIHVybDsKKyAgICB9OworCiAKICAgICBHT2JqZWN0KiB3ZWJraXRfZnJhbWVfaW5pdF93aXRo
X3BhZ2UoV2ViS2l0UGFnZSosIFdlYkNvcmU6OkhUTUxGcmFtZU93bmVyRWxlbWVudCopOwogfQpk
aWZmIC0tZ2l0IGEvV2ViS2l0L2d0ay9DaGFuZ2VMb2cgYi9XZWJLaXQvZ3RrL0NoYW5nZUxvZwpp
bmRleCA4OWVmODlkLi40ZTkzZGRjIDEwMDY0NAotLS0gYS9XZWJLaXQvZ3RrL0NoYW5nZUxvZwor
KysgYi9XZWJLaXQvZ3RrL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDA3LTExLTIyICBN
aWNoYWVsIE5hdHRlcmVyICA8bWl0Y2hAaW1lbmRpby5jb20+CisKKyAgICAgICAgKiBBcGkvd2Vi
a2l0Z3RrbmV0d29ya3JlcXVlc3QuaDogZml4IHBhcmVudCBjbGFzcyBtZW1iZXIuCisKKyAgICAg
ICAgKiBBcGkvd2Via2l0Z3RrbmV0d29ya3JlcXVlc3QuY3BwCisgICAgICAgICogQXBpL3dlYmtp
dGd0a3ByaXZhdGUuaDogYmFzaWMgaW1wbGVtZW50YXRpb24gZmVhdHVyaW5nIGFuCisgICAgICAg
ICJ1cmwiIG1lbWJlciBhbmQgQVBJLgorCisgICAgICAgICogQXBpL3dlYmtpdGd0a2RlZmluZXMu
aDogYWRkZWQgbmV0d29yayByZXF1ZXN0IHR5cGVkZWZzLgorCisgICAgICAgICogQXBpL3dlYmtp
dGd0a3BhZ2UuaDogZml4IGVudW0gbmFtZToKKyAgICAgICAgcy9XRUJLSVRfTkFWSUdBVElPTl9S
RVFVRVNUX1JFU1BPTlNFL1dlYktpdE5hdmlnYXRpb25SZXF1ZXN0UmVzcG9uc2UvCisJYW5kIHNh
bml0aXplZCBlbnVtIHZhbHVlcy4KKworICAgICAgICAqIEFwaS93ZWJraXRndGtwYWdlLmNwcDog
bWFkZSAibmF2aWdhdGlvbi1yZXF1ZXN0ZWQiIGEgc2lnbmFsLgorCisgICAgICAgICogQXBpL3dl
YmtpdGd0ay1tYXJzaGFsLmxpc3Q6IGFkZGVkIElOVDpPQkpFQ1QsT0JKRUNUCisKKyAgICAgICAg
KiBXZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudEd0ay5jcHA6IGVtaXQgdGhlIG5ldyBz
aWduYWwgaW4KKyAgICAgICAgZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9u
KCkuCisKIDIwMDctMTEtMTggIENocmlzdGlhbiBEeXdhbiAgPGNocmlzdGlhbkB0d290b2FzdHMu
ZGU+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgQWxwLgpkaWZmIC0tZ2l0IGEvV2ViS2l0L2d0ay9X
ZWJDb3JlU3VwcG9ydC9GcmFtZUxvYWRlckNsaWVudEd0ay5jcHAgYi9XZWJLaXQvZ3RrL1dlYkNv
cmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50R3RrLmNwcAppbmRleCBhYjI5MjQ4Li4xOGU3ZTI4
IDEwMDY0NAotLS0gYS9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50
R3RrLmNwcAorKysgYi9XZWJLaXQvZ3RrL1dlYkNvcmVTdXBwb3J0L0ZyYW1lTG9hZGVyQ2xpZW50
R3RrLmNwcApAQCAtMjQzLDExICsyNDMsMjUgQEAgdm9pZCBGcmFtZUxvYWRlckNsaWVudDo6ZGlz
cGF0Y2hEZWNpZGVQb2xpY3lGb3JOZXdXaW5kb3dBY3Rpb24oRnJhbWVQb2xpY3lGdW5jdGkKICAg
ICAoY29yZShtX2ZyYW1lKS0+bG9hZGVyKCktPipwb2xpY3lGdW5jdGlvbikoUG9saWN5SWdub3Jl
KTsKIH0KIAotdm9pZCBGcmFtZUxvYWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JO
YXZpZ2F0aW9uQWN0aW9uKEZyYW1lUG9saWN5RnVuY3Rpb24gcG9saWN5RnVuY3Rpb24sIGNvbnN0
IE5hdmlnYXRpb25BY3Rpb24mLCBjb25zdCBSZXNvdXJjZVJlcXVlc3QmKQordm9pZCBGcmFtZUxv
YWRlckNsaWVudDo6ZGlzcGF0Y2hEZWNpZGVQb2xpY3lGb3JOYXZpZ2F0aW9uQWN0aW9uKEZyYW1l
UG9saWN5RnVuY3Rpb24gcG9saWN5RnVuY3Rpb24sIGNvbnN0IE5hdmlnYXRpb25BY3Rpb24mIGFj
dGlvbiwgY29uc3QgUmVzb3VyY2VSZXF1ZXN0JiByZXNvdXJjZVJlcXVlc3QpCiB7CiAgICAgQVNT
RVJUKHBvbGljeUZ1bmN0aW9uKTsKICAgICBpZiAoIXBvbGljeUZ1bmN0aW9uKQogICAgICAgICBy
ZXR1cm47CisKKyAgICBXZWJLaXRQYWdlKiBwYWdlID0gZ2V0UGFnZUZyb21GcmFtZShtX2ZyYW1l
KTsKKyAgICBXZWJLaXROZXR3b3JrUmVxdWVzdCogcmVxdWVzdCA9IHdlYmtpdF9uZXR3b3JrX3Jl
cXVlc3RfbmV3KHJlc291cmNlUmVxdWVzdC51cmwoKS51cmwoKS51dGY4KCkuZGF0YSgpKTsKKyAg
ICBXZWJLaXROYXZpZ2F0aW9uUmVzcG9uc2UgcmVzcG9uc2U7CisKKyAgICBnX3NpZ25hbF9lbWl0
X2J5X25hbWUgKHBhZ2UsICJuYXZpZ2F0aW9uX3JlcXVlc3RlZCIsIG1fZnJhbWUsIHJlcXVlc3Qs
ICZyZXNwb25zZSk7CisKKyAgICBnX29iamVjdF91bnJlZihyZXF1ZXN0KTsKKworICAgIGlmIChy
ZXNwb25zZSA9PSBXRUJLSVRfTkFWSUdBVElPTl9SRVNQT05TRV9JR05PUkUpIHsKKyAgICAgICAg
KGNvcmUobV9mcmFtZSktPmxvYWRlcigpLT4qcG9saWN5RnVuY3Rpb24pKFBvbGljeUlnbm9yZSk7
CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAgICAoY29yZShtX2ZyYW1lKS0+bG9hZGVyKCkt
Pipwb2xpY3lGdW5jdGlvbikoUG9saWN5VXNlKTsKIH0KIApkaWZmIC0tZ2l0IGEvV2ViS2l0VG9v
bHMvQ2hhbmdlTG9nIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCmluZGV4IGI4M2U3ZTMuLjlmZDhm
MGQgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZworKysgYi9XZWJLaXRUb29scy9D
aGFuZ2VMb2cKQEAgLTEsMyArMSw4IEBACisyMDA3LTExLTIyICBNaWNoYWVsIE5hdHRlcmVyICA8
bWl0Y2hAaW1lbmRpby5jb20+CisKKyAgICAgICAgKiBXZWJLaXRUb29scy9HdGtMYXVuY2hlci9t
YWluLmM6IGNvbm5lY3QgdG8gdGhlIG5ldworCSJuYXZpZ2F0aW9uLXJlcXVlc3RlZCIgc2lnbmFs
LgorCiAyMDA3LTExLTIxICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBTcGVjdWxhdGl2ZSBidWlsZCBmaXggZm9yIFRpZ2VyLgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9v
bHMvR3RrTGF1bmNoZXIvbWFpbi5jIGIvV2ViS2l0VG9vbHMvR3RrTGF1bmNoZXIvbWFpbi5jCmlu
ZGV4IGNkNTAyYTkuLjkxOWY0M2MgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0d0a0xhdW5jaGVy
L21haW4uYworKysgYi9XZWJLaXRUb29scy9HdGtMYXVuY2hlci9tYWluLmMKQEAgLTI1LDYgKzI1
LDcgQEAKICAqLwogCiAjaW5jbHVkZSAid2Via2l0Z3RrcGFnZS5oIgorI2luY2x1ZGUgIndlYmtp
dGd0a25ldHdvcmtyZXF1ZXN0LmgiCiAjaW5jbHVkZSAid2Via2l0Z3RrZ2xvYmFsLmgiCiAjaW5j
bHVkZSA8Z3RrL2d0ay5oPgogCkBAIC04Myw2ICs4NCwxMiBAQCBwcm9ncmVzc19jaGFuZ2VfY2Ig
KFdlYktpdFBhZ2UqIHBhZ2UsIGdpbnQgcHJvZ3Jlc3MsIGdwb2ludGVyIGRhdGEpCiAgICAgdXBk
YXRlX3RpdGxlIChHVEtfV0lORE9XIChtYWluX3dpbmRvdykpOwogfQogCitzdGF0aWMgV2ViS2l0
TmF2aWdhdGlvblJlc3BvbnNlIG5hdmlnYXRpb25fcmVxdWVzdGVkX2NiIChXZWJLaXRQYWdlKiBw
YWdlLCBXZWJLaXRGcmFtZSogZnJhbWUsIFdlYktpdE5ldHdvcmtSZXF1ZXN0KiByZXF1ZXN0KQor
eworICAgIGdfcHJpbnQoIm5hdmlnYXRpb25SZXF1ZXN0ZWQ6ICVzXG4iLCB3ZWJraXRfbmV0d29y
a19yZXF1ZXN0X2dldF91cmwgKHJlcXVlc3QpKTsKKyAgICByZXR1cm4gV0VCS0lUX05BVklHQVRJ
T05fUkVTUE9OU0VfQUNDRVBUOworfQorCiBzdGF0aWMgdm9pZAogZGVzdHJveV9jYiAoR3RrV2lk
Z2V0KiB3aWRnZXQsIGdwb2ludGVyIGRhdGEpCiB7CkBAIC0xMTMsNiArMTIwLDcgQEAgY3JlYXRl
X2Jyb3dzZXIgKCkKICAgICBnX3NpZ25hbF9jb25uZWN0IChHX09CSkVDVCAod2ViX3BhZ2UpLCAi
dGl0bGUtY2hhbmdlZCIsIEdfQ0FMTEJBQ0sgKHRpdGxlX2NoYW5nZV9jYiksIHdlYl9wYWdlKTsK
ICAgICBnX3NpZ25hbF9jb25uZWN0IChHX09CSkVDVCAod2ViX3BhZ2UpLCAibG9hZC1wcm9ncmVz
cy1jaGFuZ2VkIiwgR19DQUxMQkFDSyAocHJvZ3Jlc3NfY2hhbmdlX2NiKSwgd2ViX3BhZ2UpOwog
ICAgIGdfc2lnbmFsX2Nvbm5lY3QgKEdfT0JKRUNUICh3ZWJfcGFnZSksICJob3ZlcmluZy1vdmVy
LWxpbmsiLCBHX0NBTExCQUNLIChsaW5rX2hvdmVyX2NiKSwgd2ViX3BhZ2UpOworICAgIGdfc2ln
bmFsX2Nvbm5lY3QoR19PQkpFQ1QgKHdlYl9wYWdlKSwgIm5hdmlnYXRpb24tcmVxdWVzdGVkIiwg
R19DQUxMQkFDSyAobmF2aWdhdGlvbl9yZXF1ZXN0ZWRfY2IpLCB3ZWJfcGFnZSk7CiAKICAgICBy
ZXR1cm4gc2Nyb2xsZWRfd2luZG93OwogfQo=
</data>
<flag name="review"
          id="7487"
          type_id="1"
          status="+"
          setter="alp"
    />
          </attachment>
      

    </bug>

</bugzilla>