<?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>45572</bug_id>
          
          <creation_ts>2010-09-10 16:18:31 -0700</creation_ts>
          <short_desc>WebAccessibilityCacheImpl needs to handle invalid accessibility object ids</short_desc>
          <delta_ts>2010-09-13 16:00:45 -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>Accessibility</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</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></keywords>
          <priority>P1</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Chris Guillory">ctguil</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cfleizach</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dglazkov</cc>
    
    <cc>dglazkov</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>277515</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Guillory">ctguil</who>
    <bug_when>2010-09-10 16:18:31 -0700</bug_when>
    <thetext>The Chromium renderer crashes when it accesses objects that have been removed from the webkit accessibility tree. 
http://code.google.com/p/chromium/issues/detail?id=54973

WebAccessibilityCacheImpl::addOrGetId should know that AccessibilityObject&apos;s with an id of 0 are invalid - they&apos;ve been removed from the webkit accessibility tree.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>277520</commentid>
    <comment_count>1</comment_count>
      <attachid>67258</attachid>
    <who name="Chris Guillory">ctguil</who>
    <bug_when>2010-09-10 16:24:25 -0700</bug_when>
    <thetext>Created attachment 67258
Return invalidObjectID in WebAccessibilityCacheImpl when an AccessibilityObject&apos;s id is 0</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>277591</commentid>
    <comment_count>2</comment_count>
      <attachid>67280</attachid>
    <who name="Chris Guillory">ctguil</who>
    <bug_when>2010-09-10 18:31:19 -0700</bug_when>
    <thetext>Created attachment 67280
Need to ensure updateBackingStore is called

Looks like updateBackingStore is where the accessibility object can become invalid.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>277593</commentid>
    <comment_count>3</comment_count>
      <attachid>67281</attachid>
    <who name="Chris Guillory">ctguil</who>
    <bug_when>2010-09-10 18:33:03 -0700</bug_when>
    <thetext>Created attachment 67281
Compiles now</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>277596</commentid>
    <comment_count>4</comment_count>
      <attachid>67283</attachid>
    <who name="Chris Guillory">ctguil</who>
    <bug_when>2010-09-10 18:52:06 -0700</bug_when>
    <thetext>Created attachment 67283
Logic is correct now</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>277600</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2010-09-10 18:58:09 -0700</bug_when>
    <thetext>Attachment 67283 did not pass style-queue:

Failed to run &quot;[&apos;WebKitTools/Scripts/check-webkit-style&apos;]&quot; exit_code: 1
WebKit/chromium/src/WebAccessibilityObject.cpp:110:  Tests for true/false, null/non-null, and zero/non-zero should all be done without equality comparisons.  [readability/comparison_to_zero] [5]
Total errors found: 1 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>277601</commentid>
    <comment_count>6</comment_count>
      <attachid>67285</attachid>
    <who name="Chris Guillory">ctguil</who>
    <bug_when>2010-09-10 19:07:17 -0700</bug_when>
    <thetext>Created attachment 67285
Passes style check now</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>277952</commentid>
    <comment_count>7</comment_count>
      <attachid>67285</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-09-12 20:03:13 -0700</bug_when>
    <thetext>Comment on attachment 67285
Passes style check now

&gt; Index: WebKit/chromium/ChangeLog
&gt; ===================================================================
&gt; --- WebKit/chromium/ChangeLog	(revision 67263)
&gt; +++ WebKit/chromium/ChangeLog	(working copy)
&gt; @@ -1,3 +1,16 @@
&gt; +2010-09-10  Chris Guillory  &lt;chris.guillory@google.com&gt;
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        WebAccessibilityCacheImpl needs to handle invalid accessibility object ids

period at end of sentence
&gt; +    WEBKIT_API bool isAxObjectIdValid() const;

since this is inside of an ax object, the method name should probably just be &quot;isIdValid()&quot;

&gt;  
&gt;      WEBKIT_API unsigned childCount() const;
&gt;  
&gt; +bool WebAccessibilityObject::isAxObjectIdValid() const
&gt; +{
&gt; +    if (!m_private)
&gt; +        return false;
&gt; +
&gt; +    m_private-&gt;updateBackingStore();

after calling updateBackingStore() it&apos;s possible that m_private will be invalidated (on the WebCore side at least, where it&apos;s called m_object). 
you should probably confirm that the object is still valid after calling this method

&gt; +    return m_private-&gt;axObjectID();
&gt; +}
&gt; +</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>277984</commentid>
    <comment_count>8</comment_count>
    <who name="Chris Guillory">ctguil</who>
    <bug_when>2010-09-12 23:02:25 -0700</bug_when>
    <thetext>&gt; after calling updateBackingStore() it&apos;s possible that m_private will be invalidated (on the WebCore side at least, where it&apos;s called m_object). 
