<?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>25524</bug_id>
          
          <creation_ts>2009-05-03 12:45:37 -0700</creation_ts>
          <short_desc>[Gtk] Expose the title attribute to assistive technologies</short_desc>
          <delta_ts>2009-12-07 11:31:37 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Accessibility</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>25531</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Joanmarie Diggs">jdiggs</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eric</cc>
    
    <cc>gustavo</cc>
    
    <cc>jmalonzo</cc>
    
    <cc>mario</cc>
    
    <cc>walker.willie</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>119729</commentid>
    <comment_count>0</comment_count>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-05-03 12:45:37 -0700</bug_when>
    <thetext>According to the W3C Recommendations, the title attribute (http://www.w3.org/TR/html401/struct/global.html#title) &quot;offers advisory information about the element for which it is set.&quot;

WebKit-gtk presents this information to the user via a tooltip which appears when the user hovers the mouse over the element in question; however, neither the presence of the title attribute nor its content is exposed as a property of the accessible object to which it pertains.

While &quot;title&quot; suggests that this information might best be exposed as the name of the accessible object, there are a number of reasons why this information might be better suited for exposure through some other means:

1. The W3C Recommendations describe the title attribute as &quot;advisory information,&quot; which suggests that both in function and potentially in length, this is not the object&apos;s name.

2. The title attribute can be applied to many objects, some of which might already have -- or should have -- accessible names (such as a push button, pending the fix for bug 25523). There needs to be a way to expose both a name and a title, should both be present.

3. Ideally, an assistive technology -- and users thereof -- seeking to obtain the title associated with a particular accessible, should have a reliable, consistent means by which to obtain that information.

Therefore, it is recommended that the content of the title attribute be exposed as the object&apos;s accessible description.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119730</commentid>
    <comment_count>1</comment_count>
      <attachid>29966</attachid>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-05-03 12:55:52 -0700</bug_when>
    <thetext>Created attachment 29966
test case

Here&apos;s a test case, should one be of use.

Note that there is an image included with both alternative text and a title attribute. At the moment, WebKit is exposing the alternative text as the accessible description which means it conflicts with my recommendation. :-) A couple of alternatives for the alt text for your consideration:

1. Expose the alt text as the name. This is what Gecko does FWIW.

2. Expose the alt text as the image description (i.e. rather than the accessible&apos;s description). Please see http://library.gnome.org/devel/atk/unstable/AtkImage.html

Personally, I could go either way. My thang has always been the consistency/reliability factor: If I know where I can expect to find/access something I&apos;m good. :-) Will, do you have a preference/thoughts on which approach is preferable?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119731</commentid>
    <comment_count>2</comment_count>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-05-03 12:58:21 -0700</bug_when>
    <thetext>Sorry for the spam. If there&apos;s a way to create a new bug and *at that time* add the attachment *and* set the keyword, please let me know. Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132350</commentid>
    <comment_count>3</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2009-07-16 14:47:43 -0700</bug_when>
    <thetext>(In reply to comment #0)
&gt; [...]
&gt; Therefore, it is recommended that the content of the title attribute be exposed
&gt; as the object&apos;s accessible description.

Trying to reproduce the bug with the test case provided I found out this is now already fixed, so I guess it would be great if you could verify it to make sure this bug is not here anymore :-).

(In reply to comment #1)
&gt; [...]
&gt; Note that there is an image included with both alternative text and a title
&gt; attribute. [...] A couple of alternatives for the alt text for your
&gt; consideration:
&gt; 
&gt; 1. Expose the alt text as the name. This is what Gecko does FWIW.

This is the alternative currently implemented, as far as I could see.

Btw, commit ID where I tried this is 5e4b39b07aa0abb24b5c219cf39d605343368f54, from 2009/07/15.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132362</commentid>
    <comment_count>4</comment_count>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-07-16 15:15:16 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (In reply to comment #0)
&gt; &gt; [...]
&gt; &gt; Therefore, it is recommended that the content of the title attribute be exposed
&gt; &gt; as the object&apos;s accessible description.
&gt; 
&gt; Trying to reproduce the bug with the test case provided I found out this is now
&gt; already fixed, 

Really??

&gt; so I guess it would be great if you could verify it to make sure
&gt; this bug is not here anymore :-).

When I look in Accerciser at the image, I see the following:

1. The image has no accessible name.

2. The accessible description of this object is &quot;Orca&quot; (&quot;Orca&quot; is the alt text; not the title text.)

3. The title information (&quot;The logo of Orca, screen reader for the GNOME desktop enviornment&quot;) is not exposed to ATs from what I&apos;m seeing.

What I expect to see is the following:

1. The image would derive its name from the alt text (i.e. the accessible&apos;s name would be &quot;Orca&quot;)

2. The accessible description of this object would be &quot;The logo of Orca, screen reader for the GNOME desktop enviornment&quot;

In addition:

1. The &quot;phone number&quot; link has a title attribute (&quot;i.e. the number of your phone :-)&quot;). I do not see that being exposed to ATs. I expect the title attribute to be exposed to ATs -- and done by making that information the accessible description.

2. The entry in which the user is expected to type his/her phone number has a title attribute (&quot;Enter your phone number without any punctuation&quot;). Again, I&apos;m not seeing that information exposed to ATs. (And again, I&apos;d expect it to be exposed via the accessible description.)

3. Ditto for the Submit button (title attribute which is not exposed to ATs, but should be: &quot;If you need a tooltip to tell you to press this button, we don&apos;t want your phone number.&quot; -- Yeah, I was tired when I made the test case. ;-))

commit 8b7420eab5c08e533279382990d1bc94b9f52360
Date:   Thu Jul 16 21:52:02 2009 +0000</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132486</commentid>
    <comment_count>5</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2009-07-16 23:24:28 -0700</bug_when>
    <thetext>(In reply to comment #4)

You&apos;re right, I&apos;ve tried it out now and seen the bug is actually not fixed yet. I guess what happened is that I have probably run &apos;epiphany&apos; outside my &apos;jhbuild shell&apos; so it loaded the gecko version (installed in my system) instead the webkit one. That explains why I&apos;ve seen everything correct in Accerciser :-).

Terrible and silly mistake, I should have double checked that before posting that&apos;s already fixed, sorry.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132514</commentid>
    <comment_count>6</comment_count>
      <attachid>32918</attachid>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2009-07-17 00:56:06 -0700</bug_when>
    <thetext>Created attachment 32918
Patch proposal

Exposed &apos;alt&apos; attribute from images as accessible name and the &apos;title&apos; attribute from any HTML element as accessible description.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132550</commentid>
    <comment_count>7</comment_count>
      <attachid>32933</attachid>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2009-07-17 05:34:01 -0700</bug_when>
    <thetext>Created attachment 32933
Patch proposal, with ChangeLog

Attaching the patch again, this time with ChangeLog prepared and setting the review:? flag. Sorry for the spam.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132575</commentid>
    <comment_count>8</comment_count>
      <attachid>32933</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-07-17 07:47:16 -0700</bug_when>
    <thetext>Comment on attachment 32933
Patch proposal, with ChangeLog

&gt; +2009-07-17  Mario Sanchez Prada  &lt;msanchez@igalia.com&gt;
&gt; +
&gt; +	Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +	https://bugs.webkit.org/show_bug.cgi?id=25524
&gt; +	[Gtk] Expose the title attribute to assistive technologies
&gt; +
&gt; +	Expose &apos;alt&apos; attribute from images as accessible name.
&gt; +	Expose the &apos;title&apos; core HTML attribute as accessible description.
&gt; +
&gt; +        * accessibility/AccessibilityRenderObject.cpp:
&gt; +        (WebCore::AccessibilityRenderObject::stringValue):
&gt; +        (WebCore::AccessibilityRenderObject::accessibilityDescription):
&gt; +

The indentation here is completely off. You should align everything at 8 chars, with no tabs at all.

&gt; +        if (node &amp;&amp; node-&gt;isHTMLElement()) {
&gt; +            const AtomicString&amp; alt = static_cast&lt;HTMLElement*&gt;(node)-&gt;getAttribute(altAttr);
&gt; +            if (!alt.isEmpty())
&gt; +              return alt;

Bad indentation here (2 instead of 4 spaces). If you&apos;re using Emacs you may want to do M-x set-variable &lt;RET&gt; c-basic-offset &lt;RET&gt; 4 &lt;RET&gt; =)

&gt; +    } else {
&gt; +      Node* node = m_renderer-&gt;node();
&gt; +      if (node &amp;&amp; node-&gt;isHTMLElement()) {
&gt; +        const AtomicString&amp; title = static_cast&lt;HTMLElement*&gt;(node)-&gt;getAttribute(titleAttr);
&gt; +        if (!title.isEmpty())
&gt; +          return title;
&gt; +      }

Bad indentation here too.

I could just fix this stuff myself, and commit, since the rest of the patch looks good, but I&apos;d like to have an updated patch submitted by you that I can just apply and commit. Thanks for your work!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132588</commentid>
    <comment_count>9</comment_count>
      <attachid>32944</attachid>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2009-07-17 09:12:16 -0700</bug_when>
    <thetext>Created attachment 32944
Patch proposal, indentation fixed

Fixed indentation problems</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132595</commentid>
    <comment_count>10</comment_count>
      <attachid>32944</attachid>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-07-17 09:24:13 -0700</bug_when>
    <thetext>Comment on attachment 32944
Patch proposal, indentation fixed

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132604</commentid>
    <comment_count>11</comment_count>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-07-17 09:49:03 -0700</bug_when>
    <thetext>Landed as r46038.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132681</commentid>
    <comment_count>12</comment_count>
      <attachid>32944</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-17 13:42:04 -0700</bug_when>
    <thetext>Comment on attachment 32944
Patch proposal, indentation fixed

This caused regressions:
http://trac.webkit.org/changeset/46038

http://build.webkit.org/results/Leopard%20Intel%20Debug%20(Tests)/r46051%20(2931)/results.html

About to roll this out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132708</commentid>
    <comment_count>13</comment_count>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2009-07-17 14:29:02 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 32944 [details])
&gt; This caused regressions:
&gt; http://trac.webkit.org/changeset/46038
&gt; 
&gt; http://build.webkit.org/results/Leopard%20Intel%20Debug%20(Tests)/r46051%20(2931)/results.html
&gt; 
&gt; About to roll this out.

Rolled-out in http://trac.webkit.org/changeset/46056

The following tests failed:
accessibility/img-aria-button-alt-tag.html
accessibility/input-image-alt.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132843</commentid>
    <comment_count>14</comment_count>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2009-07-17 20:23:48 -0700</bug_when>
    <thetext>Pasting a discussion I&apos;ve had with Mario so it won&apos;t get lost in the ether. Please note that &apos;img&apos; can be anything. One of the test that failed for example relates to an &lt;img&gt; with a button role so assuming that img as just an img would be inconclusive. We need to check those two tests for the expected behaviours.

-Start----------------------------
10:00 &lt; msanchez&gt; janm: around?
10:02 &lt; janm&gt; msanchez: hey
10:05 &lt; msanchez&gt; hi, just seen the regressions about bug 25524 and I was wondering (not sure though) whether the point there could actually be to change those two failing test cases
10:05 &lt; msanchez&gt; I mean... so far &apos;alt&apos; was used for accesible descriptions
10:05 &lt; msanchez&gt; but with that implementation, and supposing it&apos;s correct (I think that&apos;s what gecko does, btw), &apos;alt&apos; -&gt; accesible name / &apos;title&apos; -&gt; accesible description
10:06 &lt; msanchez&gt; and those test cases are failing precisely because they expect the &apos;alt&apos; attribute to be exposed as &apos;name&apos;...
10:06 &lt; msanchez&gt; what do you think?
10:09 &lt; janm&gt; msanchez: what does the spec say atm? If the spec is not clear, we probably would want to follow FF
10:10 &lt; janm&gt; msanchez: If we need to change the expected results for those two tests, I think we need to engage webkit-dev as well so other ports are aware of the change
10:10 &lt; janm&gt; msanchez: though you might need to do more and update the mac port as well
10:11 &lt; janm&gt; msanchez: (if necessary)
10:11 &lt; msanchez&gt; hmm, don&apos;t know, I&apos;ve just followed indications at https://bugs.webkit.org/show_bug.cgi?id=25524#c1
10:14 &lt; janm&gt; yeah and that&apos;s fine. :)
10:14 &lt; janm&gt; msanchez: &quot;In order to be perceivable, elements with a role of img SHOULD have alternative text or a label associated by the accessible name calculation.&quot;
10:19 &lt; janm&gt; msanchez: not too sure about if title = accessible description should only apply to imgTags
10:20 &lt; msanchez&gt; janm: actually with that patch it was applying to every element, as it&apos;s a core attribute which theoretically should be used for giving extra detail (descriptions) over elements
10:21 &lt; msanchez&gt; http://www.w3schools.com/tags/att_standard_title.asp
10:27 &lt; janm&gt; msanchez: WAI-ARIA seems to suggest that &apos;title&apos; can be used as the accessible name too http://www.w3.org/TR/wai-aria/
10:31 &lt; msanchez&gt; hmm.. true, perhaps it should be used as a fallback when no other atribute, more suitable for the accesible name, is present
10:32 &lt; janm&gt; msanchez: yeah
10:32 &lt; msanchez&gt; not sure though... I&apos;ll keep thinking on that, now I have to go (2.30 am here). It was nice chatting to you, if you come up with a definitive solution to this, it would nice you wrote it down 
                  in the bugzilla :-)
10:34 &lt; msanchez&gt; see you
-End----------------------------</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>132971</commentid>
    <comment_count>15</comment_count>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-07-18 19:36:36 -0700</bug_when>
    <thetext>(In reply to comment #14)

&gt; 10:09 &lt; janm&gt; msanchez: what does the spec say atm? If the spec is not clear,
&gt; we probably would want to follow FF

There are occasions in which FF does some things which make it harder -- not better -- for assistive technologies. IMHO, the way in which they handle images which have both alternative text and a title attribute would be one of those times.

If the spec is not clear, perhaps it would make sense for all interested parties to participate in the writing and/or clarification of the spec needed for implementation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134063</commentid>
    <comment_count>16</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2009-07-23 02:02:13 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; There are occasions in which FF does some things which make it harder -- not
&gt; better -- for assistive technologies. IMHO, the way in which they handle 
&gt; images which have both alternative text and a title attribute would be one 
&gt; of those times.
&gt; 
&gt; If the spec is not clear, perhaps it would make sense for all interested
&gt; parties to participate in the writing and/or clarification of the spec needed
&gt; for implementation.

After reading the section &quot;4.2.7 Accesible Name Calculation&quot; at http://www.w3.org/TR/wai-aria/#nameref, it&apos;s my understanding that title should be used only as the last resort when trying to set up the accessible name for a given content:

   A. Elements may specify their text equivalent in DOM attributes, used in 
     this order of preference:
          * [...]
          * [...]
          * Any non-tooltip native markup (such as an img element&apos;s alt 
     attribute in HTML), or the subtree for a label pointing to this element 
     (such as label element&apos;s for attribute in HTML) contributes according to 
     rules defined by the appropriate specification for that markup.

   B. [...]
   C. [...]
   D. The last resort is to use text from tooltip markup (such as the title 
      attribute in HTML). This is used only if nothing else, including subtree 
      content, has provided results.


However, perhaps I&apos;m missing something here so I dare not to give an strong opinion here :-), but with this information I suppose a good option would be to go ahead with the proposal of:

  * Use &apos;alt&apos; value for accesible name if apropriate and if it exists. If it does not exist, fallback to &apos;title&apos; for the accessible name, if present.

  * If the accesible name is already set without using &apos;title&apos;, use this one for the accesible description in case there&apos;s not a better candidate for that (aria-label, aria-description).

What do you think? Does this make any sense to you? In case it does, I guess the next thing to do would be, as Jan pointed out, to send a mail to webkit-dev talking about this issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134085</commentid>
    <comment_count>17</comment_count>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-07-23 06:01:12 -0700</bug_when>
    <thetext>Consider the following:

  &lt;form&gt;
  Phone: &lt;input type=&quot;text&quot; title=&quot;Enter your number without dashes.&quot; /&gt;
  &lt;/form&gt;

I see stuff like this all of the time. The assumptions made by the content provider presumably are:

1. The user can see (and thus knows &quot;Phone:&quot; is the functional label for the field).

2. The user uses a mouse and will therefore see the the helpful title information as they hover the mouse over the field they are about to fill out.

What a screen reader user wants to hear and/or see in braille is something to the effect of:

  &quot;Phone: text&quot;

Depending on the user, he/she might also want to hear/see: &quot;Enter your number without dashes.&quot; (Which is why we need this information exposed.)

Unfortunately, the hypothetical content provider didn&apos;t take the time to surround &apos;Phone:&apos; in &lt;label&gt;&lt;/label&gt;. So even if bug 25530 were fixed, this text field would have no name.  What a screen reader can do (and what Orca does, and what I believe some of the Windows screen readers do) in this case is attempt to &quot;guess&quot; what the functional label is. For the example above, Orca would guess &quot;Phone:&quot; and present &quot;Phone: text&quot; to the user. So far so good.

Now enter this standard and what I believe you are proposing:

  1. The form field has no name.

  2. The form field has a title.

  3. Ergo, make the accessible name: &quot;Enter your number without dashes.&quot;

When a screen reader -- at least Orca -- comes across a form field that has an accessible name, it doesn&apos;t try to figure out where that name came from. Nor does it attempt to guess a name/label for a named/labeled field. It assumes the name is valid and presents it. As a result, when a user who is blind Tabs into the above field, what he/she will be presented with is:

  &quot;Enter your number without dashes. text&quot;

