<?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>57854</bug_id>
          
          <creation_ts>2011-04-05 09:17:17 -0700</creation_ts>
          <short_desc>[GTK] Implement AccessibilityUIElement::{row|column}IndexRange in DRT</short_desc>
          <delta_ts>2011-04-11 11:57:51 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Accessibility</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>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></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>57463</dependson>
    
    <dependson>57826</dependson>
          <blocked>30796</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mario Sanchez Prada">mario</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>apavlov</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>379622</commentid>
    <comment_count>0</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2011-04-05 09:17:17 -0700</bug_when>
    <thetext>We need this feature to be able to unskip the following test:

 accessibility/table-cell-spans.html

Prior to this we need to get bug 57463 and bug 57829 fixed, so setting a dependency there.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379630</commentid>
    <comment_count>1</comment_count>
      <attachid>88250</attachid>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2011-04-05 09:24:08 -0700</bug_when>
    <thetext>Created attachment 88250
Patch proposal + unskipped layout test

Attaching patch proposal</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379632</commentid>
    <comment_count>2</comment_count>
    <who name="Alexander Pavlov (apavlov)">apavlov</who>
    <bug_when>2011-04-05 09:25:55 -0700</bug_when>
    <thetext>I don&apos;t think the bug 57829 can influence this issue, as the former is related purely to the Web Inspector internals (unless you need to debug live textual node changes in the Elements panel).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379644</commentid>
    <comment_count>3</comment_count>
      <attachid>88250</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2011-04-05 09:32:32 -0700</bug_when>
    <thetext>Comment on attachment 88250
Patch proposal + unskipped layout test

View in context: https://bugs.webkit.org/attachment.cgi?id=88250&amp;action=review

&gt; Tools/DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:510
&gt; +    GOwnPtr&lt;gchar&gt; rangeString(g_strdup_printf(&quot;{0, 0}&quot;));

This can just be g_strdup.

&gt; Tools/DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:551
&gt; +    return JSStringCreateWithUTF8CString(rangeString.get());

These two methods are almost exactly identical (only difference seems to be to use column or row in the printf). I think you can refactor it to make both call a common method that does either one depending on a parameter, for instance?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379669</commentid>
    <comment_count>4</comment_count>
      <attachid>88259</attachid>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2011-04-05 09:51:07 -0700</bug_when>
    <thetext>Created attachment 88259
Patch proposal + unskipped layout test