&gt; you should probably confirm that the object is still valid after calling this method
I&apos;m adding this method to determine if the WebAccessibilityObject is valid. Perhaps I should just name this method isValid(). An invalid WebCore::AccessibilityObject has an ID of 0.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>277985</commentid>
    <comment_count>9</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-09-12 23:03:48 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; &gt; after calling updateBackingStore() it&apos;s possible that m_private will be invalidated (on the WebCore side at least, where it&apos;s called m_object). 
&gt; &gt; you should probably confirm that the object is still valid after calling this method
&gt; I&apos;m adding this method to determine if the WebAccessibilityObject is valid. Perhaps I should just name this method isValid(). An invalid WebCore::AccessibilityObject has an ID of 0.

yea, if updateBackingStore is just checking validity, it should be renamed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>277986</commentid>
    <comment_count>10</comment_count>
      <attachid>67360</attachid>
    <who name="Chris Guillory">ctguil</who>
    <bug_when>2010-09-12 23:06:38 -0700</bug_when>
    <thetext>Created attachment 67360
Naming new method isValid</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>278384</commentid>
    <comment_count>11</comment_count>
      <attachid>67360</attachid>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2010-09-13 12:15:52 -0700</bug_when>
    <thetext>Comment on attachment 67360
Naming new method isValid

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>278548</commentid>
    <comment_count>12</comment_count>
      <attachid>67360</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-13 16:00:40 -0700</bug_when>
    <thetext>Comment on attachment 67360
Naming new method isValid

Clearing flags on attachment: 67360

Committed r67418: &lt;http://trac.webkit.org/changeset/67418&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>278549</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2010-09-13 16:00:45 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67258</attachid>
            <date>2010-09-10 16:24:25 -0700</date>
            <delta_ts>2010-09-10 18:31:19 -0700</delta_ts>
            <desc>Return invalidObjectID in WebAccessibilityCacheImpl when an AccessibilityObject&apos;s id is 0</desc>
            <filename>MyPatch.txt</filename>
            <type>text/plain</type>
            <size>1178</size>
            <attacher name="Chris Guillory">ctguil</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwkocmV2aXNpb24gNjcyNDcpCisrKyBXZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMTAtMDktMTAgIENocmlz
IEd1aWxsb3J5ICA8Y2hyaXMuZ3VpbGxvcnlAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBs
IG5lZWRzIHRvIGhhbmRsZSBpbnZhbGlkIGFjY2Vzc2liaWxpdHkgb2JqZWN0IGlkcworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDU1NzIKKworICAgICAg
ICAqIHNyYy9XZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViQWNjZXNzaWJpbGl0eUNhY2hlSW1wbDo6YWRkT3JHZXRJZCk6CisKIDIwMTAtMDktMTAgIE5h
dCBEdWNhICA8bmR1Y2FAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmlu
IEZpc2hlci4KSW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViQWNjZXNzaWJpbGl0eUNhY2hl
SW1wbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJBY2Nlc3NpYmls
aXR5Q2FjaGVJbXBsLmNwcAkocmV2aXNpb24gNjcyNDcpCisrKyBXZWJLaXQvY2hyb21pdW0vc3Jj
L1dlYkFjY2Vzc2liaWxpdHlDYWNoZUltcGwuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC0xNTMsNiAr
MTUzLDggQEAgaW50IFdlYkFjY2Vzc2liaWxpdHlDYWNoZUltcGw6OmFkZE9yR2V0SQogICAgICAg
ICByZXR1cm4gaW52YWxpZE9iamVjdElkOwogCiAgICAgUmVmUHRyPEFjY2Vzc2liaWxpdHlPYmpl
Y3Q+IG8gPSB0b0FjY2Vzc2liaWxpdHlPYmplY3Qob2JqZWN0KTsKKyAgICBpZiAoIW8tPmF4T2Jq
ZWN0SUQoKSkKKyAgICAgICAgcmV0dXJuIGludmFsaWRPYmplY3RJZDsKIAogICAgIElkTWFwOjpp
dGVyYXRvciBpdCA9IG1faWRNYXAuZmluZChvLmdldCgpKTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67280</attachid>
            <date>2010-09-10 18:31:19 -0700</date>
            <delta_ts>2010-09-10 18:33:03 -0700</delta_ts>
            <desc>Need to ensure updateBackingStore is called</desc>
            <filename>MyPatch.txt</filename>
            <type>text/plain</type>
            <size>2544</size>
            <attacher name="Chris Guillory">ctguil</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwkocmV2aXNpb24gNjcyNjMpCisrKyBXZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDktMTAgIENocmlz
