<?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>30409</bug_id>
          
          <creation_ts>2009-10-15 15:03:55 -0700</creation_ts>
          <short_desc>Need to turn off notifications properly at runtime</short_desc>
          <delta_ts>2009-10-30 12:37:24 -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>WebCore JavaScript</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andrew Wilson">atwilson</reporter>
          <assigned_to name="John Gregg">johnnyg</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>154916</commentid>
    <comment_count>0</comment_count>
    <who name="Andrew Wilson">atwilson</who>
    <bug_when>2009-10-15 15:03:55 -0700</bug_when>
    <thetext>This if statement should evaluate to false if notifications are disabled at runtime:

if (&apos;webkitNotifications&apos; in window)

Additionally, we need to disable notifications from worker context as well. This means that we need to move runtime enabling out of Settings and into some static variable/struct that can be called from any context.

You can look at https://bugs.webkit.org/show_bug.cgi?id=30240 for an example of how this was done for window.Audio()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156319</commentid>
    <comment_count>1</comment_count>
      <attachid>41529</attachid>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2009-10-20 15:40:23 -0700</bug_when>
    <thetext>Created attachment 41529
patch

Patch adds support for the [EnabledAtRuntime] flag on DOMWindow.webkitNotifications and WorkerContext.webkitNotifications.  

After I switch chromium over to using this instead of Settings, I&apos;ll remove notifications from Settings in a second patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156687</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-10-21 16:10:05 -0700</bug_when>
    <thetext>I&apos;m not sure if this is a two-sided patch needing special commit, or if this can be added to the commit-queue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156690</commentid>
    <comment_count>3</comment_count>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2009-10-21 16:13:14 -0700</bug_when>
    <thetext>I already had atwilson commit this for me:
http://trac.webkit.org/changeset/49893</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>156696</commentid>
    <comment_count>4</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-10-21 16:18:05 -0700</bug_when>
    <thetext>So the bug should have been closed. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>157315</commentid>
    <comment_count>5</comment_count>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2009-10-23 14:39:59 -0700</bug_when>
    <thetext>And now there&apos;s an even newer way of doing this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>157329</commentid>
    <comment_count>6</comment_count>
      <attachid>41750</attachid>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2009-10-23 15:01:54 -0700</bug_when>
    <thetext>Created attachment 41750
new patch for the new way</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>159356</commentid>
    <comment_count>7</comment_count>
      <attachid>41750</attachid>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2009-10-30 10:39:59 -0700</bug_when>
    <thetext>Comment on attachment 41750
new patch for the new way

d&apos;oh forgot the r? last week.  now the patch is too out of date... will merge and resubmit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>159375</commentid>
    <comment_count>8</comment_count>
      <attachid>42219</attachid>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2009-10-30 11:21:32 -0700</bug_when>
    <thetext>Created attachment 42219
new patch for the new way 

resynced and recreated the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>159380</commentid>
    <comment_count>9</comment_count>
      <attachid>42219</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2009-10-30 11:32:56 -0700</bug_when>
    <thetext>Comment on attachment 42219
new patch for the new way 

&gt; Index: WebCore/bindings/v8/RuntimeEnabledFeatures.h
&gt; +    static bool isNotificationsEnabled;

Hmmm, this should have been m_ since these are class members but I see you&apos;re following a pattern.

&gt; Index: WebCore/bindings/v8/custom/V8DOMWindowCustom.cpp
&gt; +    return WebCore::RuntimeEnabledFeatures::notificationsEnabled();

Since the code is in namespace WebCore, WebCore:: isn&apos;t needed.


&gt; Index: WebCore/bindings/v8/custom/V8WorkerContextCustom.cpp
&gt; +    return WebCore::RuntimeEnabledFeatures::notificationsEnabled();

Since the code is in namespace WebCore, WebCore:: isn&apos;t needed.


Just remove the WebCore:: from the two places mentioned on landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>159382</commentid>
    <comment_count>10</comment_count>
      <attachid>42221</attachid>
    <who name="John Gregg">johnnyg</who>
    <bug_when>2009-10-30 11:39:41 -0700</bug_when>
    <thetext>Created attachment 42221
patch w/levin&apos;s feedback

removing unnecessary WebCore::&apos;s</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>159402</commentid>
    <comment_count>11</comment_count>
      <attachid>42221</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-30 12:37:20 -0700</bug_when>
    <thetext>Comment on attachment 42221
patch w/levin&apos;s feedback

Clearing flags on attachment: 42221

Committed r50348: &lt;http://trac.webkit.org/changeset/50348&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>159403</commentid>
    <comment_count>12</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-10-30 12:37:24 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41529</attachid>
            <date>2009-10-20 15:40:23 -0700</date>
            <delta_ts>2009-10-23 14:40:36 -0700</delta_ts>
            <desc>patch</desc>
            <filename>bug30409.diff</filename>
            <type>text/plain</type>
            <size>6467</size>
            <attacher name="John Gregg">johnnyg</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0OTg5MCkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjUgQEAKKzIwMDktMTAtMjAgIEpvaG4gR3JlZ2cgIDxqb2hubnlnQGdvb2dsZS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTmVl
ZCB0byB0dXJuIG9mZiBub3RpZmljYXRpb25zIHByb3Blcmx5IGF0IHJ1bnRpbWUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwNDA5CisJCisgICAgICAg
IFRoaXMgY29kZSBvbmx5IGFmZmVjdHMgY2hyb21pdW0sIGFuZCBpcyBhbGwgYmVoaW5kIGEgY29t
cGlsZSB0aW1lCisgICAgICAgIGZsYWcgY3VycmVudCB0dXJuZWQgb2ZmLCBzbyBubyBuZXcgdGVz
dHMuCisKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhDdXN0b21CaW5kaW5nLmg6Cisg
ICAgICAgICogYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9NV2luZG93Q3VzdG9tLmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OkFDQ0VTU09SX1JVTlRJTUVfRU5BQkxFUik6CisgICAgICAgICogYmluZGlu
Z3MvdjgvY3VzdG9tL1Y4V29ya2VyQ29udGV4dEN1c3RvbS5jcHA6CisgICAgICAgIChXZWJDb3Jl
OjpBQ0NFU1NPUl9SVU5USU1FX0VOQUJMRVIpOgorICAgICAgICAqIG5vdGlmaWNhdGlvbnMvTm90
aWZpY2F0aW9uQ2VudGVyLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6Ok5vdGlmaWNhdGlvbkNlbnRl
cjo6c2V0SXNBdmFpbGFibGUpOgorICAgICAgICAoV2ViQ29yZTo6Tm90aWZpY2F0aW9uQ2VudGVy
Ojppc0F2YWlsYWJsZSk6CisgICAgICAgICogbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50
ZXIuaDoKKyAgICAgICAgKiBwYWdlL0RPTVdpbmRvdy5pZGw6CisgICAgICAgICogd29ya2Vycy9X
b3JrZXJDb250ZXh0LmlkbDoKKwogMjAwOS0xMC0yMCAgSmVucyBBbGZrZSAgPHNuZWpAY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgpJbmRleDogV2ViQ29y
ZS9iaW5kaW5ncy92OC9jdXN0b20vVjhDdXN0b21CaW5kaW5nLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhDdXN0b21CaW5kaW5nLmgJKHJldmlzaW9uIDQ5ODcx
KQorKysgV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhDdXN0b21CaW5kaW5nLmgJKHdvcmtp
bmcgY29weSkKQEAgLTYxNiw2ICs2MTYsMTAgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgICAg
ICBERUNMQVJFX0NBTExCQUNLKFdvcmtlckNvbnRleHRDbGVhckludGVydmFsKTsKICAgICAgICAg
REVDTEFSRV9DQUxMQkFDSyhXb3JrZXJDb250ZXh0QWRkRXZlbnRMaXN0ZW5lcik7CiAgICAgICAg
IERFQ0xBUkVfQ0FMTEJBQ0soV29ya2VyQ29udGV4dFJlbW92ZUV2ZW50TGlzdGVuZXIpOworCisj
aWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisgICAgICAgIERFQ0xBUkVfQUNDRVNTT1JfUlVOVElN
RV9FTkFCTEVSKFdvcmtlckNvbnRleHRXZWJraXROb3RpZmljYXRpb25zKTsKKyNlbmRpZgogI2Vu
ZGlmIC8vIEVOQUJMRShXT1JLRVJTKQogCiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCkBAIC02
MzksNiArNjQzLDEwIEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAgICAgREVDTEFSRV9BQ0NF
U1NPUl9SVU5USU1FX0VOQUJMRVIoRE9NV2luZG93U2hhcmVkV29ya2VyKTsKICNlbmRpZgogCisj
aWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCisgICAgICAgIERFQ0xBUkVfQUNDRVNTT1JfUlVOVElN
RV9FTkFCTEVSKERPTVdpbmRvd1dlYmtpdE5vdGlmaWNhdGlvbnMpOworI2VuZGlmCisKICNpZiBF
TkFCTEUoV0VCX1NPQ0tFVFMpCiAgICAgICAgIERFQ0xBUkVfUFJPUEVSVFlfQUNDRVNTT1IoV2Vi
U29ja2V0T25vcGVuKTsKICAgICAgICAgREVDTEFSRV9QUk9QRVJUWV9BQ0NFU1NPUihXZWJTb2Nr
ZXRPbm1lc3NhZ2UpOwpJbmRleDogV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5k
b3dDdXN0b20uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4
RE9NV2luZG93Q3VzdG9tLmNwcAkocmV2aXNpb24gNDk4NzEpCisrKyBXZWJDb3JlL2JpbmRpbmdz
L3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTQ2LDYg
KzQ2LDcgQEAKICNpbmNsdWRlICJGcmFtZVZpZXcuaCIKICNpbmNsdWRlICJIVE1MQ29sbGVjdGlv
bi5oIgogI2luY2x1ZGUgIk1lZGlhUGxheWVyLmgiCisjaW5jbHVkZSAiTm90aWZpY2F0aW9uQ2Vu
dGVyLmgiCiAjaW5jbHVkZSAiUGFnZS5oIgogI2luY2x1ZGUgIlBsYXRmb3JtU2NyZWVuLmgiCiAj
aW5jbHVkZSAiU2NoZWR1bGVkQWN0aW9uLmgiCkBAIC0yNzksNiArMjgwLDEzIEBAIEFDQ0VTU09S
X1JVTlRJTUVfRU5BQkxFUihET01XaW5kb3dXZWJTb2MKIH0KICNlbmRpZgogCisjaWYgRU5BQkxF
KE5PVElGSUNBVElPTlMpCitBQ0NFU1NPUl9SVU5USU1FX0VOQUJMRVIoRE9NV2luZG93V2Via2l0
Tm90aWZpY2F0aW9ucykKK3sKKyAgICByZXR1cm4gTm90aWZpY2F0aW9uQ2VudGVyOjppc0F2YWls
YWJsZSgpOworfQorI2VuZGlmCisKIEFDQ0VTU09SX0dFVFRFUihET01XaW5kb3dJbWFnZSkKIHsK
ICAgICBET01XaW5kb3cqIHdpbmRvdyA9IFY4RE9NV3JhcHBlcjo6Y29udmVydFRvTmF0aXZlT2Jq
ZWN0PERPTVdpbmRvdz4oVjhDbGFzc0luZGV4OjpET01XSU5ET1csIGluZm8uSG9sZGVyKCkpOwpJ
bmRleDogV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhXb3JrZXJDb250ZXh0Q3VzdG9tLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOFdvcmtlckNvbnRl
eHRDdXN0b20uY3BwCShyZXZpc2lvbiA0OTg3MSkKKysrIFdlYkNvcmUvYmluZGluZ3MvdjgvY3Vz
dG9tL1Y4V29ya2VyQ29udGV4dEN1c3RvbS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTM0LDYgKzM0
LDcgQEAKIAogI2luY2x1ZGUgIkRPTVRpbWVyLmgiCiAjaW5jbHVkZSAiRXhjZXB0aW9uQ29kZS5o
IgorI2luY2x1ZGUgIk5vdGlmaWNhdGlvbkNlbnRlci5oIgogI2luY2x1ZGUgIlNjaGVkdWxlZEFj
dGlvbi5oIgogI2luY2x1ZGUgIlY4QmluZGluZy5oIgogI2luY2x1ZGUgIlY4Q3VzdG9tQmluZGlu
Zy5oIgpAQCAtNDUsNiArNDYsMTMgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCisjaWYgRU5B
QkxFKE5PVElGSUNBVElPTlMpCitBQ0NFU1NPUl9SVU5USU1FX0VOQUJMRVIoV29ya2VyQ29udGV4
dFdlYmtpdE5vdGlmaWNhdGlvbnMpCit7CisgICAgcmV0dXJuIE5vdGlmaWNhdGlvbkNlbnRlcjo6
aXNBdmFpbGFibGUoKTsKK30KKyNlbmRpZgorCiBBQ0NFU1NPUl9HRVRURVIoV29ya2VyQ29udGV4
dFNlbGYpCiB7CiAgICAgSU5DX1NUQVRTKEwiRE9NLldvcmtlckNvbnRleHQuc2VsZi5fZ2V0Iik7
CkluZGV4OiBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmNwcAko
cmV2aXNpb24gNDk4NzEpCisrKyBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2Vu
dGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDAsNiArNDAsMjAgQEAKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCisjaWYgVVNFKFY4KQorc3RhdGljIGJvb2wgbm90aWZpY2F0aW9uQ2VudGVyQXZh
aWxhYmxlID0gZmFsc2U7CisKK3ZvaWQgTm90aWZpY2F0aW9uQ2VudGVyOjpzZXRJc0F2YWlsYWJs
ZShib29sIGF2YWlsYWJsZSkKK3sKKyAgICBub3RpZmljYXRpb25DZW50ZXJBdmFpbGFibGUgPSBh
dmFpbGFibGU7Cit9CisKK2Jvb2wgTm90aWZpY2F0aW9uQ2VudGVyOjppc0F2YWlsYWJsZSgpCit7
CisgICAgcmV0dXJuIG5vdGlmaWNhdGlvbkNlbnRlckF2YWlsYWJsZTsKK30KKyNlbmRpZgorCiBO
b3RpZmljYXRpb25DZW50ZXI6Ok5vdGlmaWNhdGlvbkNlbnRlcihTY3JpcHRFeGVjdXRpb25Db250
ZXh0KiBjb250ZXh0LCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIHByZXNlbnRlcikgCiAgICAgOiBB
Y3RpdmVET01PYmplY3QoY29udGV4dCwgdGhpcykKICAgICAsIG1fc2NyaXB0RXhlY3V0aW9uQ29u
dGV4dChjb250ZXh0KQpJbmRleDogV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNl
bnRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25D
ZW50ZXIuaAkocmV2aXNpb24gNDk4NzEpCisrKyBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZp
Y2F0aW9uQ2VudGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ3LDggKzQ3LDEyIEBAIG5hbWVzcGFj
ZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIE5vdGlmaWNhdGlvbkNlbnRlciA6IHB1YmxpYyBSZWZD
b3VudGVkPE5vdGlmaWNhdGlvbkNlbnRlcj4sIHB1YmxpYyBBY3RpdmVET01PYmplY3QgeyAKICAg
ICBwdWJsaWM6CisjaWYgVVNFKFY4KQorICAgICAgICBzdGF0aWMgdm9pZCBzZXRJc0F2YWlsYWJs
ZShib29sKTsKKyAgICAgICAgc3RhdGljIGJvb2wgaXNBdmFpbGFibGUoKTsKKyNlbmRpZgogICAg
ICAgICBzdGF0aWMgUGFzc1JlZlB0cjxOb3RpZmljYXRpb25DZW50ZXI+IGNyZWF0ZShTY3JpcHRF
eGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBOb3RpZmljYXRpb25QcmVzZW50ZXIqIHByZXNlbnRl
cikgeyByZXR1cm4gYWRvcHRSZWYobmV3IE5vdGlmaWNhdGlvbkNlbnRlcihjb250ZXh0LCBwcmVz
ZW50ZXIpKTsgfQotICAgICAgICAKKwogICAgICAgICBOb3RpZmljYXRpb24qIGNyZWF0ZUhUTUxO
b3RpZmljYXRpb24oY29uc3QgU3RyaW5nJiBVUkksIEV4Y2VwdGlvbkNvZGUmIGVjKQogICAgICAg
ICB7CiAgICAgICAgICAgICByZXR1cm4gTm90aWZpY2F0aW9uOjpjcmVhdGUoS1VSTChQYXJzZWRV
UkxTdHJpbmcsIFVSSSksIGNvbnRleHQoKSwgZWMsIHByZXNlbnRlcigpKTsKSW5kZXg6IFdlYkNv
cmUvcGFnZS9ET01XaW5kb3cuaWRsCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9ET01XaW5k
b3cuaWRsCShyZXZpc2lvbiA0OTg3MSkKKysrIFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuaWRsCSh3
b3JraW5nIGNvcHkpCkBAIC0xNjgsNyArMTY4LDcgQEAgbW9kdWxlIHdpbmRvdyB7CiAgICAgICAg
IHJlYWRvbmx5IGF0dHJpYnV0ZSBTdG9yYWdlIGxvY2FsU3RvcmFnZTsKICNlbmRpZgogI2lmIGRl
ZmluZWQoRU5BQkxFX05PVElGSUNBVElPTlMpICYmIEVOQUJMRV9OT1RJRklDQVRJT05TCi0gICAg
ICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb3RpZmljYXRpb25DZW50ZXIgd2Via2l0Tm90aWZpY2F0
aW9uczsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFbmFibGVkQXRSdW50aW1lXSBOb3Rp
ZmljYXRpb25DZW50ZXIgd2Via2l0Tm90aWZpY2F0aW9uczsKICNlbmRpZgogCiAjaWYgZGVmaW5l
ZChFTkFCTEVfT1JJRU5UQVRJT05fRVZFTlRTKSAmJiBFTkFCTEVfT1JJRU5UQVRJT05fRVZFTlRT
CkluZGV4OiBXZWJDb3JlL3dvcmtlcnMvV29ya2VyQ29udGV4dC5pZGwKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS93b3JrZXJzL1dvcmtlckNvbnRleHQuaWRsCShyZXZpc2lvbiA0OTg3MSkKKysrIFdl
YkNvcmUvd29ya2Vycy9Xb3JrZXJDb250ZXh0LmlkbAkod29ya2luZyBjb3B5KQpAQCAtNzIsNyAr
NzIsNyBAQCBtb2R1bGUgdGhyZWFkcyB7CiAKICNpZiBkZWZpbmVkKEVOQUJMRV9OT1RJRklDQVRJ
T05TKSAmJiBFTkFCTEVfTk9USUZJQ0FUSU9OUwogICAgICAgICAvLyBOb3RpZmljYXRpb24gaW50
ZXJmYWNlCi0gICAgICAgIHJlYWRvbmx5IGF0dHJpYnV0ZSBOb3RpZmljYXRpb25DZW50ZXIgd2Vi
a2l0Tm90aWZpY2F0aW9uczsKKyAgICAgICAgcmVhZG9ubHkgYXR0cmlidXRlIFtFbmFibGVkQXRS
dW50aW1lXSBOb3RpZmljYXRpb25DZW50ZXIgd2Via2l0Tm90aWZpY2F0aW9uczsKICNlbmRpZgog
CiAgICAgICAgIC8vIENvbnN0cnVjdG9ycwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>41750</attachid>
            <date>2009-10-23 15:01:54 -0700</date>
            <delta_ts>2009-10-30 11:21:32 -0700</delta_ts>
            <desc>new patch for the new way</desc>
            <filename>bug_30409b.diff</filename>
            <type>text/plain</type>
            <size>5419</size>
            <attacher name="John Gregg">johnnyg</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1MDAwMSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjYgQEAKKzIwMDktMTAtMjMgIEpvaG4gR3JlZ2cgIDxqb2hubnlnQGdvb2dsZS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTmVl
ZCB0byB0dXJuIG9mZiBub3RpZmljYXRpb25zIHByb3Blcmx5IGF0IHJ1bnRpbWUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwNDA5CisKKyAgICAgICAg
TW92aW5nIHRoZSBub3RpZmljYXRpb25zRW5hYmxlZCBiaXQgZnJvbSBOb3RpZmljYXRpb25DZW50
ZXIKKyAgICAgICAgdG8gdGhlIG5ldyBWOCBSdW50aW1lRW5hYmxlZEZlYXR1cmVzIG9iamVjdC4K
KworICAgICAgICBKdXN0IG1vdmluZyBhIGJpdCBhcm91bmQsIHNvIG5vIG5ldyB0ZXN0cy4KKwor
ICAgICAgICAqIGJpbmRpbmdzL3Y4L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwOgorICAgICAg
ICAqIGJpbmRpbmdzL3Y4L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldE5vdGlmaWNhdGlvbnNFbmFibGVkKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6Om5vdGlmaWNhdGlvbnNFbmFi
bGVkKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6QUNDRVNTT1JfUlVOVElNRV9FTkFCTEVSKToKKyAgICAgICAg
KiBiaW5kaW5ncy92OC9jdXN0b20vVjhXb3JrZXJDb250ZXh0Q3VzdG9tLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkFDQ0VTU09SX1JVTlRJTUVfRU5BQkxFUik6CisgICAgICAgICogbm90aWZpY2F0
aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuY3BwOgorICAgICAgICAqIG5vdGlmaWNhdGlvbnMvTm90
aWZpY2F0aW9uQ2VudGVyLmg6CisKIDIwMDktMTAtMjMgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0
Lm9yZz4KIAogICAgICAgICBBbm90aGVyIHNob3QgYXQgYSBmaXhlZCBidWlsZC4KSW5kZXg6IFdl
YkNvcmUvYmluZGluZ3MvdjgvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9iaW5kaW5ncy92OC9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAkocmV2aXNp
b24gNDk5OTYpCisrKyBXZWJDb3JlL2JpbmRpbmdzL3Y4L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMu
Y3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNCw1ICszNCw2IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKIGJvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNEYXRhYmFzZUVuYWJsZWQgPSBmYWxz
ZTsKK2Jvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNOb3RpZmljYXRpb25zRW5hYmxlZCA9
IGZhbHNlOwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4OiBXZWJDb3JlL2JpbmRpbmdz
L3Y4L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2JpbmRp
bmdzL3Y4L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAkocmV2aXNpb24gNDk5OTYpCisrKyBXZWJD
b3JlL2JpbmRpbmdzL3Y4L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaAkod29ya2luZyBjb3B5KQpA
QCAtMzksMTAgKzM5LDE0IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBzZXREYXRhYmFzZUVu
YWJsZWQoYm9vbCBpc0VuYWJsZWQpIHsgaXNEYXRhYmFzZUVuYWJsZWQgPSBpc0VuYWJsZWQ7IH0K
ICAgICBzdGF0aWMgYm9vbCBkYXRhYmFzZUVuYWJsZWQoKSB7IHJldHVybiBpc0RhdGFiYXNlRW5h
YmxlZDsgfQogCisgICAgc3RhdGljIHZvaWQgc2V0Tm90aWZpY2F0aW9uc0VuYWJsZWQoYm9vbCBp
c0VuYWJsZWQpIHsgaXNOb3RpZmljYXRpb25zRW5hYmxlZCA9IGlzRW5hYmxlZDsgfQorICAgIHN0
YXRpYyBib29sIG5vdGlmaWNhdGlvbnNFbmFibGVkKCkgeyByZXR1cm4gaXNOb3RpZmljYXRpb25z
RW5hYmxlZDsgfQorCiBwcml2YXRlOgogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMoKSB7IH0K
IAogICAgIHN0YXRpYyBib29sIGlzRGF0YWJhc2VFbmFibGVkOworICAgIHN0YXRpYyBib29sIGlz
Tm90aWZpY2F0aW9uc0VuYWJsZWQ7CiB9OwogCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCkluZGV4
OiBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3Bw
CShyZXZpc2lvbiA0OTk5NikKKysrIFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9NV2lu
ZG93Q3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDYsNyArNDYsNiBAQAogI2luY2x1ZGUg
IkZyYW1lVmlldy5oIgogI2luY2x1ZGUgIkhUTUxDb2xsZWN0aW9uLmgiCiAjaW5jbHVkZSAiTWVk
aWFQbGF5ZXIuaCIKLSNpbmNsdWRlICJOb3RpZmljYXRpb25DZW50ZXIuaCIKICNpbmNsdWRlICJQ
YWdlLmgiCiAjaW5jbHVkZSAiUGxhdGZvcm1TY3JlZW4uaCIKICNpbmNsdWRlICJSdW50aW1lRW5h
YmxlZEZlYXR1cmVzLmgiCkBAIC0zMDQsNyArMzAzLDcgQEAgQUNDRVNTT1JfUlVOVElNRV9FTkFC
TEVSKERPTVdpbmRvd1Nlc3NpbwogI2lmIEVOQUJMRShOT1RJRklDQVRJT05TKQogQUNDRVNTT1Jf
UlVOVElNRV9FTkFCTEVSKERPTVdpbmRvd1dlYmtpdE5vdGlmaWNhdGlvbnMpCiB7Ci0gICAgcmV0
dXJuIE5vdGlmaWNhdGlvbkNlbnRlcjo6aXNBdmFpbGFibGUoKTsKKyAgICByZXR1cm4gV2ViQ29y
ZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6bm90aWZpY2F0aW9uc0VuYWJsZWQoKTsKIH0KICNl
bmRpZgogCkluZGV4OiBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOFdvcmtlckNvbnRleHRD
dXN0b20uY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4V29y
a2VyQ29udGV4dEN1c3RvbS5jcHAJKHJldmlzaW9uIDQ5OTk2KQorKysgV2ViQ29yZS9iaW5kaW5n
cy92OC9jdXN0b20vVjhXb3JrZXJDb250ZXh0Q3VzdG9tLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MzQsNyArMzQsNyBAQAogCiAjaW5jbHVkZSAiRE9NVGltZXIuaCIKICNpbmNsdWRlICJFeGNlcHRp
b25Db2RlLmgiCi0jaW5jbHVkZSAiTm90aWZpY2F0aW9uQ2VudGVyLmgiCisjaW5jbHVkZSAiUnVu
dGltZUVuYWJsZWRGZWF0dXJlcy5oIgogI2luY2x1ZGUgIlNjaGVkdWxlZEFjdGlvbi5oIgogI2lu
Y2x1ZGUgIlY4QmluZGluZy5oIgogI2luY2x1ZGUgIlY4Q3VzdG9tQmluZGluZy5oIgpAQCAtNDks
NyArNDksNyBAQCBuYW1lc3BhY2UgV2ViQ29yZSB7CiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMp
CiBBQ0NFU1NPUl9SVU5USU1FX0VOQUJMRVIoV29ya2VyQ29udGV4dFdlYmtpdE5vdGlmaWNhdGlv
bnMpCiB7Ci0gICAgcmV0dXJuIE5vdGlmaWNhdGlvbkNlbnRlcjo6aXNBdmFpbGFibGUoKTsKKyAg
ICByZXR1cm4gV2ViQ29yZTo6UnVudGltZUVuYWJsZWRGZWF0dXJlczo6bm90aWZpY2F0aW9uc0Vu
YWJsZWQoKTsKIH0KICNlbmRpZgogCkluZGV4OiBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZp
Y2F0aW9uQ2VudGVyLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90
aWZpY2F0aW9uQ2VudGVyLmNwcAkocmV2aXNpb24gNDk5OTYpCisrKyBXZWJDb3JlL25vdGlmaWNh
dGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDAsMjAgKzQw
LDYgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCi0jaWYgVVNFKFY4KQotc3RhdGljIGJvb2wg
bm90aWZpY2F0aW9uQ2VudGVyQXZhaWxhYmxlID0gZmFsc2U7Ci0KLXZvaWQgTm90aWZpY2F0aW9u
Q2VudGVyOjpzZXRJc0F2YWlsYWJsZShib29sIGF2YWlsYWJsZSkKLXsKLSAgICBub3RpZmljYXRp
b25DZW50ZXJBdmFpbGFibGUgPSBhdmFpbGFibGU7Ci19Ci0KLWJvb2wgTm90aWZpY2F0aW9uQ2Vu
dGVyOjppc0F2YWlsYWJsZSgpCi17Ci0gICAgcmV0dXJuIG5vdGlmaWNhdGlvbkNlbnRlckF2YWls
YWJsZTsKLX0KLSNlbmRpZgotCiBOb3RpZmljYXRpb25DZW50ZXI6Ok5vdGlmaWNhdGlvbkNlbnRl
cihTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBOb3RpZmljYXRpb25QcmVzZW50ZXIq
IHByZXNlbnRlcikgCiAgICAgOiBBY3RpdmVET01PYmplY3QoY29udGV4dCwgdGhpcykKICAgICAs
IG1fc2NyaXB0RXhlY3V0aW9uQ29udGV4dChjb250ZXh0KQpJbmRleDogV2ViQ29yZS9ub3RpZmlj
YXRpb25zL05vdGlmaWNhdGlvbkNlbnRlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvbm90aWZp
Y2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaAkocmV2aXNpb24gNDk5OTYpCisrKyBXZWJDb3Jl
L25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2VudGVyLmgJKHdvcmtpbmcgY29weSkKQEAgLTQ3
LDEwICs0Nyw2IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIE5vdGlmaWNhdGlv
bkNlbnRlciA6IHB1YmxpYyBSZWZDb3VudGVkPE5vdGlmaWNhdGlvbkNlbnRlcj4sIHB1YmxpYyBB
Y3RpdmVET01PYmplY3QgeyAKICAgICBwdWJsaWM6Ci0jaWYgVVNFKFY4KQotICAgICAgICBzdGF0
aWMgdm9pZCBzZXRJc0F2YWlsYWJsZShib29sKTsKLSAgICAgICAgc3RhdGljIGJvb2wgaXNBdmFp
bGFibGUoKTsKLSNlbmRpZgogICAgICAgICBzdGF0aWMgUGFzc1JlZlB0cjxOb3RpZmljYXRpb25D
ZW50ZXI+IGNyZWF0ZShTY3JpcHRFeGVjdXRpb25Db250ZXh0KiBjb250ZXh0LCBOb3RpZmljYXRp
b25QcmVzZW50ZXIqIHByZXNlbnRlcikgeyByZXR1cm4gYWRvcHRSZWYobmV3IE5vdGlmaWNhdGlv
bkNlbnRlcihjb250ZXh0LCBwcmVzZW50ZXIpKTsgfQogCiAgICAgICAgIE5vdGlmaWNhdGlvbiog
Y3JlYXRlSFRNTE5vdGlmaWNhdGlvbihjb25zdCBTdHJpbmcmIFVSSSwgRXhjZXB0aW9uQ29kZSYg
ZWMpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>42219</attachid>
            <date>2009-10-30 11:21:32 -0700</date>
            <delta_ts>2009-10-30 11:39:41 -0700</delta_ts>
            <desc>new patch for the new way </desc>
            <filename>bug30409redux.diff</filename>
            <type>text/plain</type>
            <size>6258</size>
            <attacher name="John Gregg">johnnyg</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1MDM0NSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjYgQEAKKzIwMDktMTAtMzAgIEpvaG4gR3JlZ2cgIDxqb2hubnlnQGdvb2dsZS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTmVl
ZCB0byB0dXJuIG9mZiBub3RpZmljYXRpb25zIHByb3Blcmx5IGF0IHJ1bnRpbWUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwNDA5CisKKyAgICAgICAg
TW92aW5nIHRoZSBub3RpZmljYXRpb25zRW5hYmxlZCBiaXQgZnJvbSBOb3RpZmljYXRpb25DZW50
ZXIKKyAgICAgICAgdG8gdGhlIG5ldyBWOCBSdW50aW1lRW5hYmxlZEZlYXR1cmVzIG9iamVjdC4K
KworICAgICAgICBKdXN0IG1vdmluZyBhIGJpdCBhcm91bmQsIHNvIG5vIG5ldyB0ZXN0cy4KKwor
ICAgICAgICAqIGJpbmRpbmdzL3Y4L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwOgorICAgICAg
ICAqIGJpbmRpbmdzL3Y4L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldE5vdGlmaWNhdGlvbnNFbmFibGVkKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6Om5vdGlmaWNhdGlvbnNFbmFi
bGVkKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6QUNDRVNTT1JfUlVOVElNRV9FTkFCTEVSKToKKyAgICAgICAg
KiBiaW5kaW5ncy92OC9jdXN0b20vVjhXb3JrZXJDb250ZXh0Q3VzdG9tLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkFDQ0VTU09SX1JVTlRJTUVfRU5BQkxFUik6CisgICAgICAgICogbm90aWZpY2F0
aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuY3BwOgorICAgICAgICAqIG5vdGlmaWNhdGlvbnMvTm90
aWZpY2F0aW9uQ2VudGVyLmg6CisKIDIwMDktMTAtMzAgIFNoaW5pY2hpcm8gSGFtYWppICA8aGFt
YWppQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KSW5k
ZXg6IFdlYkNvcmUvYmluZGluZ3MvdjgvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy92OC9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAko
cmV2aXNpb24gNTAzNDUpCisrKyBXZWJDb3JlL2JpbmRpbmdzL3Y4L1J1bnRpbWVFbmFibGVkRmVh
dHVyZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNiw1ICszNiw2IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIGJvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNEYXRhYmFzZUVuYWJsZWQgPSBm
YWxzZTsKIGJvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNMb2NhbFN0b3JhZ2VFbmFibGVk
ID0gdHJ1ZTsKIGJvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNTZXNzaW9uU3RvcmFnZUVu
YWJsZWQgPSB0cnVlOworYm9vbCBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjppc05vdGlmaWNhdGlv
bnNFbmFibGVkID0gZmFsc2U7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNv
cmUvYmluZGluZ3MvdjgvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvYmluZGluZ3MvdjgvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCShyZXZpc2lvbiA1MDM0
NSkKKysrIFdlYkNvcmUvYmluZGluZ3MvdjgvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC00NSw2ICs0NSw5IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBzZXRT
ZXNzaW9uU3RvcmFnZUVuYWJsZWQoYm9vbCBpc0VuYWJsZWQpIHsgaXNTZXNzaW9uU3RvcmFnZUVu
YWJsZWQgPSBpc0VuYWJsZWQ7IH0KICAgICBzdGF0aWMgYm9vbCBzZXNzaW9uU3RvcmFnZUVuYWJs
ZWQoKSB7IHJldHVybiBpc1Nlc3Npb25TdG9yYWdlRW5hYmxlZDsgfQogCisgICAgc3RhdGljIHZv
aWQgc2V0Tm90aWZpY2F0aW9uc0VuYWJsZWQoYm9vbCBpc0VuYWJsZWQpIHsgaXNOb3RpZmljYXRp
b25zRW5hYmxlZCA9IGlzRW5hYmxlZDsgfQorICAgIHN0YXRpYyBib29sIG5vdGlmaWNhdGlvbnNF
bmFibGVkKCkgeyByZXR1cm4gaXNOb3RpZmljYXRpb25zRW5hYmxlZDsgfQorCiBwcml2YXRlOgog
ICAgIC8vIE5ldmVyIGluc3RhbnRpYXRlLgogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMoKSB7
IH0KQEAgLTUyLDYgKzU1LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMgYm9vbCBpc0RhdGFiYXNl
RW5hYmxlZDsKICAgICBzdGF0aWMgYm9vbCBpc0xvY2FsU3RvcmFnZUVuYWJsZWQ7CiAgICAgc3Rh
dGljIGJvb2wgaXNTZXNzaW9uU3RvcmFnZUVuYWJsZWQ7CisgICAgc3RhdGljIGJvb2wgaXNOb3Rp
ZmljYXRpb25zRW5hYmxlZDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdl
YkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9NV2luZG93Q3VzdG9tLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAJKHJl
dmlzaW9uIDUwMzQ1KQorKysgV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dD
dXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00Niw3ICs0Niw2IEBACiAjaW5jbHVkZSAiRnJh
bWVWaWV3LmgiCiAjaW5jbHVkZSAiSFRNTENvbGxlY3Rpb24uaCIKICNpbmNsdWRlICJNZWRpYVBs
YXllci5oIgotI2luY2x1ZGUgIk5vdGlmaWNhdGlvbkNlbnRlci5oIgogI2luY2x1ZGUgIlBhZ2Uu
aCIKICNpbmNsdWRlICJQbGF0Zm9ybVNjcmVlbi5oIgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVk
RmVhdHVyZXMuaCIKQEAgLTMwNCw3ICszMDMsNyBAQCBBQ0NFU1NPUl9SVU5USU1FX0VOQUJMRVIo
RE9NV2luZG93U2Vzc2lvCiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCiBBQ0NFU1NPUl9SVU5U
SU1FX0VOQUJMRVIoRE9NV2luZG93V2Via2l0Tm90aWZpY2F0aW9ucykKIHsKLSAgICByZXR1cm4g
Tm90aWZpY2F0aW9uQ2VudGVyOjppc0F2YWlsYWJsZSgpOworICAgIHJldHVybiBXZWJDb3JlOjpS
dW50aW1lRW5hYmxlZEZlYXR1cmVzOjpub3RpZmljYXRpb25zRW5hYmxlZCgpOwogfQogI2VuZGlm
CiAKSW5kZXg6IFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4V29ya2VyQ29udGV4dEN1c3Rv
bS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhXb3JrZXJD
b250ZXh0Q3VzdG9tLmNwcAkocmV2aXNpb24gNTAzNDUpCisrKyBXZWJDb3JlL2JpbmRpbmdzL3Y4
L2N1c3RvbS9WOFdvcmtlckNvbnRleHRDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNCw3
ICszNCw3IEBACiAKICNpbmNsdWRlICJET01UaW1lci5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNv
ZGUuaCIKLSNpbmNsdWRlICJOb3RpZmljYXRpb25DZW50ZXIuaCIKKyNpbmNsdWRlICJSdW50aW1l
RW5hYmxlZEZlYXR1cmVzLmgiCiAjaW5jbHVkZSAiU2NoZWR1bGVkQWN0aW9uLmgiCiAjaW5jbHVk
ZSAiVjhCaW5kaW5nLmgiCiAjaW5jbHVkZSAiVjhDdXN0b21CaW5kaW5nLmgiCkBAIC00OSw3ICs0
OSw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKIEFD
Q0VTU09SX1JVTlRJTUVfRU5BQkxFUihXb3JrZXJDb250ZXh0V2Via2l0Tm90aWZpY2F0aW9ucykK
IHsKLSAgICByZXR1cm4gTm90aWZpY2F0aW9uQ2VudGVyOjppc0F2YWlsYWJsZSgpOworICAgIHJl
dHVybiBXZWJDb3JlOjpSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjpub3RpZmljYXRpb25zRW5hYmxl
ZCgpOwogfQogI2VuZGlmCiAKSW5kZXg6IFdlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRp
b25DZW50ZXIuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmlj
YXRpb25DZW50ZXIuY3BwCShyZXZpc2lvbiA1MDM0NSkKKysrIFdlYkNvcmUvbm90aWZpY2F0aW9u
cy9Ob3RpZmljYXRpb25DZW50ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MCwyMCArNDAsNiBA
QAogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLSNpZiBVU0UoVjgpCi1zdGF0aWMgYm9vbCBub3Rp
ZmljYXRpb25DZW50ZXJBdmFpbGFibGUgPSBmYWxzZTsKLQotdm9pZCBOb3RpZmljYXRpb25DZW50
ZXI6OnNldElzQXZhaWxhYmxlKGJvb2wgYXZhaWxhYmxlKQotewotICAgIG5vdGlmaWNhdGlvbkNl
bnRlckF2YWlsYWJsZSA9IGF2YWlsYWJsZTsKLX0KLQotYm9vbCBOb3RpZmljYXRpb25DZW50ZXI6
OmlzQXZhaWxhYmxlKCkKLXsKLSAgICByZXR1cm4gbm90aWZpY2F0aW9uQ2VudGVyQXZhaWxhYmxl
OwotfQotI2VuZGlmCi0KIE5vdGlmaWNhdGlvbkNlbnRlcjo6Tm90aWZpY2F0aW9uQ2VudGVyKFNj
cmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJl
c2VudGVyKSAKICAgICA6IEFjdGl2ZURPTU9iamVjdChjb250ZXh0LCB0aGlzKQogICAgICwgbV9z
Y3JpcHRFeGVjdXRpb25Db250ZXh0KGNvbnRleHQpCkluZGV4OiBXZWJDb3JlL25vdGlmaWNhdGlv
bnMvTm90aWZpY2F0aW9uQ2VudGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9ub3RpZmljYXRp
b25zL05vdGlmaWNhdGlvbkNlbnRlci5oCShyZXZpc2lvbiA1MDM0NSkKKysrIFdlYkNvcmUvbm90
aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtNDcsMTAg
KzQ3LDYgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3MgTm90aWZpY2F0aW9uQ2Vu
dGVyIDogcHVibGljIFJlZkNvdW50ZWQ8Tm90aWZpY2F0aW9uQ2VudGVyPiwgcHVibGljIEFjdGl2
ZURPTU9iamVjdCB7IAogICAgIHB1YmxpYzoKLSNpZiBVU0UoVjgpCi0gICAgICAgIHN0YXRpYyB2
b2lkIHNldElzQXZhaWxhYmxlKGJvb2wpOwotICAgICAgICBzdGF0aWMgYm9vbCBpc0F2YWlsYWJs
ZSgpOwotI2VuZGlmCiAgICAgICAgIHN0YXRpYyBQYXNzUmVmUHRyPE5vdGlmaWNhdGlvbkNlbnRl
cj4gY3JlYXRlKFNjcmlwdEV4ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIE5vdGlmaWNhdGlvblBy
ZXNlbnRlciogcHJlc2VudGVyKSB7IHJldHVybiBhZG9wdFJlZihuZXcgTm90aWZpY2F0aW9uQ2Vu
dGVyKGNvbnRleHQsIHByZXNlbnRlcikpOyB9CiAKICAgICAgICAgTm90aWZpY2F0aW9uKiBjcmVh
dGVIVE1MTm90aWZpY2F0aW9uKGNvbnN0IFN0cmluZyYgVVJJLCBFeGNlcHRpb25Db2RlJiBlYykK
SW5kZXg6IFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUv
cGFnZS9ET01XaW5kb3cuY3BwCShyZXZpc2lvbiA1MDM0NSkKKysrIFdlYkNvcmUvcGFnZS9ET01X
aW5kb3cuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02MjUsOSArNjI1LDYgQEAgTm90aWZpY2F0aW9u
Q2VudGVyKiBET01XaW5kb3c6OndlYmtpdE5vdAogICAgIGlmICghcGFnZSkKICAgICAgICAgcmV0
dXJuIDA7CiAKLSAgICBpZiAoIXBhZ2UtPnNldHRpbmdzKCktPmV4cGVyaW1lbnRhbE5vdGlmaWNh
dGlvbnNFbmFibGVkKCkpCi0gICAgICAgIHJldHVybiAwOwotCiAgICAgTm90aWZpY2F0aW9uUHJl
c2VudGVyKiBwcm92aWRlciA9IHBhZ2UtPmNocm9tZSgpLT5ub3RpZmljYXRpb25QcmVzZW50ZXIo
KTsKICAgICBpZiAocHJvdmlkZXIpIAogICAgICAgICBtX25vdGlmaWNhdGlvbnMgPSBOb3RpZmlj
YXRpb25DZW50ZXI6OmNyZWF0ZShkb2N1bWVudCwgcHJvdmlkZXIpOyAgICAK
</data>
<flag name="review"
          id="23722"
          type_id="1"
          status="+"
          setter="levin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>42221</attachid>
            <date>2009-10-30 11:39:41 -0700</date>
            <delta_ts>2009-10-30 12:37:19 -0700</delta_ts>
            <desc>patch w/levin&apos;s feedback</desc>
            <filename>bug30409redux2.diff</filename>
            <type>text/plain</type>
            <size>6240</size>
            <attacher name="John Gregg">johnnyg</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1MDM0NSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjYgQEAKKzIwMDktMTAtMzAgIEpvaG4gR3JlZ2cgIDxqb2hubnlnQGdvb2dsZS5j
