<?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>86475</bug_id>
          
          <creation_ts>2012-05-15 06:13:37 -0700</creation_ts>
          <short_desc>[EFL] EFL&apos;s LayoutTestController does not support titleTextDirection</short_desc>
          <delta_ts>2012-06-15 02:24:26 -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>WebKit EFL</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>86462</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>abarth</cc>
    
    <cc>gustavo</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>623965</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-15 06:13:37 -0700</bug_when>
    <thetext>EFL&apos;s LayoutTestController does not support titleTextDirection which is needed by:
  fast/dom/title-directionality.html
  fast/dom/title-directionality-removeChild.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633685</commentid>
    <comment_count>1</comment_count>
      <attachid>144002</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-25 01:24:37 -0700</bug_when>
    <thetext>Created attachment 144002
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634318</commentid>
    <comment_count>2</comment_count>
      <attachid>144002</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-05-25 15:03:28 -0700</bug_when>
    <thetext>Comment on attachment 144002
Patch

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

&gt; Source/WebKit/efl/ChangeLog:8
&gt; +        Fix setting of title direction in ewk_frame_title_set() and

I didn&apos;t really understand what was wrong with the calls. Can you explain why you need to take an address to change the direction member?

&gt; Source/WebKit/efl/ewk/ewk_frame.cpp:-1582
&gt; -    if (!eina_stringshare_replace(&amp;smartData-&gt;title.string, title-&gt;string))
&gt; +    bool directionChanged = false;
&gt; +    if (smartData-&gt;title.direction != title-&gt;direction) {
&gt; +        (&amp;smartData-&gt;title)-&gt;direction = title-&gt;direction;
&gt; +        directionChanged = true;
&gt; +    }
&gt; +    if (!eina_stringshare_replace(&amp;smartData-&gt;title.string, title-&gt;string) &amp;&amp; !directionChanged)
&gt;          return;
&gt; -    smartData-&gt;title.direction = title-&gt;direction;

How about

  if ((!eina_stringshare_replace(...)) &amp;&amp; (smartData-&gt;title.string == title-&gt;direction))
      return;

  smartData-&gt;title.direction = ...;

&gt; Tools/DumpRenderTree/LayoutTestController.cpp:2172
&gt; +    if (!titleDirection.get())
&gt; +        return JSValueMakeUndefined(context);

I wonder if this can really happen, as titleTextDirection should always return a valid std::string. Perhaps an ASSERT() is enough?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>634630</commentid>
    <comment_count>3</comment_count>
      <attachid>144002</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-26 02:28:24 -0700</bug_when>
    <thetext>Comment on attachment 144002
Patch

You&apos;re right, the dereferencing for the structure is probably not needed. I&apos;ll double check and fix the patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>635099</commentid>
    <comment_count>4</comment_count>
      <attachid>144322</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-28 03:51:35 -0700</bug_when>
    <thetext>Created attachment 144322
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>635174</commentid>
    <comment_count>5</comment_count>
      <attachid>144322</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-05-28 06:36:29 -0700</bug_when>
    <thetext>Comment on attachment 144322
Patch

Looks good to me, thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>635847</commentid>
    <comment_count>6</comment_count>
      <attachid>144322</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-05-29 04:10:55 -0700</bug_when>
    <thetext>Comment on attachment 144322
Patch

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

&gt; Tools/DumpRenderTree/LayoutTestController.cpp:2278
&gt; +        { &quot;titleTextDirection&quot;, getTitleTextDirectionCallback, 0, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },

I wonder whether this value can be used by all ports. Because you just implement this static value for EFL port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>635856</commentid>
    <comment_count>7</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-05-29 04:22:33 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (From update of attachment 144322 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=144322&amp;action=review
&gt; 
&gt; &gt; Tools/DumpRenderTree/LayoutTestController.cpp:2278
&gt; &gt; +        { &quot;titleTextDirection&quot;, getTitleTextDirectionCallback, 0, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
&gt; 
&gt; I wonder whether this value can be used by all ports. Because you just implement this static value for EFL port.

I provide empty implementation for other ports so that it will compile. Then other ports will need to provide an implementation if they really want to support this LayoutTestController attribute. This is the usual way (at least for methods, I don&apos;t know if attributes are any different). I don&apos;t see any problem here. Do you expect an &quot;#if PLATFORM(EFL)&quot; ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>636143</commentid>
    <comment_count>8</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-05-29 09:52:43 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (In reply to comment #6)
&gt; &gt; (From update of attachment 144322 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=144322&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Tools/DumpRenderTree/LayoutTestController.cpp:2278
&gt; &gt; &gt; +        { &quot;titleTextDirection&quot;, getTitleTextDirectionCallback, 0, kJSPropertyAttributeReadOnly | kJSPropertyAttributeDontDelete },
&gt; &gt; 
&gt; &gt; I wonder whether this value can be used by all ports. Because you just implement this static value for EFL port.
&gt; 
&gt; I provide empty implementation for other ports so that it will compile. Then other ports will need to provide an implementation if they really want to support this LayoutTestController attribute. This is the usual way (at least for methods, I don&apos;t know if attributes are any different). I don&apos;t see any problem here. Do you expect an &quot;#if PLATFORM(EFL)&quot; ?

I think it would good to provide dummy implementation for other ports. Did you already support it ? I couldn&apos;t find it. If so, please let me know the bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>636183</commentid>
    <comment_count>9</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-05-29 10:23:29 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; I think it would good to provide dummy implementation for other ports. Did you already support it ? I couldn&apos;t find it. If so, please let me know the bug.

I don&apos;t understand this proposal: the implementation itself is in LayoutTestController itself, what each port needs to do is simply call LTC::setTitleTextDirection() when they need it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>636664</commentid>
    <comment_count>10</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-05-29 18:13:43 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; I think it would good to provide dummy implementation for other ports. Did you already support it ? I couldn&apos;t find it. If so, please let me know the bug.
&gt; 
&gt; I don&apos;t understand this proposal: the implementation itself is in LayoutTestController itself, what each port needs to do is simply call LTC::setTitleTextDirection() when they need it.

Hmm, it looks there was misunderstanding for me. If there is no need to implement  on port side, this patch is good. I&apos;m sorry.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>649942</commentid>
    <comment_count>11</comment_count>
      <attachid>144322</attachid>
    <who name="Hajime Morrita">morrita</who>
    <bug_when>2012-06-15 00:05:00 -0700</bug_when>
    <thetext>Comment on attachment 144322
Patch

rs=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>649947</commentid>
    <comment_count>12</comment_count>
      <attachid>144322</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-15 00:09:15 -0700</bug_when>
    <thetext>Comment on attachment 144322
Patch

Rejecting attachment 144322 from commit-queue.

Failed to run &quot;[&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch&apos;, &apos;--status-host=queues.webkit.org&apos;, &apos;-...&quot; exit_code: 2

Last 500 characters of output:
tching file Tools/DumpRenderTree/LayoutTestController.h
Hunk #1 succeeded at 359 (offset -1 lines).
Hunk #2 succeeded at 425 (offset -1 lines).
patching file Tools/DumpRenderTree/efl/DumpRenderTreeChrome.cpp
Hunk #1 FAILED at 451.
1 out of 1 hunk FAILED -- saving rejects to file Tools/DumpRenderTree/efl/DumpRenderTreeChrome.cpp.rej

Failed to run &quot;[u&apos;/mnt/git/webkit-commit-queue/Tools/Scripts/svn-apply&apos;, u&apos;--force&apos;, u&apos;--reviewer&apos;, u&apos;Hajime Mor...&quot; exit_code: 1 cwd: /mnt/git/webkit-commit-queue/

Full output: http://queues.webkit.org/results/12965388</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>649961</commentid>
    <comment_count>13</comment_count>
      <attachid>147754</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-06-15 00:25:15 -0700</bug_when>
    <thetext>Created attachment 147754
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>650037</commentid>
    <comment_count>14</comment_count>
      <attachid>147754</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-15 02:24:21 -0700</bug_when>
    <thetext>Comment on attachment 147754
Patch

Clearing flags on attachment: 147754

Committed r120428: &lt;http://trac.webkit.org/changeset/120428&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>650038</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-15 02:24:26 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>144002</attachid>
            <date>2012-05-25 01:24:37 -0700</date>
            <delta_ts>2012-05-28 03:51:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>86475_title_direction.patch</filename>
            <type>text/plain</type>
            <size>9133</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBmMWY1NjVhLi5hNWM0NzRhIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTItMDUt
MjUgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KKworICAg
ICAgICBbRUZMXSBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBzdXBwb3J0IHRp
dGxlVGV4dERpcmVjdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODY0NzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBVbnNraXAgdGl0bGUtZGlyZWN0aW9uYWxpdHkgdGVzdHMgbm93IHRoYXQgRUZMJ3Mg
TGF5b3V0VGVzdENvbnRyb2xsZXIKKyAgICAgICAgc3VwcG9ydHMgdGl0bGVUZXh0RGlyZWN0aW9u
LgorCisgICAgICAgICogcGxhdGZvcm0vZWZsL3Rlc3RfZXhwZWN0YXRpb25zLnR4dDoKKwogMjAx
Mi0wNS0yNCAgU3VkYXJzYW5hIE5hZ2luZW5pICA8c3VkYXJzYW5hLm5hZ2luZW5pQGxpbnV4Lmlu
dGVsLmNvbT4KIAogICAgICAgICBbRUZMXSBbRFJUXSBBZGQgc3VwcG9ydCBmb3IgV2ViS2l0T2Zm
bGluZVdlYkFwcGxpY2F0aW9uQ2FjaGVFbmFibGVkIHByZWZlcmVuY2UKZGlmZiAtLWdpdCBhL0xh
eW91dFRlc3RzL3BsYXRmb3JtL2VmbC90ZXN0X2V4cGVjdGF0aW9ucy50eHQgYi9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9lZmwvdGVzdF9leHBlY3RhdGlvbnMudHh0CmluZGV4IDNhMDZlOTAuLjhmOGUx
NTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC90ZXN0X2V4cGVjdGF0aW9u
cy50eHQKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL3Rlc3RfZXhwZWN0YXRpb25zLnR4
dApAQCAtNDIxLDEwICs0MjEsNiBAQCBCVUdXSzg1MzYzIDogZmFzdC9kb20vY2FsbC1hLWNvbnN0
cnVjdG9yLWFzLWEtZnVuY3Rpb24uaHRtbCA9IFRFWFQKIEJVR1dLODUzNjMgOiBmYXN0L2RvbS9j
b25zdHJ1Y3RlZC1vYmplY3RzLXByb3RvdHlwZXMuaHRtbCA9IFRFWFQKIEJVR1dLODUzNjMgOiBm
YXN0L2ZpbGVzL3VybC1udWxsLmh0bWwgPSBURVhUCiAKLS8vIEV4cG9zZSB0aXRsZSBkaXJlY3Rp
b24gaW4gV2ViS2l0IEFQSQotQlVHV0s1ODg0NSA6IGZhc3QvZG9tL3RpdGxlLWRpcmVjdGlvbmFs
aXR5Lmh0bWwgPSBGQUlMCi1CVUdXSzU4ODQ1IDogZmFzdC9kb20vdGl0bGUtZGlyZWN0aW9uYWxp
dHktcmVtb3ZlQ2hpbGQuaHRtbCA9IEZBSUwKLQogQlVHV0s3MjM2MyA6IGZhc3QvZG9tL1dpbmRv
dy93aW5kb3ctcG9zdG1lc3NhZ2UtYXJyYXlzLmh0bWwgPSBGQUlMCiAKIEJVR1dLODQwMzcgOiBm
YXN0L3RleHQvaW50ZXJuYXRpb25hbC9zcGFjZXMtY29tYmluZWQtaW4tdmVydGljYWwtdGV4dC5o
dG1sID0gVEVYVApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nIGIvU291
cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCmluZGV4IGZkYjE5NTEuLjk3MWRiMjEgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAorMjAxMi0wNS0yNSAgQ2hyaXN0b3BoZSBEdW1leiAg
PGNocmlzdG9waGUuZHVtZXpAaW50ZWwuY29tPgorCisgICAgICAgIFtFRkxdIEVGTCdzIExheW91
dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IHN1cHBvcnQgdGl0bGVUZXh0RGlyZWN0aW9uCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NjQ3NQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZpeCBzZXR0aW5nIG9m
IHRpdGxlIGRpcmVjdGlvbiBpbiBld2tfZnJhbWVfdGl0bGVfc2V0KCkgYW5kCisgICAgICAgIGV3
a19mcmFtZV9oaXRfdGVzdF9uZXcoKS4gRW1pdCB0aGUgInRpdGxlLGNoYW5nZWQiIHNpZ25hbCBl
dmVuIGlmIHRoZQorICAgICAgICB0aXRsZSBkaXJlY3Rpb24gaGFzIGNoYW5nZWQgYnV0IG5vdCBp
dHMgdGV4dC4KKworICAgICAgICAqIGV3ay9ld2tfZnJhbWUuY3BwOgorICAgICAgICAoZXdrX2Zy
YW1lX2hpdF90ZXN0X25ldyk6CisgICAgICAgIChld2tfZnJhbWVfdGl0bGVfc2V0KToKKwogMjAx
Mi0wNS0yNCAgTWlraGFpbCBQb3pkbnlha292ICA8bWlraGFpbC5wb3pkbnlha292QGludGVsLmNv
bT4KIAogICAgICAgICBbRUZMXVtEUlRdIExheW91dFRlc3RDb250cm9sbGVyJ3Mgc2V0Q2FjaGVN
b2RlbCgpIGltcGxlbWVudGF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2sv
ZXdrX2ZyYW1lLmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfZnJhbWUuY3BwCmluZGV4
IGM4MDBhZDYuLmVkNDc3NWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tf
ZnJhbWUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfZnJhbWUuY3BwCkBAIC03
MTQsNyArNzE0LDcgQEAgRXdrX0hpdF9UZXN0KiBld2tfZnJhbWVfaGl0X3Rlc3RfbmV3KGNvbnN0
IEV2YXNfT2JqZWN0KiBld2tGcmFtZSwgaW50IHgsIGludCB5KQogCiAgICAgV2ViQ29yZTo6VGV4
dERpcmVjdGlvbiBkaXJlY3Rpb247CiAgICAgaGl0VGVzdC0+dGl0bGUuc3RyaW5nID0gZWluYV9z
dHJpbmdzaGFyZV9hZGQocmVzdWx0LnRpdGxlKGRpcmVjdGlvbikudXRmOCgpLmRhdGEoKSk7Ci0g
ICAgaGl0VGVzdC0+dGl0bGUuZGlyZWN0aW9uID0gKGRpcmVjdGlvbiA9PSBXZWJDb3JlOjpMVFIp
ID8gRVdLX1RFWFRfRElSRUNUSU9OX0xFRlRfVE9fUklHSFQgOiBFV0tfVEVYVF9ESVJFQ1RJT05f
UklHSFRfVE9fTEVGVDsKKyAgICAoJmhpdFRlc3QtPnRpdGxlKS0+ZGlyZWN0aW9uID0gKGRpcmVj
dGlvbiA9PSBXZWJDb3JlOjpMVFIpID8gRVdLX1RFWFRfRElSRUNUSU9OX0xFRlRfVE9fUklHSFQg
OiBFV0tfVEVYVF9ESVJFQ1RJT05fUklHSFRfVE9fTEVGVDsKICAgICBoaXRUZXN0LT5hbHRlcm5h
dGVfdGV4dCA9IGVpbmFfc3RyaW5nc2hhcmVfYWRkKHJlc3VsdC5hbHREaXNwbGF5U3RyaW5nKCku
dXRmOCgpLmRhdGEoKSk7CiAgICAgaWYgKHJlc3VsdC5pbm5lck5vblNoYXJlZE5vZGUoKSAmJiBy
ZXN1bHQuaW5uZXJOb25TaGFyZWROb2RlKCktPmRvY3VtZW50KCkKICAgICAgICAgJiYgcmVzdWx0
LmlubmVyTm9uU2hhcmVkTm9kZSgpLT5kb2N1bWVudCgpLT5mcmFtZSgpKQpAQCAtMTU3NSwxMSAr
MTU3NSwxNSBAQCB2b2lkIGV3a19mcmFtZV9jb250ZW50c19zaXplX2NoYW5nZWQoRXZhc19PYmpl
Y3QqIGV3a0ZyYW1lLCBFdmFzX0Nvb3JkIHdpZHRoLCBFdgogICovCiB2b2lkIGV3a19mcmFtZV90
aXRsZV9zZXQoRXZhc19PYmplY3QqIGV3a0ZyYW1lLCBjb25zdCBFd2tfVGV4dF9XaXRoX0RpcmVj
dGlvbiogdGl0bGUpCiB7Ci0gICAgREJHKCJld2tGcmFtZT0lcCwgdGl0bGU9JXMiLCBld2tGcmFt
ZSwgdGl0bGUtPnN0cmluZyA/IHRpdGxlLT5zdHJpbmcgOiAiKG51bGwpIik7CisgICAgREJHKCJl
d2tGcmFtZT0lcCwgdGl0bGU9JXMsIGRpcmVjdGlvbj0lcyIsIGV3a0ZyYW1lLCB0aXRsZS0+c3Ry
aW5nID8gdGl0bGUtPnN0cmluZyA6ICIobnVsbCkiLCB0aXRsZS0+ZGlyZWN0aW9uID09IEVXS19U
RVhUX0RJUkVDVElPTl9MRUZUX1RPX1JJR0hUID8gImx0ciIgOiAicnRsIik7CiAgICAgRVdLX0ZS
QU1FX1NEX0dFVF9PUl9SRVRVUk4oZXdrRnJhbWUsIHNtYXJ0RGF0YSk7Ci0gICAgaWYgKCFlaW5h
X3N0cmluZ3NoYXJlX3JlcGxhY2UoJnNtYXJ0RGF0YS0+dGl0bGUuc3RyaW5nLCB0aXRsZS0+c3Ry
aW5nKSkKKyAgICBib29sIGRpcmVjdGlvbkNoYW5nZWQgPSBmYWxzZTsKKyAgICBpZiAoc21hcnRE
YXRhLT50aXRsZS5kaXJlY3Rpb24gIT0gdGl0bGUtPmRpcmVjdGlvbikgeworICAgICAgICAoJnNt
YXJ0RGF0YS0+dGl0bGUpLT5kaXJlY3Rpb24gPSB0aXRsZS0+ZGlyZWN0aW9uOworICAgICAgICBk
aXJlY3Rpb25DaGFuZ2VkID0gdHJ1ZTsKKyAgICB9CisgICAgaWYgKCFlaW5hX3N0cmluZ3NoYXJl
X3JlcGxhY2UoJnNtYXJ0RGF0YS0+dGl0bGUuc3RyaW5nLCB0aXRsZS0+c3RyaW5nKSAmJiAhZGly
ZWN0aW9uQ2hhbmdlZCkKICAgICAgICAgcmV0dXJuOwotICAgIHNtYXJ0RGF0YS0+dGl0bGUuZGly
ZWN0aW9uID0gdGl0bGUtPmRpcmVjdGlvbjsKICAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFj
a19jYWxsKGV3a0ZyYW1lLCAidGl0bGUsY2hhbmdlZCIsICh2b2lkKil0aXRsZSk7CiB9CiAKZGlm
ZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxvZwppbmRleCBhMDI1YzE4
Li5mY2M3MDJmIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysrIGIvVG9vbHMvQ2hhbmdl
TG9nCkBAIC0xLDMgKzEsMjYgQEAKKzIwMTItMDUtMjUgIENocmlzdG9waGUgRHVtZXogIDxjaHJp
c3RvcGhlLmR1bWV6QGludGVsLmNvbT4KKworICAgICAgICBbRUZMXSBFRkwncyBMYXlvdXRUZXN0
Q29udHJvbGxlciBkb2VzIG5vdCBzdXBwb3J0IHRpdGxlVGV4dERpcmVjdGlvbgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY0NzUKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgdGl0bGVUZXh0RGlyZWN0
aW9uIGdldHRlciBhbmQgc2V0dGVyIHRvIExheW91dFRlc3RDb250cm9sbGVyIGFuZAorICAgICAg
ICBleHBvc2UgaXRzIHZhbHVlIHRvIEphdmFTY3JpcHQuCisgICAgICAgIFVwZGF0ZSB0aGUgdGl0
bGVUZXh0RGlyZWN0aW9uIHZhbHVlIGZyb20gRUZMJ3MgInRpdGxlLGNoYW5nZWQiCisgICAgICAg
IGNhbGxiYWNrIGluIER1bXBSZW5kZXJUcmVlLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUv
TGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwOgorICAgICAgICAoTGF5b3V0VGVzdENvbnRyb2xsZXI6
OkxheW91dFRlc3RDb250cm9sbGVyKToKKyAgICAgICAgKGdldFRpdGxlVGV4dERpcmVjdGlvbkNh
bGxiYWNrKToKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpzdGF0aWNWYWx1ZXMpOgor
ICAgICAgICAqIER1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmg6CisgICAgICAg
IChMYXlvdXRUZXN0Q29udHJvbGxlcjo6dGl0bGVUZXh0RGlyZWN0aW9uKToKKyAgICAgICAgKExh
eW91dFRlc3RDb250cm9sbGVyOjpzZXRUaXRsZVRleHREaXJlY3Rpb24pOgorICAgICAgICAoTGF5
b3V0VGVzdENvbnRyb2xsZXIpOgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVu
ZGVyVHJlZUNocm9tZS5jcHA6CisgICAgICAgIChEdW1wUmVuZGVyVHJlZUNocm9tZTo6b25GcmFt
ZVRpdGxlQ2hhbmdlZCk6CisKIDIwMTItMDUtMjQgIFN1ZGFyc2FuYSBOYWdpbmVuaSAgPHN1ZGFy
c2FuYS5uYWdpbmVuaUBsaW51eC5pbnRlbC5jb20+CiAKICAgICAgICAgW0VGTF0gW0RSVF0gQWRk
IHN1cHBvcnQgZm9yIFdlYktpdE9mZmxpbmVXZWJBcHBsaWNhdGlvbkNhY2hlRW5hYmxlZCBwcmVm
ZXJlbmNlCmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJv
bGxlci5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHAK
aW5kZXggZjkxYzg3NC4uODc0OTZmNyAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUv
TGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwCisrKyBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0xheW91
dFRlc3RDb250cm9sbGVyLmNwcApAQCAtOTUsNiArOTUsNyBAQCBMYXlvdXRUZXN0Q29udHJvbGxl
cjo6TGF5b3V0VGVzdENvbnRyb2xsZXIoY29uc3Qgc3RkOjpzdHJpbmcmIHRlc3RQYXRoT3JVUkws
IGNvbgogICAgICwgbV9jdXN0b21GdWxsU2NyZWVuQmVoYXZpb3IoZmFsc2UpIAogICAgICwgbV90
ZXN0UGF0aE9yVVJMKHRlc3RQYXRoT3JVUkwpCiAgICAgLCBtX2V4cGVjdGVkUGl4ZWxIYXNoKGV4
cGVjdGVkUGl4ZWxIYXNoKQorICAgICwgbV90aXRsZVRleHREaXJlY3Rpb24oImx0ciIpCiB7CiB9
CiAKQEAgLTIxNjMsNiArMjE2NCwxNSBAQCBzdGF0aWMgSlNWYWx1ZVJlZiBnZXRQbGF0Zm9ybU5h
bWVDYWxsYmFjayhKU0NvbnRleHRSZWYgY29udGV4dCwgSlNPYmplY3RSZWYgdGhpcwogfQogI2Vu
ZGlmCiAKK3N0YXRpYyBKU1ZhbHVlUmVmIGdldFRpdGxlVGV4dERpcmVjdGlvbkNhbGxiYWNrKEpT
Q29udGV4dFJlZiBjb250ZXh0LCBKU09iamVjdFJlZiB0aGlzT2JqZWN0LCBKU1N0cmluZ1JlZiBw
cm9wZXJ0eU5hbWUsIEpTVmFsdWVSZWYqIGV4Y2VwdGlvbikKK3sKKyAgICBMYXlvdXRUZXN0Q29u
dHJvbGxlciogY29udHJvbGxlciA9IHN0YXRpY19jYXN0PExheW91dFRlc3RDb250cm9sbGVyKj4o
SlNPYmplY3RHZXRQcml2YXRlKHRoaXNPYmplY3QpKTsKKyAgICBKU1JldGFpblB0cjxKU1N0cmlu
Z1JlZj4gdGl0bGVEaXJlY3Rpb24oQWRvcHQsIEpTU3RyaW5nQ3JlYXRlV2l0aFVURjhDU3RyaW5n
KGNvbnRyb2xsZXItPnRpdGxlVGV4dERpcmVjdGlvbigpLmNfc3RyKCkpKTsKKyAgICBpZiAoIXRp
dGxlRGlyZWN0aW9uLmdldCgpKQorICAgICAgICByZXR1cm4gSlNWYWx1ZU1ha2VVbmRlZmluZWQo
Y29udGV4dCk7CisgICAgcmV0dXJuIEpTVmFsdWVNYWtlU3RyaW5nKGNvbnRleHQsIHRpdGxlRGly
ZWN0aW9uLmdldCgpKTsKK30KKwogc3RhdGljIGJvb2wgc2V0R2xvYmFsRmxhZ0NhbGxiYWNrKEpT
Q29udGV4dFJlZiBjb250ZXh0LCBKU09iamVjdFJlZiB0aGlzT2JqZWN0LCBKU1N0cmluZ1JlZiBw
cm9wZXJ0eU5hbWUsIEpTVmFsdWVSZWYgdmFsdWUsIEpTVmFsdWVSZWYqIGV4Y2VwdGlvbikKIHsK
ICAgICBMYXlvdXRUZXN0Q29udHJvbGxlciogY29udHJvbGxlciA9IHN0YXRpY19jYXN0PExheW91
dFRlc3RDb250cm9sbGVyKj4oSlNPYmplY3RHZXRQcml2YXRlKHRoaXNPYmplY3QpKTsKQEAgLTIy
NjMsNiArMjI3Myw3IEBAIEpTU3RhdGljVmFsdWUqIExheW91dFRlc3RDb250cm9sbGVyOjpzdGF0
aWNWYWx1ZXMoKQogI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9S
TShXSU4pCiAgICAgICAgIHsgInBsYXRmb3JtTmFtZSIsIGdldFBsYXRmb3JtTmFtZUNhbGxiYWNr
LCAwLCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVE
b250RGVsZXRlIH0sCiAjZW5kaWYKKyAgICAgICAgeyAidGl0bGVUZXh0RGlyZWN0aW9uIiwgZ2V0
VGl0bGVUZXh0RGlyZWN0aW9uQ2FsbGJhY2ssIDAsIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9u
bHkgfCBrSlNQcm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAwLCAwLCAw
LCAwIH0KICAgICB9OwogICAgIHJldHVybiBzdGF0aWNWYWx1ZXM7CmRpZmYgLS1naXQgYS9Ub29s
cy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5oIGIvVG9vbHMvRHVtcFJlbmRl
clRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIuaAppbmRleCAyYjlmNWZlLi44ZGI1ZWQwIDEwMDY0
NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5oCisrKyBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmgKQEAgLTM1OCw2ICsz
NTgsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRNaW5pbXVtVGltZXJJbnRlcnZhbChkb3VibGUp
OwogCiAgICAgdm9pZCBzZXRUZXh0RGlyZWN0aW9uKEpTU3RyaW5nUmVmKTsKKyAgICBjb25zdCBz
dGQ6OnN0cmluZyYgdGl0bGVUZXh0RGlyZWN0aW9uKCkgY29uc3QgeyByZXR1cm4gbV90aXRsZVRl
eHREaXJlY3Rpb247IH0KKyAgICB2b2lkIHNldFRpdGxlVGV4dERpcmVjdGlvbihjb25zdCBzdGQ6
OnN0cmluZyYgZGlyZWN0aW9uKSB7IG1fdGl0bGVUZXh0RGlyZWN0aW9uID0gZGlyZWN0aW9uOyB9
CiAKICAgICAvLyBDdXN0b20gZnVsbCBzY3JlZW4gYmVoYXZpb3IuCiAgICAgdm9pZCBzZXRIYXND
dXN0b21GdWxsU2NyZWVuQmVoYXZpb3IoYm9vbCB2YWx1ZSkgeyBtX2N1c3RvbUZ1bGxTY3JlZW5C
ZWhhdmlvciA9IHZhbHVlOyB9CkBAIC00MjEsNiArNDIzLDcgQEAgcHJpdmF0ZToKICAgICBzdGQ6
OnN0cmluZyBtX2F1dGhlbnRpY2F0aW9uUGFzc3dvcmQ7IAogICAgIHN0ZDo6c3RyaW5nIG1fdGVz
dFBhdGhPclVSTDsKICAgICBzdGQ6OnN0cmluZyBtX2V4cGVjdGVkUGl4ZWxIYXNoOyAgICAvLyBl
bXB0eSBzdHJpbmcgaWYgbm8gaGFzaAorICAgIHN0ZDo6c3RyaW5nIG1fdGl0bGVUZXh0RGlyZWN0
aW9uOwogCiAgICAgc3RkOjpzZXQ8c3RkOjpzdHJpbmc+IG1fd2lsbFNlbmRSZXF1ZXN0Q2xlYXJI
ZWFkZXJzOwogICAgIApkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBS
ZW5kZXJUcmVlQ2hyb21lLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVy
VHJlZUNocm9tZS5jcHAKaW5kZXggMmEzOWE2OS4uN2JhMTk1NiAxMDA2NDQKLS0tIGEvVG9vbHMv
RHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcAorKysgYi9Ub29scy9E
dW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVDaHJvbWUuY3BwCkBAIC00NTEsNiArNDUx
LDggQEAgdm9pZCBEdW1wUmVuZGVyVHJlZUNocm9tZTo6b25GcmFtZVRpdGxlQ2hhbmdlZCh2b2lk
KiwgRXZhc19PYmplY3QqIGZyYW1lLCB2b2lkKgogCiAgICAgaWYgKCFkb25lICYmIGdMYXlvdXRU
ZXN0Q29udHJvbGxlci0+ZHVtcFRpdGxlQ2hhbmdlcygpKQogICAgICAgICBwcmludGYoIlRJVExF
IENIQU5HRUQ6ICVzXG4iLCAodGl0bGVUZXh0ICYmIHRpdGxlVGV4dC0+c3RyaW5nKSA/IHRpdGxl
VGV4dC0+c3RyaW5nIDogIiIpOworCisgICAgZ0xheW91dFRlc3RDb250cm9sbGVyLT5zZXRUaXRs
ZVRleHREaXJlY3Rpb24odGl0bGVUZXh0LT5kaXJlY3Rpb24gPT0gRVdLX1RFWFRfRElSRUNUSU9O
X0xFRlRfVE9fUklHSFQgPyAibHRyIiA6ICJydGwiKTsKIH0KIAogdm9pZCBEdW1wUmVuZGVyVHJl
ZUNocm9tZTo6b25Eb2N1bWVudExvYWRGaW5pc2hlZCh2b2lkKiwgRXZhc19PYmplY3QqLCB2b2lk
KiBldmVudEluZm8pCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>144322</attachid>
            <date>2012-05-28 03:51:35 -0700</date>
            <delta_ts>2012-06-15 00:24:51 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>86475_title_direction.patch</filename>
            <type>text/plain</type>
            <size>8057</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCBjYTA0N2FjLi5iNzk5NDg0IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VM
b2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDUgKzEsMTcgQEAKIDIwMTItMDUt
MjggIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVsLmNvbT4KIAorICAg
ICAgICBbRUZMXSBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5vdCBzdXBwb3J0IHRp
dGxlVGV4dERpcmVjdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9ODY0NzUKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBVbnNraXAgdGl0bGUtZGlyZWN0aW9uYWxpdHkgdGVzdHMgbm93IHRoYXQgRUZMJ3Mg
TGF5b3V0VGVzdENvbnRyb2xsZXIKKyAgICAgICAgc3VwcG9ydHMgdGl0bGVUZXh0RGlyZWN0aW9u
LgorCisgICAgICAgICogcGxhdGZvcm0vZWZsL3Rlc3RfZXhwZWN0YXRpb25zLnR4dDoKKworMjAx
Mi0wNS0yOCAgQ2hyaXN0b3BoZSBEdW1leiAgPGNocmlzdG9waGUuZHVtZXpAaW50ZWwuY29tPgor
CiAgICAgICAgIFtFRkxdIFRlc3QgYWRkZWQgaW4gcjExODU3NyBpcyBmYWlsaW5nIGFuZCBzaG91
bGQgYmUgc2tpcHBlZAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9ODc2MjAKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZWZsL3Rlc3Rf
ZXhwZWN0YXRpb25zLnR4dCBiL0xheW91dFRlc3RzL3BsYXRmb3JtL2VmbC90ZXN0X2V4cGVjdGF0
aW9ucy50eHQKaW5kZXggMDg0ZTZmMy4uNDY1NjhiMCAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMv
cGxhdGZvcm0vZWZsL3Rlc3RfZXhwZWN0YXRpb25zLnR4dAorKysgYi9MYXlvdXRUZXN0cy9wbGF0
Zm9ybS9lZmwvdGVzdF9leHBlY3RhdGlvbnMudHh0CkBAIC00MjQsMTAgKzQyNCw2IEBAIEJVR1dL
ODQ3NzYgOiBpZXRlc3RjZW50ZXIvY3NzMy9tdWx0aWNvbHVtbi9jb2x1bW4td2lkdGgtYXBwbGll
cy10by0wMTQuaHRtID0gSU1BCiBCVUdXSzg0Nzc3IDogaWV0ZXN0Y2VudGVyL2NzczMvbXVsdGlj
b2x1bW4vY29sdW1uLXdpZHRoLWFwcGxpZXMtdG8tMDE1Lmh0bSA9IElNQUdFCiBCVUdXSzg0Nzc4
IDogaWV0ZXN0Y2VudGVyL2NzczMvbXVsdGljb2x1bW4vY29sdW1uLXdpZHRoLW5lZ2F0aXZlLTAw
MS5odG0gPSBJTUFHRQogCi0vLyBFeHBvc2UgdGl0bGUgZGlyZWN0aW9uIGluIFdlYktpdCBBUEkK
LUJVR1dLNTg4NDUgOiBmYXN0L2RvbS90aXRsZS1kaXJlY3Rpb25hbGl0eS5odG1sID0gRkFJTAot
QlVHV0s1ODg0NSA6IGZhc3QvZG9tL3RpdGxlLWRpcmVjdGlvbmFsaXR5LXJlbW92ZUNoaWxkLmh0
bWwgPSBGQUlMCi0KIEJVR1dLNzIzNjMgOiBmYXN0L2RvbS9XaW5kb3cvd2luZG93LXBvc3RtZXNz
YWdlLWFycmF5cy5odG1sID0gRkFJTAogCiBCVUdXSzg0MDM3IDogZmFzdC90ZXh0L2ludGVybmF0
aW9uYWwvc3BhY2VzLWNvbWJpbmVkLWluLXZlcnRpY2FsLXRleHQuaHRtbCA9IFRFWFQKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvZWZsL0No
YW5nZUxvZwppbmRleCA1OTc4ODY5Li5jMDY3ODIzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBAIC0xLDMg
KzEsMTYgQEAKKzIwMTItMDUtMjggIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6
QGludGVsLmNvbT4KKworICAgICAgICBbRUZMXSBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBk
b2VzIG5vdCBzdXBwb3J0IHRpdGxlVGV4dERpcmVjdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY0NzUKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBFbWl0IHRoZSAidGl0bGUsY2hhbmdlZCIgc2lnbmFs
IGV2ZW4gaWYgdGhlIHRpdGxlIGRpcmVjdGlvbiBoYXMKKyAgICAgICAgY2hhbmdlZCBidXQgbm90
IGl0cyB0ZXh0LgorCisgICAgICAgICogZXdrL2V3a19mcmFtZS5jcHA6CisgICAgICAgIChld2tf
ZnJhbWVfdGl0bGVfc2V0KToKKwogMjAxMi0wNS0yNSAgTWlraGFpbCBQb3pkbnlha292ICA8bWlr
aGFpbC5wb3pkbnlha292QGludGVsLmNvbT4KIAogICAgICAgICBbRUZMXSBBUEkgZm9yIFBhZ2VH
cm91cCB2aXNpdGVkIGxpbmtzIGhhc2ggcG9wdWxhdGluZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9lZmwvZXdrL2V3a19mcmFtZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX2Zy
YW1lLmNwcAppbmRleCBjODAwYWQ2Li43YjBlYWJhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2VmbC9ld2svZXdrX2ZyYW1lLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX2Zy
YW1lLmNwcApAQCAtMTU3NSw5ICsxNTc1LDkgQEAgdm9pZCBld2tfZnJhbWVfY29udGVudHNfc2l6
ZV9jaGFuZ2VkKEV2YXNfT2JqZWN0KiBld2tGcmFtZSwgRXZhc19Db29yZCB3aWR0aCwgRXYKICAq
Lwogdm9pZCBld2tfZnJhbWVfdGl0bGVfc2V0KEV2YXNfT2JqZWN0KiBld2tGcmFtZSwgY29uc3Qg
RXdrX1RleHRfV2l0aF9EaXJlY3Rpb24qIHRpdGxlKQogewotICAgIERCRygiZXdrRnJhbWU9JXAs
IHRpdGxlPSVzIiwgZXdrRnJhbWUsIHRpdGxlLT5zdHJpbmcgPyB0aXRsZS0+c3RyaW5nIDogIihu
dWxsKSIpOworICAgIERCRygiZXdrRnJhbWU9JXAsIHRpdGxlPSVzLCBkaXJlY3Rpb249JXMiLCBl
d2tGcmFtZSwgdGl0bGUtPnN0cmluZyA/IHRpdGxlLT5zdHJpbmcgOiAiKG51bGwpIiwgdGl0bGUt
PmRpcmVjdGlvbiA9PSBFV0tfVEVYVF9ESVJFQ1RJT05fTEVGVF9UT19SSUdIVCA/ICJsdHIiIDog
InJ0bCIpOwogICAgIEVXS19GUkFNRV9TRF9HRVRfT1JfUkVUVVJOKGV3a0ZyYW1lLCBzbWFydERh
dGEpOwotICAgIGlmICghZWluYV9zdHJpbmdzaGFyZV9yZXBsYWNlKCZzbWFydERhdGEtPnRpdGxl
LnN0cmluZywgdGl0bGUtPnN0cmluZykpCisgICAgaWYgKCFlaW5hX3N0cmluZ3NoYXJlX3JlcGxh
Y2UoJnNtYXJ0RGF0YS0+dGl0bGUuc3RyaW5nLCB0aXRsZS0+c3RyaW5nKSAmJiAoc21hcnREYXRh
LT50aXRsZS5kaXJlY3Rpb24gPT0gdGl0bGUtPmRpcmVjdGlvbikpCiAgICAgICAgIHJldHVybjsK
ICAgICBzbWFydERhdGEtPnRpdGxlLmRpcmVjdGlvbiA9IHRpdGxlLT5kaXJlY3Rpb247CiAgICAg
ZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfY2FsbChld2tGcmFtZSwgInRpdGxlLGNoYW5nZWQi
LCAodm9pZCopdGl0bGUpOwpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hh
bmdlTG9nCmluZGV4IGI3YWM2YTIuLjEwOTA4NTUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxv
ZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNiBAQAorMjAxMi0wNS0yOCAgQ2hy
aXN0b3BoZSBEdW1leiAgPGNocmlzdG9waGUuZHVtZXpAaW50ZWwuY29tPgorCisgICAgICAgIFtF
RkxdIEVGTCdzIExheW91dFRlc3RDb250cm9sbGVyIGRvZXMgbm90IHN1cHBvcnQgdGl0bGVUZXh0
RGlyZWN0aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD04NjQ3NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
IEFkZCB0aXRsZVRleHREaXJlY3Rpb24gZ2V0dGVyIGFuZCBzZXR0ZXIgdG8gTGF5b3V0VGVzdENv
bnRyb2xsZXIgYW5kCisgICAgICAgIGV4cG9zZSBpdHMgdmFsdWUgdG8gSmF2YVNjcmlwdC4KKyAg
ICAgICAgVXBkYXRlIHRoZSB0aXRsZVRleHREaXJlY3Rpb24gdmFsdWUgZnJvbSBFRkwncyAidGl0
bGUsY2hhbmdlZCIKKyAgICAgICAgY2FsbGJhY2sgaW4gRHVtcFJlbmRlclRyZWUuCisKKyAgICAg
ICAgKiBEdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHA6CisgICAgICAgIChM
YXlvdXRUZXN0Q29udHJvbGxlcjo6TGF5b3V0VGVzdENvbnRyb2xsZXIpOgorICAgICAgICAoZ2V0
VGl0bGVUZXh0RGlyZWN0aW9uQ2FsbGJhY2spOgorICAgICAgICAoTGF5b3V0VGVzdENvbnRyb2xs
ZXI6OnN0YXRpY1ZhbHVlcyk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENv
bnRyb2xsZXIuaDoKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjp0aXRsZVRleHREaXJl
Y3Rpb24pOgorICAgICAgICAoTGF5b3V0VGVzdENvbnRyb2xsZXI6OnNldFRpdGxlVGV4dERpcmVj
dGlvbik6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxlcik6CisgICAgICAgICogRHVtcFJl
bmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcDoKKyAgICAgICAgKER1bXBSZW5k
ZXJUcmVlQ2hyb21lOjpvbkZyYW1lVGl0bGVDaGFuZ2VkKToKKwogMjAxMi0wNS0yOCAgR3l1eW91
bmcgS2ltICA8Z3l1eW91bmcua2ltQHNhbXN1bmcuY29tPgogCiAgICAgICAgIE1vdmUgYWxsb3dS
b3VuZGluZ0hhY2tzIHRvIEludGVybmFscyBpbnRlcmZhY2UKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJU
cmVlL0xheW91dFRlc3RDb250cm9sbGVyLmNwcAppbmRleCA1MTJhZjliLi5iZjkxNTg2IDEwMDY0
NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHAKKysr
IGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIuY3BwCkBAIC05Niw2
ICs5Niw3IEBAIExheW91dFRlc3RDb250cm9sbGVyOjpMYXlvdXRUZXN0Q29udHJvbGxlcihjb25z
dCBzdGQ6OnN0cmluZyYgdGVzdFBhdGhPclVSTCwgY29uCiAgICAgLCBtX2N1c3RvbUZ1bGxTY3Jl
ZW5CZWhhdmlvcihmYWxzZSkgCiAgICAgLCBtX3Rlc3RQYXRoT3JVUkwodGVzdFBhdGhPclVSTCkK
ICAgICAsIG1fZXhwZWN0ZWRQaXhlbEhhc2goZXhwZWN0ZWRQaXhlbEhhc2gpCisgICAgLCBtX3Rp
dGxlVGV4dERpcmVjdGlvbigibHRyIikKIHsKIH0KIApAQCAtMjE2Nyw2ICsyMTY4LDEzIEBAIHN0
YXRpYyBKU1ZhbHVlUmVmIGdldFBsYXRmb3JtTmFtZUNhbGxiYWNrKEpTQ29udGV4dFJlZiBjb250
ZXh0LCBKU09iamVjdFJlZiB0aGlzCiB9CiAjZW5kaWYKIAorc3RhdGljIEpTVmFsdWVSZWYgZ2V0
VGl0bGVUZXh0RGlyZWN0aW9uQ2FsbGJhY2soSlNDb250ZXh0UmVmIGNvbnRleHQsIEpTT2JqZWN0
UmVmIHRoaXNPYmplY3QsIEpTU3RyaW5nUmVmIHByb3BlcnR5TmFtZSwgSlNWYWx1ZVJlZiogZXhj
ZXB0aW9uKQoreworICAgIExheW91dFRlc3RDb250cm9sbGVyKiBjb250cm9sbGVyID0gc3RhdGlj
X2Nhc3Q8TGF5b3V0VGVzdENvbnRyb2xsZXIqPihKU09iamVjdEdldFByaXZhdGUodGhpc09iamVj
dCkpOworICAgIEpTUmV0YWluUHRyPEpTU3RyaW5nUmVmPiB0aXRsZURpcmVjdGlvbihBZG9wdCwg
SlNTdHJpbmdDcmVhdGVXaXRoVVRGOENTdHJpbmcoY29udHJvbGxlci0+dGl0bGVUZXh0RGlyZWN0
aW9uKCkuY19zdHIoKSkpOworICAgIHJldHVybiBKU1ZhbHVlTWFrZVN0cmluZyhjb250ZXh0LCB0
aXRsZURpcmVjdGlvbi5nZXQoKSk7Cit9CisKIHN0YXRpYyBib29sIHNldEdsb2JhbEZsYWdDYWxs
YmFjayhKU0NvbnRleHRSZWYgY29udGV4dCwgSlNPYmplY3RSZWYgdGhpc09iamVjdCwgSlNTdHJp
bmdSZWYgcHJvcGVydHlOYW1lLCBKU1ZhbHVlUmVmIHZhbHVlLCBKU1ZhbHVlUmVmKiBleGNlcHRp
b24pCiB7CiAgICAgTGF5b3V0VGVzdENvbnRyb2xsZXIqIGNvbnRyb2xsZXIgPSBzdGF0aWNfY2Fz
dDxMYXlvdXRUZXN0Q29udHJvbGxlcio+KEpTT2JqZWN0R2V0UHJpdmF0ZSh0aGlzT2JqZWN0KSk7
CkBAIC0yMjY3LDYgKzIyNzUsNyBAQCBKU1N0YXRpY1ZhbHVlKiBMYXlvdXRUZXN0Q29udHJvbGxl
cjo6c3RhdGljVmFsdWVzKCkKICNpZiBQTEFURk9STShNQUMpIHx8IFBMQVRGT1JNKEdUSykgfHwg
UExBVEZPUk0oV0lOKQogICAgICAgICB7ICJwbGF0Zm9ybU5hbWUiLCBnZXRQbGF0Zm9ybU5hbWVD
YWxsYmFjaywgMCwga0pTUHJvcGVydHlBdHRyaWJ1dGVSZWFkT25seSB8IGtKU1Byb3BlcnR5QXR0
cmlidXRlRG9udERlbGV0ZSB9LAogI2VuZGlmCisgICAgICAgIHsgInRpdGxlVGV4dERpcmVjdGlv
biIsIGdldFRpdGxlVGV4dERpcmVjdGlvbkNhbGxiYWNrLCAwLCBrSlNQcm9wZXJ0eUF0dHJpYnV0
ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRlIH0sCiAgICAgICAgIHsg
MCwgMCwgMCwgMCB9CiAgICAgfTsKICAgICByZXR1cm4gc3RhdGljVmFsdWVzOwpkaWZmIC0tZ2l0
IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIuaCBiL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmgKaW5kZXggYzExZWI0Mi4uOGI1NWM3
MyAxMDA2NDQKLS0tIGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIu
aAorKysgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5oCkBAIC0z
NjAsNiArMzYwLDggQEAgcHVibGljOgogICAgIHZvaWQgc2V0TWluaW11bVRpbWVySW50ZXJ2YWwo
ZG91YmxlKTsKIAogICAgIHZvaWQgc2V0VGV4dERpcmVjdGlvbihKU1N0cmluZ1JlZik7CisgICAg
Y29uc3Qgc3RkOjpzdHJpbmcmIHRpdGxlVGV4dERpcmVjdGlvbigpIGNvbnN0IHsgcmV0dXJuIG1f
dGl0bGVUZXh0RGlyZWN0aW9uOyB9CisgICAgdm9pZCBzZXRUaXRsZVRleHREaXJlY3Rpb24oY29u
c3Qgc3RkOjpzdHJpbmcmIGRpcmVjdGlvbikgeyBtX3RpdGxlVGV4dERpcmVjdGlvbiA9IGRpcmVj
dGlvbjsgfQogCiAgICAgLy8gQ3VzdG9tIGZ1bGwgc2NyZWVuIGJlaGF2aW9yLgogICAgIHZvaWQg
c2V0SGFzQ3VzdG9tRnVsbFNjcmVlbkJlaGF2aW9yKGJvb2wgdmFsdWUpIHsgbV9jdXN0b21GdWxs
U2NyZWVuQmVoYXZpb3IgPSB2YWx1ZTsgfQpAQCAtNDI0LDYgKzQyNiw3IEBAIHByaXZhdGU6CiAg
ICAgc3RkOjpzdHJpbmcgbV9hdXRoZW50aWNhdGlvblBhc3N3b3JkOyAKICAgICBzdGQ6OnN0cmlu
ZyBtX3Rlc3RQYXRoT3JVUkw7CiAgICAgc3RkOjpzdHJpbmcgbV9leHBlY3RlZFBpeGVsSGFzaDsg
ICAgLy8gZW1wdHkgc3RyaW5nIGlmIG5vIGhhc2gKKyAgICBzdGQ6OnN0cmluZyBtX3RpdGxlVGV4
dERpcmVjdGlvbjsKIAogICAgIHN0ZDo6c2V0PHN0ZDo6c3RyaW5nPiBtX3dpbGxTZW5kUmVxdWVz
dENsZWFySGVhZGVyczsKICAgICAKZGlmZiAtLWdpdCBhL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2Vm
bC9EdW1wUmVuZGVyVHJlZUNocm9tZS5jcHAgYi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVt
cFJlbmRlclRyZWVDaHJvbWUuY3BwCmluZGV4IDJhMzlhNjkuLjdiYTE5NTYgMTAwNjQ0Ci0tLSBh
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZUNocm9tZS5jcHAKKysrIGIv
VG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcApAQCAtNDUx
LDYgKzQ1MSw4IEBAIHZvaWQgRHVtcFJlbmRlclRyZWVDaHJvbWU6Om9uRnJhbWVUaXRsZUNoYW5n
ZWQodm9pZCosIEV2YXNfT2JqZWN0KiBmcmFtZSwgdm9pZCoKIAogICAgIGlmICghZG9uZSAmJiBn
TGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBUaXRsZUNoYW5nZXMoKSkKICAgICAgICAgcHJpbnRm
KCJUSVRMRSBDSEFOR0VEOiAlc1xuIiwgKHRpdGxlVGV4dCAmJiB0aXRsZVRleHQtPnN0cmluZykg
PyB0aXRsZVRleHQtPnN0cmluZyA6ICIiKTsKKworICAgIGdMYXlvdXRUZXN0Q29udHJvbGxlci0+
c2V0VGl0bGVUZXh0RGlyZWN0aW9uKHRpdGxlVGV4dC0+ZGlyZWN0aW9uID09IEVXS19URVhUX0RJ
UkVDVElPTl9MRUZUX1RPX1JJR0hUID8gImx0ciIgOiAicnRsIik7CiB9CiAKIHZvaWQgRHVtcFJl
bmRlclRyZWVDaHJvbWU6Om9uRG9jdW1lbnRMb2FkRmluaXNoZWQodm9pZCosIEV2YXNfT2JqZWN0
Kiwgdm9pZCogZXZlbnRJbmZvKQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>147754</attachid>
            <date>2012-06-15 00:25:15 -0700</date>
            <delta_ts>2012-06-15 02:24:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-86475-20120615102329.patch</filename>
            <type>text/plain</type>
            <size>8720</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTIwNDEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Vm
bC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKaW5kZXggMGZiNGVhOGVi
NTRmNzRjMDg3MTZmNmZmZmY1MjJiNDY0MmFkNzQ1Zi4uNTJlMTBmMGZkNWQ2ZmQ0OWM1MTFmODli
M2ZjNmQ3MmFlYTAyOTcwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE2IEBACisyMDEy
LTA2LTE1ICBDaHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CisK
KyAgICAgICAgW0VGTF0gRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3Qgc3VwcG9y
dCB0aXRsZVRleHREaXJlY3Rpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTg2NDc1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgSGFqaW1lIE1vcml0YS4K
KworICAgICAgICBFbWl0IHRoZSAidGl0bGUsY2hhbmdlZCIgc2lnbmFsIGV2ZW4gaWYgdGhlIHRp
dGxlIGRpcmVjdGlvbiBoYXMKKyAgICAgICAgY2hhbmdlZCBidXQgbm90IGl0cyB0ZXh0LgorCisg
ICAgICAgICogZXdrL2V3a19mcmFtZS5jcHA6CisgICAgICAgIChld2tfZnJhbWVfdGl0bGVfc2V0
KToKKwogMjAxMi0wNi0xNCAgUnl1YW4gQ2hvaSAgPHJ5dWFuLmNob2lAc2Ftc3VuZy5jb20+CiAK
ICAgICAgICAgW0VGTF0gTW92ZSBjdXJzb3IgcmVsYXRlZCBjb2RlIGZyb20gV2lkZ2V0RWZsIHRv
IGV3a192aWV3IGFuZCBFZmxTY3JlZW5VdGlsaXRpZXMuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L2VmbC9ld2svZXdrX2ZyYW1lLmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfZnJh
bWUuY3BwCmluZGV4IGZkMWZmZDIyZThmNWRiNTJhZDhkNzk3NmU0MDMwOWNmYTFhMDU3ZjUuLjZi
YTk0MWQzNTZmNWIzMzdiNTRkMjgzMWU5YzUzNDZhMmU1MWI2M2YgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvZWZsL2V3ay9ld2tfZnJhbWUuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3
ay9ld2tfZnJhbWUuY3BwCkBAIC0xNjE2LDkgKzE2MTYsOSBAQCB2b2lkIGV3a19mcmFtZV9jb250
ZW50c19zaXplX2NoYW5nZWQoRXZhc19PYmplY3QqIGV3a0ZyYW1lLCBFdmFzX0Nvb3JkIHdpZHRo
LCBFdgogICovCiB2b2lkIGV3a19mcmFtZV90aXRsZV9zZXQoRXZhc19PYmplY3QqIGV3a0ZyYW1l
LCBjb25zdCBFd2tfVGV4dF9XaXRoX0RpcmVjdGlvbiogdGl0bGUpCiB7Ci0gICAgREJHKCJld2tG
cmFtZT0lcCwgdGl0bGU9JXMiLCBld2tGcmFtZSwgdGl0bGUtPnN0cmluZyA/IHRpdGxlLT5zdHJp
bmcgOiAiKG51bGwpIik7CisgICAgREJHKCJld2tGcmFtZT0lcCwgdGl0bGU9JXMsIGRpcmVjdGlv
bj0lcyIsIGV3a0ZyYW1lLCB0aXRsZS0+c3RyaW5nID8gdGl0bGUtPnN0cmluZyA6ICIobnVsbCki
LCB0aXRsZS0+ZGlyZWN0aW9uID09IEVXS19URVhUX0RJUkVDVElPTl9MRUZUX1RPX1JJR0hUID8g
Imx0ciIgOiAicnRsIik7CiAgICAgRVdLX0ZSQU1FX1NEX0dFVF9PUl9SRVRVUk4oZXdrRnJhbWUs
IHNtYXJ0RGF0YSk7Ci0gICAgaWYgKCFlaW5hX3N0cmluZ3NoYXJlX3JlcGxhY2UoJnNtYXJ0RGF0
YS0+dGl0bGUuc3RyaW5nLCB0aXRsZS0+c3RyaW5nKSkKKyAgICBpZiAoIWVpbmFfc3RyaW5nc2hh
cmVfcmVwbGFjZSgmc21hcnREYXRhLT50aXRsZS5zdHJpbmcsIHRpdGxlLT5zdHJpbmcpICYmIChz
bWFydERhdGEtPnRpdGxlLmRpcmVjdGlvbiA9PSB0aXRsZS0+ZGlyZWN0aW9uKSkKICAgICAgICAg
cmV0dXJuOwogICAgIHNtYXJ0RGF0YS0+dGl0bGUuZGlyZWN0aW9uID0gdGl0bGUtPmRpcmVjdGlv
bjsKICAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19jYWxsKGV3a0ZyYW1lLCAidGl0bGUs
Y2hhbmdlZCIsICh2b2lkKil0aXRsZSk7CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cgYi9U
b29scy9DaGFuZ2VMb2cKaW5kZXggOGNiNTJmYWQ4MDMwMjM1ZWUyNTI0NzNjMzdiMTI0ZDMxMmY2
NWVkNS4uZTU5ZmNhMDYxY2E4ZjI4MGY1ZjcwNzRmNWQ2NjRlMzE0MjM3MjU4MiAxMDA2NDQKLS0t
IGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBA
CisyMDEyLTA2LTE1ICBDaHJpc3RvcGhlIER1bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5j
b20+CisKKyAgICAgICAgW0VGTF0gRUZMJ3MgTGF5b3V0VGVzdENvbnRyb2xsZXIgZG9lcyBub3Qg
c3VwcG9ydCB0aXRsZVRleHREaXJlY3Rpb24KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5v
cmcvc2hvd19idWcuY2dpP2lkPTg2NDc1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgSGFqaW1lIE1v
cml0YS4KKworICAgICAgICBBZGQgdGl0bGVUZXh0RGlyZWN0aW9uIGdldHRlciBhbmQgc2V0dGVy
IHRvIExheW91dFRlc3RDb250cm9sbGVyIGFuZAorICAgICAgICBleHBvc2UgaXRzIHZhbHVlIHRv
IEphdmFTY3JpcHQuCisgICAgICAgIFVwZGF0ZSB0aGUgdGl0bGVUZXh0RGlyZWN0aW9uIHZhbHVl
IGZyb20gRUZMJ3MgInRpdGxlLGNoYW5nZWQiCisgICAgICAgIGNhbGxiYWNrIGluIER1bXBSZW5k
ZXJUcmVlLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIu
Y3BwOgorICAgICAgICAoTGF5b3V0VGVzdENvbnRyb2xsZXI6OkxheW91dFRlc3RDb250cm9sbGVy
KToKKyAgICAgICAgKGdldFRpdGxlVGV4dERpcmVjdGlvbkNhbGxiYWNrKToKKyAgICAgICAgKExh
eW91dFRlc3RDb250cm9sbGVyOjpzdGF0aWNWYWx1ZXMpOgorICAgICAgICAqIER1bXBSZW5kZXJU
cmVlL0xheW91dFRlc3RDb250cm9sbGVyLmg6CisgICAgICAgIChMYXlvdXRUZXN0Q29udHJvbGxl
cjo6dGl0bGVUZXh0RGlyZWN0aW9uKToKKyAgICAgICAgKExheW91dFRlc3RDb250cm9sbGVyOjpz
ZXRUaXRsZVRleHREaXJlY3Rpb24pOgorICAgICAgICAoTGF5b3V0VGVzdENvbnRyb2xsZXIpOgor
ICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVyVHJlZUNocm9tZS5jcHA6Cisg
ICAgICAgIChEdW1wUmVuZGVyVHJlZUNocm9tZTo6b25GcmFtZVRpdGxlQ2hhbmdlZCk6CisKIDIw
MTItMDYtMTQgIFhpYW56aHUgV2FuZyAgPHdhbmd4aWFuemh1QGNocm9taXVtLm9yZz4KIAogICAg
ICAgICBbQ2hyb21pdW0tQW5kcm9pZF0gSW5pdGlhbGl6ZSBmb250IHJlbmRlcmluZyBpbiBEdW1w
UmVuZGVyVHJlZQpkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENv
bnRyb2xsZXIuY3BwIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5b3V0VGVzdENvbnRyb2xsZXIu
Y3BwCmluZGV4IDZlZmI0NTYzOTAwNTRjOWJkNjQzYTQ0OWQwZDQ3MTMyZjQzMWE0NzkuLmNkMDFk
MWMzYjBmOTBjYTdmMzEyZDA3NWQzYmZkNGJjNzU0ZWY4M2IgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0R1
bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmNwcAorKysgYi9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5jcHAKQEAgLTk2LDYgKzk2LDcgQEAgTGF5b3V0
VGVzdENvbnRyb2xsZXI6OkxheW91dFRlc3RDb250cm9sbGVyKGNvbnN0IHN0ZDo6c3RyaW5nJiB0
ZXN0UGF0aE9yVVJMLCBjb24KICAgICAsIG1fY3VzdG9tRnVsbFNjcmVlbkJlaGF2aW9yKGZhbHNl
KSAKICAgICAsIG1fdGVzdFBhdGhPclVSTCh0ZXN0UGF0aE9yVVJMKQogICAgICwgbV9leHBlY3Rl
ZFBpeGVsSGFzaChleHBlY3RlZFBpeGVsSGFzaCkKKyAgICAsIG1fdGl0bGVUZXh0RGlyZWN0aW9u
KCJsdHIiKQogewogfQogCkBAIC0yMTU4LDYgKzIxNTksMTMgQEAgc3RhdGljIEpTVmFsdWVSZWYg
Z2V0UGxhdGZvcm1OYW1lQ2FsbGJhY2soSlNDb250ZXh0UmVmIGNvbnRleHQsIEpTT2JqZWN0UmVm
IHRoaXMKIH0KICNlbmRpZgogCitzdGF0aWMgSlNWYWx1ZVJlZiBnZXRUaXRsZVRleHREaXJlY3Rp
b25DYWxsYmFjayhKU0NvbnRleHRSZWYgY29udGV4dCwgSlNPYmplY3RSZWYgdGhpc09iamVjdCwg
SlNTdHJpbmdSZWYgcHJvcGVydHlOYW1lLCBKU1ZhbHVlUmVmKiBleGNlcHRpb24pCit7CisgICAg
TGF5b3V0VGVzdENvbnRyb2xsZXIqIGNvbnRyb2xsZXIgPSBzdGF0aWNfY2FzdDxMYXlvdXRUZXN0
Q29udHJvbGxlcio+KEpTT2JqZWN0R2V0UHJpdmF0ZSh0aGlzT2JqZWN0KSk7CisgICAgSlNSZXRh
aW5QdHI8SlNTdHJpbmdSZWY+IHRpdGxlRGlyZWN0aW9uKEFkb3B0LCBKU1N0cmluZ0NyZWF0ZVdp
dGhVVEY4Q1N0cmluZyhjb250cm9sbGVyLT50aXRsZVRleHREaXJlY3Rpb24oKS5jX3N0cigpKSk7
CisgICAgcmV0dXJuIEpTVmFsdWVNYWtlU3RyaW5nKGNvbnRleHQsIHRpdGxlRGlyZWN0aW9uLmdl
dCgpKTsKK30KKwogc3RhdGljIGJvb2wgc2V0R2xvYmFsRmxhZ0NhbGxiYWNrKEpTQ29udGV4dFJl
ZiBjb250ZXh0LCBKU09iamVjdFJlZiB0aGlzT2JqZWN0LCBKU1N0cmluZ1JlZiBwcm9wZXJ0eU5h
bWUsIEpTVmFsdWVSZWYgdmFsdWUsIEpTVmFsdWVSZWYqIGV4Y2VwdGlvbikKIHsKICAgICBMYXlv
dXRUZXN0Q29udHJvbGxlciogY29udHJvbGxlciA9IHN0YXRpY19jYXN0PExheW91dFRlc3RDb250
cm9sbGVyKj4oSlNPYmplY3RHZXRQcml2YXRlKHRoaXNPYmplY3QpKTsKQEAgLTIyNjEsNiArMjI2
OSw3IEBAIEpTU3RhdGljVmFsdWUqIExheW91dFRlc3RDb250cm9sbGVyOjpzdGF0aWNWYWx1ZXMo
KQogI2lmIFBMQVRGT1JNKE1BQykgfHwgUExBVEZPUk0oR1RLKSB8fCBQTEFURk9STShXSU4pCiAg
ICAgICAgIHsgInBsYXRmb3JtTmFtZSIsIGdldFBsYXRmb3JtTmFtZUNhbGxiYWNrLCAwLCBrSlNQ
cm9wZXJ0eUF0dHJpYnV0ZVJlYWRPbmx5IHwga0pTUHJvcGVydHlBdHRyaWJ1dGVEb250RGVsZXRl
IH0sCiAjZW5kaWYKKyAgICAgICAgeyAidGl0bGVUZXh0RGlyZWN0aW9uIiwgZ2V0VGl0bGVUZXh0
RGlyZWN0aW9uQ2FsbGJhY2ssIDAsIGtKU1Byb3BlcnR5QXR0cmlidXRlUmVhZE9ubHkgfCBrSlNQ
cm9wZXJ0eUF0dHJpYnV0ZURvbnREZWxldGUgfSwKICAgICAgICAgeyAwLCAwLCAwLCAwIH0KICAg
ICB9OwogICAgIHJldHVybiBzdGF0aWNWYWx1ZXM7CmRpZmYgLS1naXQgYS9Ub29scy9EdW1wUmVu
ZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5oIGIvVG9vbHMvRHVtcFJlbmRlclRyZWUvTGF5
b3V0VGVzdENvbnRyb2xsZXIuaAppbmRleCA4MjMzNjE3ZDFhYWYxZmQ2ZmFmODM0YjAyMGMxNGQ5
N2UxMTczNjM3Li41NGNhOTI3OGEyZDE5Nzc0ZDQ1MWYzMmFkNTE2ZDAzNTRiOWUyMmRlIDEwMDY0
NAotLS0gYS9Ub29scy9EdW1wUmVuZGVyVHJlZS9MYXlvdXRUZXN0Q29udHJvbGxlci5oCisrKyBi
L1Rvb2xzL0R1bXBSZW5kZXJUcmVlL0xheW91dFRlc3RDb250cm9sbGVyLmgKQEAgLTM1OSw2ICsz
NTksOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXRNaW5pbXVtVGltZXJJbnRlcnZhbChkb3VibGUp
OwogCiAgICAgdm9pZCBzZXRUZXh0RGlyZWN0aW9uKEpTU3RyaW5nUmVmKTsKKyAgICBjb25zdCBz
dGQ6OnN0cmluZyYgdGl0bGVUZXh0RGlyZWN0aW9uKCkgY29uc3QgeyByZXR1cm4gbV90aXRsZVRl
eHREaXJlY3Rpb247IH0KKyAgICB2b2lkIHNldFRpdGxlVGV4dERpcmVjdGlvbihjb25zdCBzdGQ6
OnN0cmluZyYgZGlyZWN0aW9uKSB7IG1fdGl0bGVUZXh0RGlyZWN0aW9uID0gZGlyZWN0aW9uOyB9
CiAKICAgICAvLyBDdXN0b20gZnVsbCBzY3JlZW4gYmVoYXZpb3IuCiAgICAgdm9pZCBzZXRIYXND
dXN0b21GdWxsU2NyZWVuQmVoYXZpb3IoYm9vbCB2YWx1ZSkgeyBtX2N1c3RvbUZ1bGxTY3JlZW5C
ZWhhdmlvciA9IHZhbHVlOyB9CkBAIC00MjMsNiArNDI1LDcgQEAgcHJpdmF0ZToKICAgICBzdGQ6
OnN0cmluZyBtX2F1dGhlbnRpY2F0aW9uUGFzc3dvcmQ7IAogICAgIHN0ZDo6c3RyaW5nIG1fdGVz
dFBhdGhPclVSTDsKICAgICBzdGQ6OnN0cmluZyBtX2V4cGVjdGVkUGl4ZWxIYXNoOyAgICAvLyBl
bXB0eSBzdHJpbmcgaWYgbm8gaGFzaAorICAgIHN0ZDo6c3RyaW5nIG1fdGl0bGVUZXh0RGlyZWN0
aW9uOwogCiAgICAgc3RkOjpzZXQ8c3RkOjpzdHJpbmc+IG1fd2lsbFNlbmRSZXF1ZXN0Q2xlYXJI
ZWFkZXJzOwogICAgIApkaWZmIC0tZ2l0IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBS
ZW5kZXJUcmVlQ2hyb21lLmNwcCBiL1Rvb2xzL0R1bXBSZW5kZXJUcmVlL2VmbC9EdW1wUmVuZGVy
VHJlZUNocm9tZS5jcHAKaW5kZXggOThiY2FlMmJjMGViMDVjOTM1ZmQxZGVjYmM2MTc1NWIxNDJj
NmZmNi4uM2Y1Y2NkM2ViNWFiNjI3N2VjMjBlMjhiNzM0MTM5MzVlOTYyMGI4OCAxMDA2NDQKLS0t
IGEvVG9vbHMvRHVtcFJlbmRlclRyZWUvZWZsL0R1bXBSZW5kZXJUcmVlQ2hyb21lLmNwcAorKysg
Yi9Ub29scy9EdW1wUmVuZGVyVHJlZS9lZmwvRHVtcFJlbmRlclRyZWVDaHJvbWUuY3BwCkBAIC00
NjksNiArNDY5LDggQEAgdm9pZCBEdW1wUmVuZGVyVHJlZUNocm9tZTo6b25GcmFtZVRpdGxlQ2hh
bmdlZCh2b2lkKiwgRXZhc19PYmplY3QqIGZyYW1lLCB2b2lkKgogICAgIGlmICghZG9uZSAmJiBn
TGF5b3V0VGVzdENvbnRyb2xsZXItPmR1bXBIaXN0b3J5RGVsZWdhdGVDYWxsYmFja3MoKSkKICAg
ICAgICAgcHJpbnRmKCJXZWJWaWV3IHVwZGF0ZWQgdGhlIHRpdGxlIGZvciBoaXN0b3J5IFVSTCBc
IiVzXCIgdG8gXCIlc1wiLlxuIiwgZXdrX2ZyYW1lX3VyaV9nZXQoZnJhbWUpCiAgICAgICAgICAg
ICAgICAsICh0aXRsZVRleHQgJiYgdGl0bGVUZXh0LT5zdHJpbmcpID8gdGl0bGVUZXh0LT5zdHJp
bmcgOiAiIik7CisKKyAgICBnTGF5b3V0VGVzdENvbnRyb2xsZXItPnNldFRpdGxlVGV4dERpcmVj
dGlvbih0aXRsZVRleHQtPmRpcmVjdGlvbiA9PSBFV0tfVEVYVF9ESVJFQ1RJT05fTEVGVF9UT19S
SUdIVCA/ICJsdHIiIDogInJ0bCIpOwogfQogCiB2b2lkIER1bXBSZW5kZXJUcmVlQ2hyb21lOjpv
bkRvY3VtZW50TG9hZEZpbmlzaGVkKHZvaWQqLCBFdmFzX09iamVjdCosIHZvaWQqIGV2ZW50SW5m
bykKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5n
ZUxvZwppbmRleCAwMzJhNGYxMjk4NjVmOTZlMWY5YjU5M2UxMWIzZDcwNTY3MDIyNGI3Li5kYjI0
ZjkwOGJlODcwODg0ZjgxN2E0MjlmNzAzZGEyZDY2NmJlOGYyIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUg
QEAKKzIwMTItMDYtMTUgIENocmlzdG9waGUgRHVtZXogIDxjaHJpc3RvcGhlLmR1bWV6QGludGVs
LmNvbT4KKworICAgICAgICBbRUZMXSBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlciBkb2VzIG5v
dCBzdXBwb3J0IHRpdGxlVGV4dERpcmVjdGlvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0
Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODY0NzUKKworICAgICAgICBSZXZpZXdlZCBieSBIYWppbWUg
TW9yaXRhLgorCisgICAgICAgIFVuc2tpcCB0aXRsZS1kaXJlY3Rpb25hbGl0eSB0ZXN0cyBub3cg
dGhhdCBFRkwncyBMYXlvdXRUZXN0Q29udHJvbGxlcgorICAgICAgICBzdXBwb3J0cyB0aXRsZVRl
eHREaXJlY3Rpb24uCisKKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9uczoK
KwogMjAxMi0wNi0xNSAgTU9SSVRBIEhhamltZSAgPG1vcnJpdGFAZ29vZ2xlLmNvbT4KIAogICAg
ICAgICBVbnJldmlld2VkIHR5cG8gZml4IGZvciByMTIwNDA1LgpkaWZmIC0tZ2l0IGEvTGF5b3V0
VGVzdHMvcGxhdGZvcm0vZWZsL1Rlc3RFeHBlY3RhdGlvbnMgYi9MYXlvdXRUZXN0cy9wbGF0Zm9y
bS9lZmwvVGVzdEV4cGVjdGF0aW9ucwppbmRleCAzMGFkNWQyNWJkYmZjN2EwY2Q2ODBiNmQ5Yzky
NWUzYTk4MDU3MDljLi4zNDk5Mjk5YmYyZTUxZmE0ZjJlZWQ0ZDI4MTZhZTIxNjhjZDI3ZGIwIDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucworKysg
Yi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9lZmwvVGVzdEV4cGVjdGF0aW9ucwpAQCAtNDYyLDEwICs0
NjIsNiBAQCBCVUdXSzg0Nzc2IDogaWV0ZXN0Y2VudGVyL2NzczMvbXVsdGljb2x1bW4vY29sdW1u
LXdpZHRoLWFwcGxpZXMtdG8tMDE0Lmh0bSA9IElNQQogQlVHV0s4NDc3NyA6IGlldGVzdGNlbnRl
ci9jc3MzL211bHRpY29sdW1uL2NvbHVtbi13aWR0aC1hcHBsaWVzLXRvLTAxNS5odG0gPSBJTUFH
RQogQlVHV0s4NDc3OCA6IGlldGVzdGNlbnRlci9jc3MzL211bHRpY29sdW1uL2NvbHVtbi13aWR0
aC1uZWdhdGl2ZS0wMDEuaHRtID0gSU1BR0UKIAotLy8gRXhwb3NlIHRpdGxlIGRpcmVjdGlvbiBp
biBXZWJLaXQgQVBJCi1CVUdXSzU4ODQ1IDogZmFzdC9kb20vdGl0bGUtZGlyZWN0aW9uYWxpdHku
aHRtbCA9IFRFWFQKLUJVR1dLNTg4NDUgOiBmYXN0L2RvbS90aXRsZS1kaXJlY3Rpb25hbGl0eS1y
ZW1vdmVDaGlsZC5odG1sID0gVEVYVAotCiAvLyBUZXN0cyB0aGF0IHNvbWV0aW1lcyBmYWlsIG9u
IHRoZSBib3QgKGZvciBHVEsgYW5kIENocm9taXVtIHBvcnRzIGFzIHdlbGwpCiBCVUdXSzc3NjMx
IDogZmFzdC9tdWx0aWNvbC9zcGFuL3NwYW4tYXMtaW1tZWRpYXRlLWNoaWxkLXByb3BlcnR5LXJl
bW92YWwuaHRtbCA9IFRFWFQgUEFTUwogQlVHV0s3NzYzMSA6IGZhc3QvbXVsdGljb2wvc3Bhbi9z
cGFuLWFzLWltbWVkaWF0ZS1jb2x1bW5zLWNoaWxkLXJlbW92YWwuaHRtbCA9IFRFWFQgUEFTUwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>