IEd1aWxsb3J5ICA8Y2hyaXMuZ3VpbGxvcnlAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBs
IG5lZWRzIHRvIGhhbmRsZSBpbnZhbGlkIGFjY2Vzc2liaWxpdHkgb2JqZWN0IGlkcworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDU1NzIKKworICAgICAg
ICAqIHB1YmxpYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0Lmg6CisgICAgICAgICogc3JjL1dlYkFj
Y2Vzc2liaWxpdHlDYWNoZUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJBY2Nlc3NpYmls
aXR5Q2FjaGVJbXBsOjphZGRPckdldElkKToKKyAgICAgICAgKiBzcmMvV2ViQWNjZXNzaWJpbGl0
eU9iamVjdC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkFjY2Vzc2liaWxpdHlPYmplY3Q6Omlz
QXhPYmplY3RJZFZhbGlkKToKKwogMjAxMC0wOS0xMCAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJr
aXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEZpc2hlci4KSW5kZXg6IFdlYktp
dC9jaHJvbWl1bS9wdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5oCShyZXZpc2lv
biA2NzI0NykKKysrIFdlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVj
dC5oCSh3b3JraW5nIGNvcHkpCkBAIC03MCw2ICs3MCw3IEBAIHB1YmxpYzoKICAgICBXRUJLSVRf
QVBJIFdlYlN0cmluZyBhY3Rpb25WZXJiKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBib29sIGNh
blNldEZvY3VzQXR0cmlidXRlKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBib29sIGNhblNldFZh
bHVlQXR0cmlidXRlKCkgY29uc3Q7CisgICAgV0VCS0lUX0FQSSBib29sIGlzQXhPYmplY3RJZFZh
bGlkKCkgY29uc3Q7CiAKICAgICBXRUJLSVRfQVBJIHVuc2lnbmVkIGNoaWxkQ291bnQoKSBjb25z
dDsKIApJbmRleDogV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBs
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYkFjY2Vzc2liaWxpdHlD
YWNoZUltcGwuY3BwCShyZXZpc2lvbiA2NzI0NykKKysrIFdlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
QWNjZXNzaWJpbGl0eUNhY2hlSW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0OSw3ICsxNDks
NyBAQCB2b2lkIFdlYkFjY2Vzc2liaWxpdHlDYWNoZUltcGw6OmNsZWFyKCkKIAogaW50IFdlYkFj
Y2Vzc2liaWxpdHlDYWNoZUltcGw6OmFkZE9yR2V0SWQoY29uc3QgV2ViQWNjZXNzaWJpbGl0eU9i
amVjdCYgb2JqZWN0KQogewotICAgIGlmIChvYmplY3QuaXNOdWxsKCkpCisgICAgaWYgKG9iamVj
dC5pc051bGwoKSB8fCAhb2JqZWN0LmlzQXhPYmplY3RJZFZhbGlkKQogICAgICAgICByZXR1cm4g
aW52YWxpZE9iamVjdElkOwogCiAgICAgUmVmUHRyPEFjY2Vzc2liaWxpdHlPYmplY3Q+IG8gPSB0
b0FjY2Vzc2liaWxpdHlPYmplY3Qob2JqZWN0KTsKSW5kZXg6IFdlYktpdC9jaHJvbWl1bS9zcmMv
V2ViQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2Nocm9taXVt
L3NyYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcAkocmV2aXNpb24gNjcyNDcpCisrKyBXZWJL
aXQvY2hyb21pdW0vc3JjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3QuY3BwCSh3b3JraW5nIGNvcHkp
CkBAIC0xMDEsNiArMTAxLDE1IEBAIGJvb2wgV2ViQWNjZXNzaWJpbGl0eU9iamVjdDo6Y2FuU2V0
VmFsdWUKICAgICByZXR1cm4gbV9wcml2YXRlLT5jYW5TZXRWYWx1ZUF0dHJpYnV0ZSgpOwogfQog
Citib29sIFdlYkFjY2Vzc2liaWxpdHlPYmplY3Q6OmlzQXhPYmplY3RJZFZhbGlkKCkgY29uc3QK
K3sKKyAgICBpZiAoIW1fcHJpdmF0ZSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOworCisgICAgbV9w
cml2YXRlLT51cGRhdGVCYWNraW5nU3RvcmUoKTsKKyAgICByZXR1cm4gIW1fcHJpdmF0ZS0+YXhP
YmplY3RJRCgpOworfQorCiB1bnNpZ25lZCBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0OjpjaGlsZENv
dW50KCkgY29uc3QKIHsKICAgICBpZiAoIW1fcHJpdmF0ZSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67281</attachid>
            <date>2010-09-10 18:33:03 -0700</date>
            <delta_ts>2010-09-10 18:52:06 -0700</delta_ts>
            <desc>Compiles now</desc>
            <filename>MyPatch.txt</filename>
            <type>text/plain</type>
            <size>2546</size>
            <attacher name="Chris Guillory">ctguil</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwkocmV2aXNpb24gNjcyNjMpCisrKyBXZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDktMTAgIENocmlz
IEd1aWxsb3J5ICA8Y2hyaXMuZ3VpbGxvcnlAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBs
IG5lZWRzIHRvIGhhbmRsZSBpbnZhbGlkIGFjY2Vzc2liaWxpdHkgb2JqZWN0IGlkcworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDU1NzIKKworICAgICAg
ICAqIHB1YmxpYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0Lmg6CisgICAgICAgICogc3JjL1dlYkFj
Y2Vzc2liaWxpdHlDYWNoZUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJBY2Nlc3NpYmls
aXR5Q2FjaGVJbXBsOjphZGRPckdldElkKToKKyAgICAgICAgKiBzcmMvV2ViQWNjZXNzaWJpbGl0
eU9iamVjdC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkFjY2Vzc2liaWxpdHlPYmplY3Q6Omlz
QXhPYmplY3RJZFZhbGlkKToKKwogMjAxMC0wOS0xMCAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJr
aXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEZpc2hlci4KSW5kZXg6IFdlYktp
dC9jaHJvbWl1bS9wdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5oCShyZXZpc2lv
biA2NzI0NykKKysrIFdlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVj
dC5oCSh3b3JraW5nIGNvcHkpCkBAIC03MCw2ICs3MCw3IEBAIHB1YmxpYzoKICAgICBXRUJLSVRf
QVBJIFdlYlN0cmluZyBhY3Rpb25WZXJiKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBib29sIGNh
blNldEZvY3VzQXR0cmlidXRlKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBib29sIGNhblNldFZh
bHVlQXR0cmlidXRlKCkgY29uc3Q7CisgICAgV0VCS0lUX0FQSSBib29sIGlzQXhPYmplY3RJZFZh
bGlkKCkgY29uc3Q7CiAKICAgICBXRUJLSVRfQVBJIHVuc2lnbmVkIGNoaWxkQ291bnQoKSBjb25z
dDsKIApJbmRleDogV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBs
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYkFjY2Vzc2liaWxpdHlD
YWNoZUltcGwuY3BwCShyZXZpc2lvbiA2NzI0NykKKysrIFdlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
QWNjZXNzaWJpbGl0eUNhY2hlSW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0OSw3ICsxNDks
NyBAQCB2b2lkIFdlYkFjY2Vzc2liaWxpdHlDYWNoZUltcGw6OmNsZWFyKCkKIAogaW50IFdlYkFj
Y2Vzc2liaWxpdHlDYWNoZUltcGw6OmFkZE9yR2V0SWQoY29uc3QgV2ViQWNjZXNzaWJpbGl0eU9i
amVjdCYgb2JqZWN0KQogewotICAgIGlmIChvYmplY3QuaXNOdWxsKCkpCisgICAgaWYgKG9iamVj
dC5pc051bGwoKSB8fCAhb2JqZWN0LmlzQXhPYmplY3RJZFZhbGlkKCkpCiAgICAgICAgIHJldHVy
biBpbnZhbGlkT2JqZWN0SWQ7CiAKICAgICBSZWZQdHI8QWNjZXNzaWJpbGl0eU9iamVjdD4gbyA9
IHRvQWNjZXNzaWJpbGl0eU9iamVjdChvYmplY3QpOwpJbmRleDogV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21p
dW0vc3JjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3QuY3BwCShyZXZpc2lvbiA2NzI0NykKKysrIFdl
YktpdC9jaHJvbWl1bS9zcmMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTEwMSw2ICsxMDEsMTUgQEAgYm9vbCBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0OjpjYW5T
ZXRWYWx1ZQogICAgIHJldHVybiBtX3ByaXZhdGUtPmNhblNldFZhbHVlQXR0cmlidXRlKCk7CiB9
CiAKK2Jvb2wgV2ViQWNjZXNzaWJpbGl0eU9iamVjdDo6aXNBeE9iamVjdElkVmFsaWQoKSBjb25z
dAoreworICAgIGlmICghbV9wcml2YXRlKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBt
X3ByaXZhdGUtPnVwZGF0ZUJhY2tpbmdTdG9yZSgpOworICAgIHJldHVybiAhbV9wcml2YXRlLT5h
eE9iamVjdElEKCk7Cit9CisKIHVuc2lnbmVkIFdlYkFjY2Vzc2liaWxpdHlPYmplY3Q6OmNoaWxk
Q291bnQoKSBjb25zdAogewogICAgIGlmICghbV9wcml2YXRlKQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67283</attachid>
            <date>2010-09-10 18:52:06 -0700</date>
            <delta_ts>2010-09-10 19:07:17 -0700</delta_ts>
            <desc>Logic is correct now</desc>
            <filename>MyPatch.txt</filename>
            <type>text/plain</type>
            <size>2550</size>
            <attacher name="Chris Guillory">ctguil</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwkocmV2aXNpb24gNjcyNjMpCisrKyBXZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDktMTAgIENocmlz
IEd1aWxsb3J5ICA8Y2hyaXMuZ3VpbGxvcnlAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBs
IG5lZWRzIHRvIGhhbmRsZSBpbnZhbGlkIGFjY2Vzc2liaWxpdHkgb2JqZWN0IGlkcworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDU1NzIKKworICAgICAg
ICAqIHB1YmxpYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0Lmg6CisgICAgICAgICogc3JjL1dlYkFj
Y2Vzc2liaWxpdHlDYWNoZUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJBY2Nlc3NpYmls
aXR5Q2FjaGVJbXBsOjphZGRPckdldElkKToKKyAgICAgICAgKiBzcmMvV2ViQWNjZXNzaWJpbGl0
eU9iamVjdC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkFjY2Vzc2liaWxpdHlPYmplY3Q6Omlz
QXhPYmplY3RJZFZhbGlkKToKKwogMjAxMC0wOS0xMCAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJr
aXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEZpc2hlci4KSW5kZXg6IFdlYktp
dC9jaHJvbWl1bS9wdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5oCShyZXZpc2lv
biA2NzI0NykKKysrIFdlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVj
dC5oCSh3b3JraW5nIGNvcHkpCkBAIC03MCw2ICs3MCw3IEBAIHB1YmxpYzoKICAgICBXRUJLSVRf
QVBJIFdlYlN0cmluZyBhY3Rpb25WZXJiKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBib29sIGNh
blNldEZvY3VzQXR0cmlidXRlKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBib29sIGNhblNldFZh
bHVlQXR0cmlidXRlKCkgY29uc3Q7CisgICAgV0VCS0lUX0FQSSBib29sIGlzQXhPYmplY3RJZFZh
bGlkKCkgY29uc3Q7CiAKICAgICBXRUJLSVRfQVBJIHVuc2lnbmVkIGNoaWxkQ291bnQoKSBjb25z
dDsKIApJbmRleDogV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBs
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYkFjY2Vzc2liaWxpdHlD
YWNoZUltcGwuY3BwCShyZXZpc2lvbiA2NzI0NykKKysrIFdlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
QWNjZXNzaWJpbGl0eUNhY2hlSW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0OSw3ICsxNDks
NyBAQCB2b2lkIFdlYkFjY2Vzc2liaWxpdHlDYWNoZUltcGw6OmNsZWFyKCkKIAogaW50IFdlYkFj
Y2Vzc2liaWxpdHlDYWNoZUltcGw6OmFkZE9yR2V0SWQoY29uc3QgV2ViQWNjZXNzaWJpbGl0eU9i
amVjdCYgb2JqZWN0KQogewotICAgIGlmIChvYmplY3QuaXNOdWxsKCkpCisgICAgaWYgKG9iamVj
dC5pc051bGwoKSB8fCAhb2JqZWN0LmlzQXhPYmplY3RJZFZhbGlkKCkpCiAgICAgICAgIHJldHVy
biBpbnZhbGlkT2JqZWN0SWQ7CiAKICAgICBSZWZQdHI8QWNjZXNzaWJpbGl0eU9iamVjdD4gbyA9
IHRvQWNjZXNzaWJpbGl0eU9iamVjdChvYmplY3QpOwpJbmRleDogV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21p
dW0vc3JjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3QuY3BwCShyZXZpc2lvbiA2NzI0NykKKysrIFdl
YktpdC9jaHJvbWl1bS9zcmMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTEwMSw2ICsxMDEsMTUgQEAgYm9vbCBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0OjpjYW5T
ZXRWYWx1ZQogICAgIHJldHVybiBtX3ByaXZhdGUtPmNhblNldFZhbHVlQXR0cmlidXRlKCk7CiB9
CiAKK2Jvb2wgV2ViQWNjZXNzaWJpbGl0eU9iamVjdDo6aXNBeE9iamVjdElkVmFsaWQoKSBjb25z
dAoreworICAgIGlmICghbV9wcml2YXRlKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBt
X3ByaXZhdGUtPnVwZGF0ZUJhY2tpbmdTdG9yZSgpOworICAgIHJldHVybiBtX3ByaXZhdGUtPmF4
T2JqZWN0SUQoKSAhPSAwOworfQorCiB1bnNpZ25lZCBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0Ojpj
aGlsZENvdW50KCkgY29uc3QKIHsKICAgICBpZiAoIW1fcHJpdmF0ZSkK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67285</attachid>
            <date>2010-09-10 19:07:17 -0700</date>
            <delta_ts>2010-09-12 23:06:38 -0700</delta_ts>
            <desc>Passes style check now</desc>
            <filename>MyPatch.txt</filename>
            <type>text/plain</type>
            <size>2545</size>
            <attacher name="Chris Guillory">ctguil</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwkocmV2aXNpb24gNjcyNjMpCisrKyBXZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDktMTAgIENocmlz
IEd1aWxsb3J5ICA8Y2hyaXMuZ3VpbGxvcnlAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBs
IG5lZWRzIHRvIGhhbmRsZSBpbnZhbGlkIGFjY2Vzc2liaWxpdHkgb2JqZWN0IGlkcworICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NDU1NzIKKworICAgICAg
ICAqIHB1YmxpYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0Lmg6CisgICAgICAgICogc3JjL1dlYkFj
Y2Vzc2liaWxpdHlDYWNoZUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJBY2Nlc3NpYmls
aXR5Q2FjaGVJbXBsOjphZGRPckdldElkKToKKyAgICAgICAgKiBzcmMvV2ViQWNjZXNzaWJpbGl0
eU9iamVjdC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkFjY2Vzc2liaWxpdHlPYmplY3Q6Omlz
QXhPYmplY3RJZFZhbGlkKToKKwogMjAxMC0wOS0xMCAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJr
aXQub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmluIEZpc2hlci4KSW5kZXg6IFdlYktp
dC9jaHJvbWl1bS9wdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5oCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFdlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5oCShyZXZpc2lv
biA2NzI0NykKKysrIFdlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVj
dC5oCSh3b3JraW5nIGNvcHkpCkBAIC03MCw2ICs3MCw3IEBAIHB1YmxpYzoKICAgICBXRUJLSVRf
QVBJIFdlYlN0cmluZyBhY3Rpb25WZXJiKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBib29sIGNh
blNldEZvY3VzQXR0cmlidXRlKCkgY29uc3Q7CiAgICAgV0VCS0lUX0FQSSBib29sIGNhblNldFZh
bHVlQXR0cmlidXRlKCkgY29uc3Q7CisgICAgV0VCS0lUX0FQSSBib29sIGlzQXhPYmplY3RJZFZh
bGlkKCkgY29uc3Q7CiAKICAgICBXRUJLSVRfQVBJIHVuc2lnbmVkIGNoaWxkQ291bnQoKSBjb25z
dDsKIApJbmRleDogV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBs
LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYkFjY2Vzc2liaWxpdHlD
YWNoZUltcGwuY3BwCShyZXZpc2lvbiA2NzI0NykKKysrIFdlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
QWNjZXNzaWJpbGl0eUNhY2hlSW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTE0OSw3ICsxNDks
NyBAQCB2b2lkIFdlYkFjY2Vzc2liaWxpdHlDYWNoZUltcGw6OmNsZWFyKCkKIAogaW50IFdlYkFj
Y2Vzc2liaWxpdHlDYWNoZUltcGw6OmFkZE9yR2V0SWQoY29uc3QgV2ViQWNjZXNzaWJpbGl0eU9i
amVjdCYgb2JqZWN0KQogewotICAgIGlmIChvYmplY3QuaXNOdWxsKCkpCisgICAgaWYgKG9iamVj
dC5pc051bGwoKSB8fCAhb2JqZWN0LmlzQXhPYmplY3RJZFZhbGlkKCkpCiAgICAgICAgIHJldHVy
biBpbnZhbGlkT2JqZWN0SWQ7CiAKICAgICBSZWZQdHI8QWNjZXNzaWJpbGl0eU9iamVjdD4gbyA9
IHRvQWNjZXNzaWJpbGl0eU9iamVjdChvYmplY3QpOwpJbmRleDogV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXQvY2hyb21p
dW0vc3JjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3QuY3BwCShyZXZpc2lvbiA2NzI0NykKKysrIFdl
YktpdC9jaHJvbWl1bS9zcmMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5jcHAJKHdvcmtpbmcgY29w
eSkKQEAgLTEwMSw2ICsxMDEsMTUgQEAgYm9vbCBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0OjpjYW5T
ZXRWYWx1ZQogICAgIHJldHVybiBtX3ByaXZhdGUtPmNhblNldFZhbHVlQXR0cmlidXRlKCk7CiB9
CiAKK2Jvb2wgV2ViQWNjZXNzaWJpbGl0eU9iamVjdDo6aXNBeE9iamVjdElkVmFsaWQoKSBjb25z
dAoreworICAgIGlmICghbV9wcml2YXRlKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBt
X3ByaXZhdGUtPnVwZGF0ZUJhY2tpbmdTdG9yZSgpOworICAgIHJldHVybiBtX3ByaXZhdGUtPmF4
T2JqZWN0SUQoKTsKK30KKwogdW5zaWduZWQgV2ViQWNjZXNzaWJpbGl0eU9iamVjdDo6Y2hpbGRD
b3VudCgpIGNvbnN0CiB7CiAgICAgaWYgKCFtX3ByaXZhdGUpCg==
</data>
<flag name="review"
          id="56551"
          type_id="1"
          status="-"
          setter="cfleizach"
    />
    <flag name="commit-queue"
          id="56552"
          type_id="3"
          status="-"
          setter="cfleizach"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>67360</attachid>
            <date>2010-09-12 23:06:38 -0700</date>
            <delta_ts>2010-09-13 16:00:39 -0700</delta_ts>
            <desc>Naming new method isValid</desc>
            <filename>MyPatch.txt</filename>
            <type>text/plain</type>
            <size>2949</size>
            <attacher name="Chris Guillory">ctguil</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZwkocmV2aXNpb24gNjcyNjMpCisrKyBXZWJLaXQvY2hyb21pdW0vQ2hh
bmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTAtMDktMTAgIENocmlz
IEd1aWxsb3J5ICA8Y2hyaXMuZ3VpbGxvcnlAZ29vZ2xlLmNvbT4KKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBs
IG5lZWRzIHRvIGhhbmRsZSBpbnZhbGlkIGFjY2Vzc2liaWxpdHkgb2JqZWN0IGlkcy4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTQ1NTcyCisKKyAgICAg
ICAgKiBwdWJsaWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5oOgorICAgICAgICAqIHNyYy9XZWJB
Y2Nlc3NpYmlsaXR5Q2FjaGVJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViQWNjZXNzaWJp
bGl0eUNhY2hlSW1wbDo6YWRkT3JHZXRJZCk6CisgICAgICAgICogc3JjL1dlYkFjY2Vzc2liaWxp
dHlPYmplY3QuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0Ojpp
c0F4T2JqZWN0SWRWYWxpZCk6CisKIDIwMTAtMDktMTAgIEFkYW0gQmFydGggIDxhYmFydGhAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBEYXJpbiBGaXNoZXIuCkluZGV4OiBXZWJL
aXQvY2hyb21pdW0vcHVibGljL1dlYkFjY2Vzc2liaWxpdHlPYmplY3QuaAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkFjY2Vzc2liaWxpdHlPYmplY3QuaAkocmV2aXNp
b24gNjcyNDcpCisrKyBXZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYkFjY2Vzc2liaWxpdHlPYmpl
Y3QuaAkod29ya2luZyBjb3B5KQpAQCAtNzAsNiArNzAsNyBAQCBwdWJsaWM6CiAgICAgV0VCS0lU
X0FQSSBXZWJTdHJpbmcgYWN0aW9uVmVyYigpIGNvbnN0OwogICAgIFdFQktJVF9BUEkgYm9vbCBj
YW5TZXRGb2N1c0F0dHJpYnV0ZSgpIGNvbnN0OwogICAgIFdFQktJVF9BUEkgYm9vbCBjYW5TZXRW
YWx1ZUF0dHJpYnV0ZSgpIGNvbnN0OworICAgIFdFQktJVF9BUEkgYm9vbCBpc1ZhbGlkKCkgY29u
c3Q7CiAKICAgICBXRUJLSVRfQVBJIHVuc2lnbmVkIGNoaWxkQ291bnQoKSBjb25zdDsKIApJbmRl
eDogV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBsLmNwcAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYkFjY2Vzc2liaWxpdHlDYWNoZUltcGwu
Y3BwCShyZXZpc2lvbiA2NzI0NykKKysrIFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViQWNjZXNzaWJp
bGl0eUNhY2hlSW1wbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTYzLDcgKzYzLDYgQEAgV2ViQWNj
ZXNzaWJpbGl0eUNhY2hlKiBXZWJBY2Nlc3NpYmlsaXR5QwogCiBQYXNzUmVmUHRyPFdlYkFjY2Vz
c2liaWxpdHlDYWNoZUltcGw6OldlYWtIYW5kbGU+IFdlYkFjY2Vzc2liaWxpdHlDYWNoZUltcGw6
OldlYWtIYW5kbGU6OmNyZWF0ZShBY2Nlc3NpYmlsaXR5T2JqZWN0KiBvYmplY3QpCiB7Ci0gICAg
Ly8gRklYTUU6IFJlbW92ZSByZXNldHRpbmcgcmVmLWNvdW50IGZyb20gQWNjZXNzaWJpbGl0eU9i
amVjdFdyYXBwZXIKICAgICBSZWZQdHI8V2ViQWNjZXNzaWJpbGl0eUNhY2hlSW1wbDo6V2Vha0hh
bmRsZT4gd2Vha0hhbmRsZSA9IGFkb3B0UmVmKG5ldyBXZWJBY2Nlc3NpYmlsaXR5Q2FjaGVJbXBs
OjpXZWFrSGFuZGxlKG9iamVjdCkpOwogICAgIHdlYWtIYW5kbGUtPm1fb2JqZWN0LT5zZXRXcmFw
cGVyKHdlYWtIYW5kbGUuZ2V0KCkpOwogICAgIApAQCAtMTQ5LDcgKzE0OCw3IEBAIHZvaWQgV2Vi
QWNjZXNzaWJpbGl0eUNhY2hlSW1wbDo6Y2xlYXIoKQogCiBpbnQgV2ViQWNjZXNzaWJpbGl0eUNh
Y2hlSW1wbDo6YWRkT3JHZXRJZChjb25zdCBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0JiBvYmplY3Qp
CiB7Ci0gICAgaWYgKG9iamVjdC5pc051bGwoKSkKKyAgICBpZiAoIW9iamVjdC5pc1ZhbGlkKCkp
CiAgICAgICAgIHJldHVybiBpbnZhbGlkT2JqZWN0SWQ7CiAKICAgICBSZWZQdHI8QWNjZXNzaWJp
bGl0eU9iamVjdD4gbyA9IHRvQWNjZXNzaWJpbGl0eU9iamVjdChvYmplY3QpOwpJbmRleDogV2Vi
S2l0L2Nocm9taXVtL3NyYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBXZWJLaXQvY2hyb21pdW0vc3JjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3QuY3BwCShyZXZpc2lv
biA2NzI0NykKKysrIFdlYktpdC9jaHJvbWl1bS9zcmMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdC5j
cHAJKHdvcmtpbmcgY29weSkKQEAgLTEwMSw2ICsxMDEsMTUgQEAgYm9vbCBXZWJBY2Nlc3NpYmls
aXR5T2JqZWN0OjpjYW5TZXRWYWx1ZQogICAgIHJldHVybiBtX3ByaXZhdGUtPmNhblNldFZhbHVl
QXR0cmlidXRlKCk7CiB9CiAKK2Jvb2wgV2ViQWNjZXNzaWJpbGl0eU9iamVjdDo6aXNWYWxpZCgp
IGNvbnN0Cit7CisgICAgaWYgKCFtX3ByaXZhdGUpCisgICAgICAgIHJldHVybiBmYWxzZTsKKwor
ICAgIG1fcHJpdmF0ZS0+dXBkYXRlQmFja2luZ1N0b3JlKCk7CisgICAgcmV0dXJuIG1fcHJpdmF0
ZS0+YXhPYmplY3RJRCgpOworfQorCiB1bnNpZ25lZCBXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0Ojpj
aGlsZENvdW50KCkgY29uc3QKIHsKICAgICBpZiAoIW1fcHJpdmF0ZSkK
</data>

          </attachment>
      

    </bug>

</bugzilla>