b20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgTmVl
ZCB0byB0dXJuIG9mZiBub3RpZmljYXRpb25zIHByb3Blcmx5IGF0IHJ1bnRpbWUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMwNDA5CisKKyAgICAgICAg
TW92aW5nIHRoZSBub3RpZmljYXRpb25zRW5hYmxlZCBiaXQgZnJvbSBOb3RpZmljYXRpb25DZW50
ZXIKKyAgICAgICAgdG8gdGhlIG5ldyBWOCBSdW50aW1lRW5hYmxlZEZlYXR1cmVzIG9iamVjdC4K
KworICAgICAgICBKdXN0IG1vdmluZyBhIGJpdCBhcm91bmQsIHNvIG5vIG5ldyB0ZXN0cy4KKwor
ICAgICAgICAqIGJpbmRpbmdzL3Y4L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuY3BwOgorICAgICAg
ICAqIGJpbmRpbmdzL3Y4L1J1bnRpbWVFbmFibGVkRmVhdHVyZXMuaDoKKyAgICAgICAgKFdlYkNv
cmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6OnNldE5vdGlmaWNhdGlvbnNFbmFibGVkKToKKyAg
ICAgICAgKFdlYkNvcmU6OlJ1bnRpbWVFbmFibGVkRmVhdHVyZXM6Om5vdGlmaWNhdGlvbnNFbmFi
bGVkKToKKyAgICAgICAgKiBiaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dDdXN0b20uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6QUNDRVNTT1JfUlVOVElNRV9FTkFCTEVSKToKKyAgICAgICAg
KiBiaW5kaW5ncy92OC9jdXN0b20vVjhXb3JrZXJDb250ZXh0Q3VzdG9tLmNwcDoKKyAgICAgICAg
KFdlYkNvcmU6OkFDQ0VTU09SX1JVTlRJTUVfRU5BQkxFUik6CisgICAgICAgICogbm90aWZpY2F0
aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuY3BwOgorICAgICAgICAqIG5vdGlmaWNhdGlvbnMvTm90
aWZpY2F0aW9uQ2VudGVyLmg6CisKIDIwMDktMTAtMzAgIFNoaW5pY2hpcm8gSGFtYWppICA8aGFt
YWppQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBBZGxlci4KSW5k
ZXg6IFdlYkNvcmUvYmluZGluZ3MvdjgvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5jcHAKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy92OC9SdW50aW1lRW5hYmxlZEZlYXR1cmVzLmNwcAko
cmV2aXNpb24gNTAzNDUpCisrKyBXZWJDb3JlL2JpbmRpbmdzL3Y4L1J1bnRpbWVFbmFibGVkRmVh
dHVyZXMuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNiw1ICszNiw2IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIGJvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNEYXRhYmFzZUVuYWJsZWQgPSBm
YWxzZTsKIGJvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNMb2NhbFN0b3JhZ2VFbmFibGVk
ID0gdHJ1ZTsKIGJvb2wgUnVudGltZUVuYWJsZWRGZWF0dXJlczo6aXNTZXNzaW9uU3RvcmFnZUVu
YWJsZWQgPSB0cnVlOworYm9vbCBSdW50aW1lRW5hYmxlZEZlYXR1cmVzOjppc05vdGlmaWNhdGlv
bnNFbmFibGVkID0gZmFsc2U7CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNv
cmUvYmluZGluZ3MvdjgvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvYmluZGluZ3MvdjgvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCShyZXZpc2lvbiA1MDM0
NSkKKysrIFdlYkNvcmUvYmluZGluZ3MvdjgvUnVudGltZUVuYWJsZWRGZWF0dXJlcy5oCSh3b3Jr
aW5nIGNvcHkpCkBAIC00NSw2ICs0NSw5IEBAIHB1YmxpYzoKICAgICBzdGF0aWMgdm9pZCBzZXRT
ZXNzaW9uU3RvcmFnZUVuYWJsZWQoYm9vbCBpc0VuYWJsZWQpIHsgaXNTZXNzaW9uU3RvcmFnZUVu
YWJsZWQgPSBpc0VuYWJsZWQ7IH0KICAgICBzdGF0aWMgYm9vbCBzZXNzaW9uU3RvcmFnZUVuYWJs
ZWQoKSB7IHJldHVybiBpc1Nlc3Npb25TdG9yYWdlRW5hYmxlZDsgfQogCisgICAgc3RhdGljIHZv
aWQgc2V0Tm90aWZpY2F0aW9uc0VuYWJsZWQoYm9vbCBpc0VuYWJsZWQpIHsgaXNOb3RpZmljYXRp
b25zRW5hYmxlZCA9IGlzRW5hYmxlZDsgfQorICAgIHN0YXRpYyBib29sIG5vdGlmaWNhdGlvbnNF
bmFibGVkKCkgeyByZXR1cm4gaXNOb3RpZmljYXRpb25zRW5hYmxlZDsgfQorCiBwcml2YXRlOgog
ICAgIC8vIE5ldmVyIGluc3RhbnRpYXRlLgogICAgIFJ1bnRpbWVFbmFibGVkRmVhdHVyZXMoKSB7
IH0KQEAgLTUyLDYgKzU1LDcgQEAgcHJpdmF0ZToKICAgICBzdGF0aWMgYm9vbCBpc0RhdGFiYXNl
RW5hYmxlZDsKICAgICBzdGF0aWMgYm9vbCBpc0xvY2FsU3RvcmFnZUVuYWJsZWQ7CiAgICAgc3Rh
dGljIGJvb2wgaXNTZXNzaW9uU3RvcmFnZUVuYWJsZWQ7CisgICAgc3RhdGljIGJvb2wgaXNOb3Rp
ZmljYXRpb25zRW5hYmxlZDsKIH07CiAKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdl
YkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4RE9NV2luZG93Q3VzdG9tLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9WOERPTVdpbmRvd0N1c3RvbS5jcHAJKHJl
dmlzaW9uIDUwMzQ1KQorKysgV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhET01XaW5kb3dD
dXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00Niw3ICs0Niw2IEBACiAjaW5jbHVkZSAiRnJh
bWVWaWV3LmgiCiAjaW5jbHVkZSAiSFRNTENvbGxlY3Rpb24uaCIKICNpbmNsdWRlICJNZWRpYVBs
YXllci5oIgotI2luY2x1ZGUgIk5vdGlmaWNhdGlvbkNlbnRlci5oIgogI2luY2x1ZGUgIlBhZ2Uu
aCIKICNpbmNsdWRlICJQbGF0Zm9ybVNjcmVlbi5oIgogI2luY2x1ZGUgIlJ1bnRpbWVFbmFibGVk
RmVhdHVyZXMuaCIKQEAgLTMwNCw3ICszMDMsNyBAQCBBQ0NFU1NPUl9SVU5USU1FX0VOQUJMRVIo
RE9NV2luZG93U2Vzc2lvCiAjaWYgRU5BQkxFKE5PVElGSUNBVElPTlMpCiBBQ0NFU1NPUl9SVU5U
SU1FX0VOQUJMRVIoRE9NV2luZG93V2Via2l0Tm90aWZpY2F0aW9ucykKIHsKLSAgICByZXR1cm4g
Tm90aWZpY2F0aW9uQ2VudGVyOjppc0F2YWlsYWJsZSgpOworICAgIHJldHVybiBSdW50aW1lRW5h
YmxlZEZlYXR1cmVzOjpub3RpZmljYXRpb25zRW5hYmxlZCgpOwogfQogI2VuZGlmCiAKSW5kZXg6
IFdlYkNvcmUvYmluZGluZ3MvdjgvY3VzdG9tL1Y4V29ya2VyQ29udGV4dEN1c3RvbS5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9iaW5kaW5ncy92OC9jdXN0b20vVjhXb3JrZXJDb250ZXh0Q3Vz
dG9tLmNwcAkocmV2aXNpb24gNTAzNDUpCisrKyBXZWJDb3JlL2JpbmRpbmdzL3Y4L2N1c3RvbS9W
OFdvcmtlckNvbnRleHRDdXN0b20uY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zNCw3ICszNCw3IEBA
CiAKICNpbmNsdWRlICJET01UaW1lci5oIgogI2luY2x1ZGUgIkV4Y2VwdGlvbkNvZGUuaCIKLSNp
bmNsdWRlICJOb3RpZmljYXRpb25DZW50ZXIuaCIKKyNpbmNsdWRlICJSdW50aW1lRW5hYmxlZEZl
YXR1cmVzLmgiCiAjaW5jbHVkZSAiU2NoZWR1bGVkQWN0aW9uLmgiCiAjaW5jbHVkZSAiVjhCaW5k
aW5nLmgiCiAjaW5jbHVkZSAiVjhDdXN0b21CaW5kaW5nLmgiCkBAIC00OSw3ICs0OSw3IEBAIG5h
bWVzcGFjZSBXZWJDb3JlIHsKICNpZiBFTkFCTEUoTk9USUZJQ0FUSU9OUykKIEFDQ0VTU09SX1JV
TlRJTUVfRU5BQkxFUihXb3JrZXJDb250ZXh0V2Via2l0Tm90aWZpY2F0aW9ucykKIHsKLSAgICBy
ZXR1cm4gTm90aWZpY2F0aW9uQ2VudGVyOjppc0F2YWlsYWJsZSgpOworICAgIHJldHVybiBSdW50
aW1lRW5hYmxlZEZlYXR1cmVzOjpub3RpZmljYXRpb25zRW5hYmxlZCgpOwogfQogI2VuZGlmCiAK
SW5kZXg6IFdlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50ZXIuY3BwCShy
ZXZpc2lvbiA1MDM0NSkKKysrIFdlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25DZW50
ZXIuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC00MCwyMCArNDAsNiBAQAogCiBuYW1lc3BhY2UgV2Vi
Q29yZSB7CiAKLSNpZiBVU0UoVjgpCi1zdGF0aWMgYm9vbCBub3RpZmljYXRpb25DZW50ZXJBdmFp
bGFibGUgPSBmYWxzZTsKLQotdm9pZCBOb3RpZmljYXRpb25DZW50ZXI6OnNldElzQXZhaWxhYmxl
KGJvb2wgYXZhaWxhYmxlKQotewotICAgIG5vdGlmaWNhdGlvbkNlbnRlckF2YWlsYWJsZSA9IGF2
YWlsYWJsZTsKLX0KLQotYm9vbCBOb3RpZmljYXRpb25DZW50ZXI6OmlzQXZhaWxhYmxlKCkKLXsK
LSAgICByZXR1cm4gbm90aWZpY2F0aW9uQ2VudGVyQXZhaWxhYmxlOwotfQotI2VuZGlmCi0KIE5v
dGlmaWNhdGlvbkNlbnRlcjo6Tm90aWZpY2F0aW9uQ2VudGVyKFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQqIGNvbnRleHQsIE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJlc2VudGVyKSAKICAgICA6IEFj
dGl2ZURPTU9iamVjdChjb250ZXh0LCB0aGlzKQogICAgICwgbV9zY3JpcHRFeGVjdXRpb25Db250
ZXh0KGNvbnRleHQpCkluZGV4OiBXZWJDb3JlL25vdGlmaWNhdGlvbnMvTm90aWZpY2F0aW9uQ2Vu
dGVyLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9ub3RpZmljYXRpb25zL05vdGlmaWNhdGlvbkNl
bnRlci5oCShyZXZpc2lvbiA1MDM0NSkKKysrIFdlYkNvcmUvbm90aWZpY2F0aW9ucy9Ob3RpZmlj
YXRpb25DZW50ZXIuaAkod29ya2luZyBjb3B5KQpAQCAtNDcsMTAgKzQ3LDYgQEAgbmFtZXNwYWNl
IFdlYkNvcmUgewogCiAgICAgY2xhc3MgTm90aWZpY2F0aW9uQ2VudGVyIDogcHVibGljIFJlZkNv
dW50ZWQ8Tm90aWZpY2F0aW9uQ2VudGVyPiwgcHVibGljIEFjdGl2ZURPTU9iamVjdCB7IAogICAg
IHB1YmxpYzoKLSNpZiBVU0UoVjgpCi0gICAgICAgIHN0YXRpYyB2b2lkIHNldElzQXZhaWxhYmxl
KGJvb2wpOwotICAgICAgICBzdGF0aWMgYm9vbCBpc0F2YWlsYWJsZSgpOwotI2VuZGlmCiAgICAg
ICAgIHN0YXRpYyBQYXNzUmVmUHRyPE5vdGlmaWNhdGlvbkNlbnRlcj4gY3JlYXRlKFNjcmlwdEV4
ZWN1dGlvbkNvbnRleHQqIGNvbnRleHQsIE5vdGlmaWNhdGlvblByZXNlbnRlciogcHJlc2VudGVy
KSB7IHJldHVybiBhZG9wdFJlZihuZXcgTm90aWZpY2F0aW9uQ2VudGVyKGNvbnRleHQsIHByZXNl
bnRlcikpOyB9CiAKICAgICAgICAgTm90aWZpY2F0aW9uKiBjcmVhdGVIVE1MTm90aWZpY2F0aW9u
KGNvbnN0IFN0cmluZyYgVVJJLCBFeGNlcHRpb25Db2RlJiBlYykKSW5kZXg6IFdlYkNvcmUvcGFn
ZS9ET01XaW5kb3cuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3Bw
CShyZXZpc2lvbiA1MDM0NSkKKysrIFdlYkNvcmUvcGFnZS9ET01XaW5kb3cuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC02MjUsOSArNjI1LDYgQEAgTm90aWZpY2F0aW9uQ2VudGVyKiBET01XaW5kb3c6
OndlYmtpdE5vdAogICAgIGlmICghcGFnZSkKICAgICAgICAgcmV0dXJuIDA7CiAKLSAgICBpZiAo
IXBhZ2UtPnNldHRpbmdzKCktPmV4cGVyaW1lbnRhbE5vdGlmaWNhdGlvbnNFbmFibGVkKCkpCi0g
ICAgICAgIHJldHVybiAwOwotCiAgICAgTm90aWZpY2F0aW9uUHJlc2VudGVyKiBwcm92aWRlciA9
IHBhZ2UtPmNocm9tZSgpLT5ub3RpZmljYXRpb25QcmVzZW50ZXIoKTsKICAgICBpZiAocHJvdmlk
ZXIpIAogICAgICAgICBtX25vdGlmaWNhdGlvbnMgPSBOb3RpZmljYXRpb25DZW50ZXI6OmNyZWF0
ZShkb2N1bWVudCwgcHJvdmlkZXIpOyAgICAK
</data>

          </attachment>
      

    </bug>

</bugzilla>