Now the user must try to work out what number should be entered without dashes. Phone number is likely, but it might be social security number, or ID number, or order number, or subscriber number depending on the form being filled out. In order to figure out what information is expected, the user must now look around (non-visually) for the functional label. In other words, in an effort to make things more accessible, falling back on the title text makes them less accessible. :-( 

If, instead, the title attribute were exposed as the accessible description, a screen reader like Orca could guess the functional label and present the title information to the user upon request and/or based upon a user-configurable option.

As for images: I feel less strongly about falling back on the title for the accessible name. That said.... If the alt info (if any) is always exposed as the accessible name and the title info (if any) is always exposed as the accessible description, it is quite easy for a screen reader to:

1. Present whatever information happens to be present for the image (i.e. look first to the name and failing that, the description).

2. Implement a setting so that users could opt to hear images with alt text, but skip over images that lack alt text -- even if they have title text.

3. Present detailed &quot;where am I?&quot; information that presents the alt text (or the absence of alt text) and the title text (or the absence of title text) to the user and by doing so helps the user better understand exactly what is on the screen.

In other words, the screen reader is perfectly capable of doing the &quot;fall back to the title as the name&quot; thing. And if you leave it up to the screen reader to do the fallback rather than doing it yourself, the screen reader is able to provide a more consistent experience, customizable to best suit whatever the needs of the user happen to be.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134092</commentid>
    <comment_count>18</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2009-07-23 07:02:40 -0700</bug_when>
    <thetext>(In reply to comment #17)
&gt; [...]
&gt; In other words, the screen reader is perfectly capable of doing the &quot;fall back
&gt; to the title as the name&quot; thing. And if you leave it up to the screen reader to
&gt; do the fallback rather than doing it yourself, the screen reader is able to
&gt; provide a more consistent experience, customizable to best suit whatever the
&gt; needs of the user happen to be.

This makes a lot of sense to me as well, and your examples clarified a lot the situation and why falling back to title for the accessible name is not a good idea at all. Thanks for taking your time for so a good explanation :-)

Therefore, if I understood it well, what you&apos;re proposing is going ahead with the original idea implemented in the attached patch: 

  * Always expose &apos;alt&apos; in images as the accesible name
  * Always expose &apos;title&apos;, for every HTML item, as the accesible description

So, unless I had understood it wrong, this would mean that changing those test cases would be required, as they expect &apos;alt&apos; to be the accesible description and not the name.

Can you confirm this before I send a mail to webkit-dev proposing this change?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134099</commentid>
    <comment_count>19</comment_count>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-07-23 08:00:28 -0700</bug_when>
    <thetext>(In reply to comment #18)
&gt; Therefore, if I understood it well, what you&apos;re proposing is going ahead with
&gt; the original idea implemented in the attached patch: 
&gt; 
&gt;   * Always expose &apos;alt&apos; in images as the accesible name
&gt;   * Always expose &apos;title&apos;, for every HTML item, as the accesible description

That&apos;s what I&apos;d like to see done.

&gt; So, unless I had understood it wrong, this would mean that changing those test
&gt; cases would be required, as they expect &apos;alt&apos; to be the accesible description
&gt; and not the name.

I&apos;m not familiar with the WebKit regression tests or what&apos;s being done in terms of WebKitGtk+ accessibility versus platform-independent accessibility, so I&apos;ll leave it to someone else to comment.

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134101</commentid>
    <comment_count>20</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2009-07-23 08:12:10 -0700</bug_when>
    <thetext>(In reply to comment #19)
&gt; [...]
&gt; That&apos;s what I&apos;d like to see done.

Great, so we &quot;just&quot; need to decide about the unit tests then :-)

&gt; [...]
&gt; I&apos;m not familiar with the WebKit regression tests or what&apos;s being done in terms
&gt; of WebKitGtk+ accessibility versus platform-independent accessibility, so I&apos;ll
&gt; leave it to someone else to comment.

Neither am I... yet :-), just getting started atm, so I agree someone else&apos;s opinion on this would be very valuable.

Sending a mail to webkit-dev now then.

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>134138</commentid>
    <comment_count>21</comment_count>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2009-07-23 10:11:50 -0700</bug_when>
    <thetext>(In reply to comment #19)
&gt; I&apos;m not familiar with the WebKit regression tests or what&apos;s being done in terms
&gt; of WebKitGtk+ accessibility versus platform-independent accessibility, so I&apos;ll
&gt; leave it to someone else to comment.
&gt; 
&gt; Thanks!

About this particular bit... we want to be able to run all crossplatform tests (when bug #25989 is fixed), and we also have some gtk+ specific tests in place to test our own stuff (for example, I added tests to check that we do the right thing for the ATK get_text_{at,after,before}_offset methods). In this particular case it looks like we want to modify the crossplatform behavior, so we&apos;d need to change the crossplatform tests if we convince everyone else.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>139699</commentid>
    <comment_count>22</comment_count>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-08-12 18:36:41 -0700</bug_when>
    <thetext>(In reply to comment #21)
&gt; (In reply to comment #19)
&gt; &gt; I&apos;m not familiar with the WebKit regression tests or what&apos;s being done in terms
&gt; &gt; of WebKitGtk+ accessibility versus platform-independent accessibility, so I&apos;ll
&gt; &gt; leave it to someone else to comment.
&gt; &gt; 
&gt; &gt; Thanks!
&gt; 
&gt; About this particular bit... we want to be able to run all crossplatform tests
&gt; (when bug #25989 is fixed), and we also have some gtk+ specific tests in place
&gt; to test our own stuff (for example, I added tests to check that we do the right
&gt; thing for the ATK get_text_{at,after,before}_offset methods). In this
&gt; particular case it looks like we want to modify the crossplatform behavior, so
&gt; we&apos;d need to change the crossplatform tests if we convince everyone else.

Though I think it would be OK to ifdef this specific case, if we agree to disagree on this, and keep these themes skipped in GTK+, having GTK+-specific tests instead.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>155434</commentid>
    <comment_count>23</comment_count>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-10-17 19:18:10 -0700</bug_when>
    <thetext>Ping. (Where are we with this?)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>157949</commentid>
    <comment_count>24</comment_count>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-10-26 14:58:24 -0700</bug_when>
    <thetext>Chris, can we get your opinion on this?

The executive summary is that Mario implemented an awesome solution (thanks!) which I would think would make things better for all platforms. It was committed, but subsequently backed out due to two tests not getting their expected results:

(In reply to comment #13)
&gt; (In reply to comment #12)
&gt; &gt; (From update of attachment 32944 [details] [details])
&gt; &gt; This caused regressions:
&gt; &gt; http://trac.webkit.org/changeset/46038
&gt; &gt; 
&gt; &gt; http://build.webkit.org/results/Leopard%20Intel%20Debug%20(Tests)/r46051%20(2931)/results.html
&gt; &gt; 
&gt; &gt; About to roll this out.
&gt; 
&gt; Rolled-out in http://trac.webkit.org/changeset/46056
&gt; 
&gt; The following tests failed:
&gt; accessibility/img-aria-button-alt-tag.html
&gt; accessibility/input-image-alt.html

Three months have passed, but there&apos;s not been any verdict regarding the tests as I understand it.

If need be, I&apos;ll see if I can convert Mario&apos;s solution into a platform-unique one that doesn&apos;t impact any tests. But if you&apos;d think these changes would be of benefit to your users as well, perhaps we can modify the tests.... Or something.... 

Thanks!!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>158470</commentid>
    <comment_count>25</comment_count>
    <who name="chris fleizach">cfleizach</who>
    <bug_when>2009-10-27 23:12:40 -0700</bug_when>
    <thetext>From what I gather, it seems that gtk is not matching the correct data to the right interface.

I think all the pieces are in place already, however and this problem can be fixed on the platform side

String AccessibilityRenderObject::title()

will return titleAttr first if that exists (for all elements)

accessibilityDescription 

will return the altAttr for the image

Right now, the Mac side relies on the fact that axDescription will give us the alt and title will give us the title for the images (which is why the tests are failing)

i think gtk can do the same. First recognize that you&apos;re dealing with an image (roleValue==ImageRole), then return the right piece of data</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162326</commentid>
    <comment_count>26</comment_count>
      <attachid>42919</attachid>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-11-10 20:14:16 -0800</bug_when>
    <thetext>Created attachment 42919
Modified version of Mario&apos;s fix: only impacts gtk

Please review. Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>162423</commentid>
    <comment_count>27</comment_count>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2009-11-11 03:13:30 -0800</bug_when>
    <thetext>(In reply to comment #26)
&gt; Created an attachment (id=42919) [details]
&gt; Modified version of Mario&apos;s fix: only impacts gtk
&gt; 
&gt; Please review. Thanks!

Joanie, are you able to run layout tests now? It would be nice if we can cover this with a test or two.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>165773</commentid>
    <comment_count>28</comment_count>
      <attachid>43690</attachid>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-11-22 16:13:19 -0800</bug_when>
    <thetext>Created attachment 43690
Added a new layout test

This patch has the same fix as the patch it is obsoleting. What&apos;s new is the addition of a layout test.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166117</commentid>
    <comment_count>29</comment_count>
      <attachid>43690</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2009-11-24 09:14:01 -0800</bug_when>
    <thetext>Comment on attachment 43690
Added a new layout test

I&apos;m a bit confused about the test: are we skipping in on the other platforms because it does not work atm, but it should? Or are we deviating from them here? If it&apos;s the latter it should be a GTK+ only test. From comment #25 it seems that the idea was to unify the behavior. (I haven&apos;t beet following closely this bug though, so I might be talking nonsense).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166120</commentid>
    <comment_count>30</comment_count>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-11-24 09:23:40 -0800</bug_when>
    <thetext>(In reply to comment #29)
&gt; (From update of attachment 43690 [details])
&gt; I&apos;m a bit confused about the test: are we skipping in on the other platforms
&gt; because it does not work atm, but it should? Or are we deviating from them
&gt; here? If it&apos;s the latter it should be a GTK+ only test. From comment #25 it
&gt; seems that the idea was to unify the behavior. (I haven&apos;t beet following
&gt; closely this bug though, so I might be talking nonsense).

My understanding is that what I expect in terms of behavior and what Chris expects in behavior are different and that, therefore, we needed different tests. But then maybe I&apos;m talking nonsense. :-)

When I looked at the platform-specific tests, the expected results looked like output from DumpRenderTree (rather than the normal expected results).

Please advise, and I will be happy to comply. :-) Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166126</commentid>
    <comment_count>31</comment_count>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2009-11-24 09:47:53 -0800</bug_when>
    <thetext>(In reply to comment #30)
&gt; (In reply to comment #29)
&gt; &gt; (From update of attachment 43690 [details] [details])
&gt; &gt; I&apos;m a bit confused about the test: are we skipping in on the other platforms
&gt; &gt; because it does not work atm, but it should? Or are we deviating from them
&gt; &gt; here? If it&apos;s the latter it should be a GTK+ only test. From comment #25 it
&gt; &gt; seems that the idea was to unify the behavior. (I haven&apos;t beet following
&gt; &gt; closely this bug though, so I might be talking nonsense).
&gt; 
&gt; My understanding is that what I expect in terms of behavior and what Chris
&gt; expects in behavior are different and that, therefore, we needed different
&gt; tests. But then maybe I&apos;m talking nonsense. :-)

In that case we want GTK only tests, which would go in LayoutTests/platform/gtk

&gt; 
&gt; When I looked at the platform-specific tests, the expected results looked like
&gt; output from DumpRenderTree (rather than the normal expected results).

Hrm, not sure I understand what you mean, but AFAIK it&apos;s up to you if tests are dumped as text or if the whole render tree is dumped. You can configure that through the layoutTestController object.

&gt; 
&gt; Please advise, and I will be happy to comply. :-) Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166190</commentid>
    <comment_count>32</comment_count>
    <who name="Gustavo Noronha (kov)">gustavo</who>
    <bug_when>2009-11-24 11:16:33 -0800</bug_when>
    <thetext>(In reply to comment #31)

&gt; &gt; When I looked at the platform-specific tests, the expected results looked like
&gt; &gt; output from DumpRenderTree (rather than the normal expected results).
&gt; 
&gt; Hrm, not sure I understand what you mean, but AFAIK it&apos;s up to you if tests are
&gt; dumped as text or if the whole render tree is dumped. You can configure that
&gt; through the layoutTestController object.

That&apos;s because usually tests are the same for all platforms, but platform differences cause the rendering to not match 100%. This specific case is more akin to LayoutTests/platform/gtk/scrollbars/overflow-scrollbar-horizontal-wheel-scroll.html, i.e., the test only makes sense for the platform, as the behavior is specific to it. I would argue that text tests are preferred wherever possible, given that they are not the affected by collateral damage of decisions that change layouting behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166293</commentid>
    <comment_count>33</comment_count>
      <attachid>43815</attachid>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-11-24 15:12:47 -0800</bug_when>
    <thetext>Created attachment 43815
proposed fix with platform-specific layout test

Thanks for the pointers re the test!

Hopefully this is now good to go.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>167188</commentid>
    <comment_count>34</comment_count>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-11-29 21:10:24 -0800</bug_when>
    <thetext>Sorry to be a noodge, but... ping. :-) Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>167357</commentid>
    <comment_count>35</comment_count>
    <who name="Adam Barth">abarth</who>
    <bug_when>2009-11-30 12:38:50 -0800</bug_when>
    <thetext>style-queue successfully ran check-webkit-style on attachment 43815 without any errors</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>169264</commentid>
    <comment_count>36</comment_count>
      <attachid>43815</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2009-12-07 05:23:49 -0800</bug_when>
    <thetext>Comment on attachment 43815
proposed fix with platform-specific layout test

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>169275</commentid>
    <comment_count>37</comment_count>
      <attachid>43815</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-12-07 05:36:23 -0800</bug_when>
    <thetext>Comment on attachment 43815
proposed fix with platform-specific layout test

Rejecting patch 43815 from commit-queue.

Failed to run &quot;[&apos;WebKitTools/Scripts/run-webkit-tests&apos;, &apos;--no-launch-safari&apos;, &apos;--quiet&apos;, &apos;--exit-after-n-failures=1&apos;]&quot; exit_code: 1
Last 500 characters of output:
ut no file of that name could be found
Skipped list contained &apos;media/media-can-play-ogg.html&apos;, but no file of that name could be found
Testing 11733 test cases.
http/tests/security/cross-frame-access-getOwnPropertyDescriptor.html -&gt; new (results generated in /Users/eseidel/Projects/CommitQueue/LayoutTests/http/tests/security)

Exiting early after 1 failures. 8908 tests run.
220.67s total testing time

8907 test cases (99%) succeeded
1 test case (&lt;1%) was new
5 test cases (&lt;1%) had stderr output</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>169277</commentid>
    <comment_count>38</comment_count>
    <who name="Joanmarie Diggs">jdiggs</who>
    <bug_when>2009-12-07 05:42:30 -0800</bug_when>
    <thetext>I&apos;m assuming that my patch isn&apos;t causing the aforementioned test failure. If I&apos;m wrong, I definitely could use a hint.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>169287</commentid>
    <comment_count>39</comment_count>
      <attachid>43815</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2009-12-07 06:13:37 -0800</bug_when>
    <thetext>Comment on attachment 43815
proposed fix with platform-specific layout test

I don&apos;t think it can be related at all, let&apos;s try again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>169292</commentid>
    <comment_count>40</comment_count>
      <attachid>43815</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-12-07 06:27:52 -0800</bug_when>
    <thetext>Comment on attachment 43815
proposed fix with platform-specific layout test

Clearing flags on attachment: 43815

Committed r51762: &lt;http://trac.webkit.org/changeset/51762&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>169293</commentid>
    <comment_count>41</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-12-07 06:28:00 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>169398</commentid>
    <comment_count>42</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-12-07 11:31:37 -0800</bug_when>
    <thetext>The false rejection was caused by bug 30098.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>29966</attachid>
            <date>2009-05-03 12:55:52 -0700</date>
            <delta_ts>2009-05-03 12:55:52 -0700</delta_ts>
            <desc>test case</desc>
            <filename>alt-and-title.html</filename>
            <type>text/html</type>
            <size>607</size>
            <attacher name="Joanmarie Diggs">jdiggs</attacher>
            
              <data encoding="base64">PGh0bWw+CjxoZWFkPgo8dGl0bGU+QWx0IFRleHQgYW5kIFRpdGxlczwvdGl0bGU+CjwvaGVhZD4K
PGJvZHk+Cgo8aW1nIHNyYz0iaHR0cDovL2xpdmUuZ25vbWUub3JnL09yY2E/YWN0aW9uPUF0dGFj
aEZpbGUmZG89Z2V0JnRhcmdldD1vcmNhMi1zbS5qcGciIGFsdD0iT3JjYSIgdGl0bGU9IlRoZSBs
b2dvIG9mIE9yY2EsIHNjcmVlbiByZWFkZXIgZm9yIHRoZSBHTk9NRSBkZXNrdG9wIGVudmlvcm5t
ZW50IiAvPgo8Zm9ybT4KICA8YSBocmVmPSIiIHRpdGxlPSJpLmUuIHRoZSBudW1iZXIgb2YgeW91
ciBwaG9uZSA6LSkiPlBob25lIG51bWJlcjwvYT46IDxpbnB1dCB0eXBlPSJ0ZXh0IiBuYW1lPSJw
aG5vIiB0aXRsZT0iRW50ZXIgeW91ciBwaG9uZSBudW1iZXIgd2l0aG91dCBhbnkgcHVuY3R1YXRp
b24iIC8+CiAgPGlucHV0IHR5cGU9InJlc2V0IiB2YWx1ZT0iQ2xlYXIiIC8+CiAgPGlucHV0IHR5
cGU9InN1Ym1pdCIgdmFsdWU9IlN1Ym1pdCIgdGl0bGU9IklmIHlvdSBuZWVkIGEgdG9vbHRpcCB0
byB0ZWxsIHlvdSB0byBwcmVzcyB0aGlzIGJ1dHRvbiwgd2UgZG9uJ3Qgd2FudCB5b3VyIHBob25l
IG51bWJlci4iIC8+CjwvZm9ybT4KPC9ib2R5Pgo8L2h0bWw+Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>32918</attachid>
            <date>2009-07-17 00:56:06 -0700</date>
            <delta_ts>2009-07-17 05:34:01 -0700</delta_ts>
            <desc>Patch proposal</desc>
            <filename>0001-2009-07-17-Mario-Sanchez-Prada-msanchez-igalia.com.patch</filename>
            <type>text/plain</type>
            <size>3513</size>
            <attacher name="Mario Sanchez Prada">mario</attacher>
            
              <data encoding="base64">RnJvbSBiYzFkOWUzODc3M2RlODIzYjQ4OGMwOWM5OWQxYWRjMDY4ZjQ1MzQ4IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJpbyBTYW5jaGV6IFByYWRhIDxtc2FuY2hlekBpZ2FsaWEu
Y29tPgpEYXRlOiBGcmksIDE3IEp1bCAyMDA5IDA5OjM4OjI5ICswMjAwClN1YmplY3Q6IFtQQVRD
SF0gMjAwOS0wNy0xNyAgTWFyaW8gU2FuY2hleiBQcmFkYSA8bXNhbmNoZXpAaWdhbGlhLmNvbT4K
TUlNRS1WZXJzaW9uOiAxLjAKQ29udGVudC1UeXBlOiBtdWx0aXBhcnQvbWl4ZWQ7IGJvdW5kYXJ5
PSItLS0tLS0tLS0tLS0xLjYuMC40IgoKVGhpcyBpcyBhIG11bHRpLXBhcnQgbWVzc2FnZSBpbiBN
SU1FIGZvcm1hdC4KLS0tLS0tLS0tLS0tLS0xLjYuMC40CkNvbnRlbnQtVHlwZTogdGV4dC9wbGFp
bjsgY2hhcnNldD1VVEYtODsgZm9ybWF0PWZpeGVkCkNvbnRlbnQtVHJhbnNmZXItRW5jb2Rpbmc6
IDhiaXQKCgpSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCmh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yNTUyNApbR3RrXSBFeHBvc2UgdGhlIHRpdGxlIGF0dHJpYnV0
ZSB0byBhc3Npc3RpdmUgdGVjaG5vbG9naWVzCgogKiBFeHBvc2UgJ2FsdCcgYXR0cmlidXRlIGZy
b20gaW1hZ2VzIGFzIGFjY2Vzc2libGUgbmFtZS4KCiAqIEV4cG9zZSB0aGUgJ3RpdGxlJyBjb3Jl
IEhUTUwgYXR0cmlidXRlIGFzIGFjY2Vzc2libGUgZGVzY3JpcHRpb24uCi0tLQogLi4uL2FjY2Vz
c2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHAgICAgfCAgIDMwICsrKysrKysr
KysrKy0tLS0tLS0tCiAxIGZpbGVzIGNoYW5nZWQsIDE4IGluc2VydGlvbnMoKyksIDEyIGRlbGV0
aW9ucygtKQoKCi0tLS0tLS0tLS0tLS0tMS42LjAuNApDb250ZW50LVR5cGU6IHRleHQveC1wYXRj
aDsgbmFtZT0iYmMxZDllMzg3NzNkZTgyM2I0ODhjMDljOTlkMWFkYzA2OGY0NTM0OC5kaWZmIgpD
b250ZW50LVRyYW5zZmVyLUVuY29kaW5nOiA4Yml0CkNvbnRlbnQtRGlzcG9zaXRpb246IGF0dGFj
aG1lbnQ7IGZpbGVuYW1lPSJiYzFkOWUzODc3M2RlODIzYjQ4OGMwOWM5OWQxYWRjMDY4ZjQ1MzQ4
LmRpZmYiCgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlS
ZW5kZXJPYmplY3QuY3BwIGIvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5k
ZXJPYmplY3QuY3BwCmluZGV4IDdkMmRkYzUuLmRlNjg0ZjEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcAorKysgYi9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdC5jcHAKQEAgLTc5Myw3ICs3
OTMsMTYgQEAgU3RyaW5nIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OnN0cmluZ1ZhbHVlKCkg
Y29uc3QKICAgICAgICAgUmVuZGVyRmlsZVVwbG9hZENvbnRyb2wqIHVwbG9hZENvbnRyb2wgPSBz
dGF0aWNfY2FzdDxSZW5kZXJGaWxlVXBsb2FkQ29udHJvbCo+KG1fcmVuZGVyZXIpOwogICAgICAg
ICByZXR1cm4gdXBsb2FkQ29udHJvbC0+ZmlsZVRleHRWYWx1ZSgpOwogICAgIH0KLSAgICAKKwor
ICAgIGlmIChpc0ltYWdlKCkgfHwgaXNJbnB1dEltYWdlKCkgfHwgaXNOYXRpdmVJbWFnZSgpKSB7
CisgICAgICAgIE5vZGUqIG5vZGUgPSBtX3JlbmRlcmVyLT5ub2RlKCk7CisgICAgICAgIGlmIChu
b2RlICYmIG5vZGUtPmlzSFRNTEVsZW1lbnQoKSkgeworICAgICAgICAgICAgY29uc3QgQXRvbWlj
U3RyaW5nJiBhbHQgPSBzdGF0aWNfY2FzdDxIVE1MRWxlbWVudCo+KG5vZGUpLT5nZXRBdHRyaWJ1
dGUoYWx0QXR0cik7CisgICAgICAgICAgICBpZiAoIWFsdC5pc0VtcHR5KCkpCisgICAgICAgICAg
ICAgIHJldHVybiBhbHQ7CisgICAgICAgIH0KKyAgICB9CisKICAgICAvLyBGSVhNRTogV2UgbWln
aHQgbmVlZCB0byBpbXBsZW1lbnQgYSB2YWx1ZSBoZXJlIGZvciBtb3JlIHR5cGVzCiAgICAgLy8g
RklYTUU6IEl0IHdvdWxkIGJlIGJldHRlciBub3QgdG8gYWR2ZXJ0aXNlIGEgdmFsdWUgYXQgYWxs
IGZvciB0aGUgdHlwZXMgZm9yIHdoaWNoIHdlIGRvbid0IGltcGxlbWVudCBvbmU7CiAgICAgLy8g
dGhpcyB3b3VsZCByZXF1aXJlIHN1YmNsYXNzaW5nIG9yIG1ha2luZyBhY2Nlc3NpYmlsaXR5QXR0
cmlidXRlTmFtZXMgZG8gc29tZXRoaW5nIG90aGVyIHRoYW4gcmV0dXJuIGEKQEAgLTk3MywxNyAr
OTgyLDcgQEAgU3RyaW5nIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3Q6OmFjY2Vzc2liaWxpdHlE
ZXNjcmlwdGlvbigpIGNvbnN0CiAgICAgU3RyaW5nIGFyaWFEZXNjcmlwdGlvbiA9IGFyaWFEZXNj
cmliZWRCeUF0dHJpYnV0ZSgpOwogICAgIGlmICghYXJpYURlc2NyaXB0aW9uLmlzRW1wdHkoKSkK
ICAgICAgICAgcmV0dXJuIGFyaWFEZXNjcmlwdGlvbjsKLSAgICAKLSAgICBpZiAoaXNJbWFnZSgp
IHx8IGlzSW5wdXRJbWFnZSgpIHx8IGlzTmF0aXZlSW1hZ2UoKSkgewotICAgICAgICBOb2RlKiBu
b2RlID0gbV9yZW5kZXJlci0+bm9kZSgpOwotICAgICAgICBpZiAobm9kZSAmJiBub2RlLT5pc0hU
TUxFbGVtZW50KCkpIHsKLSAgICAgICAgICAgIGNvbnN0IEF0b21pY1N0cmluZyYgYWx0ID0gc3Rh
dGljX2Nhc3Q8SFRNTEVsZW1lbnQqPihub2RlKS0+Z2V0QXR0cmlidXRlKGFsdEF0dHIpOwotICAg
ICAgICAgICAgaWYgKGFsdC5pc0VtcHR5KCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIFN0cmlu
ZygpOwotICAgICAgICAgICAgcmV0dXJuIGFsdDsKLSAgICAgICAgfQotICAgIH0KLSAgICAKKwog
ICAgIGlmIChpc1dlYkFyZWEoKSkgewogICAgICAgICBEb2N1bWVudCAqZG9jdW1lbnQgPSBtX3Jl
bmRlcmVyLT5kb2N1bWVudCgpOwogICAgICAgICBOb2RlKiBvd25lciA9IGRvY3VtZW50LT5vd25l
ckVsZW1lbnQoKTsKQEAgLTEwMDAsNiArOTk5LDEzIEBAIFN0cmluZyBBY2Nlc3NpYmlsaXR5UmVu
ZGVyT2JqZWN0OjphY2Nlc3NpYmlsaXR5RGVzY3JpcHRpb24oKSBjb25zdAogICAgICAgICBvd25l
ciA9IGRvY3VtZW50LT5ib2R5KCk7CiAgICAgICAgIGlmIChvd25lciAmJiBvd25lci0+aXNIVE1M
RWxlbWVudCgpKQogICAgICAgICAgICAgcmV0dXJuIHN0YXRpY19jYXN0PEhUTUxFbGVtZW50Kj4o
b3duZXIpLT5nZXRBdHRyaWJ1dGUobmFtZUF0dHIpOworICAgIH0gZWxzZSB7CisgICAgICBOb2Rl
KiBub2RlID0gbV9yZW5kZXJlci0+bm9kZSgpOworICAgICAgaWYgKG5vZGUgJiYgbm9kZS0+aXNI
VE1MRWxlbWVudCgpKSB7CisgICAgICAgIGNvbnN0IEF0b21pY1N0cmluZyYgdGl0bGUgPSBzdGF0
aWNfY2FzdDxIVE1MRWxlbWVudCo+KG5vZGUpLT5nZXRBdHRyaWJ1dGUodGl0bGVBdHRyKTsKKyAg
ICAgICAgaWYgKCF0aXRsZS5pc0VtcHR5KCkpCisgICAgICAgICAgcmV0dXJuIHRpdGxlOworICAg
ICAgfQogICAgIH0KICAgICAKICAgICBpZiAocm9sZVZhbHVlKCkgPT0gRGVmaW5pdGlvbkxpc3RU
ZXJtUm9sZSkKCi0tLS0tLS0tLS0tLS0tMS42LjAuNC0tCgoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>32933</attachid>
            <date>2009-07-17 05:34:01 -0700</date>
            <delta_ts>2009-07-17 09:12:16 -0700</delta_ts>
            <desc>Patch proposal, with ChangeLog</desc>
            <filename>0001-2009-07-17-Mario-Sanchez-Prada-msanchez-igalia.com.patch</filename>
            <type>text/plain</type>
            <size>3862</size>
            <attacher name="Mario Sanchez Prada">mario</attacher>
            
              <data encoding="base64">RnJvbSA1MjllMDk3OWJjMWViZjUyMzliNGNjMjlmYjA2MDhkNGUzYWYxZDU0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJpbyBTYW5jaGV6IFByYWRhIDxtc2FuY2hlekBpZ2FsaWEu
Y29tPgpEYXRlOiBGcmksIDE3IEp1bCAyMDA5IDE0OjA3OjQzICswMjAwClN1YmplY3Q6IFtQQVRD
SF0gMjAwOS0wNy0xNyAgTWFyaW8gU2FuY2hleiBQcmFkYSA8bXNhbmNoZXpAaWdhbGlhLmNvbT4K
ClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTI1NTI0CltHdGtdIEV4cG9zZSB0aGUgdGl0bGUgYXR0cmlidXRlIHRvIGFz
c2lzdGl2ZSB0ZWNobm9sb2dpZXMKCiAqIEV4cG9zZSAnYWx0JyBhdHRyaWJ1dGUgZnJvbSBpbWFn
ZXMgYXMgYWNjZXNzaWJsZSBuYW1lLgogKiBFeHBvc2UgdGhlICd0aXRsZScgY29yZSBIVE1MIGF0
dHJpYnV0ZSBhcyBhY2Nlc3NpYmxlIGRlc2NyaXB0aW9uLgotLS0KIFdlYkNvcmUvQ2hhbmdlTG9n
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNCArKysrKysrKysKIC4uLi9h
Y2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwICAgIHwgICAzMCArKysr
KysrKysrKystLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAzMiBpbnNlcnRpb25zKCspLCAxMiBk
ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hh
bmdlTG9nCmluZGV4IGRiMjA2ODMuLjNmOTU4NzMgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdl
TG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMDctMTcg
IE1hcmlvIFNhbmNoZXogUHJhZGEgIDxtc2FuY2hlekBpZ2FsaWEuY29tPgorCisJUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKwlodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9MjU1MjQKKwlbR3RrXSBFeHBvc2UgdGhlIHRpdGxlIGF0dHJpYnV0ZSB0byBhc3Npc3Rp
dmUgdGVjaG5vbG9naWVzCisKKwlFeHBvc2UgJ2FsdCcgYXR0cmlidXRlIGZyb20gaW1hZ2VzIGFz
IGFjY2Vzc2libGUgbmFtZS4KKwlFeHBvc2UgdGhlICd0aXRsZScgY29yZSBIVE1MIGF0dHJpYnV0
ZSBhcyBhY2Nlc3NpYmxlIGRlc2NyaXB0aW9uLgorCisgICAgICAgICogYWNjZXNzaWJpbGl0eS9B
Y2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vzc2li
aWxpdHlSZW5kZXJPYmplY3Q6OnN0cmluZ1ZhbHVlKToKKyAgICAgICAgKFdlYkNvcmU6OkFjY2Vz
c2liaWxpdHlSZW5kZXJPYmplY3Q6OmFjY2Vzc2liaWxpdHlEZXNjcmlwdGlvbik6CisKIDIwMDkt
MDctMTQgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAg
UmV2aWV3ZWQgYnkgVGltb3RoeSBIYXRjaGVyLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9hY2Nlc3Np
YmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwIGIvV2ViQ29yZS9hY2Nlc3NpYmls
aXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwCmluZGV4IDdkMmRkYzUuLmRlNjg0ZjEg
MTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2Jq
ZWN0LmNwcAorKysgYi9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRlck9i
amVjdC5jcHAKQEAgLTc5Myw3ICs3OTMsMTYgQEAgU3RyaW5nIEFjY2Vzc2liaWxpdHlSZW5kZXJP
YmplY3Q6OnN0cmluZ1ZhbHVlKCkgY29uc3QKICAgICAgICAgUmVuZGVyRmlsZVVwbG9hZENvbnRy
b2wqIHVwbG9hZENvbnRyb2wgPSBzdGF0aWNfY2FzdDxSZW5kZXJGaWxlVXBsb2FkQ29udHJvbCo+
KG1fcmVuZGVyZXIpOwogICAgICAgICByZXR1cm4gdXBsb2FkQ29udHJvbC0+ZmlsZVRleHRWYWx1
ZSgpOwogICAgIH0KLSAgICAKKworICAgIGlmIChpc0ltYWdlKCkgfHwgaXNJbnB1dEltYWdlKCkg
fHwgaXNOYXRpdmVJbWFnZSgpKSB7CisgICAgICAgIE5vZGUqIG5vZGUgPSBtX3JlbmRlcmVyLT5u
b2RlKCk7CisgICAgICAgIGlmIChub2RlICYmIG5vZGUtPmlzSFRNTEVsZW1lbnQoKSkgeworICAg
ICAgICAgICAgY29uc3QgQXRvbWljU3RyaW5nJiBhbHQgPSBzdGF0aWNfY2FzdDxIVE1MRWxlbWVu
dCo+KG5vZGUpLT5nZXRBdHRyaWJ1dGUoYWx0QXR0cik7CisgICAgICAgICAgICBpZiAoIWFsdC5p
c0VtcHR5KCkpCisgICAgICAgICAgICAgIHJldHVybiBhbHQ7CisgICAgICAgIH0KKyAgICB9CisK
ICAgICAvLyBGSVhNRTogV2UgbWlnaHQgbmVlZCB0byBpbXBsZW1lbnQgYSB2YWx1ZSBoZXJlIGZv
ciBtb3JlIHR5cGVzCiAgICAgLy8gRklYTUU6IEl0IHdvdWxkIGJlIGJldHRlciBub3QgdG8gYWR2
ZXJ0aXNlIGEgdmFsdWUgYXQgYWxsIGZvciB0aGUgdHlwZXMgZm9yIHdoaWNoIHdlIGRvbid0IGlt
cGxlbWVudCBvbmU7CiAgICAgLy8gdGhpcyB3b3VsZCByZXF1aXJlIHN1YmNsYXNzaW5nIG9yIG1h
a2luZyBhY2Nlc3NpYmlsaXR5QXR0cmlidXRlTmFtZXMgZG8gc29tZXRoaW5nIG90aGVyIHRoYW4g
cmV0dXJuIGEKQEAgLTk3MywxNyArOTgyLDcgQEAgU3RyaW5nIEFjY2Vzc2liaWxpdHlSZW5kZXJP
YmplY3Q6OmFjY2Vzc2liaWxpdHlEZXNjcmlwdGlvbigpIGNvbnN0CiAgICAgU3RyaW5nIGFyaWFE
ZXNjcmlwdGlvbiA9IGFyaWFEZXNjcmliZWRCeUF0dHJpYnV0ZSgpOwogICAgIGlmICghYXJpYURl
c2NyaXB0aW9uLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuIGFyaWFEZXNjcmlwdGlvbjsKLSAg
ICAKLSAgICBpZiAoaXNJbWFnZSgpIHx8IGlzSW5wdXRJbWFnZSgpIHx8IGlzTmF0aXZlSW1hZ2Uo
KSkgewotICAgICAgICBOb2RlKiBub2RlID0gbV9yZW5kZXJlci0+bm9kZSgpOwotICAgICAgICBp
ZiAobm9kZSAmJiBub2RlLT5pc0hUTUxFbGVtZW50KCkpIHsKLSAgICAgICAgICAgIGNvbnN0IEF0
b21pY1N0cmluZyYgYWx0ID0gc3RhdGljX2Nhc3Q8SFRNTEVsZW1lbnQqPihub2RlKS0+Z2V0QXR0
cmlidXRlKGFsdEF0dHIpOwotICAgICAgICAgICAgaWYgKGFsdC5pc0VtcHR5KCkpCi0gICAgICAg
ICAgICAgICAgcmV0dXJuIFN0cmluZygpOwotICAgICAgICAgICAgcmV0dXJuIGFsdDsKLSAgICAg
ICAgfQotICAgIH0KLSAgICAKKwogICAgIGlmIChpc1dlYkFyZWEoKSkgewogICAgICAgICBEb2N1
bWVudCAqZG9jdW1lbnQgPSBtX3JlbmRlcmVyLT5kb2N1bWVudCgpOwogICAgICAgICBOb2RlKiBv
d25lciA9IGRvY3VtZW50LT5vd25lckVsZW1lbnQoKTsKQEAgLTEwMDAsNiArOTk5LDEzIEBAIFN0
cmluZyBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjphY2Nlc3NpYmlsaXR5RGVzY3JpcHRpb24o
KSBjb25zdAogICAgICAgICBvd25lciA9IGRvY3VtZW50LT5ib2R5KCk7CiAgICAgICAgIGlmIChv
d25lciAmJiBvd25lci0+aXNIVE1MRWxlbWVudCgpKQogICAgICAgICAgICAgcmV0dXJuIHN0YXRp
Y19jYXN0PEhUTUxFbGVtZW50Kj4ob3duZXIpLT5nZXRBdHRyaWJ1dGUobmFtZUF0dHIpOworICAg
IH0gZWxzZSB7CisgICAgICBOb2RlKiBub2RlID0gbV9yZW5kZXJlci0+bm9kZSgpOworICAgICAg
aWYgKG5vZGUgJiYgbm9kZS0+aXNIVE1MRWxlbWVudCgpKSB7CisgICAgICAgIGNvbnN0IEF0b21p
Y1N0cmluZyYgdGl0bGUgPSBzdGF0aWNfY2FzdDxIVE1MRWxlbWVudCo+KG5vZGUpLT5nZXRBdHRy
aWJ1dGUodGl0bGVBdHRyKTsKKyAgICAgICAgaWYgKCF0aXRsZS5pc0VtcHR5KCkpCisgICAgICAg
ICAgcmV0dXJuIHRpdGxlOworICAgICAgfQogICAgIH0KICAgICAKICAgICBpZiAocm9sZVZhbHVl
KCkgPT0gRGVmaW5pdGlvbkxpc3RUZXJtUm9sZSkKLS0gCjEuNi4wLjQKCg==
</data>
<flag name="review"
          id="17277"
          type_id="1"
          status="-"
          setter="gustavo"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>32944</attachid>
            <date>2009-07-17 09:12:16 -0700</date>
            <delta_ts>2009-07-17 13:42:04 -0700</delta_ts>
            <desc>Patch proposal, indentation fixed</desc>
            <filename>0001-2009-07-17-Mario-Sanchez-Prada-msanchez-igalia.com.patch</filename>
            <type>text/plain</type>
            <size>3919</size>
            <attacher name="Mario Sanchez Prada">mario</attacher>
            
              <data encoding="base64">RnJvbSA3YjhhMWJlYjlmOWUzZjU0Mjc3NTY4MmNmNjkwZmM1YWFkNjgyYWJlIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJpbyBTYW5jaGV6IFByYWRhIDxtc2FuY2hlekBpZ2FsaWEu
Y29tPgpEYXRlOiBGcmksIDE3IEp1bCAyMDA5IDE4OjA3OjAyICswMjAwClN1YmplY3Q6IFtQQVRD
SF0gMjAwOS0wNy0xNyAgTWFyaW8gU2FuY2hleiBQcmFkYSA8bXNhbmNoZXpAaWdhbGlhLmNvbT4K
ClJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTI1NTI0CltHdGtdIEV4cG9zZSB0aGUgdGl0bGUgYXR0cmlidXRlIHRvIGFz
c2lzdGl2ZSB0ZWNobm9sb2dpZXMKCiAqIEV4cG9zZSAnYWx0JyBhdHRyaWJ1dGUgZnJvbSBpbWFn
ZXMgYXMgYWNjZXNzaWJsZSBuYW1lLgogKiBFeHBvc2UgdGhlICd0aXRsZScgY29yZSBIVE1MIGF0
dHJpYnV0ZSBhcyBhY2Nlc3NpYmxlIGRlc2NyaXB0aW9uLgotLS0KIFdlYkNvcmUvQ2hhbmdlTG9n
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNCArKysrKysrKysKIC4uLi9h
Y2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwICAgIHwgICAzMCArKysr
KysrKysrKystLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCAzMiBpbnNlcnRpb25zKCspLCAxMiBk
ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBiL1dlYkNvcmUvQ2hh
bmdlTG9nCmluZGV4IGRiMjA2ODMuLjFjMWY2MGEgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvQ2hhbmdl
TG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTcgQEAKKzIwMDktMDctMTcg
IE1hcmlvIFNhbmNoZXogUHJhZGEgIDxtc2FuY2hlekBpZ2FsaWEuY29tPgorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQu
b3JnL3Nob3dfYnVnLmNnaT9pZD0yNTUyNAorICAgICAgICBbR3RrXSBFeHBvc2UgdGhlIHRpdGxl
IGF0dHJpYnV0ZSB0byBhc3Npc3RpdmUgdGVjaG5vbG9naWVzCisKKyAgICAgICAgRXhwb3NlICdh
bHQnIGF0dHJpYnV0ZSBmcm9tIGltYWdlcyBhcyBhY2Nlc3NpYmxlIG5hbWUuCisgICAgICAgIEV4
cG9zZSB0aGUgJ3RpdGxlJyBjb3JlIEhUTUwgYXR0cmlidXRlIGFzIGFjY2Vzc2libGUgZGVzY3Jp
cHRpb24uCisKKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmpl
Y3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6c3Ry
aW5nVmFsdWUpOgorICAgICAgICAoV2ViQ29yZTo6QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6
YWNjZXNzaWJpbGl0eURlc2NyaXB0aW9uKToKKwogMjAwOS0wNy0xNCAgUGF2ZWwgRmVsZG1hbiAg
PHBmZWxkbWFuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBUaW1vdGh5IEhh
dGNoZXIuCmRpZmYgLS1naXQgYS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJl
bmRlck9iamVjdC5jcHAgYi9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQWNjZXNzaWJpbGl0eVJlbmRl
ck9iamVjdC5jcHAKaW5kZXggN2QyZGRjNS4uN2I5OGY0NyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QuY3BwCisrKyBiL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0LmNwcApAQCAtNzkzLDcgKzc5
MywxNiBAQCBTdHJpbmcgQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdDo6c3RyaW5nVmFsdWUoKSBj
b25zdAogICAgICAgICBSZW5kZXJGaWxlVXBsb2FkQ29udHJvbCogdXBsb2FkQ29udHJvbCA9IHN0
YXRpY19jYXN0PFJlbmRlckZpbGVVcGxvYWRDb250cm9sKj4obV9yZW5kZXJlcik7CiAgICAgICAg
IHJldHVybiB1cGxvYWRDb250cm9sLT5maWxlVGV4dFZhbHVlKCk7CiAgICAgfQotICAgIAorCisg
ICAgaWYgKGlzSW1hZ2UoKSB8fCBpc0lucHV0SW1hZ2UoKSB8fCBpc05hdGl2ZUltYWdlKCkpIHsK
KyAgICAgICAgTm9kZSogbm9kZSA9IG1fcmVuZGVyZXItPm5vZGUoKTsKKyAgICAgICAgaWYgKG5v
ZGUgJiYgbm9kZS0+aXNIVE1MRWxlbWVudCgpKSB7CisgICAgICAgICAgICBjb25zdCBBdG9taWNT
dHJpbmcmIGFsdCA9IHN0YXRpY19jYXN0PEhUTUxFbGVtZW50Kj4obm9kZSktPmdldEF0dHJpYnV0
ZShhbHRBdHRyKTsKKyAgICAgICAgICAgIGlmICghYWx0LmlzRW1wdHkoKSkKKyAgICAgICAgICAg
ICAgICByZXR1cm4gYWx0OworICAgICAgICB9CisgICAgfQorCiAgICAgLy8gRklYTUU6IFdlIG1p
Z2h0IG5lZWQgdG8gaW1wbGVtZW50IGEgdmFsdWUgaGVyZSBmb3IgbW9yZSB0eXBlcwogICAgIC8v
IEZJWE1FOiBJdCB3b3VsZCBiZSBiZXR0ZXIgbm90IHRvIGFkdmVydGlzZSBhIHZhbHVlIGF0IGFs
bCBmb3IgdGhlIHR5cGVzIGZvciB3aGljaCB3ZSBkb24ndCBpbXBsZW1lbnQgb25lOwogICAgIC8v
IHRoaXMgd291bGQgcmVxdWlyZSBzdWJjbGFzc2luZyBvciBtYWtpbmcgYWNjZXNzaWJpbGl0eUF0
dHJpYnV0ZU5hbWVzIGRvIHNvbWV0aGluZyBvdGhlciB0aGFuIHJldHVybiBhCkBAIC05NzMsMTcg
Kzk4Miw3IEBAIFN0cmluZyBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0OjphY2Nlc3NpYmlsaXR5
RGVzY3JpcHRpb24oKSBjb25zdAogICAgIFN0cmluZyBhcmlhRGVzY3JpcHRpb24gPSBhcmlhRGVz
Y3JpYmVkQnlBdHRyaWJ1dGUoKTsKICAgICBpZiAoIWFyaWFEZXNjcmlwdGlvbi5pc0VtcHR5KCkp
CiAgICAgICAgIHJldHVybiBhcmlhRGVzY3JpcHRpb247Ci0gICAgCi0gICAgaWYgKGlzSW1hZ2Uo
KSB8fCBpc0lucHV0SW1hZ2UoKSB8fCBpc05hdGl2ZUltYWdlKCkpIHsKLSAgICAgICAgTm9kZSog
bm9kZSA9IG1fcmVuZGVyZXItPm5vZGUoKTsKLSAgICAgICAgaWYgKG5vZGUgJiYgbm9kZS0+aXNI
VE1MRWxlbWVudCgpKSB7Ci0gICAgICAgICAgICBjb25zdCBBdG9taWNTdHJpbmcmIGFsdCA9IHN0
YXRpY19jYXN0PEhUTUxFbGVtZW50Kj4obm9kZSktPmdldEF0dHJpYnV0ZShhbHRBdHRyKTsKLSAg
ICAgICAgICAgIGlmIChhbHQuaXNFbXB0eSgpKQotICAgICAgICAgICAgICAgIHJldHVybiBTdHJp
bmcoKTsKLSAgICAgICAgICAgIHJldHVybiBhbHQ7Ci0gICAgICAgIH0KLSAgICB9Ci0gICAgCisK
ICAgICBpZiAoaXNXZWJBcmVhKCkpIHsKICAgICAgICAgRG9jdW1lbnQgKmRvY3VtZW50ID0gbV9y
ZW5kZXJlci0+ZG9jdW1lbnQoKTsKICAgICAgICAgTm9kZSogb3duZXIgPSBkb2N1bWVudC0+b3du
ZXJFbGVtZW50KCk7CkBAIC0xMDAwLDYgKzk5OSwxMyBAQCBTdHJpbmcgQWNjZXNzaWJpbGl0eVJl
bmRlck9iamVjdDo6YWNjZXNzaWJpbGl0eURlc2NyaXB0aW9uKCkgY29uc3QKICAgICAgICAgb3du
ZXIgPSBkb2N1bWVudC0+Ym9keSgpOwogICAgICAgICBpZiAob3duZXIgJiYgb3duZXItPmlzSFRN
TEVsZW1lbnQoKSkKICAgICAgICAgICAgIHJldHVybiBzdGF0aWNfY2FzdDxIVE1MRWxlbWVudCo+
KG93bmVyKS0+Z2V0QXR0cmlidXRlKG5hbWVBdHRyKTsKKyAgICB9IGVsc2UgeworICAgICAgICBO
b2RlKiBub2RlID0gbV9yZW5kZXJlci0+bm9kZSgpOworICAgICAgICBpZiAobm9kZSAmJiBub2Rl
LT5pc0hUTUxFbGVtZW50KCkpIHsKKyAgICAgICAgICAgIGNvbnN0IEF0b21pY1N0cmluZyYgdGl0
bGUgPSBzdGF0aWNfY2FzdDxIVE1MRWxlbWVudCo+KG5vZGUpLT5nZXRBdHRyaWJ1dGUodGl0bGVB
dHRyKTsKKyAgICAgICAgICAgIGlmICghdGl0bGUuaXNFbXB0eSgpKQorICAgICAgICAgICAgICAg
IHJldHVybiB0aXRsZTsKKyAgICAgICAgfQogICAgIH0KICAgICAKICAgICBpZiAocm9sZVZhbHVl
KCkgPT0gRGVmaW5pdGlvbkxpc3RUZXJtUm9sZSkKLS0gCjEuNi4wLjQKCg==
</data>
<flag name="review"
          id="17288"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>42919</attachid>
            <date>2009-11-10 20:14:16 -0800</date>
            <delta_ts>2009-11-22 16:13:19 -0800</delta_ts>
            <desc>Modified version of Mario&apos;s fix: only impacts gtk</desc>
            <filename>25524-jd-1.patch</filename>
            <type>text/plain</type>
            <size>5040</size>
            <attacher name="Joanmarie Diggs">jdiggs</attacher>
            
              <data encoding="base64">RnJvbSBkOTc3NmUzMzVlZTg5NGUyZDBkYjYxYWMxNGU1M2EwZTgyNmVjYmQzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKb2FubWFyaWUgRGlnZ3MgPGpvYW5tYXJpZS5kaWdnc0BnbWFp
bC5jb20+CkRhdGU6IFR1ZSwgMTAgTm92IDIwMDkgMjI6NTU6MzkgLTA1MDAKU3ViamVjdDogW1BB
VENIXSAyMDA5LTExLTEwICBKb2FubWFyaWUgRGlnZ3MgIDxqb2FubWFyaWUuZGlnZ3NAZ21haWwu
Y29tPgoKICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NTI0CiAgICAgICAgW0d0a10gRXhw
b3NlIHRoZSB0aXRsZSBhdHRyaWJ1dGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llcwoKICAgICAg
ICBFeHBvc2UgJ2FsdCcgYXR0cmlidXRlIGZyb20gaW1hZ2VzIGFzIGFjY2Vzc2libGUgbmFtZS4K
ICAgICAgICBFeHBvc2UgdGhlICd0aXRsZScgY29yZSBIVE1MIGF0dHJpYnV0ZSBhcyBhY2Nlc3Np
YmxlIGRlc2NyaXB0aW9uLgogICAgICAgIFRoaXMgaXMgYSBtb2RpZmllZCB2ZXJzaW9uIG9mIHRo
ZSBvcmlnaW5hbCBmaXggc3VibWl0dGVkIGJ5IE1hcmlvIFNhbmNoZXogUHJhZGEsCiAgICAgICAg
YWRqdXN0ZWQgc28gdGhhdCBpdCBkb2Vzbid0IGltcGFjdCBvdGhlciBwbGF0Zm9ybXMuCgogICAg
ICAgICogYWNjZXNzaWJpbGl0eS9ndGsvQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJBdGsuY3Bw
OgogICAgICAgICh3ZWJraXRfYWNjZXNzaWJsZV9nZXRfbmFtZSk6CiAgICAgICAgKHdlYmtpdF9h
Y2Nlc3NpYmxlX2dldF9kZXNjcmlwdGlvbik6Ci0tLQogV2ViQ29yZS9DaGFuZ2VMb2cgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDE2ICsrKysrKysrCiAuLi4vZ3RrL0FjY2Vz
c2liaWxpdHlPYmplY3RXcmFwcGVyQXRrLmNwcCAgICAgICAgICB8ICAgMzggKysrKysrKysrKysr
KysrLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA0NiBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygt
KQoKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5k
ZXggMTM2MTRiNS4uMzQwYjA3NSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIv
V2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAwOS0xMS0xMCAgSm9hbm1hcmll
IERpZ2dzICA8am9hbm1hcmllLmRpZ2dzQGdtYWlsLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MjU1MjQKKyAgICAgICAgW0d0a10gRXhwb3NlIHRoZSB0aXRsZSBhdHRyaWJ1
dGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llcworCisgICAgICAgIEV4cG9zZSAnYWx0JyBhdHRy
aWJ1dGUgZnJvbSBpbWFnZXMgYXMgYWNjZXNzaWJsZSBuYW1lLgorICAgICAgICBFeHBvc2UgdGhl
ICd0aXRsZScgY29yZSBIVE1MIGF0dHJpYnV0ZSBhcyBhY2Nlc3NpYmxlIGRlc2NyaXB0aW9uLgor
ICAgICAgICBUaGlzIGlzIGEgbW9kaWZpZWQgdmVyc2lvbiBvZiB0aGUgb3JpZ2luYWwgZml4IHN1
Ym1pdHRlZCBieSBNYXJpbyBTYW5jaGV6IFByYWRhLAorICAgICAgICBhZGp1c3RlZCBzbyB0aGF0
IGl0IGRvZXNuJ3QgaW1wYWN0IG90aGVyIHBsYXRmb3Jtcy4KKworICAgICAgICAqIGFjY2Vzc2li
aWxpdHkvZ3RrL0FjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQXRrLmNwcDoKKyAgICAgICAgKHdl
YmtpdF9hY2Nlc3NpYmxlX2dldF9uYW1lKToKKyAgICAgICAgKHdlYmtpdF9hY2Nlc3NpYmxlX2dl
dF9kZXNjcmlwdGlvbik6CisKIDIwMDktMTEtMTAgIEJyYWR5IEVpZHNvbiAgPGJlaWRzb25AYXBw
bGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IFNhbSBXZWluaWcuCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2FjY2Vzc2liaWxpdHkvZ3RrL0FjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQXRrLmNw
cCBiL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9ndGsvQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJB
dGsuY3BwCmluZGV4IDg2YmMzNzMuLjM2ZDI3OTcgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9ndGsvQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJBdGsuY3BwCisrKyBiL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9ndGsvQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJBdGsuY3BwCkBA
IC0xNTksMjkgKzE1OSw1MSBAQCBzdGF0aWMgY29uc3QgZ2NoYXIqIG5hbWVGcm9tQ2hpbGRyZW4o
QWNjZXNzaWJpbGl0eU9iamVjdCogb2JqZWN0KQogc3RhdGljIGNvbnN0IGdjaGFyKiB3ZWJraXRf
YWNjZXNzaWJsZV9nZXRfbmFtZShBdGtPYmplY3QqIG9iamVjdCkKIHsKICAgICBBY2Nlc3NpYmls
aXR5T2JqZWN0KiBjb3JlT2JqZWN0ID0gY29yZShvYmplY3QpOworICAgIGlmICghY29yZU9iamVj
dC0+aXNBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0KCkpCisgICAgICAgIHJldHVybiByZXR1cm5T
dHJpbmcoY29yZU9iamVjdC0+c3RyaW5nVmFsdWUoKSk7CisKKyAgICBBY2Nlc3NpYmlsaXR5UmVu
ZGVyT2JqZWN0KiByZW5kZXJPYmplY3QgPSBzdGF0aWNfY2FzdDxBY2Nlc3NpYmlsaXR5UmVuZGVy
T2JqZWN0Kj4oY29yZU9iamVjdCk7CiAgICAgaWYgKGNvcmVPYmplY3QtPmlzQ29udHJvbCgpKSB7
Ci0gICAgICAgIEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QqIHJlbmRlck9iamVjdCA9IHN0YXRp
Y19jYXN0PEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QqPihjb3JlT2JqZWN0KTsKICAgICAgICAg
QWNjZXNzaWJpbGl0eU9iamVjdCogbGFiZWwgPSByZW5kZXJPYmplY3QtPmNvcnJlc3BvbmRpbmdM
YWJlbEZvckNvbnRyb2xFbGVtZW50KCk7CiAgICAgICAgIGlmIChsYWJlbCkKICAgICAgICAgICAg
IHJldHVybiByZXR1cm5TdHJpbmcobmFtZUZyb21DaGlsZHJlbihsYWJlbCkpOwogICAgIH0KKwor
ICAgIGlmIChyZW5kZXJPYmplY3QtPmlzSW1hZ2UoKSB8fCByZW5kZXJPYmplY3QtPmlzSW5wdXRJ
bWFnZSgpKSB7CisgICAgICAgIE5vZGUqIG5vZGUgPSByZW5kZXJPYmplY3QtPnJlbmRlcmVyKCkt
Pm5vZGUoKTsKKyAgICAgICAgaWYgKG5vZGUgJiYgbm9kZS0+aXNIVE1MRWxlbWVudCgpKSB7Cisg
ICAgICAgICAgICAvLyBHZXQgdGhlIGF0dHJpYnV0ZSByYXRoZXIgdGhhbiBhbHRUZXh0IFN0cmlu
ZyBzbyBhcyBub3QgdG8gZmFsbCBiYWNrIG9uIHRpdGxlLgorICAgICAgICAgICAgU3RyaW5nIGFs
dCA9IHN0YXRpY19jYXN0PEhUTUxFbGVtZW50Kj4obm9kZSktPmdldEF0dHJpYnV0ZShIVE1MTmFt
ZXM6OmFsdEF0dHIpOworICAgICAgICAgICAgaWYgKCFhbHQuaXNFbXB0eSgpKQorICAgICAgICAg
ICAgICAgIHJldHVybiByZXR1cm5TdHJpbmcoYWx0KTsKKyAgICAgICAgfQorICAgIH0KKwogICAg
IHJldHVybiByZXR1cm5TdHJpbmcoY29yZU9iamVjdC0+c3RyaW5nVmFsdWUoKSk7CiB9CiAKIHN0
YXRpYyBjb25zdCBnY2hhciogd2Via2l0X2FjY2Vzc2libGVfZ2V0X2Rlc2NyaXB0aW9uKEF0a09i
amVjdCogb2JqZWN0KQogewogICAgIEFjY2Vzc2liaWxpdHlPYmplY3QqIGNvcmVPYmplY3QgPSBj
b3JlKG9iamVjdCk7CisgICAgTm9kZSogbm9kZSA9IDA7CisgICAgaWYgKGNvcmVPYmplY3QtPmlz
QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdCgpKQorICAgICAgICBub2RlID0gc3RhdGljX2Nhc3Q8
QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdCo+KGNvcmVPYmplY3QpLT5yZW5kZXJlcigpLT5ub2Rl
KCk7CisgICAgaWYgKCFub2RlIHx8ICFub2RlLT5pc0hUTUxFbGVtZW50KCkgfHwgY29yZU9iamVj
dC0+YXJpYVJvbGVBdHRyaWJ1dGUoKSAhPSBVbmtub3duUm9sZSkKKyAgICAgICAgcmV0dXJuIHJl
dHVyblN0cmluZyhjb3JlT2JqZWN0LT5hY2Nlc3NpYmlsaXR5RGVzY3JpcHRpb24oKSk7CiAKICAg
ICAvLyBhdGtfdGFibGVfZ2V0X3N1bW1hcnkgcmV0dXJucyBhbiBBdGtPYmplY3QuIFdlIGhhdmUg
bm8gc3VtbWFyeSBvYmplY3QsIHNvIGV4cG9zZSBzdW1tYXJ5IGhlcmUuCi0gICAgaWYgKGNvcmVP
YmplY3QtPnJvbGVWYWx1ZSgpID09IFRhYmxlUm9sZSAmJiBjb3JlT2JqZWN0LT5hcmlhUm9sZUF0
dHJpYnV0ZSgpID09IFVua25vd25Sb2xlKSB7Ci0gICAgICAgIE5vZGUqIG5vZGUgPSBzdGF0aWNf
Y2FzdDxBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0Kj4oY29yZU9iamVjdCktPnJlbmRlcmVyKCkt
Pm5vZGUoKTsKLSAgICAgICAgaWYgKG5vZGUgJiYgbm9kZS0+aXNIVE1MRWxlbWVudCgpKSB7Ci0g
ICAgICAgICAgICBTdHJpbmcgc3VtbWFyeSA9IHN0YXRpY19jYXN0PEhUTUxUYWJsZUVsZW1lbnQq
Pihub2RlKS0+c3VtbWFyeSgpOwotICAgICAgICAgICAgaWYgKCFzdW1tYXJ5LmlzRW1wdHkoKSkK
LSAgICAgICAgICAgICAgICByZXR1cm4gcmV0dXJuU3RyaW5nKHN1bW1hcnkpOwotICAgICAgICB9
CisgICAgaWYgKGNvcmVPYmplY3QtPnJvbGVWYWx1ZSgpID09IFRhYmxlUm9sZSkgeworICAgICAg
ICBTdHJpbmcgc3VtbWFyeSA9IHN0YXRpY19jYXN0PEhUTUxUYWJsZUVsZW1lbnQqPihub2RlKS0+
c3VtbWFyeSgpOworICAgICAgICBpZiAoIXN1bW1hcnkuaXNFbXB0eSgpKQorICAgICAgICAgICAg
cmV0dXJuIHJldHVyblN0cmluZyhzdW1tYXJ5KTsKICAgICB9CiAKKyAgICAvLyBUaGUgdGl0bGUg
YXR0cmlidXRlIHNob3VsZCBiZSByZWxpYWJseSBhdmFpbGFibGUgYXMgdGhlIG9iamVjdCdzIGRl
c2NyaXB0b24uCisgICAgLy8gV2UgZG8gbm90IHdhbnQgdG8gZmFsbCBiYWNrIG9uIG90aGVyIGF0
dHJpYnV0ZXMgaW4gaXRzIGFic2VuY2UuIFNlZSBidWcgMjU1MjQuCisgICAgU3RyaW5nIHRpdGxl
ID0gc3RhdGljX2Nhc3Q8SFRNTEVsZW1lbnQqPihub2RlKS0+dGl0bGUoKTsKKyAgICBpZiAoIXRp
dGxlLmlzRW1wdHkoKSkKKyAgICAgICAgcmV0dXJuIHJldHVyblN0cmluZyh0aXRsZSk7CisKICAg
ICByZXR1cm4gcmV0dXJuU3RyaW5nKGNvcmVPYmplY3QtPmFjY2Vzc2liaWxpdHlEZXNjcmlwdGlv
bigpKTsKIH0KIAotLSAKMS42LjMuMwoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>43690</attachid>
            <date>2009-11-22 16:13:19 -0800</date>
            <delta_ts>2009-11-24 15:12:47 -0800</delta_ts>
            <desc>Added a new layout test</desc>
            <filename>25524-jd-2.patch</filename>
            <type>text/plain</type>
            <size>10246</size>
            <attacher name="Joanmarie Diggs">jdiggs</attacher>
            
              <data encoding="base64">RnJvbSA3NjE5YWZlMmMwOGY1NmVlMjY3YjI5M2E4OGE0MWYxYTBmOGU3OGJhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKb2FubWFyaWUgRGlnZ3MgPGpvYW5tYXJpZS5kaWdnc0BnbWFp
bC5jb20+CkRhdGU6IFN1biwgMjIgTm92IDIwMDkgMTg6MjY6MzAgLTA1MDAKU3ViamVjdDogW1BB
VENIXSAyMDA5LTExLTIyICBKb2FubWFyaWUgRGlnZ3MgIDxqb2FubWFyaWUuZGlnZ3NAZ21haWwu
Y29tPgoKICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NTI0CiAgICAgICAgW0d0a10gRXhw
b3NlIHRoZSB0aXRsZSBhdHRyaWJ1dGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llcwoKICAgICAg
ICBFeHBvc2UgJ2FsdCcgYXR0cmlidXRlIGZyb20gaW1hZ2VzIGFzIGFjY2Vzc2libGUgbmFtZS4K
ICAgICAgICBFeHBvc2UgdGhlICd0aXRsZScgY29yZSBIVE1MIGF0dHJpYnV0ZSBhcyBhY2Nlc3Np
YmxlIGRlc2NyaXB0aW9uLgogICAgICAgIFRoaXMgaXMgYSBtb2RpZmllZCB2ZXJzaW9uIG9mIHRo
ZSBvcmlnaW5hbCBmaXggc3VibWl0dGVkIGJ5IE1hcmlvIFNhbmNoZXogUHJhZGEsCiAgICAgICAg
YWRqdXN0ZWQgc28gdGhhdCBpdCBkb2Vzbid0IGltcGFjdCBvdGhlciBwbGF0Zm9ybXMuCgogICAg
ICAgICogV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2d0ay9BY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBl
ckF0ay5jcHA6CiAgICAgICAgKHdlYmtpdF9hY2Nlc3NpYmxlX2dldF9uYW1lKToKICAgICAgICAo
d2Via2l0X2FjY2Vzc2libGVfZ2V0X2Rlc2NyaXB0aW9uKToKCiAgICAgICAgKiBMYXlvdXRUZXN0
cy9hY2Nlc3NpYmlsaXR5L3RpdGxlLWFuZC1hbHQuaHRtbDogQWRkZWQuCiAgICAgICAgKiBMYXlv
dXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3RpdGxlLWFuZC1hbHQtZXhwZWN0ZWQudHh0OiBBZGRlZC4K
ICAgICAgICAqIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkOgogICAgICAgICogTGF5
b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBwZWQ6Ci0tLQogTGF5b3V0VGVzdHMvQ2hhbmdlTG9n
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEyICsrKysrCiAuLi4vYWNjZXNzaWJp
bGl0eS90aXRsZS1hbmQtYWx0LWV4cGVjdGVkLnR4dCAgICAgICB8ICAgMTkgKysrKysrKysrCiBM
YXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3RpdGxlLWFuZC1hbHQuaHRtbCAgICAgICB8ICAgNDMg
KysrKysrKysrKysrKysrKysrKysKIExheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkICAg
ICAgICAgICAgICAgICAgIHwgICAgMyArLQogTGF5b3V0VGVzdHMvcGxhdGZvcm0vd2luL1NraXBw
ZWQgICAgICAgICAgICAgICAgICAgfCAgICAxICsKIFdlYkNvcmUvQ2hhbmdlTG9nICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIHwgICAxNiArKysrKysrCiAuLi4vZ3RrL0FjY2Vzc2li
aWxpdHlPYmplY3RXcmFwcGVyQXRrLmNwcCAgICAgICAgICB8ICAgMzggKysrKysrKysrKysrKyst
LS0tCiA3IGZpbGVzIGNoYW5nZWQsIDEyMyBpbnNlcnRpb25zKCspLCA5IGRlbGV0aW9ucygtKQog
Y3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkvdGl0bGUtYW5kLWFs
dC1leHBlY3RlZC50eHQKIGNyZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9hY2Nlc3NpYmls
aXR5L3RpdGxlLWFuZC1hbHQuaHRtbAoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxv
ZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBmOWJlMzUzLi43M2RmNjE5IDEwMDY0NAot
LS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTUgQEAKKzIwMDktMTEtMjIgIEpvYW5tYXJpZSBEaWdncyAgPGpvYW5tYXJpZS5k
aWdnc0BnbWFpbC5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NTI0Cisg
ICAgICAgIFtHdGtdIEV4cG9zZSB0aGUgdGl0bGUgYXR0cmlidXRlIHRvIGFzc2lzdGl2ZSB0ZWNo
bm9sb2dpZXMKKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvdGl0bGUtYW5kLWFsdC5odG1sOiBB
ZGRlZC4KKyAgICAgICAgKiBhY2Nlc3NpYmlsaXR5L3RpdGxlLWFuZC1hbHQtZXhwZWN0ZWQudHh0
OiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9tYWMvU2tpcHBlZDoKKyAgICAgICAgKiBwbGF0
Zm9ybS93aW4vU2tpcHBlZDoKKwogMjAwOS0xMS0yMiAgQ2hyaXMgRXZhbnMgIDxjZXZhbnNAY2hy
b21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEFkYW0gQmFydGguCmRpZmYgLS1naXQg
YS9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3RpdGxlLWFuZC1hbHQtZXhwZWN0ZWQudHh0IGIv
TGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS90aXRsZS1hbmQtYWx0LWV4cGVjdGVkLnR4dApuZXcg
ZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yYzU0YWMxCi0tLSAvZGV2L251bGwKKysr
IGIvTGF5b3V0VGVzdHMvYWNjZXNzaWJpbGl0eS90aXRsZS1hbmQtYWx0LWV4cGVjdGVkLnR4dApA
QCAtMCwwICsxLDE5IEBACisKK0Z1bmN0aW9uYWwgbGFiZWw6CitUaGlzIHRlc3RzIHRoZSBleHBv
c3VyZSBvZiBhbHQgYW5kIHRpdGxlIGluZm9ybWF0aW9uLgorCitPbiBzdWNjZXNzLCB5b3Ugd2ls
bCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01Q
TEVURSIuCisKKworUEFTUyBpbWFnZS50aXRsZSBpcyAnSW1hZ2UgYWx0IGF0dHInCitQQVNTIGlt
YWdlLmRlc2NyaXB0aW9uIGlzICdJbWFnZSB0aXRsZSBhdHRyJworUEFTUyBsaW5rLnRpdGxlIGlz
ICcnCitQQVNTIGxpbmsuZGVzY3JpcHRpb24gaXMgJ0xpbmsgdGl0bGUgYXR0cicKK1BBU1MgZW50
cnkudGl0bGUgaXMgJycKK1BBU1MgZW50cnkuZGVzY3JpcHRpb24gaXMgJ0VudHJ5IHRpdGxlIGF0
dHInCitQQVNTIGJ1dHRvbi50aXRsZSBpcyAnU3VibWl0JworUEFTUyBidXR0b24uZGVzY3JpcHRp
b24gaXMgJ1N1Ym1pdCBidXR0b24gdGl0bGUgYXR0cicKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2Vk
IGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9hY2Nl
c3NpYmlsaXR5L3RpdGxlLWFuZC1hbHQuaHRtbCBiL0xheW91dFRlc3RzL2FjY2Vzc2liaWxpdHkv
dGl0bGUtYW5kLWFsdC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjg0
NjkwNjIKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9hY2Nlc3NpYmlsaXR5L3RpdGxl
LWFuZC1hbHQuaHRtbApAQCAtMCwwICsxLDQzIEBACis8IURPQ1RZUEUgSFRNTCBQVUJMSUMgIi0v
L0lFVEYvL0RURCBIVE1MLy9FTiI+Cis8aHRtbD4KKzxoZWFkPgorPGxpbmsgcmVsPSJzdHlsZXNo
ZWV0IiBocmVmPSIuLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXN0eWxlLmNzcyI+Cis8c2Ny
aXB0PgordmFyIHN1Y2Nlc3NmdWxseVBhcnNlZCA9IGZhbHNlOworPC9zY3JpcHQ+Cis8c2NyaXB0
IHNyYz0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2NyaXB0PgorPC9o
ZWFkPgorPGJvZHkgaWQ9ImJvZHkiPgorPGltZyBzcmM9ImltYWdlLmpwZyIgYWx0PSJJbWFnZSBh
bHQgYXR0ciIgdGl0bGU9IkltYWdlIHRpdGxlIGF0dHIiPgorPGZvcm0+Cis8YSBocmVmPSIiIHRp
dGxlPSJMaW5rIHRpdGxlIGF0dHIiPkZ1bmN0aW9uYWwgbGFiZWw8L2E+OjxpbnB1dCB0aXRsZT0i
RW50cnkgdGl0bGUgYXR0ciIgdHlwZT0idGV4dCIgLz48aW5wdXQgdmFsdWU9IkNsZWFyIiB0eXBl
PSJyZXNldCIgLz48aW5wdXQgdmFsdWU9IlN1Ym1pdCIgdGl0bGU9IlN1Ym1pdCBidXR0b24gdGl0
bGUgYXR0ciIgdHlwZT0ic3VibWl0IiAvPgorPC9mb3JtPgorPHAgaWQ9ImRlc2NyaXB0aW9uIj48
L3A+Cis8ZGl2IGlkPSJjb25zb2xlIj48L2Rpdj4KKzxzY3JpcHQ+CisgICAgZGVzY3JpcHRpb24o
IlRoaXMgdGVzdHMgdGhlIGV4cG9zdXJlIG9mIGFsdCBhbmQgdGl0bGUgaW5mb3JtYXRpb24uIik7
CisgICAgaWYgKHdpbmRvdy5hY2Nlc3NpYmlsaXR5Q29udHJvbGxlcikgeworICAgICAgICBkb2N1
bWVudC5nZXRFbGVtZW50QnlJZCgiYm9keSIpLmZvY3VzKCk7CisgICAgICAgIHZhciB3ZWJBcmVh
ID0gYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIuZm9jdXNlZEVsZW1lbnQ7CisKKyAgICAgICAgdmFy
IGltYWdlID0gd2ViQXJlYS5jaGlsZEF0SW5kZXgoMCk7CisgICAgICAgIHNob3VsZEJlKCJpbWFn
ZS50aXRsZSIsICInSW1hZ2UgYWx0IGF0dHInIik7CisgICAgICAgIHNob3VsZEJlKCJpbWFnZS5k
ZXNjcmlwdGlvbiIsICInSW1hZ2UgdGl0bGUgYXR0ciciKTsKKworICAgICAgICB2YXIgbGluayA9
IHdlYkFyZWEuY2hpbGRBdEluZGV4KDEpOworICAgICAgICBzaG91bGRCZSgibGluay50aXRsZSIs
ICInJyIpOworICAgICAgICBzaG91bGRCZSgibGluay5kZXNjcmlwdGlvbiIsICInTGluayB0aXRs
ZSBhdHRyJyIpOworCisgICAgICAgIHZhciBlbnRyeSA9IHdlYkFyZWEuY2hpbGRBdEluZGV4KDIp
OworICAgICAgICBzaG91bGRCZSgiZW50cnkudGl0bGUiLCAiJyciKTsKKyAgICAgICAgc2hvdWxk
QmUoImVudHJ5LmRlc2NyaXB0aW9uIiwgIidFbnRyeSB0aXRsZSBhdHRyJyIpOworCisgICAgICAg
IHZhciBidXR0b24gPSB3ZWJBcmVhLmNoaWxkQXRJbmRleCg0KTsKKyAgICAgICAgc2hvdWxkQmUo
ImJ1dHRvbi50aXRsZSIsICInU3VibWl0JyIpOworICAgICAgICBzaG91bGRCZSgiYnV0dG9uLmRl
c2NyaXB0aW9uIiwgIidTdWJtaXQgYnV0dG9uIHRpdGxlIGF0dHInIik7CisgICAgICAgIH0KKyAg
ICBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4v
ZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwv
aHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL21hYy9Ta2lwcGVkIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKaW5kZXggODJhYzY3MC4uN2I4NDc1MCAxMDA2
NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKKysrIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vbWFjL1NraXBwZWQKQEAgLTk2LDggKzk2LDkgQEAgbWVkaWEvdmlkZW8tZW1w
dHktc291cmNlLmh0bWwKICMgUnVieSBsYXlvdXQgdGVzdHMgc29tZWhvdyBjYXVzZSBodHRwL3Rl
c3RzL3NlY3VyaXR5L21peGVkQ29udGVudC9hYm91dC1ibGFuay1pZnJhbWUtaW4tbWFpbi1mcmFt
ZS5odG1sIHRvIGZhaWwKIGZhc3QvcnVieQogCi0jIEFjY2Vzc2liaWxpdHkgdGVzdHMgd2l0aG91
dCByZXN1bHRzCisjIEFjY2Vzc2liaWxpdHkgdGVzdHMgd2l0aG91dCByZXN1bHRzIG9yIHdpdGgg
cmVzdWx0cyB3aGljaCBtaWdodCB2YXJ5IGFjcm9zcyBwbGF0Zm9ybXMuCiBhY2Nlc3NpYmlsaXR5
L2RvY3VtZW50LWF0dHJpYnV0ZXMuaHRtbAorYWNjZXNzaWJpbGl0eS90aXRsZS1hbmQtYWx0Lmh0
bWwKIAogIyBOZWVkIHRvIGFkZCBmdW5jdGlvbmFsaXR5IHRvIER1bXBSZW5kZXJUcmVlIHRvIGhh
bmRsZSBlcnJvciBwYWdlcwogZmFzdC9oaXN0b3J5L2JhY2stZm9yd2FyZC1yZXNldC1hZnRlci1l
cnJvci1oYW5kbGluZy5odG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS93aW4v
U2tpcHBlZCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkCmluZGV4IDBlMDlmZGQu
LmYzZGFhOTQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkCisr
KyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL3dpbi9Ta2lwcGVkCkBAIC00MTgsNiArNDE4LDcgQEAg
YWNjZXNzaWJpbGl0eS90ZXh0YXJlYS1pbnNlcnRpb24tcG9pbnQtbGluZS1udW1iZXIuaHRtbAog
YWNjZXNzaWJpbGl0eS90ZXh0YXJlYS1saW5lLWZvci1pbmRleC5odG1sCiBhY2Nlc3NpYmlsaXR5
L3RleHRhcmVhLXNlbGVjdGVkLXRleHQtcmFuZ2UuaHRtbAogYWNjZXNzaWJpbGl0eS90aC1hcy10
aXRsZS11aS5odG1sCithY2Nlc3NpYmlsaXR5L3RpdGxlLWFuZC1hbHQuaHRtbAogYWNjZXNzaWJp
bGl0eS90cmFuc2Zvcm1lZC1lbGVtZW50Lmh0bWwKIGFjY2Vzc2liaWxpdHkvdmlzaWJsZS1lbGVt
ZW50cy5odG1sCiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFu
Z2VMb2cKaW5kZXggOGViNTM2Mi4uOTM0ZDIzMSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VM
b2cKKysrIGIvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAwOS0xMS0yMiAg
Sm9hbm1hcmllIERpZ2dzICA8am9hbm1hcmllLmRpZ2dzQGdtYWlsLmNvbT4KKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjU1MjQKKyAgICAgICAgW0d0a10gRXhwb3NlIHRoZSB0aXRs
ZSBhdHRyaWJ1dGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llcworCisgICAgICAgIEV4cG9zZSAn
YWx0JyBhdHRyaWJ1dGUgZnJvbSBpbWFnZXMgYXMgYWNjZXNzaWJsZSBuYW1lLgorICAgICAgICBF
eHBvc2UgdGhlICd0aXRsZScgY29yZSBIVE1MIGF0dHJpYnV0ZSBhcyBhY2Nlc3NpYmxlIGRlc2Ny
aXB0aW9uLgorICAgICAgICBUaGlzIGlzIGEgbW9kaWZpZWQgdmVyc2lvbiBvZiB0aGUgb3JpZ2lu
YWwgZml4IHN1Ym1pdHRlZCBieSBNYXJpbyBTYW5jaGV6IFByYWRhLAorICAgICAgICBhZGp1c3Rl
ZCBzbyB0aGF0IGl0IGRvZXNuJ3QgaW1wYWN0IG90aGVyIHBsYXRmb3Jtcy4KKworICAgICAgICAq
IGFjY2Vzc2liaWxpdHkvZ3RrL0FjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQXRrLmNwcDoKKyAg
ICAgICAgKHdlYmtpdF9hY2Nlc3NpYmxlX2dldF9uYW1lKToKKyAgICAgICAgKHdlYmtpdF9hY2Nl
c3NpYmxlX2dldF9kZXNjcmlwdGlvbik6CisKIDIwMDktMTEtMjIgIFBhdmVsIEZlbGRtYW4gIDxw
ZmVsZG1hbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgVGltb3RoeSBIYXRj
aGVyLgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2d0ay9BY2Nlc3NpYmlsaXR5
T2JqZWN0V3JhcHBlckF0ay5jcHAgYi9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvZ3RrL0FjY2Vzc2li
aWxpdHlPYmplY3RXcmFwcGVyQXRrLmNwcAppbmRleCBkNGY0YmE4Li41YzM4YTljIDEwMDY0NAot
LS0gYS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvZ3RrL0FjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVy
QXRrLmNwcAorKysgYi9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvZ3RrL0FjY2Vzc2liaWxpdHlPYmpl
Y3RXcmFwcGVyQXRrLmNwcApAQCAtMTU5LDI5ICsxNTksNTEgQEAgc3RhdGljIGNvbnN0IGdjaGFy
KiBuYW1lRnJvbUNoaWxkcmVuKEFjY2Vzc2liaWxpdHlPYmplY3QqIG9iamVjdCkKIHN0YXRpYyBj
b25zdCBnY2hhciogd2Via2l0X2FjY2Vzc2libGVfZ2V0X25hbWUoQXRrT2JqZWN0KiBvYmplY3Qp
CiB7CiAgICAgQWNjZXNzaWJpbGl0eU9iamVjdCogY29yZU9iamVjdCA9IGNvcmUob2JqZWN0KTsK
KyAgICBpZiAoIWNvcmVPYmplY3QtPmlzQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdCgpKQorICAg
ICAgICByZXR1cm4gcmV0dXJuU3RyaW5nKGNvcmVPYmplY3QtPnN0cmluZ1ZhbHVlKCkpOworCisg
ICAgQWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdCogcmVuZGVyT2JqZWN0ID0gc3RhdGljX2Nhc3Q8
QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdCo+KGNvcmVPYmplY3QpOwogICAgIGlmIChjb3JlT2Jq
ZWN0LT5pc0NvbnRyb2woKSkgewotICAgICAgICBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0KiBy
ZW5kZXJPYmplY3QgPSBzdGF0aWNfY2FzdDxBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0Kj4oY29y
ZU9iamVjdCk7CiAgICAgICAgIEFjY2Vzc2liaWxpdHlPYmplY3QqIGxhYmVsID0gcmVuZGVyT2Jq
ZWN0LT5jb3JyZXNwb25kaW5nTGFiZWxGb3JDb250cm9sRWxlbWVudCgpOwogICAgICAgICBpZiAo
bGFiZWwpCiAgICAgICAgICAgICByZXR1cm4gcmV0dXJuU3RyaW5nKG5hbWVGcm9tQ2hpbGRyZW4o
bGFiZWwpKTsKICAgICB9CisKKyAgICBpZiAocmVuZGVyT2JqZWN0LT5pc0ltYWdlKCkgfHwgcmVu
ZGVyT2JqZWN0LT5pc0lucHV0SW1hZ2UoKSkgeworICAgICAgICBOb2RlKiBub2RlID0gcmVuZGVy
T2JqZWN0LT5yZW5kZXJlcigpLT5ub2RlKCk7CisgICAgICAgIGlmIChub2RlICYmIG5vZGUtPmlz
SFRNTEVsZW1lbnQoKSkgeworICAgICAgICAgICAgLy8gR2V0IHRoZSBhdHRyaWJ1dGUgcmF0aGVy
IHRoYW4gYWx0VGV4dCBTdHJpbmcgc28gYXMgbm90IHRvIGZhbGwgYmFjayBvbiB0aXRsZS4KKyAg
ICAgICAgICAgIFN0cmluZyBhbHQgPSBzdGF0aWNfY2FzdDxIVE1MRWxlbWVudCo+KG5vZGUpLT5n
ZXRBdHRyaWJ1dGUoSFRNTE5hbWVzOjphbHRBdHRyKTsKKyAgICAgICAgICAgIGlmICghYWx0Lmlz
RW1wdHkoKSkKKyAgICAgICAgICAgICAgICByZXR1cm4gcmV0dXJuU3RyaW5nKGFsdCk7CisgICAg
ICAgIH0KKyAgICB9CisKICAgICByZXR1cm4gcmV0dXJuU3RyaW5nKGNvcmVPYmplY3QtPnN0cmlu
Z1ZhbHVlKCkpOwogfQogCiBzdGF0aWMgY29uc3QgZ2NoYXIqIHdlYmtpdF9hY2Nlc3NpYmxlX2dl
dF9kZXNjcmlwdGlvbihBdGtPYmplY3QqIG9iamVjdCkKIHsKICAgICBBY2Nlc3NpYmlsaXR5T2Jq
ZWN0KiBjb3JlT2JqZWN0ID0gY29yZShvYmplY3QpOworICAgIE5vZGUqIG5vZGUgPSAwOworICAg
IGlmIChjb3JlT2JqZWN0LT5pc0FjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QoKSkKKyAgICAgICAg
bm9kZSA9IHN0YXRpY19jYXN0PEFjY2Vzc2liaWxpdHlSZW5kZXJPYmplY3QqPihjb3JlT2JqZWN0
KS0+cmVuZGVyZXIoKS0+bm9kZSgpOworICAgIGlmICghbm9kZSB8fCAhbm9kZS0+aXNIVE1MRWxl
bWVudCgpIHx8IGNvcmVPYmplY3QtPmFyaWFSb2xlQXR0cmlidXRlKCkgIT0gVW5rbm93blJvbGUp
CisgICAgICAgIHJldHVybiByZXR1cm5TdHJpbmcoY29yZU9iamVjdC0+YWNjZXNzaWJpbGl0eURl
c2NyaXB0aW9uKCkpOwogCiAgICAgLy8gYXRrX3RhYmxlX2dldF9zdW1tYXJ5IHJldHVybnMgYW4g
QXRrT2JqZWN0LiBXZSBoYXZlIG5vIHN1bW1hcnkgb2JqZWN0LCBzbyBleHBvc2Ugc3VtbWFyeSBo
ZXJlLgotICAgIGlmIChjb3JlT2JqZWN0LT5yb2xlVmFsdWUoKSA9PSBUYWJsZVJvbGUgJiYgY29y
ZU9iamVjdC0+YXJpYVJvbGVBdHRyaWJ1dGUoKSA9PSBVbmtub3duUm9sZSkgewotICAgICAgICBO
b2RlKiBub2RlID0gc3RhdGljX2Nhc3Q8QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdCo+KGNvcmVP
YmplY3QpLT5yZW5kZXJlcigpLT5ub2RlKCk7Ci0gICAgICAgIGlmIChub2RlICYmIG5vZGUtPmlz
SFRNTEVsZW1lbnQoKSkgewotICAgICAgICAgICAgU3RyaW5nIHN1bW1hcnkgPSBzdGF0aWNfY2Fz
dDxIVE1MVGFibGVFbGVtZW50Kj4obm9kZSktPnN1bW1hcnkoKTsKLSAgICAgICAgICAgIGlmICgh
c3VtbWFyeS5pc0VtcHR5KCkpCi0gICAgICAgICAgICAgICAgcmV0dXJuIHJldHVyblN0cmluZyhz
dW1tYXJ5KTsKLSAgICAgICAgfQorICAgIGlmIChjb3JlT2JqZWN0LT5yb2xlVmFsdWUoKSA9PSBU
YWJsZVJvbGUpIHsKKyAgICAgICAgU3RyaW5nIHN1bW1hcnkgPSBzdGF0aWNfY2FzdDxIVE1MVGFi
bGVFbGVtZW50Kj4obm9kZSktPnN1bW1hcnkoKTsKKyAgICAgICAgaWYgKCFzdW1tYXJ5LmlzRW1w
dHkoKSkKKyAgICAgICAgICAgIHJldHVybiByZXR1cm5TdHJpbmcoc3VtbWFyeSk7CiAgICAgfQog
CisgICAgLy8gVGhlIHRpdGxlIGF0dHJpYnV0ZSBzaG91bGQgYmUgcmVsaWFibHkgYXZhaWxhYmxl
IGFzIHRoZSBvYmplY3QncyBkZXNjcmlwdG9uLgorICAgIC8vIFdlIGRvIG5vdCB3YW50IHRvIGZh
bGwgYmFjayBvbiBvdGhlciBhdHRyaWJ1dGVzIGluIGl0cyBhYnNlbmNlLiBTZWUgYnVnIDI1NTI0
LgorICAgIFN0cmluZyB0aXRsZSA9IHN0YXRpY19jYXN0PEhUTUxFbGVtZW50Kj4obm9kZSktPnRp
dGxlKCk7CisgICAgaWYgKCF0aXRsZS5pc0VtcHR5KCkpCisgICAgICAgIHJldHVybiByZXR1cm5T
dHJpbmcodGl0bGUpOworCiAgICAgcmV0dXJuIHJldHVyblN0cmluZyhjb3JlT2JqZWN0LT5hY2Nl
c3NpYmlsaXR5RGVzY3JpcHRpb24oKSk7CiB9CiAKLS0gCjEuNi4zLjMKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>43815</attachid>
            <date>2009-11-24 15:12:47 -0800</date>
            <delta_ts>2009-12-07 06:27:52 -0800</delta_ts>
            <desc>proposed fix with platform-specific layout test</desc>
            <filename>25524-jd-3.patch</filename>
            <type>text/plain</type>
            <size>8965</size>
            <attacher name="Joanmarie Diggs">jdiggs</attacher>
            
              <data encoding="base64">RnJvbSA5YmJkM2U3YmRkYzNkYzNkZmE4NzI0NzMxMzVhMDliYWViZDIxOGVkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBKb2FubWFyaWUgRGlnZ3MgPGpvYW5tYXJpZS5kaWdnc0BnbWFp
bC5jb20+CkRhdGU6IFR1ZSwgMjQgTm92IDIwMDkgMTg6MDQ6MzkgLTA1MDAKU3ViamVjdDogW1BB
VENIXSAyMDA5LTExLTI0ICBKb2FubWFyaWUgRGlnZ3MgIDxqb2FubWFyaWUuZGlnZ3NAZ21haWwu
Y29tPgoKICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KCiAgICAgICAgaHR0cHM6
Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1NTI0CiAgICAgICAgW0d0a10gRXhw
b3NlIHRoZSB0aXRsZSBhdHRyaWJ1dGUgdG8gYXNzaXN0aXZlIHRlY2hub2xvZ2llcwoKICAgICAg
ICBFeHBvc2UgJ2FsdCcgYXR0cmlidXRlIGZyb20gaW1hZ2VzIGFzIGFjY2Vzc2libGUgbmFtZS4K
ICAgICAgICBFeHBvc2UgdGhlICd0aXRsZScgY29yZSBIVE1MIGF0dHJpYnV0ZSBhcyBhY2Nlc3Np
YmxlIGRlc2NyaXB0aW9uLgogICAgICAgIFRoaXMgaXMgYSBtb2RpZmllZCB2ZXJzaW9uIG9mIHRo
ZSBvcmlnaW5hbCBmaXggc3VibWl0dGVkIGJ5IE1hcmlvIFNhbmNoZXogUHJhZGEsCiAgICAgICAg
YWRqdXN0ZWQgc28gdGhhdCBpdCBkb2Vzbid0IGltcGFjdCBvdGhlciBwbGF0Zm9ybXMuCgogICAg
ICAgICogV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2d0ay9BY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBl
ckF0ay5jcHA6CiAgICAgICAgKHdlYmtpdF9hY2Nlc3NpYmxlX2dldF9uYW1lKToKICAgICAgICAo
d2Via2l0X2FjY2Vzc2libGVfZ2V0X2Rlc2NyaXB0aW9uKToKICAgICAgICAqIExheW91dFRlc3Rz
L3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3RpdGxlLWFuZC1hbHQuaHRtbDogQWRkZWQuCiAg
ICAgICAgKiBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS90aXRsZS1hbmQt
YWx0LWV4cGVjdGVkLnR4dDogQWRkZWQuCi0tLQogTGF5b3V0VGVzdHMvQ2hhbmdlTG9nICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDEwICsrKysKIC4uLi9ndGsvYWNjZXNzaWJpbGl0
eS90aXRsZS1hbmQtYWx0LWV4cGVjdGVkLnR4dCAgIHwgICAxOSArKysrKysrKwogLi4uL3BsYXRm
b3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3RpdGxlLWFuZC1hbHQuaHRtbCAgfCAgIDQ0ICsrKysrKysr
KysrKysrKysrKysrCiBXZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICB8ICAgMTYgKysrKysrKwogLi4uL2d0ay9BY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBl
ckF0ay5jcHAgICAgICAgICAgfCAgIDM4ICsrKysrKysrKysrKystLS0tCiA1IGZpbGVzIGNoYW5n
ZWQsIDExOSBpbnNlcnRpb25zKCspLCA4IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0
IExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3RpdGxlLWFuZC1hbHQtZXhw
ZWN0ZWQudHh0CiBjcmVhdGUgbW9kZSAxMDA2NDQgTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Fj
Y2Vzc2liaWxpdHkvdGl0bGUtYW5kLWFsdC5odG1sCgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDRiNGMyNjYuLmRiNzVhNDgg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKQEAgLTEsMyArMSwxMyBAQAorMjAwOS0xMS0yNCAgSm9hbm1hcmllIERpZ2dzICA8am9h
bm1hcmllLmRpZ2dzQGdtYWlsLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
MjU1MjQKKyAgICAgICAgW0d0a10gRXhwb3NlIHRoZSB0aXRsZSBhdHRyaWJ1dGUgdG8gYXNzaXN0
aXZlIHRlY2hub2xvZ2llcworCisgICAgICAgICogcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkv
dGl0bGUtYW5kLWFsdC5odG1sOiBBZGRlZC4KKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvYWNjZXNz
aWJpbGl0eS90aXRsZS1hbmQtYWx0LWV4cGVjdGVkLnR4dDogQWRkZWQuCisKIDIwMDktMTEtMjMg
IEtlbm5ldGggUnVzc2VsbCAgPGtickBnb29nbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5
IE9saXZlciBIdW50LgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vz
c2liaWxpdHkvdGl0bGUtYW5kLWFsdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9ndGsvYWNjZXNzaWJpbGl0eS90aXRsZS1hbmQtYWx0LWV4cGVjdGVkLnR4dApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi4yYzU0YWMxCi0tLSAvZGV2L251bGwKKysrIGIvTGF5
b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvdGl0bGUtYW5kLWFsdC1leHBlY3Rl
ZC50eHQKQEAgLTAsMCArMSwxOSBAQAorCitGdW5jdGlvbmFsIGxhYmVsOgorVGhpcyB0ZXN0cyB0
aGUgZXhwb3N1cmUgb2YgYWx0IGFuZCB0aXRsZSBpbmZvcm1hdGlvbi4KKworT24gc3VjY2Vzcywg
eW91IHdpbGwgc2VlIGEgc2VyaWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRF
U1QgQ09NUExFVEUiLgorCisKK1BBU1MgaW1hZ2UudGl0bGUgaXMgJ0ltYWdlIGFsdCBhdHRyJwor
UEFTUyBpbWFnZS5kZXNjcmlwdGlvbiBpcyAnSW1hZ2UgdGl0bGUgYXR0cicKK1BBU1MgbGluay50
aXRsZSBpcyAnJworUEFTUyBsaW5rLmRlc2NyaXB0aW9uIGlzICdMaW5rIHRpdGxlIGF0dHInCitQ
QVNTIGVudHJ5LnRpdGxlIGlzICcnCitQQVNTIGVudHJ5LmRlc2NyaXB0aW9uIGlzICdFbnRyeSB0
aXRsZSBhdHRyJworUEFTUyBidXR0b24udGl0bGUgaXMgJ1N1Ym1pdCcKK1BBU1MgYnV0dG9uLmRl
c2NyaXB0aW9uIGlzICdTdWJtaXQgYnV0dG9uIHRpdGxlIGF0dHInCitQQVNTIHN1Y2Nlc3NmdWxs
eVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvdGl0bGUtYW5kLWFsdC5odG1sIGIvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvdGl0bGUtYW5kLWFsdC5odG1sCm5ldyBm
aWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmFhOTFlN2EKLS0tIC9kZXYvbnVsbAorKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS90aXRsZS1hbmQtYWx0Lmh0
bWwKQEAgLTAsMCArMSw0NCBAQAorPCFET0NUWVBFIEhUTUwgUFVCTElDICItLy9JRVRGLy9EVEQg
SFRNTC8vRU4iPgorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVldCIgaHJlZj0i
Li4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNjcmlwdD4KK3ZhciBz
dWNjZXNzZnVsbHlQYXJzZWQgPSBmYWxzZTsKKzwvc2NyaXB0PgorPHNjcmlwdCBzcmM9Ii4uLy4u
Ly4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3NjcmlwdD4KKzwvaGVhZD4K
Kzxib2R5IGlkPSJib2R5Ij4KKzxpbWcgc3JjPSJpbWFnZS5qcGciIGFsdD0iSW1hZ2UgYWx0IGF0
dHIiIHRpdGxlPSJJbWFnZSB0aXRsZSBhdHRyIj4KKzxmb3JtPgorPGEgaHJlZj0iIiB0aXRsZT0i
TGluayB0aXRsZSBhdHRyIj5GdW5jdGlvbmFsIGxhYmVsPC9hPjo8aW5wdXQgdGl0bGU9IkVudHJ5
IHRpdGxlIGF0dHIiIHR5cGU9InRleHQiIC8+PGlucHV0IHZhbHVlPSJDbGVhciIgdHlwZT0icmVz
ZXQiIC8+PGlucHV0IHZhbHVlPSJTdWJtaXQiIHRpdGxlPSJTdWJtaXQgYnV0dG9uIHRpdGxlIGF0
dHIiIHR5cGU9InN1Ym1pdCIgLz4KKzwvZm9ybT4KKzxwIGlkPSJkZXNjcmlwdGlvbiI+PC9wPgor
PGRpdiBpZD0iY29uc29sZSI+PC9kaXY+Cis8c2NyaXB0PgorICAgIGRlc2NyaXB0aW9uKCJUaGlz
IHRlc3RzIHRoZSBleHBvc3VyZSBvZiBhbHQgYW5kIHRpdGxlIGluZm9ybWF0aW9uLiIpOworICAg
IGlmICh3aW5kb3cuYWNjZXNzaWJpbGl0eUNvbnRyb2xsZXIpIHsKKyAgICAgICAgbGF5b3V0VGVz
dENvbnRyb2xsZXIuZHVtcEFzVGV4dCgpOworICAgICAgICBkb2N1bWVudC5nZXRFbGVtZW50QnlJ
ZCgiYm9keSIpLmZvY3VzKCk7CisgICAgICAgIHZhciB3ZWJBcmVhID0gYWNjZXNzaWJpbGl0eUNv
bnRyb2xsZXIuZm9jdXNlZEVsZW1lbnQ7CisKKyAgICAgICAgdmFyIGltYWdlID0gd2ViQXJlYS5j
aGlsZEF0SW5kZXgoMCk7CisgICAgICAgIHNob3VsZEJlKCJpbWFnZS50aXRsZSIsICInSW1hZ2Ug
YWx0IGF0dHInIik7CisgICAgICAgIHNob3VsZEJlKCJpbWFnZS5kZXNjcmlwdGlvbiIsICInSW1h
Z2UgdGl0bGUgYXR0ciciKTsKKworICAgICAgICB2YXIgbGluayA9IHdlYkFyZWEuY2hpbGRBdElu
ZGV4KDEpOworICAgICAgICBzaG91bGRCZSgibGluay50aXRsZSIsICInJyIpOworICAgICAgICBz
aG91bGRCZSgibGluay5kZXNjcmlwdGlvbiIsICInTGluayB0aXRsZSBhdHRyJyIpOworCisgICAg
ICAgIHZhciBlbnRyeSA9IHdlYkFyZWEuY2hpbGRBdEluZGV4KDIpOworICAgICAgICBzaG91bGRC
ZSgiZW50cnkudGl0bGUiLCAiJyciKTsKKyAgICAgICAgc2hvdWxkQmUoImVudHJ5LmRlc2NyaXB0
aW9uIiwgIidFbnRyeSB0aXRsZSBhdHRyJyIpOworCisgICAgICAgIHZhciBidXR0b24gPSB3ZWJB
cmVhLmNoaWxkQXRJbmRleCg0KTsKKyAgICAgICAgc2hvdWxkQmUoImJ1dHRvbi50aXRsZSIsICIn
U3VibWl0JyIpOworICAgICAgICBzaG91bGRCZSgiYnV0dG9uLmRlc2NyaXB0aW9uIiwgIidTdWJt
aXQgYnV0dG9uIHRpdGxlIGF0dHInIik7CisgICAgICAgIH0KKyAgICBzdWNjZXNzZnVsbHlQYXJz
ZWQgPSB0cnVlOworPC9zY3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vLi4vLi4vZmFzdC9qcy9yZXNv
dXJjZXMvanMtdGVzdC1wb3N0LmpzIj48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KZGlmZiAt
LWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDQxZDRl
MC4uYTA3MDhkNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2ViQ29yZS9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxOSBAQAorMjAwOS0xMS0yNCAgSm9hbm1hcmllIERpZ2dzICA8
am9hbm1hcmllLmRpZ2dzQGdtYWlsLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MjU1MjQKKyAgICAgICAgW0d0a10gRXhwb3NlIHRoZSB0aXRsZSBhdHRyaWJ1dGUgdG8gYXNz
aXN0aXZlIHRlY2hub2xvZ2llcworCisgICAgICAgIEV4cG9zZSAnYWx0JyBhdHRyaWJ1dGUgZnJv
bSBpbWFnZXMgYXMgYWNjZXNzaWJsZSBuYW1lLgorICAgICAgICBFeHBvc2UgdGhlICd0aXRsZScg
Y29yZSBIVE1MIGF0dHJpYnV0ZSBhcyBhY2Nlc3NpYmxlIGRlc2NyaXB0aW9uLgorICAgICAgICBU
aGlzIGlzIGEgbW9kaWZpZWQgdmVyc2lvbiBvZiB0aGUgb3JpZ2luYWwgZml4IHN1Ym1pdHRlZCBi
eSBNYXJpbyBTYW5jaGV6IFByYWRhLAorICAgICAgICBhZGp1c3RlZCBzbyB0aGF0IGl0IGRvZXNu
J3QgaW1wYWN0IG90aGVyIHBsYXRmb3Jtcy4KKworICAgICAgICAqIGFjY2Vzc2liaWxpdHkvZ3Rr
L0FjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQXRrLmNwcDoKKyAgICAgICAgKHdlYmtpdF9hY2Nl
c3NpYmxlX2dldF9uYW1lKToKKyAgICAgICAgKHdlYmtpdF9hY2Nlc3NpYmxlX2dldF9kZXNjcmlw
dGlvbik6CisKIDIwMDktMTEtMjMgIEtlbm5ldGggUnVzc2VsbCAgPGtickBnb29nbGUuY29tPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IE9saXZlciBIdW50LgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L2d0ay9BY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlckF0ay5jcHAgYi9XZWJD
b3JlL2FjY2Vzc2liaWxpdHkvZ3RrL0FjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQXRrLmNwcApp
bmRleCAzMDgwMDdjLi40NjZjY2ZkIDEwMDY0NAotLS0gYS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
Z3RrL0FjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQXRrLmNwcAorKysgYi9XZWJDb3JlL2FjY2Vz
c2liaWxpdHkvZ3RrL0FjY2Vzc2liaWxpdHlPYmplY3RXcmFwcGVyQXRrLmNwcApAQCAtMTU5LDI5
ICsxNTksNTEgQEAgc3RhdGljIGNvbnN0IGdjaGFyKiBuYW1lRnJvbUNoaWxkcmVuKEFjY2Vzc2li
aWxpdHlPYmplY3QqIG9iamVjdCkKIHN0YXRpYyBjb25zdCBnY2hhciogd2Via2l0X2FjY2Vzc2li
bGVfZ2V0X25hbWUoQXRrT2JqZWN0KiBvYmplY3QpCiB7CiAgICAgQWNjZXNzaWJpbGl0eU9iamVj
dCogY29yZU9iamVjdCA9IGNvcmUob2JqZWN0KTsKKyAgICBpZiAoIWNvcmVPYmplY3QtPmlzQWNj
ZXNzaWJpbGl0eVJlbmRlck9iamVjdCgpKQorICAgICAgICByZXR1cm4gcmV0dXJuU3RyaW5nKGNv
cmVPYmplY3QtPnN0cmluZ1ZhbHVlKCkpOworCisgICAgQWNjZXNzaWJpbGl0eVJlbmRlck9iamVj
dCogcmVuZGVyT2JqZWN0ID0gc3RhdGljX2Nhc3Q8QWNjZXNzaWJpbGl0eVJlbmRlck9iamVjdCo+
KGNvcmVPYmplY3QpOwogICAgIGlmIChjb3JlT2JqZWN0LT5pc0NvbnRyb2woKSkgewotICAgICAg
ICBBY2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0KiByZW5kZXJPYmplY3QgPSBzdGF0aWNfY2FzdDxB
Y2Nlc3NpYmlsaXR5UmVuZGVyT2JqZWN0Kj4oY29yZU9iamVjdCk7CiAgICAgICAgIEFjY2Vzc2li
aWxpdHlPYmplY3QqIGxhYmVsID0gcmVuZGVyT2JqZWN0LT5jb3JyZXNwb25kaW5nTGFiZWxGb3JD
b250cm9sRWxlbWVudCgpOwogICAgICAgICBpZiAobGFiZWwpCiAgICAgICAgICAgICByZXR1cm4g
cmV0dXJuU3RyaW5nKG5hbWVGcm9tQ2hpbGRyZW4obGFiZWwpKTsKICAgICB9CisKKyAgICBpZiAo
cmVuZGVyT2JqZWN0LT5pc0ltYWdlKCkgfHwgcmVuZGVyT2JqZWN0LT5pc0lucHV0SW1hZ2UoKSkg
eworICAgICAgICBOb2RlKiBub2RlID0gcmVuZGVyT2JqZWN0LT5yZW5kZXJlcigpLT5ub2RlKCk7
CisgICAgICAgIGlmIChub2RlICYmIG5vZGUtPmlzSFRNTEVsZW1lbnQoKSkgeworICAgICAgICAg
ICAgLy8gR2V0IHRoZSBhdHRyaWJ1dGUgcmF0aGVyIHRoYW4gYWx0VGV4dCBTdHJpbmcgc28gYXMg
bm90IHRvIGZhbGwgYmFjayBvbiB0aXRsZS4KKyAgICAgICAgICAgIFN0cmluZyBhbHQgPSBzdGF0
aWNfY2FzdDxIVE1MRWxlbWVudCo+KG5vZGUpLT5nZXRBdHRyaWJ1dGUoSFRNTE5hbWVzOjphbHRB
dHRyKTsKKyAgICAgICAgICAgIGlmICghYWx0LmlzRW1wdHkoKSkKKyAgICAgICAgICAgICAgICBy
ZXR1cm4gcmV0dXJuU3RyaW5nKGFsdCk7CisgICAgICAgIH0KKyAgICB9CisKICAgICByZXR1cm4g
cmV0dXJuU3RyaW5nKGNvcmVPYmplY3QtPnN0cmluZ1ZhbHVlKCkpOwogfQogCiBzdGF0aWMgY29u
c3QgZ2NoYXIqIHdlYmtpdF9hY2Nlc3NpYmxlX2dldF9kZXNjcmlwdGlvbihBdGtPYmplY3QqIG9i
amVjdCkKIHsKICAgICBBY2Nlc3NpYmlsaXR5T2JqZWN0KiBjb3JlT2JqZWN0ID0gY29yZShvYmpl
Y3QpOworICAgIE5vZGUqIG5vZGUgPSAwOworICAgIGlmIChjb3JlT2JqZWN0LT5pc0FjY2Vzc2li
aWxpdHlSZW5kZXJPYmplY3QoKSkKKyAgICAgICAgbm9kZSA9IHN0YXRpY19jYXN0PEFjY2Vzc2li
aWxpdHlSZW5kZXJPYmplY3QqPihjb3JlT2JqZWN0KS0+cmVuZGVyZXIoKS0+bm9kZSgpOworICAg
IGlmICghbm9kZSB8fCAhbm9kZS0+aXNIVE1MRWxlbWVudCgpIHx8IGNvcmVPYmplY3QtPmFyaWFS
b2xlQXR0cmlidXRlKCkgIT0gVW5rbm93blJvbGUpCisgICAgICAgIHJldHVybiByZXR1cm5TdHJp
bmcoY29yZU9iamVjdC0+YWNjZXNzaWJpbGl0eURlc2NyaXB0aW9uKCkpOwogCiAgICAgLy8gYXRr
X3RhYmxlX2dldF9zdW1tYXJ5IHJldHVybnMgYW4gQXRrT2JqZWN0LiBXZSBoYXZlIG5vIHN1bW1h
cnkgb2JqZWN0LCBzbyBleHBvc2Ugc3VtbWFyeSBoZXJlLgotICAgIGlmIChjb3JlT2JqZWN0LT5y
b2xlVmFsdWUoKSA9PSBUYWJsZVJvbGUgJiYgY29yZU9iamVjdC0+YXJpYVJvbGVBdHRyaWJ1dGUo
KSA9PSBVbmtub3duUm9sZSkgewotICAgICAgICBOb2RlKiBub2RlID0gc3RhdGljX2Nhc3Q8QWNj
ZXNzaWJpbGl0eVJlbmRlck9iamVjdCo+KGNvcmVPYmplY3QpLT5yZW5kZXJlcigpLT5ub2RlKCk7
Ci0gICAgICAgIGlmIChub2RlICYmIG5vZGUtPmlzSFRNTEVsZW1lbnQoKSkgewotICAgICAgICAg
ICAgU3RyaW5nIHN1bW1hcnkgPSBzdGF0aWNfY2FzdDxIVE1MVGFibGVFbGVtZW50Kj4obm9kZSkt
PnN1bW1hcnkoKTsKLSAgICAgICAgICAgIGlmICghc3VtbWFyeS5pc0VtcHR5KCkpCi0gICAgICAg
ICAgICAgICAgcmV0dXJuIHJldHVyblN0cmluZyhzdW1tYXJ5KTsKLSAgICAgICAgfQorICAgIGlm
IChjb3JlT2JqZWN0LT5yb2xlVmFsdWUoKSA9PSBUYWJsZVJvbGUpIHsKKyAgICAgICAgU3RyaW5n
IHN1bW1hcnkgPSBzdGF0aWNfY2FzdDxIVE1MVGFibGVFbGVtZW50Kj4obm9kZSktPnN1bW1hcnko
KTsKKyAgICAgICAgaWYgKCFzdW1tYXJ5LmlzRW1wdHkoKSkKKyAgICAgICAgICAgIHJldHVybiBy
ZXR1cm5TdHJpbmcoc3VtbWFyeSk7CiAgICAgfQogCisgICAgLy8gVGhlIHRpdGxlIGF0dHJpYnV0
ZSBzaG91bGQgYmUgcmVsaWFibHkgYXZhaWxhYmxlIGFzIHRoZSBvYmplY3QncyBkZXNjcmlwdG9u
LgorICAgIC8vIFdlIGRvIG5vdCB3YW50IHRvIGZhbGwgYmFjayBvbiBvdGhlciBhdHRyaWJ1dGVz
IGluIGl0cyBhYnNlbmNlLiBTZWUgYnVnIDI1NTI0LgorICAgIFN0cmluZyB0aXRsZSA9IHN0YXRp
Y19jYXN0PEhUTUxFbGVtZW50Kj4obm9kZSktPnRpdGxlKCk7CisgICAgaWYgKCF0aXRsZS5pc0Vt
cHR5KCkpCisgICAgICAgIHJldHVybiByZXR1cm5TdHJpbmcodGl0bGUpOworCiAgICAgcmV0dXJu
IHJldHVyblN0cmluZyhjb3JlT2JqZWN0LT5hY2Nlc3NpYmlsaXR5RGVzY3JpcHRpb24oKSk7CiB9
CiAKLS0gCjEuNi4zLjMKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>