<?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>42479</bug_id>
          
          <creation_ts>2010-07-16 13:33:19 -0700</creation_ts>
          <short_desc>[Chromium] Implement WebFormElement::userSubmitted().</short_desc>
          <delta_ts>2010-07-20 16:23:41 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</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>0</everconfirmed>
          <reporter name="James Hawkins">jhawkins</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>dhollowa</cc>
    
    <cc>fishd</cc>
    
    <cc>jcivelli</cc>
    
    <cc>levin</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>252681</commentid>
    <comment_count>0</comment_count>
    <who name="James Hawkins">jhawkins</who>
    <bug_when>2010-07-16 13:33:19 -0700</bug_when>
    <thetext>[Chromium] Implement WebFormElement::userSubmitted().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252682</commentid>
    <comment_count>1</comment_count>
      <attachid>61843</attachid>
    <who name="James Hawkins">jhawkins</who>
    <bug_when>2010-07-16 13:34:51 -0700</bug_when>
    <thetext>Created attachment 61843
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252703</commentid>
    <comment_count>2</comment_count>
    <who name="David Holloway">dhollowa</who>
    <bug_when>2010-07-16 14:31:03 -0700</bug_when>
    <thetext>LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252748</commentid>
    <comment_count>3</comment_count>
    <who name="Jay Civelli">jcivelli</who>
    <bug_when>2010-07-16 16:22:33 -0700</bug_when>
    <thetext>LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252875</commentid>
    <comment_count>4</comment_count>
      <attachid>61843</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-07-17 05:19:14 -0700</bug_when>
    <thetext>Comment on attachment 61843
Patch

Could you explain why we need this change in ChangeLog please?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>252947</commentid>
    <comment_count>5</comment_count>
      <attachid>61843</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-07-17 20:54:17 -0700</bug_when>
    <thetext>Comment on attachment 61843
Patch

WebCore/html/HTMLFormElement.cpp:409
 +      // common browsers( sick! ) allow it be canceled.
both spellings are correct according to the dictionary.  probably
better to leave the existing code unchanged.

WebKit/chromium/src/WebFormElement.cpp:71
 +      return constUnwrap&lt;HTMLFormElement&gt;()-&gt;submissionTrigger() == NotSubmittedByJavaScript;
are you sure you don&apos;t want to expose an enum for the variety
of submission trigger types?

WebKit/chromium/src/WebFormElement.cpp:69
 +  bool WebFormElement::userSubmitted() const
I&apos;m having a hard time understanding what this method name implies.  Is
this telling me that the user already submitted this form?  what happens
if the form is submitted multiple times (e.g., suppose it has a target
that corresponds to an IFRAME)?  what if the form is submitted once by
javascript and then once by user action?

what if the user clicks on a link, and some javascript runs, which
then calls form.submit()?  would that be regarded as a non-user
submitted form?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253479</commentid>
    <comment_count>6</comment_count>
    <who name="James Hawkins">jhawkins</who>
    <bug_when>2010-07-19 17:03:41 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 61843 [details])
&gt; Could you explain why we need this change in ChangeLog please?

Added more info to the ChangeLog.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253485</commentid>
    <comment_count>7</comment_count>
    <who name="James Hawkins">jhawkins</who>
    <bug_when>2010-07-19 17:08:16 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 61843 [details])
&gt; WebCore/html/HTMLFormElement.cpp:409
&gt;  +      // common browsers( sick! ) allow it be canceled.
&gt; both spellings are correct according to the dictionary.  probably
&gt; better to leave the existing code unchanged.
&gt; 

Done.

&gt; WebKit/chromium/src/WebFormElement.cpp:71
&gt;  +      return constUnwrap&lt;HTMLFormElement&gt;()-&gt;submissionTrigger() == NotSubmittedByJavaScript;
&gt; are you sure you don&apos;t want to expose an enum for the variety
&gt; of submission trigger types?
&gt; 

I thought about it, but decided not to over-engineer it for now (keeping it simple).  If a client needs to know more than just whether a user submitted the form, it&apos;s simple to add.

&gt; WebKit/chromium/src/WebFormElement.cpp:69
&gt;  +  bool WebFormElement::userSubmitted() const
&gt; I&apos;m having a hard time understanding what this method name implies.  Is
&gt; this telling me that the user already submitted this form?  what happens
&gt; if the form is submitted multiple times (e.g., suppose it has a target
&gt; that corresponds to an IFRAME)?  what if the form is submitted once by
&gt; javascript and then once by user action?
&gt; 

What do you think about wasUserSubmitted()? The value returned is for the last submitted form, so in the case you mention, if the client calls this method after the user submitted the form, it will return true.

&gt; what if the user clicks on a link, and some javascript runs, which
&gt; then calls form.submit()?  would that be regarded as a non-user
&gt; submitted form?

From my reading of the code, this latter case will not be consider user-submitted.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253488</commentid>
    <comment_count>8</comment_count>
      <attachid>62018</attachid>
    <who name="James Hawkins">jhawkins</who>
    <bug_when>2010-07-19 17:35:29 -0700</bug_when>
    <thetext>Created attachment 62018
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253559</commentid>
    <comment_count>9</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2010-07-19 22:50:25 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; I thought about it, but decided not to over-engineer it for now (keeping it 
&gt; simple).  If a client needs to know more than just whether a user submitted 
&gt; the form, it&apos;s simple to add.

OK


&gt; What do you think about wasUserSubmitted()? The value returned is for the last 
&gt; submitted form, so in the case you mention, if the client calls this method 
&gt; after the user submitted the form, it will return true.

Sounds better.  The verb helps.