(In reply to comment #3)
&gt; (From update of attachment 88250 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=88250&amp;action=review
&gt; 
&gt; &gt; Tools/DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:510
&gt; &gt; +    GOwnPtr&lt;gchar&gt; rangeString(g_strdup_printf(&quot;{0, 0}&quot;));
&gt; 
&gt; This can just be g_strdup.

Sure thing.

&gt; &gt; Tools/DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:551
&gt; &gt; +    return JSStringCreateWithUTF8CString(rangeString.get());
&gt; 
&gt; These two methods are almost exactly identical (only difference seems to be to use column or row in the printf). I think you can refactor it to make both call a common method that does either one depending on a parameter, for instance?

Done. I&apos;ve to say I don&apos;t usually like writing helper functions with a boolean parameter to distinguish between two possible situations (row or column range?), but I guess in this case, being a _private_ helper function only used from there, it&apos;s more than enough (defining an enumeration for this would look to me &apos;overkill&apos;).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379674</commentid>
    <comment_count>5</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2011-04-05 09:54:01 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; I don&apos;t think the bug 57829 can influence this issue, as the former is related purely to the Web Inspector internals (unless you need to debug live textual node changes in the Elements panel).

Sorry for the noise, Alexander. I meant bug 57826 not 57829.

My mistake. Fixing it now</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379678</commentid>
    <comment_count>6</comment_count>
      <attachid>88259</attachid>
    <who name="Xan Lopez">xan.lopez</who>
    <bug_when>2011-04-05 09:54:35 -0700</bug_when>
    <thetext>Comment on attachment 88259
Patch proposal + unskipped layout test

View in context: https://bugs.webkit.org/attachment.cgi?id=88259&amp;action=review

Looks good minus one comment.

&gt; Tools/DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:507
&gt; +        return false;

I suppose you want to return a string here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>379689</commentid>
    <comment_count>7</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2011-04-05 10:01:23 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 88259 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=88259&amp;action=review
&gt; 
&gt; Looks good minus one comment.
&gt; 
&gt; &gt; Tools/DumpRenderTree/gtk/AccessibilityUIElementGtk.cpp:507
&gt; &gt; +        return false;
&gt; 
&gt; I suppose you want to return a string here?

?? Looks like I uploaded a previous version of the patch, before changing that line (I have the right thing locally, I swear!)

Anyway, you&apos;re right, that should be an string.

Thanks for the review!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>383335</commentid>
    <comment_count>8</comment_count>
    <who name="Mario Sanchez Prada">mario</who>
    <bug_when>2011-04-11 11:57:51 -0700</bug_when>
    <thetext>Committed r83466: &lt;http://trac.webkit.org/changeset/83466&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>88250</attachid>
            <date>2011-04-05 09:24:08 -0700</date>
            <delta_ts>2011-04-05 09:51:07 -0700</delta_ts>
            <desc>Patch proposal + unskipped layout test</desc>
            <filename>0001-2011-04-05-Mario-Sanchez-Prada-msanchez-igalia.com.patch</filename>
            <type>text/plain</type>
            <size>7523</size>
            <attacher name="Mario Sanchez Prada">mario</attacher>
            
              <data encoding="base64">RnJvbSA0MTlmYzNhZDk2NTdkZTQ0YTE4M2I3ZmRiZmVlNjM2NTA2ZTE5YjZmIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJpbyBTYW5jaGV6IFByYWRhIDxtc2FuY2hlekBpZ2FsaWEu
Y29tPgpEYXRlOiBUdWUsIDUgQXByIDIwMTEgMTg6MTI6MzAgKzAyMDAKU3ViamVjdDogW1BBVENI
XSAyMDExLTA0LTA1ICBNYXJpbyBTYW5jaGV6IFByYWRhICA8bXNhbmNoZXpAaWdhbGlhLmNvbT4K
CiAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgogICAgICAgIFtHVEtdIEltcGxl
bWVudCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojp7cm93fGNvbHVtbn1JbmRleFJhbmdlIGluIERS
VAogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01Nzg1NAoK
ICAgICAgICBJbXBsZW1lbnQgbWlzc2luZyBmZWF0dXJlcyBpbiBHVEsncyBEUlQuCgogICAgICAg
ICogRHVtcFJlbmRlclRyZWUvZ3RrL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRHdGsuY3BwOgogICAg
ICAgIChnZXRDb29yZHNGb3JDZWxsKTogTmV3IGhlbHBlciBmdW5jdGlvbiB0byBnZXQgdGhlIChy
b3csIGNvbCkKICAgICAgICBjb29yZGluYXRlcyBmb3IgdGhlIGN1cnJlbnQgY2VsbCBpbnNpZGUg
aXRzIHBhcmVudCB0YWJsZS4KICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6cm93SW5k
ZXhSYW5nZSk6IEltcGxlbWVudGVkIGJ5IHJlbHlpbmcgb24KICAgICAgICBmdW5jdGlvbnMgZnJv
bSB0aGUgQXRrVGFibGUgaW50ZXJmYWNlIG92ZXIgdGhlIGNlbGwncyB0YWJsZS4KICAgICAgICAo
QWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6Y29sdW1uSW5kZXhSYW5nZSk6IERpdHRvLgoKMjAxMS0w
NC0wNSAgTWFyaW8gU2FuY2hleiBQcmFkYSAgPG1zYW5jaGV6QGlnYWxpYS5jb20+CgogICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgoKICAgICAgICBbR1RLXSBJbXBsZW1lbnQgQWNj
ZXNzaWJpbGl0eVVJRWxlbWVudDo6e3Jvd3xjb2x1bW59SW5kZXhSYW5nZSBpbiBEUlQKICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTc4NTQKCiAgICAgICAg
VW5za2lwcGVkIHRhYmxlLWNlbGwtc3BhbnMuaHRtbCBhbmQgdXBkYXRlZCBHVEsgZXhwZWN0YXRp
b25zLgoKICAgICAgICAqIHBsYXRmb3JtL2d0ay9Ta2lwcGVkOiBVbnNraXBwZWQgdGVzdC4KICAg
ICAgICAqIHBsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3RhYmxlLWNlbGwtc3BhbnMtZXhwZWN0
ZWQudHh0OiBBZGRlZC4KLS0tCiBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICB8ICAgMTIgKysrKwogTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBw
ZWQgICAgICAgICAgICAgICAgICAgfCAgICAxIC0KIC4uLi9hY2Nlc3NpYmlsaXR5L3RhYmxlLWNl
bGwtc3BhbnMtZXhwZWN0ZWQudHh0ICAgIHwgICAzOSArKysrKysrKysrKysrCiBUb29scy9DaGFu
Z2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTYgKysrKysKIC4u
Li9ndGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEd0ay5jcHAgICAgICAgICAgICAgIHwgICA1OSAr
KysrKysrKysrKysrKysrKystCiA1IGZpbGVzIGNoYW5nZWQsIDEyMiBpbnNlcnRpb25zKCspLCA1
IGRlbGV0aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IExheW91dFRlc3RzL3BsYXRmb3JtL2d0
ay9hY2Nlc3NpYmlsaXR5L3RhYmxlLWNlbGwtc3BhbnMtZXhwZWN0ZWQudHh0CgpkaWZmIC0tZ2l0
IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IGM2
MjY5YTMuLjBmOGM3OTkgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9M
YXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTIsNiArMiwxOCBAQAogCiAgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgogCisgICAgICAgIFtHVEtdIEltcGxlbWVudCBBY2Nlc3NpYmls
aXR5VUlFbGVtZW50Ojp7cm93fGNvbHVtbn1JbmRleFJhbmdlIGluIERSVAorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTc4NTQKKworICAgICAgICBVbnNr
aXBwZWQgdGFibGUtY2VsbC1zcGFucy5odG1sIGFuZCB1cGRhdGVkIEdUSyBleHBlY3RhdGlvbnMu
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvU2tpcHBlZDogVW5za2lwcGVkIHRlc3QuCisgICAg
ICAgICogcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvdGFibGUtY2VsbC1zcGFucy1leHBlY3Rl
ZC50eHQ6IEFkZGVkLgorCisyMDExLTA0LTA1ICBNYXJpbyBTYW5jaGV6IFByYWRhICA8bXNhbmNo
ZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwog
ICAgICAgICBbR1RLXSBJbXBsZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6Y2VsbEZvckNv
bHVtbkFuZFJvdyBpbiBEUlQKICAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTU3ODI2CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9T
a2lwcGVkIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKaW5kZXggNTU5YjU0OC4u
NWUwMjQ5ZCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKKysr
IGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL1NraXBwZWQKQEAgLTM0Nyw3ICszNDcsNiBAQCBh
Y2Nlc3NpYmlsaXR5L3JhZGlvLWJ1dHRvbi10aXRsZS1sYWJlbC5odG1sCiBhY2Nlc3NpYmlsaXR5
L3NlY3VyZS10ZXh0ZmllbGQtdGl0bGUtdWkuaHRtbAogYWNjZXNzaWJpbGl0eS9zZWxlY3Rpb24t
c3RhdGVzLmh0bWwKIGFjY2Vzc2liaWxpdHkvdGFibGUtYXR0cmlidXRlcy5odG1sCi1hY2Nlc3Np
YmlsaXR5L3RhYmxlLWNlbGwtc3BhbnMuaHRtbAogYWNjZXNzaWJpbGl0eS90YWJsZS1kZXRlY3Rp
b24uaHRtbAogYWNjZXNzaWJpbGl0eS90YWJsZS1vbmUtY2VsbC5odG1sCiBhY2Nlc3NpYmlsaXR5
L3RhYmxlLXNlY3Rpb25zLmh0bWwKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0
ay9hY2Nlc3NpYmlsaXR5L3RhYmxlLWNlbGwtc3BhbnMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL2FjY2Vzc2liaWxpdHkvdGFibGUtY2VsbC1zcGFucy1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMC4uMTk1NGY4YQotLS0gL2Rldi9u
dWxsCisrKyBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9hY2Nlc3NpYmlsaXR5L3RhYmxlLWNl
bGwtc3BhbnMtZXhwZWN0ZWQudHh0CkBAIC0wLDAgKzEsMzkgQEAKK0NlbGwgQQorQ09MU1BBTj0i
MiIKK1JPV1NQQU49IjIiCUNlbGwgQgorQ09MU1BBTj0iMiIKKzIsMwkyLDQKK0NlbGwgQworUk9X
U1BBTj0iMiIJMywyCTMsMwkzLDQKKzQsMgk0LDMJNCw0CistLS0tLS0tLS0tLS0tLS0tLS0tLS0t
Cit7IDAsIDAgfQordG9vbGtpdDpXZWJLaXRHdGsKK3swLCAyfSwgezAsIDJ9CisKKy0tLS0tLS0t
LS0tLS0tLS0tLS0tLS0KK3sgMSwgMSB9Cit0b29sa2l0OldlYktpdEd0aworezAsIDJ9LCB7MCwg
Mn0KKworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoreyAzLCAwIH0KK3Rvb2xraXQ6V2ViS2l0R3Rr
Cit7MiwgMn0sIHswLCAxfQorCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tCit7IDIsIDAgfQordG9v
bGtpdDpXZWJLaXRHdGsKK3syLCAyfSwgezAsIDF9CisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0K
K3sgMiwgMyB9Cit0b29sa2l0OldlYktpdEd0aworezIsIDF9LCB7MywgMX0KKworLS0tLS0tLS0t
LS0tLS0tLS0tLS0tLQoreyAxMCwgMTAgfQorCit7MCwgMH0sIHswLCAwfQorCisKZGlmZiAtLWdp
dCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCA4OTcyNmRmLi4zMzAw
YjIxIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdlTG9nCkBA
IC0yLDYgKzIsMjIgQEAKIAogICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KIAor
ICAgICAgICBbR1RLXSBJbXBsZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6e3Jvd3xjb2x1
bW59SW5kZXhSYW5nZSBpbiBEUlQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTU3ODU0CisKKyAgICAgICAgSW1wbGVtZW50IG1pc3NpbmcgZmVhdHVyZXMg
aW4gR1RLJ3MgRFJULgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvZ3RrL0FjY2Vzc2liaWxp
dHlVSUVsZW1lbnRHdGsuY3BwOgorICAgICAgICAoZ2V0Q29vcmRzRm9yQ2VsbCk6IE5ldyBoZWxw
ZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSAocm93LCBjb2wpCisgICAgICAgIGNvb3JkaW5hdGVzIGZv
ciB0aGUgY3VycmVudCBjZWxsIGluc2lkZSBpdHMgcGFyZW50IHRhYmxlLgorICAgICAgICAoQWNj
ZXNzaWJpbGl0eVVJRWxlbWVudDo6cm93SW5kZXhSYW5nZSk6IEltcGxlbWVudGVkIGJ5IHJlbHlp
bmcgb24KKyAgICAgICAgZnVuY3Rpb25zIGZyb20gdGhlIEF0a1RhYmxlIGludGVyZmFjZSBvdmVy
IHRoZSBjZWxsJ3MgdGFibGUuCisgICAgICAgIChBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojpjb2x1
bW5JbmRleFJhbmdlKTogRGl0dG8uCisKKzIwMTEtMDQtMDUgIE1hcmlvIFNhbmNoZXogUHJhZGEg
IDxtc2FuY2hlekBpZ2FsaWEuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCiAgICAgICAgIFtHVEtdIEltcGxlbWVudCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojpj
ZWxsRm9yQ29sdW1uQW5kUm93IGluIERSVAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NTc4MjYKIApkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvZ3RrL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRHdGsuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRy
ZWUvZ3RrL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRHdGsuY3BwCmluZGV4IDc4YjRmYjguLjE3MGNh
OTMgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2d0ay9BY2Nlc3NpYmlsaXR5VUlF
bGVtZW50R3RrLmNwcAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9ndGsvQWNjZXNzaWJpbGl0
eVVJRWxlbWVudEd0ay5jcHAKQEAgLTQ4OCwxNiArNDg4LDY3IEBAIGludCBBY2Nlc3NpYmlsaXR5
VUlFbGVtZW50OjppbmRleEluVGFibGUoKQogICAgIHJldHVybiAwOwogfQogCitzdGF0aWMgYm9v
bCBnZXRDb29yZHNGb3JDZWxsKEF0a09iamVjdCogYXhDZWxsLCBpbnQmIHJvdywgaW50JiBjb2x1
bW4pCit7CisgICAgQXRrT2JqZWN0KiBheFRhYmxlID0gYXRrX29iamVjdF9nZXRfcGFyZW50KGF4
Q2VsbCk7CisgICAgaWYgKCFheFRhYmxlIHx8ICFBVEtfSVNfVEFCTEUoYXhUYWJsZSkpCisgICAg
ICAgIHJldHVybiBmYWxzZTsKKworICAgIC8vIExvb2sgZm9yIHRoZSBjZWxsIGluIHRoZSB0YWJs
ZS4KKyAgICBnaW50IGluZGV4SW5QYXJlbnQgPSBhdGtfb2JqZWN0X2dldF9pbmRleF9pbl9wYXJl
bnQoYXhDZWxsKTsKKyAgICBpZiAoaW5kZXhJblBhcmVudCA9PSAtMSkKKyAgICAgICAgcmV0dXJu
IGZhbHNlOworCisgICAgcm93ID0gYXRrX3RhYmxlX2dldF9yb3dfYXRfaW5kZXgoQVRLX1RBQkxF
KGF4VGFibGUpLCBpbmRleEluUGFyZW50KTsKKyAgICBjb2x1bW4gPSBhdGtfdGFibGVfZ2V0X2Nv
bHVtbl9hdF9pbmRleChBVEtfVEFCTEUoYXhUYWJsZSksIGluZGV4SW5QYXJlbnQpOworCisgICAg
cmV0dXJuIHJvdyAhPSAtMSAmJiBjb2x1bW4gIT0gLTE7Cit9CisKIEpTU3RyaW5nUmVmIEFjY2Vz
c2liaWxpdHlVSUVsZW1lbnQ6OnJvd0luZGV4UmFuZ2UoKQogewotICAgIC8vIEZJWE1FOiBpbXBs
ZW1lbnQKLSAgICByZXR1cm4gSlNTdHJpbmdDcmVhdGVXaXRoQ2hhcmFjdGVycygwLCAwKTsKKyAg
ICBHT3duUHRyPGdjaGFyPiByYW5nZVN0cmluZyhnX3N0cmR1cF9wcmludGYoInswLCAwfSIpKTsK
KworICAgIGlmICghbV9lbGVtZW50KQorICAgICAgICByZXR1cm4gSlNTdHJpbmdDcmVhdGVXaXRo
VVRGOENTdHJpbmcocmFuZ2VTdHJpbmcuZ2V0KCkpOworCisgICAgQVNTRVJUKEFUS19JU19PQkpF
Q1QobV9lbGVtZW50KSk7CisKKyAgICBBdGtPYmplY3QqIGF4VGFibGUgPSBhdGtfb2JqZWN0X2dl
dF9wYXJlbnQoQVRLX09CSkVDVChtX2VsZW1lbnQpKTsKKyAgICBpZiAoIWF4VGFibGUgfHwgIUFU
S19JU19UQUJMRShheFRhYmxlKSkKKyAgICAgICAgcmV0dXJuIEpTU3RyaW5nQ3JlYXRlV2l0aFVU
RjhDU3RyaW5nKHJhbmdlU3RyaW5nLmdldCgpKTsKKworICAgIGludCByb3c7CisgICAgaW50IGNv
bHVtbjsKKyAgICBpZiAoZ2V0Q29vcmRzRm9yQ2VsbChBVEtfT0JKRUNUKG1fZWxlbWVudCksIHJv
dywgY29sdW1uKSkgeworICAgICAgICBpbnQgbGVuZ3RoID0gYXRrX3RhYmxlX2dldF9yb3dfZXh0
ZW50X2F0KEFUS19UQUJMRShheFRhYmxlKSwgcm93LCBjb2x1bW4pOworICAgICAgICByYW5nZVN0
cmluZy5zZXQoZ19zdHJkdXBfcHJpbnRmKCJ7JWQsICVkfSIsIHJvdywgbGVuZ3RoKSk7CisgICAg
fQorCisgICAgcmV0dXJuIEpTU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKHJhbmdlU3RyaW5n
LmdldCgpKTsKIH0KIAogSlNTdHJpbmdSZWYgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6Y29sdW1u
SW5kZXhSYW5nZSgpCiB7Ci0gICAgLy8gRklYTUU6IGltcGxlbWVudAotICAgIHJldHVybiBKU1N0
cmluZ0NyZWF0ZVdpdGhDaGFyYWN0ZXJzKDAsIDApOworICAgIEdPd25QdHI8Z2NoYXI+IHJhbmdl
U3RyaW5nKGdfc3RyZHVwX3ByaW50ZigiezAsIDB9IikpOworCisgICAgaWYgKCFtX2VsZW1lbnQp
CisgICAgICAgIHJldHVybiBKU1N0cmluZ0NyZWF0ZVdpdGhVVEY4Q1N0cmluZyhyYW5nZVN0cmlu
Zy5nZXQoKSk7CisKKyAgICBBU1NFUlQoQVRLX0lTX09CSkVDVChtX2VsZW1lbnQpKTsKKworICAg
IEF0a09iamVjdCogYXhUYWJsZSA9IGF0a19vYmplY3RfZ2V0X3BhcmVudChBVEtfT0JKRUNUKG1f
ZWxlbWVudCkpOworICAgIGlmICghYXhUYWJsZSB8fCAhQVRLX0lTX1RBQkxFKGF4VGFibGUpKQor
ICAgICAgICByZXR1cm4gSlNTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcocmFuZ2VTdHJpbmcu
Z2V0KCkpOworCisgICAgaW50IHJvdzsKKyAgICBpbnQgY29sdW1uOworICAgIGlmIChnZXRDb29y
ZHNGb3JDZWxsKEFUS19PQkpFQ1QobV9lbGVtZW50KSwgcm93LCBjb2x1bW4pKSB7CisgICAgICAg
IGludCBsZW5ndGggPSBhdGtfdGFibGVfZ2V0X2NvbHVtbl9leHRlbnRfYXQoQVRLX1RBQkxFKGF4
VGFibGUpLCByb3csIGNvbHVtbik7CisgICAgICAgIHJhbmdlU3RyaW5nLnNldChnX3N0cmR1cF9w
cmludGYoInslZCwgJWR9IiwgY29sdW1uLCBsZW5ndGgpKTsKKyAgICB9CisKKyAgICByZXR1cm4g
SlNTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcocmFuZ2VTdHJpbmcuZ2V0KCkpOwogfQogCiBp
bnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6bGluZUZvckluZGV4KGludCkKLS0gCjEuNy40Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>88259</attachid>
            <date>2011-04-05 09:51:07 -0700</date>
            <delta_ts>2011-04-05 09:54:35 -0700</delta_ts>
            <desc>Patch proposal + unskipped layout test</desc>
            <filename>0001-2011-04-05-Mario-Sanchez-Prada-msanchez-igalia.com.patch</filename>
            <type>text/plain</type>
            <size>7200</size>
            <attacher name="Mario Sanchez Prada">mario</attacher>
            
              <data encoding="base64">RnJvbSAyMzg0NGQxMGNmZTM2ZTk1NTMzOGYxMWQ0YTkwODc5OTg2NDQ4MjQ0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXJpbyBTYW5jaGV6IFByYWRhIDxtc2FuY2hlekBpZ2FsaWEu
Y29tPgpEYXRlOiBUdWUsIDUgQXByIDIwMTEgMTg6MTI6MzAgKzAyMDAKU3ViamVjdDogW1BBVENI
XSAyMDExLTA0LTA1ICBNYXJpbyBTYW5jaGV6IFByYWRhICA8bXNhbmNoZXpAaWdhbGlhLmNvbT4K
CiAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCgogICAgICAgIFtHVEtdIEltcGxl
bWVudCBBY2Nlc3NpYmlsaXR5VUlFbGVtZW50Ojp7cm93fGNvbHVtbn1JbmRleFJhbmdlIGluIERS
VAogICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01Nzg1NAoK
ICAgICAgICBJbXBsZW1lbnQgbWlzc2luZyBmZWF0dXJlcyBpbiBHVEsncyBEUlQuCgogICAgICAg
ICogRHVtcFJlbmRlclRyZWUvZ3RrL0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRHdGsuY3BwOgogICAg
ICAgIChpbmRleFJhbmdlSW5UYWJsZSk6IE5ldyBoZWxwZXIgZnVuY3Rpb24gdG8gZ2V0IHRoZSBy
YW5nZSBzdHJpbmcKICAgICAgICBmb3IgdGhlIGN1cnJlbnQgY2VsbCBpbnNpZGUgdGhlIHBhcmVu
dCB0YWJsZSwgZWl0aGVyIGZyb20gdGhlCiAgICAgICAgcG9pbnQgb2YgdmlldyBvZiByb3dzIG9y
IGNvbHVtbnMuCiAgICAgICAgKEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OnJvd0luZGV4UmFuZ2Up
OiBJbXBsZW1lbnRlZCBieSByZWx5aW5nIG9uCiAgICAgICAgdGhlIG5ldyBoZWxwZXIgZnVuY3Rp
b24gaW5kZXhSYW5nZUluVGFibGUoKS4KICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6
Y29sdW1uSW5kZXhSYW5nZSk6IERpdHRvLgoKMjAxMS0wNC0wNSAgTWFyaW8gU2FuY2hleiBQcmFk
YSAgPG1zYW5jaGV6QGlnYWxpYS5jb20+CgogICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgoKICAgICAgICBbR1RLXSBJbXBsZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6e3Jv
d3xjb2x1bW59SW5kZXhSYW5nZSBpbiBEUlQKICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9NTc4NTQKCiAgICAgICAgVW5za2lwcGVkIHRhYmxlLWNlbGwtc3Bh
bnMuaHRtbCBhbmQgdXBkYXRlZCBHVEsgZXhwZWN0YXRpb25zLgoKICAgICAgICAqIHBsYXRmb3Jt
L2d0ay9Ta2lwcGVkOiBVbnNraXBwZWQgdGVzdC4KICAgICAgICAqIHBsYXRmb3JtL2d0ay9hY2Nl
c3NpYmlsaXR5L3RhYmxlLWNlbGwtc3BhbnMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KLS0tCiBMYXlv
dXRUZXN0cy9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8ICAgMTIgKysr
KysKIExheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkICAgICAgICAgICAgICAgICAgIHwg
ICAgMSAtCiAuLi4vYWNjZXNzaWJpbGl0eS90YWJsZS1jZWxsLXNwYW5zLWV4cGVjdGVkLnR4dCAg
ICB8ICAgMzkgKysrKysrKysrKysrKysrKwogVG9vbHMvQ2hhbmdlTG9nICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgfCAgIDE3ICsrKysrKysKIC4uLi9ndGsvQWNjZXNzaWJpbGl0
eVVJRWxlbWVudEd0ay5jcHAgICAgICAgICAgICAgIHwgICA0OCArKysrKysrKysrKysrKysrKyst
LQogNSBmaWxlcyBjaGFuZ2VkLCAxMTIgaW5zZXJ0aW9ucygrKSwgNSBkZWxldGlvbnMoLSkKIGNy
ZWF0ZSBtb2RlIDEwMDY0NCBMYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS90
YWJsZS1jZWxsLXNwYW5zLWV4cGVjdGVkLnR4dAoKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0No
YW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCBjNjI2OWEzLi4wZjhjNzk5IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nCkBAIC0yLDYgKzIsMTggQEAKIAogICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMh
KS4KIAorICAgICAgICBbR1RLXSBJbXBsZW1lbnQgQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6e3Jv
d3xjb2x1bW59SW5kZXhSYW5nZSBpbiBEUlQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTU3ODU0CisKKyAgICAgICAgVW5za2lwcGVkIHRhYmxlLWNlbGwt
c3BhbnMuaHRtbCBhbmQgdXBkYXRlZCBHVEsgZXhwZWN0YXRpb25zLgorCisgICAgICAgICogcGxh
dGZvcm0vZ3RrL1NraXBwZWQ6IFVuc2tpcHBlZCB0ZXN0LgorICAgICAgICAqIHBsYXRmb3JtL2d0
ay9hY2Nlc3NpYmlsaXR5L3RhYmxlLWNlbGwtc3BhbnMtZXhwZWN0ZWQudHh0OiBBZGRlZC4KKwor
MjAxMS0wNC0wNSAgTWFyaW8gU2FuY2hleiBQcmFkYSAgPG1zYW5jaGV6QGlnYWxpYS5jb20+CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKICAgICAgICAgW0dUS10gSW1w
bGVtZW50IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmNlbGxGb3JDb2x1bW5BbmRSb3cgaW4gRFJU
CiAgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzgyNgog
CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvU2tpcHBlZCBiL0xheW91dFRl
c3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCmluZGV4IDU1OWI1NDguLjVlMDI0OWQgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9Ta2lwcGVkCisrKyBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2d0ay9Ta2lwcGVkCkBAIC0zNDcsNyArMzQ3LDYgQEAgYWNjZXNzaWJpbGl0eS9yYWRp
by1idXR0b24tdGl0bGUtbGFiZWwuaHRtbAogYWNjZXNzaWJpbGl0eS9zZWN1cmUtdGV4dGZpZWxk
LXRpdGxlLXVpLmh0bWwKIGFjY2Vzc2liaWxpdHkvc2VsZWN0aW9uLXN0YXRlcy5odG1sCiBhY2Nl
c3NpYmlsaXR5L3RhYmxlLWF0dHJpYnV0ZXMuaHRtbAotYWNjZXNzaWJpbGl0eS90YWJsZS1jZWxs
LXNwYW5zLmh0bWwKIGFjY2Vzc2liaWxpdHkvdGFibGUtZGV0ZWN0aW9uLmh0bWwKIGFjY2Vzc2li
aWxpdHkvdGFibGUtb25lLWNlbGwuaHRtbAogYWNjZXNzaWJpbGl0eS90YWJsZS1zZWN0aW9ucy5o
dG1sCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS90
YWJsZS1jZWxsLXNwYW5zLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9h
Y2Nlc3NpYmlsaXR5L3RhYmxlLWNlbGwtc3BhbnMtZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUg
MTAwNjQ0CmluZGV4IDAwMDAwMDAuLjE5NTRmOGEKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRU
ZXN0cy9wbGF0Zm9ybS9ndGsvYWNjZXNzaWJpbGl0eS90YWJsZS1jZWxsLXNwYW5zLWV4cGVjdGVk
LnR4dApAQCAtMCwwICsxLDM5IEBACitDZWxsIEEKK0NPTFNQQU49IjIiCitST1dTUEFOPSIyIglD
ZWxsIEIKK0NPTFNQQU49IjIiCisyLDMJMiw0CitDZWxsIEMKK1JPV1NQQU49IjIiCTMsMgkzLDMJ
Myw0Cis0LDIJNCwzCTQsNAorLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoreyAwLCAwIH0KK3Rvb2xr
aXQ6V2ViS2l0R3RrCit7MCwgMn0sIHswLCAyfQorCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tCit7
IDEsIDEgfQordG9vbGtpdDpXZWJLaXRHdGsKK3swLCAyfSwgezAsIDJ9CisKKy0tLS0tLS0tLS0t
LS0tLS0tLS0tLS0KK3sgMywgMCB9Cit0b29sa2l0OldlYktpdEd0aworezIsIDJ9LCB7MCwgMX0K
KworLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQoreyAyLCAwIH0KK3Rvb2xraXQ6V2ViS2l0R3RrCit7
MiwgMn0sIHswLCAxfQorCistLS0tLS0tLS0tLS0tLS0tLS0tLS0tCit7IDIsIDMgfQordG9vbGtp
dDpXZWJLaXRHdGsKK3syLCAxfSwgezMsIDF9CisKKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KK3sg
MTAsIDEwIH0KKworezAsIDB9LCB7MCwgMH0KKworCmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VM
b2cgYi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggODk3MjZkZi4uZGUxNTBjNyAxMDA2NDQKLS0tIGEv
VG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMiw2ICsyLDIzIEBACiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCiAKKyAgICAgICAgW0dUS10gSW1w
bGVtZW50IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6Ontyb3d8Y29sdW1ufUluZGV4UmFuZ2UgaW4g
RFJUCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01Nzg1
NAorCisgICAgICAgIEltcGxlbWVudCBtaXNzaW5nIGZlYXR1cmVzIGluIEdUSydzIERSVC4KKwor
ICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2d0ay9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50R3RrLmNw
cDoKKyAgICAgICAgKGluZGV4UmFuZ2VJblRhYmxlKTogTmV3IGhlbHBlciBmdW5jdGlvbiB0byBn
ZXQgdGhlIHJhbmdlIHN0cmluZworICAgICAgICBmb3IgdGhlIGN1cnJlbnQgY2VsbCBpbnNpZGUg
dGhlIHBhcmVudCB0YWJsZSwgZWl0aGVyIGZyb20gdGhlCisgICAgICAgIHBvaW50IG9mIHZpZXcg
b2Ygcm93cyBvciBjb2x1bW5zLgorICAgICAgICAoQWNjZXNzaWJpbGl0eVVJRWxlbWVudDo6cm93
SW5kZXhSYW5nZSk6IEltcGxlbWVudGVkIGJ5IHJlbHlpbmcgb24KKyAgICAgICAgdGhlIG5ldyBo
ZWxwZXIgZnVuY3Rpb24gaW5kZXhSYW5nZUluVGFibGUoKS4KKyAgICAgICAgKEFjY2Vzc2liaWxp
dHlVSUVsZW1lbnQ6OmNvbHVtbkluZGV4UmFuZ2UpOiBEaXR0by4KKworMjAxMS0wNC0wNSAgTWFy
aW8gU2FuY2hleiBQcmFkYSAgPG1zYW5jaGV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKICAgICAgICAgW0dUS10gSW1wbGVtZW50IEFjY2Vzc2li
aWxpdHlVSUVsZW1lbnQ6OmNlbGxGb3JDb2x1bW5BbmRSb3cgaW4gRFJUCiAgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NzgyNgogCmRpZmYgLS1naXQgYS9U
b29scy9EdW1wUmVuZGVyVHJlZS9ndGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEd0ay5jcHAgYi9U
b29scy9EdW1wUmVuZGVyVHJlZS9ndGsvQWNjZXNzaWJpbGl0eVVJRWxlbWVudEd0ay5jcHAKaW5k
ZXggNzhiNGZiOC4uMjU2YjYyMCAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZ3Rr
L0FjY2Vzc2liaWxpdHlVSUVsZW1lbnRHdGsuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVl
L2d0ay9BY2Nlc3NpYmlsaXR5VUlFbGVtZW50R3RrLmNwcApAQCAtNDg4LDE2ICs0ODgsNTYgQEAg
aW50IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmluZGV4SW5UYWJsZSgpCiAgICAgcmV0dXJuIDA7
CiB9CiAKK3N0YXRpYyBKU1N0cmluZ1JlZiBpbmRleFJhbmdlSW5UYWJsZShQbGF0Zm9ybVVJRWxl
bWVudCBlbGVtZW50LCBib29sIGlzUm93UmFuZ2UpCit7CisgICAgR093blB0cjxnY2hhcj4gcmFu
Z2VTdHJpbmcoZ19zdHJkdXAoInswLCAwfSIpKTsKKworICAgIGlmICghZWxlbWVudCkKKyAgICAg
ICAgcmV0dXJuIEpTU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKHJhbmdlU3RyaW5nLmdldCgp
KTsKKworICAgIEFTU0VSVChBVEtfSVNfT0JKRUNUKGVsZW1lbnQpKTsKKworICAgIEF0a09iamVj
dCogYXhUYWJsZSA9IGF0a19vYmplY3RfZ2V0X3BhcmVudChBVEtfT0JKRUNUKGVsZW1lbnQpKTsK
KyAgICBpZiAoIWF4VGFibGUgfHwgIUFUS19JU19UQUJMRShheFRhYmxlKSkKKyAgICAgICAgcmV0
dXJuIEpTU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5nKHJhbmdlU3RyaW5nLmdldCgpKTsKKwor
ICAgIC8vIExvb2sgZm9yIHRoZSBjZWxsIGluIHRoZSB0YWJsZS4KKyAgICBnaW50IGluZGV4SW5Q
YXJlbnQgPSBhdGtfb2JqZWN0X2dldF9pbmRleF9pbl9wYXJlbnQoQVRLX09CSkVDVChheENlbGwp
KTsKKyAgICBpZiAoaW5kZXhJblBhcmVudCA9PSAtMSkKKyAgICAgICAgcmV0dXJuIGZhbHNlOwor
CisgICAgaW50IHJvdyA9IC0xOworICAgIGludCBjb2x1bW4gPSAtMTsKKyAgICByb3cgPSBhdGtf
dGFibGVfZ2V0X3Jvd19hdF9pbmRleChBVEtfVEFCTEUoYXhUYWJsZSksIGluZGV4SW5QYXJlbnQp
OworICAgIGNvbHVtbiA9IGF0a190YWJsZV9nZXRfY29sdW1uX2F0X2luZGV4KEFUS19UQUJMRShh
eFRhYmxlKSwgaW5kZXhJblBhcmVudCk7CisKKyAgICAvLyBHZXQgdGhlIGFjdHVhbCB2YWx1ZXMs
IGlmIHJvdyBhbmQgY29sdW1ucyBhcmUgdmFsaWQgdmFsdWVzLgorICAgIGlmIChyb3cgIT0gLTEg
JiYgY29sdW1uICE9IC0xKSB7CisgICAgICAgIGludCBiYXNlID0gMDsKKyAgICAgICAgaW50IGxl
bmd0aCA9IDA7CisgICAgICAgIGlmIChpc1Jvd1JhbmdlKSB7CisgICAgICAgICAgICBiYXNlID0g
cm93OworICAgICAgICAgICAgbGVuZ3RoID0gYXRrX3RhYmxlX2dldF9yb3dfZXh0ZW50X2F0KEFU
S19UQUJMRShheFRhYmxlKSwgcm93LCBjb2x1bW4pOworICAgICAgICB9IGVsc2UgeworICAgICAg
ICAgICAgYmFzZSA9IGNvbHVtbjsKKyAgICAgICAgICAgIGxlbmd0aCA9IGF0a190YWJsZV9nZXRf
Y29sdW1uX2V4dGVudF9hdChBVEtfVEFCTEUoYXhUYWJsZSksIHJvdywgY29sdW1uKTsKKyAgICAg
ICAgfQorICAgICAgICByYW5nZVN0cmluZy5zZXQoZ19zdHJkdXBfcHJpbnRmKCJ7JWQsICVkfSIs
IGJhc2UsIGxlbmd0aCkpOworICAgIH0KKworICAgIHJldHVybiBKU1N0cmluZ0NyZWF0ZVdpdGhV
VEY4Q1N0cmluZyhyYW5nZVN0cmluZy5nZXQoKSk7Cit9CisKIEpTU3RyaW5nUmVmIEFjY2Vzc2li
aWxpdHlVSUVsZW1lbnQ6OnJvd0luZGV4UmFuZ2UoKQogewotICAgIC8vIEZJWE1FOiBpbXBsZW1l
bnQKLSAgICByZXR1cm4gSlNTdHJpbmdDcmVhdGVXaXRoQ2hhcmFjdGVycygwLCAwKTsKKyAgICAv
LyBSYW5nZSBpbiB0YWJsZSBmb3Igcm93cy4KKyAgICByZXR1cm4gaW5kZXhSYW5nZUluVGFibGUo
bV9lbGVtZW50LCB0cnVlKTsKIH0KIAogSlNTdHJpbmdSZWYgQWNjZXNzaWJpbGl0eVVJRWxlbWVu
dDo6Y29sdW1uSW5kZXhSYW5nZSgpCiB7Ci0gICAgLy8gRklYTUU6IGltcGxlbWVudAotICAgIHJl
dHVybiBKU1N0cmluZ0NyZWF0ZVdpdGhDaGFyYWN0ZXJzKDAsIDApOworICAgIC8vIFJhbmdlIGlu
IHRhYmxlIGZvciBjb2x1bW5zLgorICAgIHJldHVybiBpbmRleFJhbmdlSW5UYWJsZShtX2VsZW1l
bnQsIGZhbHNlKTsKIH0KIAogaW50IEFjY2Vzc2liaWxpdHlVSUVsZW1lbnQ6OmxpbmVGb3JJbmRl
eChpbnQpCi0tIAoxLjcuNAoK
</data>
<flag name="review"
          id="80744"
          type_id="1"
          status="+"
          setter="xan.lopez"
    />
          </attachment>
      

    </bug>

</bugzilla>