&gt; &gt; what if the user clicks on a link, and some javascript runs, which
&gt; &gt; then calls form.submit()?  would that be regarded as a non-user
&gt; &gt; submitted form?
&gt; 
&gt; From my reading of the code, this latter case will not be consider user-
&gt; submitted.

OK</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253887</commentid>
    <comment_count>10</comment_count>
      <attachid>62105</attachid>
    <who name="James Hawkins">jhawkins</who>
    <bug_when>2010-07-20 13:27:54 -0700</bug_when>
    <thetext>Created attachment 62105
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>253889</commentid>
    <comment_count>11</comment_count>
    <who name="James Hawkins">jhawkins</who>
    <bug_when>2010-07-20 13:31:05 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #7)
&gt; 
&gt; &gt; What do you think about wasUserSubmitted()? The value returned is for the last 
&gt; &gt; submitted form, so in the case you mention, if the client calls this method 
&gt; &gt; after the user submitted the form, it will return true.
&gt; 
&gt; Sounds better.  The verb helps.
&gt; 

Done</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>254054</commentid>
    <comment_count>12</comment_count>
    <who name="James Hawkins">jhawkins</who>
    <bug_when>2010-07-20 16:23:41 -0700</bug_when>
    <thetext>Committed r63786: &lt;http://trac.webkit.org/changeset/63786&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>61843</attachid>
            <date>2010-07-16 13:34:51 -0700</date>
            <delta_ts>2010-07-19 17:35:26 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-42479-20100716133450.patch</filename>
            <type>text/plain</type>
            <size>5085</size>
            <attacher name="James Hawkins">jhawkins</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MzU3NikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMTAtMDctMTYgIEphbWVzIEhhd2tpbnMgIDxqaGF3a2luc0BjaHJv
bWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRXhwb3NlIHRoZSBmb3JtIHN1Ym1pc3Npb24gdHJpZ2dlciBvbiB0aGUgSFRNTEZvcm1FbGVt
ZW50IG9iamVjdC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTQyNDc5CisKKyAgICAgICAgTm8gbmV3IHRlc3RzIGFzIHRoaXMgaXMgb25seSB1c2VkIGJ5
IHRoZSBDaHJvbWl1bSBXZWJLaXQgQVBJLgorCisgICAgICAgICogaHRtbC9IVE1MRm9ybUVsZW1l
bnQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpIVE1MRm9ybUVsZW1l
bnQpOgorICAgICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpzdWJtaXQpOgorICAgICAg
ICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpyZXNldCk6CisgICAgICAgIChXZWJDb3JlOjpI
VE1MRm9ybUVsZW1lbnQ6OnN1Ym1pc3Npb25UcmlnZ2VyKToKKyAgICAgICAgKiBodG1sL0hUTUxG
b3JtRWxlbWVudC5oOgorCiAyMDEwLTA3LTE2ICBTaW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJA
YXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcuCkluZGV4OiBXZWJD
b3JlL2h0bWwvSFRNTEZvcm1FbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwv
SFRNTEZvcm1FbGVtZW50LmNwcAkocmV2aXNpb24gNjM1NzIpCisrKyBXZWJDb3JlL2h0bWwvSFRN
TEZvcm1FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtNzQsNiArNzQsNyBAQCBzdGF0aWMg
aW50NjRfdCBnZW5lcmF0ZUZvcm1EYXRhSWRlbnRpZmllCiAKIEhUTUxGb3JtRWxlbWVudDo6SFRN
TEZvcm1FbGVtZW50KGNvbnN0IFF1YWxpZmllZE5hbWUmIHRhZ05hbWUsIERvY3VtZW50KiBkb2N1
bWVudCkKICAgICA6IEhUTUxFbGVtZW50KHRhZ05hbWUsIGRvY3VtZW50KQorICAgICwgbV9zdWJt
aXNzaW9uVHJpZ2dlcihOb3RTdWJtaXR0ZWRCeUphdmFTY3JpcHQpCiAgICAgLCBtX2F1dG9jb21w
bGV0ZSh0cnVlKQogICAgICwgbV9pbnN1Ym1pdChmYWxzZSkKICAgICAsIG1fZG9pbmdzdWJtaXQo
ZmFsc2UpCkBAIC0zNzAsNiArMzcxLDcgQEAgdm9pZCBIVE1MRm9ybUVsZW1lbnQ6OnN1Ym1pdChF
dmVudCogZXZlbgogICAgIH0KIAogICAgIG1faW5zdWJtaXQgPSB0cnVlOworICAgIG1fc3VibWlz
c2lvblRyaWdnZXIgPSBmb3JtU3VibWlzc2lvblRyaWdnZXI7CiAKICAgICBIVE1MRm9ybUNvbnRy
b2xFbGVtZW50KiBmaXJzdFN1Y2Nlc3NmdWxTdWJtaXRCdXR0b24gPSAwOwogICAgIGJvb2wgbmVl
ZEJ1dHRvbkFjdGl2YXRpb24gPSBhY3RpdmF0ZVN1Ym1pdEJ1dHRvbjsgLy8gZG8gd2UgbmVlZCB0
byBhY3RpdmF0ZSBhIHN1Ym1pdCBidXR0b24/CkBAIC00MDQsNyArNDA2LDcgQEAgdm9pZCBIVE1M
Rm9ybUVsZW1lbnQ6OnJlc2V0KCkKICAgICBtX2lucmVzZXQgPSB0cnVlOwogCiAgICAgLy8gIyMj
IERPTTIgbGFiZWxzIHRoaXMgZXZlbnQgYXMgbm90IGNhbmNlbGFibGUsIGhvd2V2ZXIKLSAgICAv
LyBjb21tb24gYnJvd3NlcnMoIHNpY2shICkgYWxsb3cgaXQgYmUgY2FuY2VsbGVkLgorICAgIC8v
IGNvbW1vbiBicm93c2Vycyggc2ljayEgKSBhbGxvdyBpdCBiZSBjYW5jZWxlZC4KICAgICBpZiAo
IWRpc3BhdGNoRXZlbnQoRXZlbnQ6OmNyZWF0ZShldmVudE5hbWVzKCkucmVzZXRFdmVudCwgdHJ1
ZSwgdHJ1ZSkpKSB7CiAgICAgICAgIG1faW5yZXNldCA9IGZhbHNlOwogICAgICAgICByZXR1cm47
CkBAIC01NTksNiArNTYxLDExIEBAIFN0cmluZyBIVE1MRm9ybUVsZW1lbnQ6OnRhcmdldCgpIGNv
bnN0CiAgICAgcmV0dXJuIGdldEF0dHJpYnV0ZSh0YXJnZXRBdHRyKTsKIH0KIAorRm9ybVN1Ym1p
c3Npb25UcmlnZ2VyIEhUTUxGb3JtRWxlbWVudDo6c3VibWlzc2lvblRyaWdnZXIoKSBjb25zdAor
eworICAgIHJldHVybiBtX3N1Ym1pc3Npb25UcmlnZ2VyOworfQorCiBIVE1MRm9ybUNvbnRyb2xF
bGVtZW50KiBIVE1MRm9ybUVsZW1lbnQ6OmRlZmF1bHRCdXR0b24oKSBjb25zdAogewogICAgIGZv
ciAodW5zaWduZWQgaSA9IDA7IGkgPCBtX2Fzc29jaWF0ZWRFbGVtZW50cy5zaXplKCk7ICsraSkg
ewpJbmRleDogV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaAkocmV2aXNpb24gNjM1NzIpCisrKyBXZWJDb3Jl
L2h0bWwvSFRNTEZvcm1FbGVtZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTk4LDYgKzk4LDggQEAg
cHVibGljOgogCiAgICAgdmlydHVhbCBTdHJpbmcgdGFyZ2V0KCkgY29uc3Q7CiAKKyAgICBGb3Jt
U3VibWlzc2lvblRyaWdnZXIgc3VibWlzc2lvblRyaWdnZXIoKSBjb25zdDsKKwogICAgIEhUTUxG
b3JtQ29udHJvbEVsZW1lbnQqIGRlZmF1bHRCdXR0b24oKSBjb25zdDsKIAogICAgIGJvb2wgY2hl
Y2tWYWxpZGl0eSgpOwpAQCAtMTUzLDYgKzE1NSw4IEBAIHByaXZhdGU6CiAgICAgVmVjdG9yPEhU
TUxGb3JtQ29udHJvbEVsZW1lbnQqPiBtX2Fzc29jaWF0ZWRFbGVtZW50czsKICAgICBWZWN0b3I8
SFRNTEltYWdlRWxlbWVudCo+IG1faW1hZ2VFbGVtZW50czsKIAorICAgIEZvcm1TdWJtaXNzaW9u
VHJpZ2dlciBtX3N1Ym1pc3Npb25UcmlnZ2VyOworCiAgICAgYm9vbCBtX2F1dG9jb21wbGV0ZSA6
IDE7CiAgICAgYm9vbCBtX2luc3VibWl0IDogMTsKICAgICBib29sIG1fZG9pbmdzdWJtaXQgOiAx
OwpJbmRleDogV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiA2MzU3NikKKysrIFdlYktpdC9jaHJvbWl1bS9D
aGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAxMC0wNy0xNiAgSmFt
ZXMgSGF3a2lucyAgPGpoYXdraW5zQGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBbQ2hyb21pdW1dIEltcGxlbWVudCBXZWJGb3Jt
RWxlbWVudDo6dXNlclN1Ym1pdHRlZCgpLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NDI0NzkKKworICAgICAgICAqIHB1YmxpYy9XZWJGb3JtRWxlbWVu
dC5oOgorICAgICAgICAqIHNyYy9XZWJGb3JtRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYkZvcm1FbGVtZW50Ojp1c2VyU3VibWl0dGVkKToKKwogMjAxMC0wNy0xNSAgVG9ueSBHZW50
aWxjb3JlICA8dG9ueWdAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmlu
IEZpc2hlci4KSW5kZXg6IFdlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRm9ybUVsZW1lbnQuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZvcm1FbGVtZW50LmgJKHJl
dmlzaW9uIDYzNTcyKQorKysgV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGb3JtRWxlbWVudC5o
CSh3b3JraW5nIGNvcHkpCkBAIC02Myw2ICs2Myw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogICAg
ICAgICBXRUJLSVRfQVBJIFdlYlN0cmluZyBhY3Rpb24oKSBjb25zdDsKICAgICAgICAgV0VCS0lU
X0FQSSBXZWJTdHJpbmcgbmFtZSgpIGNvbnN0OwogICAgICAgICBXRUJLSVRfQVBJIFdlYlN0cmlu
ZyBtZXRob2QoKSBjb25zdDsKKyAgICAgICAgV0VCS0lUX0FQSSBib29sIHVzZXJTdWJtaXR0ZWQo
KSBjb25zdDsKICAgICAgICAgV0VCS0lUX0FQSSB2b2lkIHN1Ym1pdCgpOwogICAgICAgICAvLyBG
SVhNRTogRGVwcmVjYXRlIGFuZCByZXBsYWNlIHdpdGggV2ViVmVjdG9yPFdlYkVsZW1lbnQ+Lgog
ICAgICAgICBXRUJLSVRfQVBJIHZvaWQgZ2V0TmFtZWRFbGVtZW50cyhjb25zdCBXZWJTdHJpbmcm
LCBXZWJWZWN0b3I8V2ViTm9kZT4mKTsKSW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViRm9y
bUVsZW1lbnQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViRm9ybUVs
ZW1lbnQuY3BwCShyZXZpc2lvbiA2MzU3MikKKysrIFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViRm9y
bUVsZW1lbnQuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0zMSw2ICszMSw3IEBACiAjaW5jbHVkZSAi
Y29uZmlnLmgiCiAjaW5jbHVkZSAiV2ViRm9ybUVsZW1lbnQuaCIKIAorI2luY2x1ZGUgIkZvcm1T
dGF0ZS5oIgogI2luY2x1ZGUgIkhUTUxGb3JtQ29udHJvbEVsZW1lbnQuaCIKICNpbmNsdWRlICJI
VE1MRm9ybUVsZW1lbnQuaCIKICNpbmNsdWRlICJIVE1MSW5wdXRFbGVtZW50LmgiCkBAIC02NCw2
ICs2NSwxMSBAQCBXZWJTdHJpbmcgV2ViRm9ybUVsZW1lbnQ6Om1ldGhvZCgpIGNvbnN0CiB7CiAg
ICAgcmV0dXJuIGNvbnN0VW53cmFwPEhUTUxGb3JtRWxlbWVudD4oKS0+bWV0aG9kKCk7CiB9CisK
K2Jvb2wgV2ViRm9ybUVsZW1lbnQ6OnVzZXJTdWJtaXR0ZWQoKSBjb25zdAoreworICAgIHJldHVy
biBjb25zdFVud3JhcDxIVE1MRm9ybUVsZW1lbnQ+KCktPnN1Ym1pc3Npb25UcmlnZ2VyKCkgPT0g
Tm90U3VibWl0dGVkQnlKYXZhU2NyaXB0OworfQogICAgIAogdm9pZCBXZWJGb3JtRWxlbWVudDo6
c3VibWl0KCkKIHsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>62018</attachid>
            <date>2010-07-19 17:35:29 -0700</date>
            <delta_ts>2010-07-20 13:27:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-42479-20100719173528.patch</filename>
            <type>text/plain</type>
            <size>4966</size>
            <attacher name="James Hawkins">jhawkins</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MzU3NikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjEgQEAKKzIwMTAtMDctMTYgIEphbWVzIEhhd2tpbnMgIDxqaGF3a2luc0BjaHJv
bWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRXhwb3NlIHRoZSBmb3JtIHN1Ym1pc3Npb24gdHJpZ2dlciBvbiB0aGUgSFRNTEZvcm1FbGVt
ZW50IG9iamVjdC4gVGhpcworICAgICAgICBpcyB1c2VkIHRvIHZlcmlmeSB0aGF0IHRoZSB1c2Vy
IHN1Ym1pdHRlZCB0aGUgZm9ybSBpbnN0ZWFkIG9mIEpTIHdoZW4KKyAgICAgICAgc2F2aW5nIGZv
cm0gZGF0YSBpbiBDaHJvbWUgQXV0b0ZpbGwuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD00MjQ3OQorCisgICAgICAgIE5vIG5ldyB0ZXN0cyBhcyB0aGlz
IGlzIG9ubHkgdXNlZCBieSB0aGUgQ2hyb21pdW0gV2ViS2l0IEFQSS4KKworICAgICAgICAqIGh0
bWwvSFRNTEZvcm1FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtRWxlbWVu
dDo6SFRNTEZvcm1FbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtRWxlbWVudDo6
c3VibWl0KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtRWxlbWVudDo6cmVzZXQpOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpzdWJtaXNzaW9uVHJpZ2dlcik6CisgICAg
ICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuaDoKKwogMjAxMC0wNy0xNiAgU2ltb24gRnJhc2Vy
ICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2Vp
bmlnLgpJbmRleDogV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAJKHJldmlzaW9uIDYzNTcyKQorKysg
V2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc0LDYg
Kzc0LDcgQEAgc3RhdGljIGludDY0X3QgZ2VuZXJhdGVGb3JtRGF0YUlkZW50aWZpZQogCiBIVE1M
Rm9ybUVsZW1lbnQ6OkhUTUxGb3JtRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1l
LCBEb2N1bWVudCogZG9jdW1lbnQpCiAgICAgOiBIVE1MRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVu
dCkKKyAgICAsIG1fc3VibWlzc2lvblRyaWdnZXIoTm90U3VibWl0dGVkQnlKYXZhU2NyaXB0KQog
ICAgICwgbV9hdXRvY29tcGxldGUodHJ1ZSkKICAgICAsIG1faW5zdWJtaXQoZmFsc2UpCiAgICAg
LCBtX2RvaW5nc3VibWl0KGZhbHNlKQpAQCAtMzcwLDYgKzM3MSw3IEBAIHZvaWQgSFRNTEZvcm1F
bGVtZW50OjpzdWJtaXQoRXZlbnQqIGV2ZW4KICAgICB9CiAKICAgICBtX2luc3VibWl0ID0gdHJ1
ZTsKKyAgICBtX3N1Ym1pc3Npb25UcmlnZ2VyID0gZm9ybVN1Ym1pc3Npb25UcmlnZ2VyOwogCiAg
ICAgSFRNTEZvcm1Db250cm9sRWxlbWVudCogZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0dG9uID0g
MDsKICAgICBib29sIG5lZWRCdXR0b25BY3RpdmF0aW9uID0gYWN0aXZhdGVTdWJtaXRCdXR0b247
IC8vIGRvIHdlIG5lZWQgdG8gYWN0aXZhdGUgYSBzdWJtaXQgYnV0dG9uPwpAQCAtNTU5LDYgKzU2
MSwxMSBAQCBTdHJpbmcgSFRNTEZvcm1FbGVtZW50Ojp0YXJnZXQoKSBjb25zdAogICAgIHJldHVy
biBnZXRBdHRyaWJ1dGUodGFyZ2V0QXR0cik7CiB9CiAKK0Zvcm1TdWJtaXNzaW9uVHJpZ2dlciBI
VE1MRm9ybUVsZW1lbnQ6OnN1Ym1pc3Npb25UcmlnZ2VyKCkgY29uc3QKK3sKKyAgICByZXR1cm4g
bV9zdWJtaXNzaW9uVHJpZ2dlcjsKK30KKwogSFRNTEZvcm1Db250cm9sRWxlbWVudCogSFRNTEZv
cm1FbGVtZW50OjpkZWZhdWx0QnV0dG9uKCkgY29uc3QKIHsKICAgICBmb3IgKHVuc2lnbmVkIGkg
PSAwOyBpIDwgbV9hc3NvY2lhdGVkRWxlbWVudHMuc2l6ZSgpOyArK2kpIHsKSW5kZXg6IFdlYkNv
cmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwvSFRN
TEZvcm1FbGVtZW50LmgJKHJldmlzaW9uIDYzNTcyKQorKysgV2ViQ29yZS9odG1sL0hUTUxGb3Jt
RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC05OCw2ICs5OCw4IEBAIHB1YmxpYzoKIAogICAg
IHZpcnR1YWwgU3RyaW5nIHRhcmdldCgpIGNvbnN0OwogCisgICAgRm9ybVN1Ym1pc3Npb25Ucmln
Z2VyIHN1Ym1pc3Npb25UcmlnZ2VyKCkgY29uc3Q7CisKICAgICBIVE1MRm9ybUNvbnRyb2xFbGVt
ZW50KiBkZWZhdWx0QnV0dG9uKCkgY29uc3Q7CiAKICAgICBib29sIGNoZWNrVmFsaWRpdHkoKTsK
QEAgLTE1Myw2ICsxNTUsOCBAQCBwcml2YXRlOgogICAgIFZlY3RvcjxIVE1MRm9ybUNvbnRyb2xF
bGVtZW50Kj4gbV9hc3NvY2lhdGVkRWxlbWVudHM7CiAgICAgVmVjdG9yPEhUTUxJbWFnZUVsZW1l
bnQqPiBtX2ltYWdlRWxlbWVudHM7CiAKKyAgICBGb3JtU3VibWlzc2lvblRyaWdnZXIgbV9zdWJt
aXNzaW9uVHJpZ2dlcjsKKwogICAgIGJvb2wgbV9hdXRvY29tcGxldGUgOiAxOwogICAgIGJvb2wg
bV9pbnN1Ym1pdCA6IDE7CiAgICAgYm9vbCBtX2RvaW5nc3VibWl0IDogMTsKSW5kZXg6IFdlYktp
dC9jaHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL0NoYW5n
ZUxvZwkocmV2aXNpb24gNjM1NzYpCisrKyBXZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDctMTYgIEphbWVzIEhhd2tpbnMgIDxq
aGF3a2luc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgW0Nocm9taXVtXSBJbXBsZW1lbnQgV2ViRm9ybUVsZW1lbnQ6OnVzZXJT
dWJtaXR0ZWQoKS4gVGhpcyBpcyB1c2VkIHRvCisgICAgICAgIHZlcmlmeSB0aGF0IHRoZSB1c2Vy
IHN1Ym1pdHRlZCB0aGUgZm9ybSBpbnN0ZWFkIG9mIEpTIHdoZW4gc2F2aW5nIGZvcm0KKyAgICAg
ICAgZGF0YSBpbiBBdXRvRmlsbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTQyNDc5CisKKyAgICAgICAgKiBwdWJsaWMvV2ViRm9ybUVsZW1lbnQuaDoK
KyAgICAgICAgKiBzcmMvV2ViRm9ybUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJG
b3JtRWxlbWVudDo6dXNlclN1Ym1pdHRlZCk6CisKIDIwMTAtMDctMTUgIFRvbnkgR2VudGlsY29y
ZSAgPHRvbnlnQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBGaXNo
ZXIuCkluZGV4OiBXZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZvcm1FbGVtZW50LmgKPT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGb3JtRWxlbWVudC5oCShyZXZpc2lv
biA2MzU3MikKKysrIFdlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRm9ybUVsZW1lbnQuaAkod29y
a2luZyBjb3B5KQpAQCAtNjMsNiArNjMsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKICAgICAgICAg
V0VCS0lUX0FQSSBXZWJTdHJpbmcgYWN0aW9uKCkgY29uc3Q7CiAgICAgICAgIFdFQktJVF9BUEkg
V2ViU3RyaW5nIG5hbWUoKSBjb25zdDsKICAgICAgICAgV0VCS0lUX0FQSSBXZWJTdHJpbmcgbWV0
aG9kKCkgY29uc3Q7CisgICAgICAgIFdFQktJVF9BUEkgYm9vbCB1c2VyU3VibWl0dGVkKCkgY29u
c3Q7CiAgICAgICAgIFdFQktJVF9BUEkgdm9pZCBzdWJtaXQoKTsKICAgICAgICAgLy8gRklYTUU6
IERlcHJlY2F0ZSBhbmQgcmVwbGFjZSB3aXRoIFdlYlZlY3RvcjxXZWJFbGVtZW50Pi4KICAgICAg
ICAgV0VCS0lUX0FQSSB2b2lkIGdldE5hbWVkRWxlbWVudHMoY29uc3QgV2ViU3RyaW5nJiwgV2Vi
VmVjdG9yPFdlYk5vZGU+Jik7CkluZGV4OiBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZvcm1FbGVt
ZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZvcm1FbGVtZW50
LmNwcAkocmV2aXNpb24gNjM1NzIpCisrKyBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZvcm1FbGVt
ZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzEsNiArMzEsNyBAQAogI2luY2x1ZGUgImNvbmZp
Zy5oIgogI2luY2x1ZGUgIldlYkZvcm1FbGVtZW50LmgiCiAKKyNpbmNsdWRlICJGb3JtU3RhdGUu
aCIKICNpbmNsdWRlICJIVE1MRm9ybUNvbnRyb2xFbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTEZv
cm1FbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTElucHV0RWxlbWVudC5oIgpAQCAtNjQsNiArNjUs
MTEgQEAgV2ViU3RyaW5nIFdlYkZvcm1FbGVtZW50OjptZXRob2QoKSBjb25zdAogewogICAgIHJl
dHVybiBjb25zdFVud3JhcDxIVE1MRm9ybUVsZW1lbnQ+KCktPm1ldGhvZCgpOwogfQorCitib29s
IFdlYkZvcm1FbGVtZW50Ojp1c2VyU3VibWl0dGVkKCkgY29uc3QKK3sKKyAgICByZXR1cm4gY29u
c3RVbndyYXA8SFRNTEZvcm1FbGVtZW50PigpLT5zdWJtaXNzaW9uVHJpZ2dlcigpID09IE5vdFN1
Ym1pdHRlZEJ5SmF2YVNjcmlwdDsKK30KICAgICAKIHZvaWQgV2ViRm9ybUVsZW1lbnQ6OnN1Ym1p
dCgpCiB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>62105</attachid>
            <date>2010-07-20 13:27:54 -0700</date>
            <delta_ts>2010-07-20 14:05:00 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-42479-20100720132753.patch</filename>
            <type>text/plain</type>
            <size>5641</size>
            <attacher name="James Hawkins">jhawkins</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA2MzU3NikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjEgQEAKKzIwMTAtMDctMTYgIEphbWVzIEhhd2tpbnMgIDxqaGF3a2luc0BjaHJv
bWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRXhwb3NlIHRoZSBmb3JtIHN1Ym1pc3Npb24gdHJpZ2dlciBvbiB0aGUgSFRNTEZvcm1FbGVt
ZW50IG9iamVjdC4gVGhpcworICAgICAgICBpcyB1c2VkIHRvIHZlcmlmeSB0aGF0IHRoZSB1c2Vy
IHN1Ym1pdHRlZCB0aGUgZm9ybSBpbnN0ZWFkIG9mIEpTIHdoZW4KKyAgICAgICAgc2F2aW5nIGZv
cm0gZGF0YSBpbiBDaHJvbWUgQXV0b0ZpbGwuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD00MjQ3OQorCisgICAgICAgIE5vIG5ldyB0ZXN0cyBhcyB0aGlz
IGlzIG9ubHkgdXNlZCBieSB0aGUgQ2hyb21pdW0gV2ViS2l0IEFQSS4KKworICAgICAgICAqIGh0
bWwvSFRNTEZvcm1FbGVtZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtRWxlbWVu
dDo6SFRNTEZvcm1FbGVtZW50KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtRWxlbWVudDo6
c3VibWl0KToKKyAgICAgICAgKFdlYkNvcmU6OkhUTUxGb3JtRWxlbWVudDo6cmVzZXQpOgorICAg
ICAgICAoV2ViQ29yZTo6SFRNTEZvcm1FbGVtZW50OjpzdWJtaXNzaW9uVHJpZ2dlcik6CisgICAg
ICAgICogaHRtbC9IVE1MRm9ybUVsZW1lbnQuaDoKKwogMjAxMC0wNy0xNiAgU2ltb24gRnJhc2Vy
ICA8c2ltb24uZnJhc2VyQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBTYW0gV2Vp
bmlnLgpJbmRleDogV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAKPT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQot
LS0gV2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAJKHJldmlzaW9uIDYzNTcyKQorKysg
V2ViQ29yZS9odG1sL0hUTUxGb3JtRWxlbWVudC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTc0LDYg
Kzc0LDcgQEAgc3RhdGljIGludDY0X3QgZ2VuZXJhdGVGb3JtRGF0YUlkZW50aWZpZQogCiBIVE1M
Rm9ybUVsZW1lbnQ6OkhUTUxGb3JtRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1l
LCBEb2N1bWVudCogZG9jdW1lbnQpCiAgICAgOiBIVE1MRWxlbWVudCh0YWdOYW1lLCBkb2N1bWVu
dCkKKyAgICAsIG1fc3VibWlzc2lvblRyaWdnZXIoTm90U3VibWl0dGVkQnlKYXZhU2NyaXB0KQog
ICAgICwgbV9hdXRvY29tcGxldGUodHJ1ZSkKICAgICAsIG1faW5zdWJtaXQoZmFsc2UpCiAgICAg
LCBtX2RvaW5nc3VibWl0KGZhbHNlKQpAQCAtMzcwLDYgKzM3MSw3IEBAIHZvaWQgSFRNTEZvcm1F
bGVtZW50OjpzdWJtaXQoRXZlbnQqIGV2ZW4KICAgICB9CiAKICAgICBtX2luc3VibWl0ID0gdHJ1
ZTsKKyAgICBtX3N1Ym1pc3Npb25UcmlnZ2VyID0gZm9ybVN1Ym1pc3Npb25UcmlnZ2VyOwogCiAg
ICAgSFRNTEZvcm1Db250cm9sRWxlbWVudCogZmlyc3RTdWNjZXNzZnVsU3VibWl0QnV0dG9uID0g
MDsKICAgICBib29sIG5lZWRCdXR0b25BY3RpdmF0aW9uID0gYWN0aXZhdGVTdWJtaXRCdXR0b247
IC8vIGRvIHdlIG5lZWQgdG8gYWN0aXZhdGUgYSBzdWJtaXQgYnV0dG9uPwpAQCAtNTU5LDYgKzU2
MSwxMSBAQCBTdHJpbmcgSFRNTEZvcm1FbGVtZW50Ojp0YXJnZXQoKSBjb25zdAogICAgIHJldHVy
biBnZXRBdHRyaWJ1dGUodGFyZ2V0QXR0cik7CiB9CiAKK0Zvcm1TdWJtaXNzaW9uVHJpZ2dlciBI
VE1MRm9ybUVsZW1lbnQ6OnN1Ym1pc3Npb25UcmlnZ2VyKCkgY29uc3QKK3sKKyAgICByZXR1cm4g
bV9zdWJtaXNzaW9uVHJpZ2dlcjsKK30KKwogSFRNTEZvcm1Db250cm9sRWxlbWVudCogSFRNTEZv
cm1FbGVtZW50OjpkZWZhdWx0QnV0dG9uKCkgY29uc3QKIHsKICAgICBmb3IgKHVuc2lnbmVkIGkg
PSAwOyBpIDwgbV9hc3NvY2lhdGVkRWxlbWVudHMuc2l6ZSgpOyArK2kpIHsKSW5kZXg6IFdlYkNv
cmUvaHRtbC9IVE1MRm9ybUVsZW1lbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2h0bWwvSFRN
TEZvcm1FbGVtZW50LmgJKHJldmlzaW9uIDYzNTcyKQorKysgV2ViQ29yZS9odG1sL0hUTUxGb3Jt
RWxlbWVudC5oCSh3b3JraW5nIGNvcHkpCkBAIC05OCw2ICs5OCw4IEBAIHB1YmxpYzoKIAogICAg
IHZpcnR1YWwgU3RyaW5nIHRhcmdldCgpIGNvbnN0OwogCisgICAgRm9ybVN1Ym1pc3Npb25Ucmln
Z2VyIHN1Ym1pc3Npb25UcmlnZ2VyKCkgY29uc3Q7CisKICAgICBIVE1MRm9ybUNvbnRyb2xFbGVt
ZW50KiBkZWZhdWx0QnV0dG9uKCkgY29uc3Q7CiAKICAgICBib29sIGNoZWNrVmFsaWRpdHkoKTsK
QEAgLTE1Myw2ICsxNTUsOCBAQCBwcml2YXRlOgogICAgIFZlY3RvcjxIVE1MRm9ybUNvbnRyb2xF
bGVtZW50Kj4gbV9hc3NvY2lhdGVkRWxlbWVudHM7CiAgICAgVmVjdG9yPEhUTUxJbWFnZUVsZW1l
bnQqPiBtX2ltYWdlRWxlbWVudHM7CiAKKyAgICBGb3JtU3VibWlzc2lvblRyaWdnZXIgbV9zdWJt
aXNzaW9uVHJpZ2dlcjsKKwogICAgIGJvb2wgbV9hdXRvY29tcGxldGUgOiAxOwogICAgIGJvb2wg
bV9pbnN1Ym1pdCA6IDE7CiAgICAgYm9vbCBtX2RvaW5nc3VibWl0IDogMTsKSW5kZXg6IFdlYktp
dC9jaHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL0NoYW5n
ZUxvZwkocmV2aXNpb24gNjM1NzYpCisrKyBXZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDctMTYgIEphbWVzIEhhd2tpbnMgIDxq
aGF3a2luc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgW0Nocm9taXVtXSBJbXBsZW1lbnQgV2ViRm9ybUVsZW1lbnQ6Ondhc1Vz
ZXJTdWJtaXR0ZWQoKS4gVGhpcyBpcyB1c2VkIHRvCisgICAgICAgIHZlcmlmeSB0aGF0IHRoZSB1
c2VyIHN1Ym1pdHRlZCB0aGUgZm9ybSBpbnN0ZWFkIG9mIEpTIHdoZW4gc2F2aW5nIGZvcm0KKyAg
ICAgICAgZGF0YSBpbiBBdXRvRmlsbC4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTQyNDc5CisKKyAgICAgICAgKiBwdWJsaWMvV2ViRm9ybUVsZW1lbnQu
aDoKKyAgICAgICAgKiBzcmMvV2ViRm9ybUVsZW1lbnQuY3BwOgorICAgICAgICAoV2ViS2l0OjpX
ZWJGb3JtRWxlbWVudDo6d2FzVXNlclN1Ym1pdHRlZCk6CisKIDIwMTAtMDctMTUgIFRvbnkgR2Vu
dGlsY29yZSAgPHRvbnlnQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJp
biBGaXNoZXIuCkluZGV4OiBXZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkZvcm1FbGVtZW50LmgK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJGb3JtRWxlbWVudC5oCShy
ZXZpc2lvbiA2MzU3MikKKysrIFdlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViRm9ybUVsZW1lbnQu
aAkod29ya2luZyBjb3B5KQpAQCAtNjMsNiArNjMsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKICAg
ICAgICAgV0VCS0lUX0FQSSBXZWJTdHJpbmcgYWN0aW9uKCkgY29uc3Q7CiAgICAgICAgIFdFQktJ
VF9BUEkgV2ViU3RyaW5nIG5hbWUoKSBjb25zdDsKICAgICAgICAgV0VCS0lUX0FQSSBXZWJTdHJp
bmcgbWV0aG9kKCkgY29uc3Q7CisgICAgICAgIFdFQktJVF9BUEkgYm9vbCB3YXNVc2VyU3VibWl0
dGVkKCkgY29uc3Q7CiAgICAgICAgIFdFQktJVF9BUEkgdm9pZCBzdWJtaXQoKTsKICAgICAgICAg
Ly8gRklYTUU6IERlcHJlY2F0ZSBhbmQgcmVwbGFjZSB3aXRoIFdlYlZlY3RvcjxXZWJFbGVtZW50
Pi4KICAgICAgICAgV0VCS0lUX0FQSSB2b2lkIGdldE5hbWVkRWxlbWVudHMoY29uc3QgV2ViU3Ry
aW5nJiwgV2ViVmVjdG9yPFdlYk5vZGU+Jik7CkluZGV4OiBXZWJLaXQvY2hyb21pdW0vc3JjL1dl
YkZvcm1FbGVtZW50LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYkZv
cm1FbGVtZW50LmNwcAkocmV2aXNpb24gNjM1NzIpCisrKyBXZWJLaXQvY2hyb21pdW0vc3JjL1dl
YkZvcm1FbGVtZW50LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzEsNiArMzEsNyBAQAogI2luY2x1
ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIldlYkZvcm1FbGVtZW50LmgiCiAKKyNpbmNsdWRlICJG
b3JtU3RhdGUuaCIKICNpbmNsdWRlICJIVE1MRm9ybUNvbnRyb2xFbGVtZW50LmgiCiAjaW5jbHVk
ZSAiSFRNTEZvcm1FbGVtZW50LmgiCiAjaW5jbHVkZSAiSFRNTElucHV0RWxlbWVudC5oIgpAQCAt
NTUsMTYgKzU2LDIxIEBAIFdlYlN0cmluZyBXZWJGb3JtRWxlbWVudDo6YWN0aW9uKCkgY29uc3QK
ICAgICByZXR1cm4gY29uc3RVbndyYXA8SFRNTEZvcm1FbGVtZW50PigpLT5hY3Rpb24oKTsKIH0K
IAotV2ViU3RyaW5nIFdlYkZvcm1FbGVtZW50OjpuYW1lKCkgY29uc3QgCitXZWJTdHJpbmcgV2Vi
Rm9ybUVsZW1lbnQ6Om5hbWUoKSBjb25zdAogewogICAgIHJldHVybiBjb25zdFVud3JhcDxIVE1M
Rm9ybUVsZW1lbnQ+KCktPm5hbWUoKTsKIH0KIAotV2ViU3RyaW5nIFdlYkZvcm1FbGVtZW50Ojpt
ZXRob2QoKSBjb25zdCAKK1dlYlN0cmluZyBXZWJGb3JtRWxlbWVudDo6bWV0aG9kKCkgY29uc3QK
IHsKICAgICByZXR1cm4gY29uc3RVbndyYXA8SFRNTEZvcm1FbGVtZW50PigpLT5tZXRob2QoKTsK
IH0KLSAgICAKKworYm9vbCBXZWJGb3JtRWxlbWVudDo6d2FzVXNlclN1Ym1pdHRlZCgpIGNvbnN0
Cit7CisgICAgcmV0dXJuIGNvbnN0VW53cmFwPEhUTUxGb3JtRWxlbWVudD4oKS0+c3VibWlzc2lv
blRyaWdnZXIoKSA9PSBOb3RTdWJtaXR0ZWRCeUphdmFTY3JpcHQ7Cit9CisKIHZvaWQgV2ViRm9y
bUVsZW1lbnQ6OnN1Ym1pdCgpCiB7CiAgICAgdW53cmFwPEhUTUxGb3JtRWxlbWVudD4oKS0+c3Vi
bWl0KCk7CkBAIC03Nyw3ICs4Myw3IEBAIHZvaWQgV2ViRm9ybUVsZW1lbnQ6OmdldE5hbWVkRWxl
bWVudHMoY28KICAgICB1bndyYXA8SFRNTEZvcm1FbGVtZW50PigpLT5nZXROYW1lZEVsZW1lbnRz
KG5hbWUsIHRlbXBWZWN0b3IpOwogICAgIHJlc3VsdC5hc3NpZ24odGVtcFZlY3Rvcik7CiB9Ci0g
ICAgCisKIHZvaWQgV2ViRm9ybUVsZW1lbnQ6OmdldEZvcm1Db250cm9sRWxlbWVudHMoV2ViVmVj
dG9yPFdlYkZvcm1Db250cm9sRWxlbWVudD4mIHJlc3VsdCkgY29uc3QKIHsKICAgICBjb25zdCBI
VE1MRm9ybUVsZW1lbnQqIGZvcm0gPSBjb25zdFVud3JhcDxIVE1MRm9ybUVsZW1lbnQ+KCk7Cg==
</data>
<flag name="review"
          id="50238"
          type_id="1"
          status="+"
          setter="fishd"
    />
          </attachment>
      

    </bug>

</bugzilla>