<?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>103094</bug_id>
          
          <creation_ts>2012-11-22 16:28:22 -0800</creation_ts>
          <short_desc>[EFL][WK2] Add contents,size,changed signal to the ewk_view API</short_desc>
          <delta_ts>2012-12-03 07:51:53 -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>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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ryuan Choi">ryuan.choi</reporter>
          <assigned_to name="Ryuan Choi">ryuan.choi</assigned_to>
          <cc>cdumez</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jinwoo7.song</cc>
    
    <cc>jturcotte</cc>
    
    <cc>kenneth</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>774130</commentid>
    <comment_count>0</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-22 16:28:22 -0800</bug_when>
    <thetext>Added signal to let applications know contents size.
Applications can use this signal to give some additional behavior such as minimap, external scroll.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774146</commentid>
    <comment_count>1</comment_count>
      <attachid>175719</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-22 17:38:24 -0800</bug_when>
    <thetext>Created attachment 175719
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774150</commentid>
    <comment_count>2</comment_count>
    <who name="Jinwoo Song">jinwoo7.song</who>
    <bug_when>2012-11-22 17:57:46 -0800</bug_when>
    <thetext>Please add the callback description in ewk_view.h</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774152</commentid>
    <comment_count>3</comment_count>
      <attachid>175721</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-22 18:08:52 -0800</bug_when>
    <thetext>Created attachment 175721
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774331</commentid>
    <comment_count>4</comment_count>
      <attachid>175721</attachid>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2012-11-23 02:34:44 -0800</bug_when>
    <thetext>Comment on attachment 175721
Patch

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

&gt; Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp:-728
&gt; -    m_pageClient-&gt;didChangeContentsSize(size);

how did you come to removing it?

&gt; Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp:727
&gt; +    int contentsSize[2];

Think it&apos;s really better to have a size structure

&gt; Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp:456
&gt; +#if PLATFORM(QT) || PLATFORM(EFL)

why not use #if USE(TILED_BACKING_STORE) here as well?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774335</commentid>
    <comment_count>5</comment_count>
      <attachid>175721</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-11-23 02:42:17 -0800</bug_when>
    <thetext>Comment on attachment 175721
Patch

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

&gt;&gt; Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp:-728
&gt;&gt; -    m_pageClient-&gt;didChangeContentsSize(size);
&gt; 
&gt; how did you come to removing it?

Odd indeed.

&gt;&gt; Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp:727
&gt;&gt; +    int contentsSize[2];
&gt; 
&gt; Think it&apos;s really better to have a size structure

I definitely agree.

&gt; Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_view.cpp:893
&gt; +TEST_F(EWK2UnitTestBase, ewk_view_contnets_size_changed)

Typo &quot;contnets&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775044</commentid>
    <comment_count>6</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-25 16:27:58 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 175721 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=175721&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp:-728
&gt; &gt; -    m_pageClient-&gt;didChangeContentsSize(size);
&gt; 
&gt; how did you come to removing it?
&gt; 

After previous refactoring, informContentsSizeChange was only called by PageClientDefaultImpl and PageClientLegacyImpl when TILED_BACKING_STORE is disabled.

So, I believe that this was dead code.

&gt; &gt; Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp:727
&gt; &gt; +    int contentsSize[2];
&gt; 
&gt; Think it&apos;s really better to have a size structure
&gt; 
I will change to Evas_Coord_Size.

&gt; &gt; Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp:456
&gt; &gt; +#if PLATFORM(QT) || PLATFORM(EFL)
&gt; 
&gt; why not use #if USE(TILED_BACKING_STORE) here as well?

I want to send DidChangeContentsSize although TILED_BACKINGSTORE was disabled.

(In reply to comment #5)
&gt; (From update of attachment 175721 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=175721&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp:-728
&gt; &gt;&gt; -    m_pageClient-&gt;didChangeContentsSize(size);
&gt; &gt; 
&gt; &gt; how did you come to removing it?
&gt; 
&gt; Odd indeed.
&gt; 
&gt; &gt;&gt; Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp:727
&gt; &gt;&gt; +    int contentsSize[2];
&gt; &gt; 
&gt; &gt; Think it&apos;s really better to have a size structure
&gt; 
&gt; I definitely agree.
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_view.cpp:893
&gt; &gt; +TEST_F(EWK2UnitTestBase, ewk_view_contnets_size_changed)
&gt; 
&gt; Typo &quot;contnets&quot;

Oops, I will fix it.

Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775080</commentid>
    <comment_count>7</comment_count>
      <attachid>175906</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-25 18:06:18 -0800</bug_when>
    <thetext>Created attachment 175906
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775081</commentid>
    <comment_count>8</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-25 18:14:54 -0800</bug_when>
    <thetext>(In reply to comment #7)
&gt; Created an attachment (id=175906) [details]
&gt; Patch

Applied above comments.

Exceptionally, I created Ewk_Size temporarily instead of Evas_Coord_Size because Evas_Coord_Size is introduced after EFL 1.7.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775085</commentid>
    <comment_count>9</comment_count>
      <attachid>175906</attachid>
    <who name="Jinwoo Song">jinwoo7.song</who>
    <bug_when>2012-11-25 18:26:59 -0800</bug_when>
    <thetext>Comment on attachment 175906
Patch

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

&gt; Source/WebKit2/UIProcess/API/efl/ewk_view.h:284
&gt; +    Evas_Coord w; /**&lt; x co-ordinate */

comment looks wrong. Not x co-ordinate, but width value.

&gt; Source/WebKit2/UIProcess/API/efl/ewk_view.h:285
&gt; +    Evas_Coord h; /**&lt; y co-ordinate */

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775090</commentid>
    <comment_count>10</comment_count>
      <attachid>175909</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-25 18:38:05 -0800</bug_when>
    <thetext>Created attachment 175909
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779039</commentid>
    <comment_count>11</comment_count>
      <attachid>176742</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-29 08:49:00 -0800</bug_when>
    <thetext>Created attachment 176742
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779041</commentid>
    <comment_count>12</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-29 08:50:19 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; Created an attachment (id=176742) [details]
&gt; Patch

rebase because of email.

Christophe, Mikhail,

Could you give me an opinion?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779057</commentid>
    <comment_count>13</comment_count>
      <attachid>176742</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2012-11-29 09:00:18 -0800</bug_when>
    <thetext>Comment on attachment 176742
Patch

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

&gt; Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_view.cpp:903
&gt; +    while (sizeChanged)

Am I misreading? Shouldn&apos;t is be &quot;while (!sizeChanged)&quot; ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779066</commentid>
    <comment_count>14</comment_count>
      <attachid>176742</attachid>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2012-11-29 09:12:34 -0800</bug_when>
    <thetext>Comment on attachment 176742
Patch

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

&gt; Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp:737
&gt;  void EwkViewImpl::informContentsSizeChange(const IntSize&amp; size)

I don&apos;t think EwkView needs this method at all.

&gt; Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp:740
&gt; +    Ewk_Size contentsSize;

Ewk_Size contentsSize { size.width(), size.height() }, just more compact</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779745</commentid>
    <comment_count>15</comment_count>
      <attachid>176742</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-11-29 19:24:32 -0800</bug_when>
    <thetext>Comment on attachment 176742
Patch

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

&gt; Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp:448
&gt; +#if USE(TILED_BACKING_STORE)

Are you sure QT port doesn&apos;t need to use this code block when TILED_BACKING_STORE is disabled ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779776</commentid>
    <comment_count>16</comment_count>
      <attachid>176893</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-29 20:19:43 -0800</bug_when>
    <thetext>Created attachment 176893
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779778</commentid>
    <comment_count>17</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-29 20:22:15 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; (From update of attachment 176742 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=176742&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/efl/tests/test_ewk2_view.cpp:903
&gt; &gt; +    while (sizeChanged)
&gt; 
&gt; Am I misreading? Shouldn&apos;t is be &quot;while (!sizeChanged)&quot; ?

Oops. you&apos;re right. fixed.

(In reply to comment #14)
&gt; (From update of attachment 176742 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=176742&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp:737
&gt; &gt;  void EwkViewImpl::informContentsSizeChange(const IntSize&amp; size)
&gt; 
&gt; I don&apos;t think EwkView needs this method at all.
&gt; 
I thought smartcall should be in EwkView.
I removed it.

&gt; &gt; Source/WebKit2/UIProcess/API/efl/EwkViewImpl.cpp:740
&gt; &gt; +    Ewk_Size contentsSize;
&gt; 
&gt; Ewk_Size contentsSize { size.width(), size.height() }, just more compact
Done.


(In reply to comment #15)
&gt; (From update of attachment 176742 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=176742&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp:448
&gt; &gt; +#if USE(TILED_BACKING_STORE)
&gt; 
&gt; Are you sure QT port doesn&apos;t need to use this code block when TILED_BACKING_STORE is disabled ?

I heard like that and if disabled TILED_BACKINGSTORE in qt port, previous code make build break because this code is only available when TILED BACKINGSTORE is enabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779811</commentid>
    <comment_count>18</comment_count>
      <attachid>176893</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-11-29 22:06:28 -0800</bug_when>
    <thetext>Comment on attachment 176893
Patch

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

&gt; Source/WebKit2/ChangeLog:23
&gt; +        Sended DidChangeContentsSize message although TILED_BACKINGSTORE is disabled.

It would be good if you say QT port also be influenced on this patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779817</commentid>
    <comment_count>19</comment_count>
      <attachid>176901</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-29 22:15:03 -0800</bug_when>
    <thetext>Created attachment 176901
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779818</commentid>
    <comment_count>20</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-11-29 22:16:34 -0800</bug_when>
    <thetext>(In reply to comment #18)
&gt; (From update of attachment 176893 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=176893&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/ChangeLog:23
&gt; &gt; +        Sended DidChangeContentsSize message although TILED_BACKINGSTORE is disabled.
&gt; 
&gt; It would be good if you say QT port also be influenced on this patch.

As discussed, I changed patch to match with comment exactly.

Thank you.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779852</commentid>
    <comment_count>21</comment_count>
      <attachid>176893</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-11-29 23:42:12 -0800</bug_when>
    <thetext>Comment on attachment 176893
Patch

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

&gt; Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp:448
&gt; +#if USE(TILED_BACKING_STORE)

Kenneth, I wonder if QT port can accept this change. Could you check this ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779921</commentid>
    <comment_count>22</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-11-30 01:08:43 -0800</bug_when>
    <thetext>
&gt; Kenneth, I wonder if QT port can accept this change. Could you check this ?

Adding Jocelyn</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779922</commentid>
    <comment_count>23</comment_count>
      <attachid>176901</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-11-30 01:12:13 -0800</bug_when>
    <thetext>Comment on attachment 176901
Patch

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

&gt; Source/WebKit2/ChangeLog:11
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        This patch emits signal to let applications know contents size.
&gt; +
&gt; +        * UIProcess/API/efl/EwkViewCallbacks.h: Added contents,size,changed signal.
&gt; +        * UIProcess/API/efl/EwkViewImpl.cpp: Removed dead code.

You don&apos;t explain why apps need to know about this

&gt; Source/WebKit2/UIProcess/API/efl/ewk_view.h:286
&gt; +
&gt; +/**
&gt; + * @brief Structure representing size.
&gt; + * @info This structure will be deprecated after EFL 1.8
&gt; + */
&gt; +struct Ewk_Size {
&gt; +    Evas_Coord w; /**&lt; width */
&gt; +    Evas_Coord h; /**&lt; height */
&gt; +};

So now the question is. Contents size? Is that in css units? device units? Documentation should mention this. Did you test if deviceScaleFactor != 1, say == 2 ?

&gt; Source/WebKit2/UIProcess/efl/PageClientDefaultImpl.cpp:102
&gt; +    // FIXME: It should be changed to Evas_Coord_Size after EFL 1.8
&gt; +    Ewk_Size contentsSize = { size.width(), size.height() };
&gt; +    m_viewImpl-&gt;smartCallback&lt;ContentsSizeChanged&gt;().call(&amp;contentsSize);

bug link? Also, why is that more clear? Evas_Coord_Size makes it think this is in UI units. I think even a Ewk_CSS_Size or similar would be more clear, ofcourse such a thing could be a typedef of Evas_Coord_Size if that makes any sense</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>779950</commentid>
    <comment_count>24</comment_count>
      <attachid>176893</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-11-30 01:59:41 -0800</bug_when>
    <thetext>Comment on attachment 176893
Patch

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

&gt;&gt; Source/WebKit2/WebProcess/WebCoreSupport/WebChromeClient.cpp:448
&gt;&gt; +#if USE(TILED_BACKING_STORE)
&gt; 
&gt; Kenneth, I wonder if QT port can accept this change. Could you check this ?

It&apos;s fine to me, fixed layout code also depend on TILED_BACKING_STORE for us.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781401</commentid>
    <comment_count>25</comment_count>
      <attachid>177244</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-12-03 06:38:15 -0800</bug_when>
    <thetext>Created attachment 177244
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781402</commentid>
    <comment_count>26</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-12-03 06:41:28 -0800</bug_when>
    <thetext>(In reply to comment #23)
&gt; (From update of attachment 176901 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=176901&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/ChangeLog:11
&gt; &gt; +
&gt; &gt; +        Reviewed by NOBODY (OOPS!).
&gt; &gt; +
&gt; &gt; +        This patch emits signal to let applications know contents size.
&gt; &gt; +
&gt; &gt; +        * UIProcess/API/efl/EwkViewCallbacks.h: Added contents,size,changed signal.
&gt; &gt; +        * UIProcess/API/efl/EwkViewImpl.cpp: Removed dead code.
&gt; 
&gt; You don&apos;t explain why apps need to know about this
&gt; 
I added well-known simple use case.

&gt; &gt; Source/WebKit2/UIProcess/API/efl/ewk_view.h:286
&gt; &gt; +
&gt; &gt; +/**
&gt; &gt; + * @brief Structure representing size.
&gt; &gt; + * @info This structure will be deprecated after EFL 1.8
&gt; &gt; + */
&gt; &gt; +struct Ewk_Size {
&gt; &gt; +    Evas_Coord w; /**&lt; width */
&gt; &gt; +    Evas_Coord h; /**&lt; height */
&gt; &gt; +};
&gt; 
&gt; So now the question is. Contents size? Is that in css units? device units? Documentation should mention this. Did you test if deviceScaleFactor != 1, say == 2 ?
&gt; 
I updated test cases.
In addition, I changed Ewk_Size to Ewk_CSS_Size
It looks better like you mentioned.

&gt; &gt; Source/WebKit2/UIProcess/efl/PageClientDefaultImpl.cpp:102
&gt; &gt; +    // FIXME: It should be changed to Evas_Coord_Size after EFL 1.8
&gt; &gt; +    Ewk_Size contentsSize = { size.width(), size.height() };
&gt; &gt; +    m_viewImpl-&gt;smartCallback&lt;ContentsSizeChanged&gt;().call(&amp;contentsSize);
&gt; 
&gt; bug link? Also, why is that more clear? Evas_Coord_Size makes it think this is in UI units. I think even a Ewk_CSS_Size or similar would be more clear, ofcourse such a thing could be a typedef of Evas_Coord_Size if that makes any sense

I thought that it&apos;s better to use primilary types.
But, as you mentioned, Ewk_CSS_Size can be typedef when it is available.

So I removed FIXME.

Thank you.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781405</commentid>
    <comment_count>27</comment_count>
      <attachid>177244</attachid>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2012-12-03 06:42:38 -0800</bug_when>
    <thetext>Comment on attachment 177244
Patch

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

&gt; Source/WebKit2/UIProcess/efl/PageClientDefaultImpl.cpp:100
&gt; +    Ewk_CSS_Size contentsSize = { size.width(), size.height() };

how about adding one more template specialization like CallBack &lt;callbackType, Ewk_CSS_Size*&gt;
it could contain &apos;call(const WebCore::IntSize&amp; size)&apos; and do the conversion inside</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781436</commentid>
    <comment_count>28</comment_count>
      <attachid>177253</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-12-03 07:40:00 -0800</bug_when>
    <thetext>Created attachment 177253
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781438</commentid>
    <comment_count>29</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-12-03 07:40:43 -0800</bug_when>
    <thetext>(In reply to comment #27)
&gt; (From update of attachment 177244 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=177244&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/efl/PageClientDefaultImpl.cpp:100
&gt; &gt; +    Ewk_CSS_Size contentsSize = { size.width(), size.height() };
&gt; 
&gt; how about adding one more template specialization like CallBack &lt;callbackType, Ewk_CSS_Size*&gt;
&gt; it could contain &apos;call(const WebCore::IntSize&amp; size)&apos; and do the conversion inside

OK. I tried like you mentioned.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781445</commentid>
    <comment_count>30</comment_count>
      <attachid>177253</attachid>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2012-12-03 07:44:44 -0800</bug_when>
    <thetext>Comment on attachment 177253
Patch

LGTM, thanks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781454</commentid>
    <comment_count>31</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-12-03 07:50:55 -0800</bug_when>
    <thetext>Committed r136402: &lt;http://trac.webkit.org/changeset/136402&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>781456</commentid>
    <comment_count>32</comment_count>
      <attachid>177253</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-12-03 07:51:53 -0800</bug_when>
    <thetext>Comment on attachment 177253
Patch

thank you</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175719</attachid>
            <date>2012-11-22 17:38:24 -0800</date>
            <delta_ts>2012-11-22 18:08:44 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103094-20121123103609.patch</filename>
            <type>text/plain</type>
            <size>7410</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1NTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYWZjYTQ2ODhhNzQwOGEx
YjIxYjcwY2FkYWRhMDBiYTQ4MTQyMjM4Yy4uZWRjZDRjMzY5ZDEyODExOTkyZDdlMzAyMmQ3Zjk5
ZTVhNjMzNmI5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTExLTIyICBSeXVh
biBDaG9pICA8cnl1YW4uY2hvaUBnbWFpbC5jb20+CisKKyAgICAgICAgW0VGTF1bV0syXSBBZGQg
Y29udGVudHMsc2l6ZSxjaGFuZ2VkIHNpZ25hbCB0byB0aGUgZXdrX3ZpZXcgQVBJCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMwOTQKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGVtaXRz
IHNpZ25hbCB0byBsZXQgYXBwbGljYXRpb25zIGtub3cgY29udGVudHMgc2l6ZS4KKworICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdDYWxsYmFja3MuaDoKKyAgICAgICAgKEV3a1Zp
ZXdDYWxsYmFja3MpOiBBZGRlZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsLgorICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcDoKKyAgICAgICAgKEV3a1ZpZXdJ
bXBsOjppbmZvcm1Db250ZW50c1NpemVDaGFuZ2UpOgorICAgICAgICBDbGVhbmVkIHVwIGRlYWQg
Y29kZSBhbmQgZW1pdHRlZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsLgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNwcDogQWRkZWQgdGVzdCBj
YXNlLgorICAgICAgICAob25Db250ZW50c1NpemVDaGFuZ2VkKToKKyAgICAgICAgKFRFU1RfRik6
CisgICAgICAgICogVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RGVmYXVsdEltcGwuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50RGVmYXVsdEltcGw6OmRpZENoYW5nZUNvbnRlbnRzU2l6
ZSk6CisgICAgICAgICogVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHA6Cisg
ICAgICAgIChXZWJLaXQ6OlBhZ2VDbGllbnRMZWdhY3lJbXBsOjpkaWRDaGFuZ2VDb250ZW50c1Np
emUpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50
LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFu
Z2VkKToKKyAgICAgICAgU2VuZGVkIERpZENoYW5nZUNvbnRlbnRzU2l6ZSBtZXNzYWdlIGFsdGhv
dWdoIFRJTEVEX0JBQ0tJTkdTVE9SRSBpcyBkaXNhYmxlZC4KKwogMjAxMi0wOS0yNiAgR3VzdGF2
byBOb3JvbmhhIFNpbHZhICA8Z25zQGdub21lLm9yZz4KIAogICAgICAgICBbR1RLXSBTcGxpdCBT
VkcgZnJvbSBXZWJDb3JlIHRvIHdvcmstYXJvdW5kIG1ha2UgbGltaXRhdGlvbgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0NhbGxiYWNrcy5oIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0NhbGxiYWNrcy5oCmluZGV4
IDQxNDBjNzQyYmM4NWQ5MDc5OTBmNWM5NjU1MmE0ZGUzOGRkZGU1ZTUuLjMzOWFmZTA2ZGI3YjVi
ZWE4Y2I4MTlmYjRlOTAzMjIwZTdhNjM0NmIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdDYWxsYmFja3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3Q2FsbGJhY2tzLmgKQEAgLTU3LDYgKzU3LDcgQEAgZW51
bSBDYWxsYmFja1R5cGUgewogICAgIEF1dGhlbnRpY2F0aW9uUmVxdWVzdCwKICAgICBCYWNrRm9y
d2FyZExpc3RDaGFuZ2UsCiAgICAgQ2FuY2VsVmlicmF0aW9uLAorICAgIENvbnRlbnRzU2l6ZUNo
YW5nZWQsCiAgICAgRG93bmxvYWRKb2JDYW5jZWxsZWQsCiAgICAgRG93bmxvYWRKb2JGYWlsZWQs
CiAgICAgRG93bmxvYWRKb2JGaW5pc2hlZCwKQEAgLTE2Niw2ICsxNjcsNyBAQCBzdHJ1Y3QgQ2Fs
bEJhY2tJbmZvPGNhbGxiYWNrVHlwZT4geyAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKIERF
Q0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soQXV0aGVudGljYXRpb25SZXF1ZXN0LCAiYXV0aGVudGlj
YXRpb24scmVxdWVzdCIsIEV3a19BdXRoX1JlcXVlc3QpOwogREVDTEFSRV9FV0tfVklFV19DQUxM
QkFDSyhCYWNrRm9yd2FyZExpc3RDaGFuZ2UsICJiYWNrLGZvcndhcmQsbGlzdCxjaGFuZ2VkIiwg
dm9pZCk7CiBERUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKENhbmNlbFZpYnJhdGlvbiwgImNhbmNl
bCx2aWJyYXRpb24iLCB2b2lkKTsKK0RFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soQ29udGVudHNT
aXplQ2hhbmdlZCwgImNvbnRlbnRzLHNpemUsY2hhbmdlZCIsIEV2YXNfQ29vcmQpOwogREVDTEFS
RV9FV0tfVklFV19DQUxMQkFDSyhEb3dubG9hZEpvYkNhbmNlbGxlZCwgImRvd25sb2FkLGNhbmNl
bGxlZCIsIEV3a19Eb3dubG9hZF9Kb2IpOwogREVDTEFSRV9FV0tfVklFV19DQUxMQkFDSyhEb3du
bG9hZEpvYkZhaWxlZCwgImRvd25sb2FkLGZhaWxlZCIsIEV3a19Eb3dubG9hZF9Kb2JfRXJyb3Ip
OwogREVDTEFSRV9FV0tfVklFV19DQUxMQkFDSyhEb3dubG9hZEpvYkZpbmlzaGVkLCAiZG93bmxv
YWQsZmluaXNoZWQiLCBFd2tfRG93bmxvYWRfSm9iKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcAppbmRleCBlMGM1OTA1NGRiOTBjYTI5NmY1
OTU4ZWZkOGMwMjllOTExMGZkODYzLi43OTYzZjIyNjk2MWU2MjUwN2MxNzQ2YTZlYTg3NGEzMWEw
MDM0NWRmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tW
aWV3SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmll
d0ltcGwuY3BwCkBAIC03MjQsMTEgKzcyNCwxMCBAQCB2b2lkIEV3a1ZpZXdJbXBsOjpkaXNtaXNz
Q29sb3JQaWNrZXIoKQogCiB2b2lkIEV3a1ZpZXdJbXBsOjppbmZvcm1Db250ZW50c1NpemVDaGFu
Z2UoY29uc3QgSW50U2l6ZSYgc2l6ZSkKIHsKLSNpZiBVU0UoQ09PUkRJTkFURURfR1JBUEhJQ1Mp
Ci0gICAgbV9wYWdlQ2xpZW50LT5kaWRDaGFuZ2VDb250ZW50c1NpemUoc2l6ZSk7Ci0jZWxzZQot
ICAgIFVOVVNFRF9QQVJBTShzaXplKTsKLSNlbmRpZgorICAgIEV2YXNfQ29vcmQgY29udGVudHNT
aXplWzJdOworICAgIGNvbnRlbnRzU2l6ZVswXSA9IHNpemUud2lkdGgoKTsKKyAgICBjb250ZW50
c1NpemVbMV0gPSBzaXplLmhlaWdodCgpOworICAgIHNtYXJ0Q2FsbGJhY2s8Q29udGVudHNTaXpl
Q2hhbmdlZD4oKS5jYWxsKGNvbnRlbnRzU2l6ZSk7CiB9CiAKIENPTVBJTEVfQVNTRVJUX01BVENI
SU5HX0VOVU0oRVdLX1RFWFRfRElSRUNUSU9OX1JJR0hUX1RPX0xFRlQsIFJUTCk7CmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC90ZXN0cy90ZXN0X2V3azJfdmll
dy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC90ZXN0cy90ZXN0X2V3azJf
dmlldy5jcHAKaW5kZXggMTQ5MWNjN2Q5YjFhZDk0Nzk1MTMxMzQ1ZTBmNzZiYTIzM2IyMGUyOS4u
MzRhZWJlMGEzYTAxOWEzZjQyN2M5NmFlYmZjMjMxMTM2ZWY3MzYzYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3
LmNwcApAQCAtODgxLDMgKzg4MSwyNiBAQCBURVNUX0YoRVdLMlVuaXRUZXN0QmFzZSwgZXdrX2Nv
bnRleHRfdmlicmF0aW9uX2NsaWVudF9jYWxsYmFja3Nfc2V0KQogICAgIEFTU0VSVF9GQUxTRShk
YXRhLmRpZFJlY2VpdmVDYW5jZWxWaWJyYXRpb24pOwogfQogCitzdGF0aWMgdm9pZCBvbkNvbnRl
bnRzU2l6ZUNoYW5nZWQodm9pZCogdXNlckRhdGEsIEV2YXNfT2JqZWN0Kiwgdm9pZCogZXZlbnRJ
bmZvKQoreworICAgIGJvb2wqIHJlc3VsdCA9IHN0YXRpY19jYXN0PGJvb2wqPih1c2VyRGF0YSk7
CisgICAgaW50KiBzaXplID0gc3RhdGljX2Nhc3Q8aW50Kj4oZXZlbnRJbmZvKTsKKworICAgIGlm
IChzaXplWzBdID09IDIwMDAgJiYgc2l6ZVsxXSA9PSAzMDAwKQorICAgICAgICAqcmVzdWx0ID0g
dHJ1ZTsKK30KKworVEVTVF9GKEVXSzJVbml0VGVzdEJhc2UsIGV3a192aWV3X2NvbnRuZXRzX3Np
emVfY2hhbmdlZCkKK3sKKyAgICBjb25zdCBjaGFyIHRleHRGaW5kSFRNTFtdID0KKyAgICAgICAg
IjwhRE9DVFlQRSBodG1sPiIKKyAgICAgICAgIjxib2R5IHdpZHRoPTIwMDAgaGVpZ2h0PTMwMDA+
IgorICAgICAgICAiPC9ib2R5PiI7CisKKyAgICBib29sIHNpemVDaGFuZ2VkID0gZmFsc2U7Cisg
ICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKHdlYlZpZXcoKSwgImNvbnRlbnRzLHNp
emUsY2hhbmdlZCIsIG9uQ29udGVudHNTaXplQ2hhbmdlZCwgJnNpemVDaGFuZ2VkKTsKKyAgICB3
aGlsZSAoc2l6ZUNoYW5nZWQpCisgICAgICAgIGVjb3JlX21haW5fbG9vcF9pdGVyYXRlKCk7CisK
KyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19kZWwod2ViVmlldygpLCAiY29udGVudHMs
c2l6ZSxjaGFuZ2VkIiwgb25Db250ZW50c1NpemVDaGFuZ2VkKTsKK30KZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudERlZmF1bHRJbXBsLmNwcCBiL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudERlZmF1bHRJbXBsLmNwcAppbmRl
eCBjZWZmNTM0NjhhMWFjMjYyMjNhMDAyNzM5Y2I4MmMxZTFmNTNlZDUzLi5iMTIyMzdhY2ZjZDUx
NDhiMTg1M2NlMTIxYWE1Mjk5YjU2ZWVkMzA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZhdWx0SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RGVmYXVsdEltcGwuY3BwCkBAIC05NCw5ICs5NCw5
IEBAIHZvaWQgUGFnZUNsaWVudERlZmF1bHRJbXBsOjpkaWRDaGFuZ2VDb250ZW50c1NpemUoY29u
c3QgV2ViQ29yZTo6SW50U2l6ZSYgc2l6ZSkKICNpZiBVU0UoVElMRURfQkFDS0lOR19TVE9SRSkK
ICAgICBBU1NFUlQobV9wYWdlVmlld3BvcnRDb250cm9sbGVyKTsKICAgICBtX3BhZ2VWaWV3cG9y
dENvbnRyb2xsZXItPmRpZENoYW5nZUNvbnRlbnRzU2l6ZShzaXplKTsKLSNlbHNlCi0gICAgbV92
aWV3SW1wbC0+aW5mb3JtQ29udGVudHNTaXplQ2hhbmdlKHNpemUpOwogI2VuZGlmCisKKyAgICBt
X3ZpZXdJbXBsLT5pbmZvcm1Db250ZW50c1NpemVDaGFuZ2Uoc2l6ZSk7CiB9CiAKICNpZiBVU0Uo
VElMRURfQkFDS0lOR19TVE9SRSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9lZmwvUGFnZUNsaWVudExlZ2FjeUltcGwuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2VmbC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKaW5kZXggNmYzMDViZGQ2MzA3MDNhMTllZmRh
NjNhNmE1ODMxY2ZjN2ExN2RkZS4uM2I2ZDU2YWI2NGJkNTRjMTZiZTdiYzUzYWM4MDgyOWQ0YWI1
Y2YyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50
TGVnYWN5SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xp
ZW50TGVnYWN5SW1wbC5jcHAKQEAgLTc4LDkgKzc4LDkgQEAgdm9pZCBQYWdlQ2xpZW50TGVnYWN5
SW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNpemUp
CiAgICAgLy8gbV92aWV3SW1wbC0+aW5mb3JtQ29udGVudFNpemVDaGFuZ2VkIHdpbGwgYmUgY2Fs
bGVkIGFzIGEgcmVzdWx0IG9mIHNldENvbnRlbnRzU2l6ZQogICAgIG1fdmlld0ltcGwtPnBhZ2Uo
KS0+ZHJhd2luZ0FyZWEoKS0+bGF5ZXJUcmVlQ29vcmRpbmF0b3JQcm94eSgpLT5zZXRDb250ZW50
c1NpemUoRmxvYXRTaXplKHNpemUud2lkdGgoKSwgc2l6ZS5oZWlnaHQoKSkpOwogICAgIG1fdmll
d0ltcGwtPnVwZGF0ZSgpOwotI2Vsc2UKLSAgICBtX3ZpZXdJbXBsLT5pbmZvcm1Db250ZW50c1Np
emVDaGFuZ2Uoc2l6ZSk7CiAjZW5kaWYKKworICAgIG1fdmlld0ltcGwtPmluZm9ybUNvbnRlbnRz
U2l6ZUNoYW5nZShzaXplKTsKIH0KIAogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJv
bWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IDJhNWRhNWM1OTg2MDczNmE1NTg0YjBmMWM1NDFkZjE2
OGIwYzk3ZDcuLmQ0ZDc3YTVlMDAzMzBlOWRhZDlhODNjMGEzNTUyM2MzYzc3YzQ3NmEgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21l
Q2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0
L1dlYkNocm9tZUNsaWVudC5jcHAKQEAgLTQ0NSwxNSArNDQ1LDE2IEBAIHZvaWQgV2ViQ2hyb21l
Q2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1lKiBmcmFtZSwgY29uc3QgSW50U2l6ZSYg
LypzaXplKi8pCiAgICAgaWYgKGZyYW1lLT5wYWdlKCktPm1haW5GcmFtZSgpICE9IGZyYW1lKQog
ICAgICAgICByZXR1cm47CiAKLSNpZiBQTEFURk9STShRVCkgfHwgKFBMQVRGT1JNKEVGTCkgJiYg
VVNFKFRJTEVEX0JBQ0tJTkdfU1RPUkUpKQorI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQog
ICAgIGlmIChtX3BhZ2UtPnVzZUZpeGVkTGF5b3V0KCkpIHsKICAgICAgICAgLy8gVGhlIGJlbG93
IG1ldGhvZCB1cGRhdGVzIHRoZSBzaXplKCkuCiAgICAgICAgIG1fcGFnZS0+cmVzaXplVG9Db250
ZW50c0lmTmVlZGVkKCk7CiAgICAgICAgIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+bGF5ZXJUcmVl
SG9zdCgpLT5zaXplRGlkQ2hhbmdlKG1fcGFnZS0+c2l6ZSgpKTsKICAgICB9CisjZW5kaWYKIAor
I2lmIFBMQVRGT1JNKFFUKSB8fCBQTEFURk9STShFRkwpCiAgICAgbV9wYWdlLT5zZW5kKE1lc3Nh
Z2VzOjpXZWJQYWdlUHJveHk6OkRpZENoYW5nZUNvbnRlbnRzU2l6ZShtX3BhZ2UtPnNpemUoKSkp
OwotCiAjZW5kaWYKIAogICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gZnJhbWUtPnZpZXcoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175721</attachid>
            <date>2012-11-22 18:08:52 -0800</date>
            <delta_ts>2012-11-25 18:06:08 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103094-20121123110636.patch</filename>
            <type>text/plain</type>
            <size>8435</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1NTQ5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYWZjYTQ2ODhhNzQwOGEx
YjIxYjcwY2FkYWRhMDBiYTQ4MTQyMjM4Yy4uNTE2OTE2NTI3MmM4ZDc1NWQxYjUzNzVlYmQ4NWVi
MmVkMjQyMjI1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTExLTIyICBSeXVh
biBDaG9pICA8cnl1YW4uY2hvaUBnbWFpbC5jb20+CisKKyAgICAgICAgW0VGTF1bV0syXSBBZGQg
Y29udGVudHMsc2l6ZSxjaGFuZ2VkIHNpZ25hbCB0byB0aGUgZXdrX3ZpZXcgQVBJCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMwOTQKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGVtaXRz
IHNpZ25hbCB0byBsZXQgYXBwbGljYXRpb25zIGtub3cgY29udGVudHMgc2l6ZS4KKworICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdDYWxsYmFja3MuaDoKKyAgICAgICAgKEV3a1Zp
ZXdDYWxsYmFja3MpOiBBZGRlZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsLgorICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcDoKKyAgICAgICAgKEV3a1ZpZXdJ
bXBsOjppbmZvcm1Db250ZW50c1NpemVDaGFuZ2UpOgorICAgICAgICBDbGVhbmVkIHVwIGRlYWQg
Y29kZSBhbmQgZW1pdHRlZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsLgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvZWZsL2V3a192aWV3Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9l
ZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwOiBBZGRlZCB0ZXN0IGNhc2UuCisgICAgICAgIChv
bkNvbnRlbnRzU2l6ZUNoYW5nZWQpOgorICAgICAgICAoVEVTVF9GKToKKyAgICAgICAgKiBVSVBy
b2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZhdWx0SW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBh
Z2VDbGllbnREZWZhdWx0SW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvZWZsL1BhZ2VDbGllbnRMZWdhY3lJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
UGFnZUNsaWVudExlZ2FjeUltcGw6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZSk6CisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmNvbnRlbnRzU2l6ZUNoYW5nZWQpOgorICAgICAgICBT
ZW5kZWQgRGlkQ2hhbmdlQ29udGVudHNTaXplIG1lc3NhZ2UgYWx0aG91Z2ggVElMRURfQkFDS0lO
R1NUT1JFIGlzIGRpc2FibGVkLgorCiAyMDEyLTA5LTI2ICBHdXN0YXZvIE5vcm9uaGEgU2lsdmEg
IDxnbnNAZ25vbWUub3JnPgogCiAgICAgICAgIFtHVEtdIFNwbGl0IFNWRyBmcm9tIFdlYkNvcmUg
dG8gd29yay1hcm91bmQgbWFrZSBsaW1pdGF0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3Q2FsbGJhY2tzLmggYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3Q2FsbGJhY2tzLmgKaW5kZXggNDE0MGM3NDJiYzg1ZDkw
Nzk5MGY1Yzk2NTUyYTRkZTM4ZGRkZTVlNS4uNmM1Njk0YTNkNDM2YzllOTQ3ZjBkNzEyYWYzMzcx
NGU5ZDIxN2VlNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwv
RXdrVmlld0NhbGxiYWNrcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZs
L0V3a1ZpZXdDYWxsYmFja3MuaApAQCAtNTcsNiArNTcsNyBAQCBlbnVtIENhbGxiYWNrVHlwZSB7
CiAgICAgQXV0aGVudGljYXRpb25SZXF1ZXN0LAogICAgIEJhY2tGb3J3YXJkTGlzdENoYW5nZSwK
ICAgICBDYW5jZWxWaWJyYXRpb24sCisgICAgQ29udGVudHNTaXplQ2hhbmdlZCwKICAgICBEb3du
bG9hZEpvYkNhbmNlbGxlZCwKICAgICBEb3dubG9hZEpvYkZhaWxlZCwKICAgICBEb3dubG9hZEpv
YkZpbmlzaGVkLApAQCAtMTY2LDYgKzE2Nyw3IEBAIHN0cnVjdCBDYWxsQmFja0luZm88Y2FsbGJh
Y2tUeXBlPiB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogREVDTEFSRV9FV0tfVklFV19D
QUxMQkFDSyhBdXRoZW50aWNhdGlvblJlcXVlc3QsICJhdXRoZW50aWNhdGlvbixyZXF1ZXN0Iiwg
RXdrX0F1dGhfUmVxdWVzdCk7CiBERUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKEJhY2tGb3J3YXJk
TGlzdENoYW5nZSwgImJhY2ssZm9yd2FyZCxsaXN0LGNoYW5nZWQiLCB2b2lkKTsKIERFQ0xBUkVf
RVdLX1ZJRVdfQ0FMTEJBQ0soQ2FuY2VsVmlicmF0aW9uLCAiY2FuY2VsLHZpYnJhdGlvbiIsIHZv
aWQpOworREVDTEFSRV9FV0tfVklFV19DQUxMQkFDSyhDb250ZW50c1NpemVDaGFuZ2VkLCAiY29u
dGVudHMsc2l6ZSxjaGFuZ2VkIiwgaW50KTsKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soRG93
bmxvYWRKb2JDYW5jZWxsZWQsICJkb3dubG9hZCxjYW5jZWxsZWQiLCBFd2tfRG93bmxvYWRfSm9i
KTsKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soRG93bmxvYWRKb2JGYWlsZWQsICJkb3dubG9h
ZCxmYWlsZWQiLCBFd2tfRG93bmxvYWRfSm9iX0Vycm9yKTsKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FM
TEJBQ0soRG93bmxvYWRKb2JGaW5pc2hlZCwgImRvd25sb2FkLGZpbmlzaGVkIiwgRXdrX0Rvd25s
b2FkX0pvYik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9F
d2tWaWV3SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3
SW1wbC5jcHAKaW5kZXggZTBjNTkwNTRkYjkwY2EyOTZmNTk1OGVmZDhjMDI5ZTkxMTBmZDg2My4u
NmIzY2YxYWRhZWFjMTA4N2I2YWFlZDc0YzNhNWUzZTE1MmQ5ZmE0MSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcApAQCAtNzI0LDExICs3
MjQsMTAgQEAgdm9pZCBFd2tWaWV3SW1wbDo6ZGlzbWlzc0NvbG9yUGlja2VyKCkKIAogdm9pZCBF
d2tWaWV3SW1wbDo6aW5mb3JtQ29udGVudHNTaXplQ2hhbmdlKGNvbnN0IEludFNpemUmIHNpemUp
CiB7Ci0jaWYgVVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQotICAgIG1fcGFnZUNsaWVudC0+ZGlk
Q2hhbmdlQ29udGVudHNTaXplKHNpemUpOwotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0oc2l6ZSk7
Ci0jZW5kaWYKKyAgICBpbnQgY29udGVudHNTaXplWzJdOworICAgIGNvbnRlbnRzU2l6ZVswXSA9
IHNpemUud2lkdGgoKTsKKyAgICBjb250ZW50c1NpemVbMV0gPSBzaXplLmhlaWdodCgpOworICAg
IHNtYXJ0Q2FsbGJhY2s8Q29udGVudHNTaXplQ2hhbmdlZD4oKS5jYWxsKGNvbnRlbnRzU2l6ZSk7
CiB9CiAKIENPTVBJTEVfQVNTRVJUX01BVENISU5HX0VOVU0oRVdLX1RFWFRfRElSRUNUSU9OX1JJ
R0hUX1RPX0xFRlQsIFJUTCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL2VmbC9ld2tfdmlldy5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvZXdr
X3ZpZXcuaAppbmRleCA5YTQwOGFiNWU0ZGQyZDBjOGU3YjNiYTNkMDIyMGIwYjFmYzEzNzIyLi41
YjYwNWM3MmU3OGMwNjBiYjBhMmVlZDE5YTEyODc1NGFjNTIwMWM3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfdmlldy5oCisrKyBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvZWZsL2V3a192aWV3LmgKQEAgLTMwLDYgKzMwLDcgQEAKICAqICAg
ZXdrX2F1dGhfcmVxdWVzdF9yZWYoKSBvbiB0aGUgcmVxdWVzdCBvYmplY3QgdG8gcHJvY2VzcyB0
aGUgYXV0aGVudGljYXRpb24gYXN5bmNocm9ub3VzbHkuCiAgKiAtICJiYWNrLGZvcndhcmQsbGlz
dCxjaGFuZ2VkIiwgdm9pZDogcmVwb3J0cyB0aGF0IHRoZSB2aWV3J3MgYmFjayAvIGZvcndhcmQg
bGlzdCBoYWQgY2hhbmdlZC4KICAqIC0gImNhbmNlbCx2aWJyYXRpb24iLCB2b2lkOiByZXF1ZXN0
IHRvIGNhbmNlbCB0aGUgdmlicmF0aW9uLgorICogLSAiY29udGVudHMsc2l6ZSxjaGFuZ2VkIiwg
aW50WzJdOiByZXBvcnRzIGNvbnRlbnRzIHNpemUgd2VyZSBjaGFuZ2VkIGR1ZSBuZXcgbGF5b3V0
LCBzY3JpcHQgYWN0aW9ucyBvciBhbnkgb3RoZXIgZXZlbnRzLgogICogLSAiZG93bmxvYWQsY2Fu
Y2VsbGVkIiwgRXdrX0Rvd25sb2FkX0pvYio6IHJlcG9ydHMgdGhhdCBhIGRvd25sb2FkIHdhcyBl
ZmZlY3RpdmVseSBjYW5jZWxsZWQuCiAgKiAtICJkb3dubG9hZCxmYWlsZWQiLCBFd2tfRG93bmxv
YWRfSm9iX0Vycm9yKjogcmVwb3J0cyB0aGF0IGEgZG93bmxvYWQgZmFpbGVkIHdpdGggdGhlIGdp
dmVuIGVycm9yLgogICogLSAiZG93bmxvYWQsZmluaXNoZWQiLCBFd2tfRG93bmxvYWRfSm9iKjog
cmVwb3J0cyB0aGF0IGEgZG93bmxvYWQgY29tcGxldGVkIHN1Y2Nlc3NmdWxseS4KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3
LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92
aWV3LmNwcAppbmRleCAxNDkxY2M3ZDliMWFkOTQ3OTUxMzEzNDVlMGY3NmJhMjMzYjIwZTI5Li4z
NGFlYmUwYTNhMDE5YTNmNDI3Yzk2YWViZmMyMzExMzZlZjczNjNjIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC90ZXN0cy90ZXN0X2V3azJfdmlldy5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcu
Y3BwCkBAIC04ODEsMyArODgxLDI2IEBAIFRFU1RfRihFV0syVW5pdFRlc3RCYXNlLCBld2tfY29u
dGV4dF92aWJyYXRpb25fY2xpZW50X2NhbGxiYWNrc19zZXQpCiAgICAgQVNTRVJUX0ZBTFNFKGRh
dGEuZGlkUmVjZWl2ZUNhbmNlbFZpYnJhdGlvbik7CiB9CiAKK3N0YXRpYyB2b2lkIG9uQ29udGVu
dHNTaXplQ2hhbmdlZCh2b2lkKiB1c2VyRGF0YSwgRXZhc19PYmplY3QqLCB2b2lkKiBldmVudElu
Zm8pCit7CisgICAgYm9vbCogcmVzdWx0ID0gc3RhdGljX2Nhc3Q8Ym9vbCo+KHVzZXJEYXRhKTsK
KyAgICBpbnQqIHNpemUgPSBzdGF0aWNfY2FzdDxpbnQqPihldmVudEluZm8pOworCisgICAgaWYg
KHNpemVbMF0gPT0gMjAwMCAmJiBzaXplWzFdID09IDMwMDApCisgICAgICAgICpyZXN1bHQgPSB0
cnVlOworfQorCitURVNUX0YoRVdLMlVuaXRUZXN0QmFzZSwgZXdrX3ZpZXdfY29udG5ldHNfc2l6
ZV9jaGFuZ2VkKQoreworICAgIGNvbnN0IGNoYXIgdGV4dEZpbmRIVE1MW10gPQorICAgICAgICAi
PCFET0NUWVBFIGh0bWw+IgorICAgICAgICAiPGJvZHkgd2lkdGg9MjAwMCBoZWlnaHQ9MzAwMD4i
CisgICAgICAgICI8L2JvZHk+IjsKKworICAgIGJvb2wgc2l6ZUNoYW5nZWQgPSBmYWxzZTsKKyAg
ICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQod2ViVmlldygpLCAiY29udGVudHMsc2l6
ZSxjaGFuZ2VkIiwgb25Db250ZW50c1NpemVDaGFuZ2VkLCAmc2l6ZUNoYW5nZWQpOworICAgIHdo
aWxlIChzaXplQ2hhbmdlZCkKKyAgICAgICAgZWNvcmVfbWFpbl9sb29wX2l0ZXJhdGUoKTsKKwor
ICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2RlbCh3ZWJWaWV3KCksICJjb250ZW50cyxz
aXplLGNoYW5nZWQiLCBvbkNvbnRlbnRzU2l6ZUNoYW5nZWQpOworfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RGVmYXVsdEltcGwuY3BwIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RGVmYXVsdEltcGwuY3BwCmluZGV4
IGNlZmY1MzQ2OGExYWMyNjIyM2EwMDI3MzljYjgyYzFlMWY1M2VkNTMuLmIxMjIzN2FjZmNkNTE0
OGIxODUzY2UxMjFhYTUyOTliNTZlZWQzMDkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9lZmwvUGFnZUNsaWVudERlZmF1bHRJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZhdWx0SW1wbC5jcHAKQEAgLTk0LDkgKzk0LDkg
QEAgdm9pZCBQYWdlQ2xpZW50RGVmYXVsdEltcGw6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25z
dCBXZWJDb3JlOjpJbnRTaXplJiBzaXplKQogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQog
ICAgIEFTU0VSVChtX3BhZ2VWaWV3cG9ydENvbnRyb2xsZXIpOwogICAgIG1fcGFnZVZpZXdwb3J0
Q29udHJvbGxlci0+ZGlkQ2hhbmdlQ29udGVudHNTaXplKHNpemUpOwotI2Vsc2UKLSAgICBtX3Zp
ZXdJbXBsLT5pbmZvcm1Db250ZW50c1NpemVDaGFuZ2Uoc2l6ZSk7CiAjZW5kaWYKKworICAgIG1f
dmlld0ltcGwtPmluZm9ybUNvbnRlbnRzU2l6ZUNoYW5nZShzaXplKTsKIH0KIAogI2lmIFVTRShU
SUxFRF9CQUNLSU5HX1NUT1JFKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2VmbC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
ZWZsL1BhZ2VDbGllbnRMZWdhY3lJbXBsLmNwcAppbmRleCA2ZjMwNWJkZDYzMDcwM2ExOWVmZGE2
M2E2YTU4MzFjZmM3YTE3ZGRlLi4zYjZkNTZhYjY0YmQ1NGMxNmJlN2JjNTNhYzgwODI5ZDRhYjVj
ZjI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnRM
ZWdhY3lJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGll
bnRMZWdhY3lJbXBsLmNwcApAQCAtNzgsOSArNzgsOSBAQCB2b2lkIFBhZ2VDbGllbnRMZWdhY3lJ
bXBsOjpkaWRDaGFuZ2VDb250ZW50c1NpemUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2l6ZSkK
ICAgICAvLyBtX3ZpZXdJbXBsLT5pbmZvcm1Db250ZW50U2l6ZUNoYW5nZWQgd2lsbCBiZSBjYWxs
ZWQgYXMgYSByZXN1bHQgb2Ygc2V0Q29udGVudHNTaXplCiAgICAgbV92aWV3SW1wbC0+cGFnZSgp
LT5kcmF3aW5nQXJlYSgpLT5sYXllclRyZWVDb29yZGluYXRvclByb3h5KCktPnNldENvbnRlbnRz
U2l6ZShGbG9hdFNpemUoc2l6ZS53aWR0aCgpLCBzaXplLmhlaWdodCgpKSk7CiAgICAgbV92aWV3
SW1wbC0+dXBkYXRlKCk7Ci0jZWxzZQotICAgIG1fdmlld0ltcGwtPmluZm9ybUNvbnRlbnRzU2l6
ZUNoYW5nZShzaXplKTsKICNlbmRpZgorCisgICAgbV92aWV3SW1wbC0+aW5mb3JtQ29udGVudHNT
aXplQ2hhbmdlKHNpemUpOwogfQogCiAjaWYgVVNFKFRJTEVEX0JBQ0tJTkdfU1RPUkUpCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dl
YkNocm9tZUNsaWVudC5jcHAKaW5kZXggMmE1ZGE1YzU5ODYwNzM2YTU1ODRiMGYxYzU0MWRmMTY4
YjBjOTdkNy4uZDRkNzdhNWUwMDMzMGU5ZGFkOWE4M2MwYTM1NTIzYzNjNzdjNDc2YSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVD
bGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQv
V2ViQ2hyb21lQ2xpZW50LmNwcApAQCAtNDQ1LDE1ICs0NDUsMTYgQEAgdm9pZCBXZWJDaHJvbWVD
bGllbnQ6OmNvbnRlbnRzU2l6ZUNoYW5nZWQoRnJhbWUqIGZyYW1lLCBjb25zdCBJbnRTaXplJiAv
KnNpemUqLykKICAgICBpZiAoZnJhbWUtPnBhZ2UoKS0+bWFpbkZyYW1lKCkgIT0gZnJhbWUpCiAg
ICAgICAgIHJldHVybjsKIAotI2lmIFBMQVRGT1JNKFFUKSB8fCAoUExBVEZPUk0oRUZMKSAmJiBV
U0UoVElMRURfQkFDS0lOR19TVE9SRSkpCisjaWYgVVNFKFRJTEVEX0JBQ0tJTkdfU1RPUkUpCiAg
ICAgaWYgKG1fcGFnZS0+dXNlRml4ZWRMYXlvdXQoKSkgewogICAgICAgICAvLyBUaGUgYmVsb3cg
bWV0aG9kIHVwZGF0ZXMgdGhlIHNpemUoKS4KICAgICAgICAgbV9wYWdlLT5yZXNpemVUb0NvbnRl
bnRzSWZOZWVkZWQoKTsKICAgICAgICAgbV9wYWdlLT5kcmF3aW5nQXJlYSgpLT5sYXllclRyZWVI
b3N0KCktPnNpemVEaWRDaGFuZ2UobV9wYWdlLT5zaXplKCkpOwogICAgIH0KKyNlbmRpZgogCisj
aWYgUExBVEZPUk0oUVQpIHx8IFBMQVRGT1JNKEVGTCkKICAgICBtX3BhZ2UtPnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2VQcm94eTo6RGlkQ2hhbmdlQ29udGVudHNTaXplKG1fcGFnZS0+c2l6ZSgpKSk7
Ci0KICNlbmRpZgogCiAgICAgRnJhbWVWaWV3KiBmcmFtZVZpZXcgPSBmcmFtZS0+dmlldygpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175906</attachid>
            <date>2012-11-25 18:06:18 -0800</date>
            <delta_ts>2012-11-25 18:37:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103094-20121126110357.patch</filename>
            <type>text/plain</type>
            <size>9297</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1Njc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNzFhMjViYmZlODViNWI0
YjQ0ZWU5YzE4ZTcxNGJkZTAxYTM1NmQyMC4uZDk1YTIxM2NjMjg2OWI5MjFmMmI4YTgxZTFhYmFj
NmZmMjg5NzQ5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTExLTI1ICBSeXVh
biBDaG9pICA8cnl1YW4uY2hvaUBnbWFpbC5jb20+CisKKyAgICAgICAgW0VGTF1bV0syXSBBZGQg
Y29udGVudHMsc2l6ZSxjaGFuZ2VkIHNpZ25hbCB0byB0aGUgZXdrX3ZpZXcgQVBJCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMwOTQKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGVtaXRz
IHNpZ25hbCB0byBsZXQgYXBwbGljYXRpb25zIGtub3cgY29udGVudHMgc2l6ZS4KKworICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdDYWxsYmFja3MuaDoKKyAgICAgICAgKEV3a1Zp
ZXdDYWxsYmFja3MpOiBBZGRlZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsLgorICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcDoKKyAgICAgICAgKEV3a1ZpZXdJ
bXBsOjppbmZvcm1Db250ZW50c1NpemVDaGFuZ2UpOgorICAgICAgICBDbGVhbmVkIHVwIGRlYWQg
Y29kZSBhbmQgZW1pdHRlZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsLgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvZWZsL2V3a192aWV3Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9l
ZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwOiBBZGRlZCB0ZXN0IGNhc2UuCisgICAgICAgIChv
bkNvbnRlbnRzU2l6ZUNoYW5nZWQpOgorICAgICAgICAoVEVTVF9GKToKKyAgICAgICAgKiBVSVBy
b2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZhdWx0SW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBh
Z2VDbGllbnREZWZhdWx0SW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvZWZsL1BhZ2VDbGllbnRMZWdhY3lJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
UGFnZUNsaWVudExlZ2FjeUltcGw6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZSk6CisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmNvbnRlbnRzU2l6ZUNoYW5nZWQpOgorICAgICAgICBT
ZW5kZWQgRGlkQ2hhbmdlQ29udGVudHNTaXplIG1lc3NhZ2UgYWx0aG91Z2ggVElMRURfQkFDS0lO
R1NUT1JFIGlzIGRpc2FibGVkLgorCiAyMDEyLTExLTI1ICBNaWtoYWlsIFBvemRueWFrb3YgIDxt
aWtoYWlsLnBvemRueWFrb3ZAaW50ZWwuY29tPgogCiAgICAgICAgIFtXSzJdIFRpbGVkQmFja2lu
Z1N0b3JlOiBwYWdlIGNvbnRlbnRzIGlzIHNjYWxlZCB3cm9uZ2x5CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3Q2FsbGJhY2tzLmggYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3Q2FsbGJhY2tzLmgKaW5kZXggY2Y4MjJh
MmVkY2I2NjRiNDI2NDNmM2NhMzE5Y2M2OGEyYjgwZDhkOS4uNGZlMjMwYjU0Yzc5ODdjMjMyYjY0
NWE5MGE3ZjI3Mjk3ZDk0ZDdhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9lZmwvRXdrVmlld0NhbGxiYWNrcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvZWZsL0V3a1ZpZXdDYWxsYmFja3MuaApAQCAtNTAsNiArNTAsNyBAQCBzdHJ1Y3QgRXdr
X0Rvd25sb2FkX0pvYl9FcnJvcjsKIHN0cnVjdCBFd2tfUmVzb3VyY2VfUmVxdWVzdDsKIHN0cnVj
dCBFd2tfUmVzb3VyY2VfTG9hZF9SZXNwb25zZTsKIHN0cnVjdCBFd2tfUmVzb3VyY2VfTG9hZF9F
cnJvcjsKK3N0cnVjdCBFd2tfU2l6ZTsKIAogbmFtZXNwYWNlIEV3a1ZpZXdDYWxsYmFja3Mgewog
CkBAIC01Nyw2ICs1OCw3IEBAIGVudW0gQ2FsbGJhY2tUeXBlIHsKICAgICBBdXRoZW50aWNhdGlv
blJlcXVlc3QsCiAgICAgQmFja0ZvcndhcmRMaXN0Q2hhbmdlLAogICAgIENhbmNlbFZpYnJhdGlv
biwKKyAgICBDb250ZW50c1NpemVDaGFuZ2VkLAogICAgIERvd25sb2FkSm9iQ2FuY2VsbGVkLAog
ICAgIERvd25sb2FkSm9iRmFpbGVkLAogICAgIERvd25sb2FkSm9iRmluaXNoZWQsCkBAIC0xNjEs
NiArMTYzLDcgQEAgc3RydWN0IENhbGxCYWNrSW5mbzxjYWxsYmFja1R5cGU+IHsgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCiBERUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKEF1dGhlbnRpY2F0
aW9uUmVxdWVzdCwgImF1dGhlbnRpY2F0aW9uLHJlcXVlc3QiLCBFd2tfQXV0aF9SZXF1ZXN0Kik7
CiBERUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKEJhY2tGb3J3YXJkTGlzdENoYW5nZSwgImJhY2ss
Zm9yd2FyZCxsaXN0LGNoYW5nZWQiLCB2b2lkKTsKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0so
Q2FuY2VsVmlicmF0aW9uLCAiY2FuY2VsLHZpYnJhdGlvbiIsIHZvaWQpOworREVDTEFSRV9FV0tf
VklFV19DQUxMQkFDSyhDb250ZW50c1NpemVDaGFuZ2VkLCAiY29udGVudHMsc2l6ZSxjaGFuZ2Vk
IiwgRXdrX1NpemUqKTsKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soRG93bmxvYWRKb2JDYW5j
ZWxsZWQsICJkb3dubG9hZCxjYW5jZWxsZWQiLCBFd2tfRG93bmxvYWRfSm9iKik7CiBERUNMQVJF
X0VXS19WSUVXX0NBTExCQUNLKERvd25sb2FkSm9iRmFpbGVkLCAiZG93bmxvYWQsZmFpbGVkIiwg
RXdrX0Rvd25sb2FkX0pvYl9FcnJvciopOwogREVDTEFSRV9FV0tfVklFV19DQUxMQkFDSyhEb3du
bG9hZEpvYkZpbmlzaGVkLCAiZG93bmxvYWQsZmluaXNoZWQiLCBFd2tfRG93bmxvYWRfSm9iKik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3SW1w
bC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3SW1wbC5jcHAK
aW5kZXggMjkxNjFmZjIzYjFkNjUzMTQ1MGQzZjZjYjQ2NDAwY2E4ZjE4ZDM1NC4uZWQ3ZjZjYjU5
ZDQ2NjJlNDQ2NTFlZWQxMDU3MzlmYzJmYjdjYmFlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcApAQCAtNzMxLDExICs3MzEsMTEgQEAg
dm9pZCBFd2tWaWV3SW1wbDo6ZGlzbWlzc0NvbG9yUGlja2VyKCkKIAogdm9pZCBFd2tWaWV3SW1w
bDo6aW5mb3JtQ29udGVudHNTaXplQ2hhbmdlKGNvbnN0IEludFNpemUmIHNpemUpCiB7Ci0jaWYg
VVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQotICAgIG1fcGFnZUNsaWVudC0+ZGlkQ2hhbmdlQ29u
dGVudHNTaXplKHNpemUpOwotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0oc2l6ZSk7Ci0jZW5kaWYK
KyAgICAvLyBGSVhNRTogSXQgc2hvdWxkIGJlIGNoYW5nZWQgdG8gRXZhc19Db29yZF9TaXplIGFm
dGVyIEVGTCAxLjgKKyAgICBFd2tfU2l6ZSBjb250ZW50c1NpemU7CisgICAgY29udGVudHNTaXpl
LncgPSBzaXplLndpZHRoKCk7CisgICAgY29udGVudHNTaXplLmggPSBzaXplLmhlaWdodCgpOwor
ICAgIHNtYXJ0Q2FsbGJhY2s8Q29udGVudHNTaXplQ2hhbmdlZD4oKS5jYWxsKCZjb250ZW50c1Np
emUpOwogfQogCiBDT01QSUxFX0FTU0VSVF9NQVRDSElOR19FTlVNKEVXS19URVhUX0RJUkVDVElP
Tl9SSUdIVF9UT19MRUZULCBSVEwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9lZmwvZXdrX3ZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZs
L2V3a192aWV3LmgKaW5kZXggOWE0MDhhYjVlNGRkMmQwYzhlN2IzYmEzZDAyMjBiMGIxZmMxMzcy
Mi4uM2YwYWRkMDJkNGJlNWI2YjE5NGFlMjYyNTNkZmQ0MTc4NWYzMWFmYyAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvZXdrX3ZpZXcuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfdmlldy5oCkBAIC0zMCw2ICszMCw3IEBACiAg
KiAgIGV3a19hdXRoX3JlcXVlc3RfcmVmKCkgb24gdGhlIHJlcXVlc3Qgb2JqZWN0IHRvIHByb2Nl
c3MgdGhlIGF1dGhlbnRpY2F0aW9uIGFzeW5jaHJvbm91c2x5LgogICogLSAiYmFjayxmb3J3YXJk
LGxpc3QsY2hhbmdlZCIsIHZvaWQ6IHJlcG9ydHMgdGhhdCB0aGUgdmlldydzIGJhY2sgLyBmb3J3
YXJkIGxpc3QgaGFkIGNoYW5nZWQuCiAgKiAtICJjYW5jZWwsdmlicmF0aW9uIiwgdm9pZDogcmVx
dWVzdCB0byBjYW5jZWwgdGhlIHZpYnJhdGlvbi4KKyAqIC0gImNvbnRlbnRzLHNpemUsY2hhbmdl
ZCIsIEV3a19TaXplKjogcmVwb3J0cyBjb250ZW50cyBzaXplIHdlcmUgY2hhbmdlZCBkdWUgbmV3
IGxheW91dCwgc2NyaXB0IGFjdGlvbnMgb3IgYW55IG90aGVyIGV2ZW50cy4KICAqIC0gImRvd25s
b2FkLGNhbmNlbGxlZCIsIEV3a19Eb3dubG9hZF9Kb2IqOiByZXBvcnRzIHRoYXQgYSBkb3dubG9h
ZCB3YXMgZWZmZWN0aXZlbHkgY2FuY2VsbGVkLgogICogLSAiZG93bmxvYWQsZmFpbGVkIiwgRXdr
X0Rvd25sb2FkX0pvYl9FcnJvcio6IHJlcG9ydHMgdGhhdCBhIGRvd25sb2FkIGZhaWxlZCB3aXRo
IHRoZSBnaXZlbiBlcnJvci4KICAqIC0gImRvd25sb2FkLGZpbmlzaGVkIiwgRXdrX0Rvd25sb2Fk
X0pvYio6IHJlcG9ydHMgdGhhdCBhIGRvd25sb2FkIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkuCkBA
IC0yNzIsNiArMjczLDE4IEBAIHN0cnVjdCBFd2tfRG93bmxvYWRfSm9iX0Vycm9yIHsKICAgICBF
d2tfRXJyb3IgKmVycm9yOyAvKio8IGRvd25sb2FkIGVycm9yICovCiB9OwogCisvLy8gQ3JlYXRl
cyBhIHR5cGUgbmFtZSBmb3IgRXdrX1NpemUuCit0eXBlZGVmIHN0cnVjdCBFd2tfU2l6ZSBFd2tf
U2l6ZTsKKworLyoqCisgKiBAYnJpZWYgU3RydWN0dXJlIHJlcHJlc2VudGluZyBzaXplLgorICog
QGluZm8gVGhpcyBzdHJ1Y3R1cmUgd2lsbCBiZSBkZXByZWNhdGVkIGFmdGVyIEVGTCAxLjgKKyAq
Lworc3RydWN0IEV3a19TaXplIHsKKyAgICBFdmFzX0Nvb3JkIHc7IC8qKjwgeCBjby1vcmRpbmF0
ZSAqLworICAgIEV2YXNfQ29vcmQgaDsgLyoqPCB5IGNvLW9yZGluYXRlICovCit9OworCiAvKioK
ICAqIEVudW0gdmFsdWVzIHVzZWQgdG8gc3BlY2lmeSBzZWFyY2ggb3B0aW9ucy4KICAqIEBicmll
ZiAgIFByb3ZpZGVzIG9wdGlvbiB0byBmaW5kIHRleHQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNwcAppbmRleCAx
NDkxY2M3ZDliMWFkOTQ3OTUxMzEzNDVlMGY3NmJhMjMzYjIwZTI5Li4xMTgwZWIxMjk5MmY2YWUw
ZGUzZThkOTgyZjExMTk2NzY2ZTdkZjk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL2VmbC90ZXN0cy90ZXN0X2V3azJfdmlldy5jcHAKKysrIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9lZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwCkBAIC04ODEsMyAr
ODgxLDI3IEBAIFRFU1RfRihFV0syVW5pdFRlc3RCYXNlLCBld2tfY29udGV4dF92aWJyYXRpb25f
Y2xpZW50X2NhbGxiYWNrc19zZXQpCiAgICAgQVNTRVJUX0ZBTFNFKGRhdGEuZGlkUmVjZWl2ZUNh
bmNlbFZpYnJhdGlvbik7CiB9CiAKK3N0YXRpYyB2b2lkIG9uQ29udGVudHNTaXplQ2hhbmdlZCh2
b2lkKiB1c2VyRGF0YSwgRXZhc19PYmplY3QqLCB2b2lkKiBldmVudEluZm8pCit7CisgICAgYm9v
bCogcmVzdWx0ID0gc3RhdGljX2Nhc3Q8Ym9vbCo+KHVzZXJEYXRhKTsKKyAgICAvLyBGSVhNRTog
SXQgc2hvdWxkIGJlIGNoYW5nZWQgdG8gRXZhc19Db29yZF9TaXplIGFmdGVyIEVGTCAxLjgKKyAg
ICBFd2tfU2l6ZSogc2l6ZSA9IHN0YXRpY19jYXN0PEV3a19TaXplKj4oZXZlbnRJbmZvKTsKKwor
ICAgIGlmIChzaXplLT53ID09IDIwMDAgJiYgc2l6ZS0+aCA9PSAzMDAwKQorICAgICAgICAqcmVz
dWx0ID0gdHJ1ZTsKK30KKworVEVTVF9GKEVXSzJVbml0VGVzdEJhc2UsIGV3a192aWV3X2NvbnRl
bnRzX3NpemVfY2hhbmdlZCkKK3sKKyAgICBjb25zdCBjaGFyIHRleHRGaW5kSFRNTFtdID0KKyAg
ICAgICAgIjwhRE9DVFlQRSBodG1sPiIKKyAgICAgICAgIjxib2R5IHdpZHRoPTIwMDAgaGVpZ2h0
PTMwMDA+IgorICAgICAgICAiPC9ib2R5PiI7CisKKyAgICBib29sIHNpemVDaGFuZ2VkID0gZmFs
c2U7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKHdlYlZpZXcoKSwgImNvbnRl
bnRzLHNpemUsY2hhbmdlZCIsIG9uQ29udGVudHNTaXplQ2hhbmdlZCwgJnNpemVDaGFuZ2VkKTsK
KyAgICB3aGlsZSAoc2l6ZUNoYW5nZWQpCisgICAgICAgIGVjb3JlX21haW5fbG9vcF9pdGVyYXRl
KCk7CisKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19kZWwod2ViVmlldygpLCAiY29u
dGVudHMsc2l6ZSxjaGFuZ2VkIiwgb25Db250ZW50c1NpemVDaGFuZ2VkKTsKK30KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudERlZmF1bHRJbXBsLmNw
cCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudERlZmF1bHRJbXBsLmNw
cAppbmRleCBjZWZmNTM0NjhhMWFjMjYyMjNhMDAyNzM5Y2I4MmMxZTFmNTNlZDUzLi5iMTIyMzdh
Y2ZjZDUxNDhiMTg1M2NlMTIxYWE1Mjk5YjU2ZWVkMzA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZhdWx0SW1wbC5jcHAKKysrIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RGVmYXVsdEltcGwuY3BwCkBAIC05NCw5
ICs5NCw5IEBAIHZvaWQgUGFnZUNsaWVudERlZmF1bHRJbXBsOjpkaWRDaGFuZ2VDb250ZW50c1Np
emUoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2l6ZSkKICNpZiBVU0UoVElMRURfQkFDS0lOR19T
VE9SRSkKICAgICBBU1NFUlQobV9wYWdlVmlld3BvcnRDb250cm9sbGVyKTsKICAgICBtX3BhZ2VW
aWV3cG9ydENvbnRyb2xsZXItPmRpZENoYW5nZUNvbnRlbnRzU2l6ZShzaXplKTsKLSNlbHNlCi0g
ICAgbV92aWV3SW1wbC0+aW5mb3JtQ29udGVudHNTaXplQ2hhbmdlKHNpemUpOwogI2VuZGlmCisK
KyAgICBtX3ZpZXdJbXBsLT5pbmZvcm1Db250ZW50c1NpemVDaGFuZ2Uoc2l6ZSk7CiB9CiAKICNp
ZiBVU0UoVElMRURfQkFDS0lOR19TVE9SRSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9lZmwvUGFnZUNsaWVudExlZ2FjeUltcGwuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2VmbC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKaW5kZXggNmYzMDViZGQ2MzA3MDNh
MTllZmRhNjNhNmE1ODMxY2ZjN2ExN2RkZS4uM2I2ZDU2YWI2NGJkNTRjMTZiZTdiYzUzYWM4MDgy
OWQ0YWI1Y2YyNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdl
Q2xpZW50TGVnYWN5SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9Q
YWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKQEAgLTc4LDkgKzc4LDkgQEAgdm9pZCBQYWdlQ2xpZW50
TGVnYWN5SW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUm
IHNpemUpCiAgICAgLy8gbV92aWV3SW1wbC0+aW5mb3JtQ29udGVudFNpemVDaGFuZ2VkIHdpbGwg
YmUgY2FsbGVkIGFzIGEgcmVzdWx0IG9mIHNldENvbnRlbnRzU2l6ZQogICAgIG1fdmlld0ltcGwt
PnBhZ2UoKS0+ZHJhd2luZ0FyZWEoKS0+bGF5ZXJUcmVlQ29vcmRpbmF0b3JQcm94eSgpLT5zZXRD
b250ZW50c1NpemUoRmxvYXRTaXplKHNpemUud2lkdGgoKSwgc2l6ZS5oZWlnaHQoKSkpOwogICAg
IG1fdmlld0ltcGwtPnVwZGF0ZSgpOwotI2Vsc2UKLSAgICBtX3ZpZXdJbXBsLT5pbmZvcm1Db250
ZW50c1NpemVDaGFuZ2Uoc2l6ZSk7CiAjZW5kaWYKKworICAgIG1fdmlld0ltcGwtPmluZm9ybUNv
bnRlbnRzU2l6ZUNoYW5nZShzaXplKTsKIH0KIAogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JF
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9X
ZWJDaHJvbWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IDJhNWRhNWM1OTg2MDczNmE1NTg0YjBmMWM1
NDFkZjE2OGIwYzk3ZDcuLmQ0ZDc3YTVlMDAzMzBlOWRhZDlhODNjMGEzNTUyM2MzYzc3YzQ3NmEg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2Vi
Q2hyb21lQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVT
dXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKQEAgLTQ0NSwxNSArNDQ1LDE2IEBAIHZvaWQgV2Vi
Q2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKEZyYW1lKiBmcmFtZSwgY29uc3QgSW50
U2l6ZSYgLypzaXplKi8pCiAgICAgaWYgKGZyYW1lLT5wYWdlKCktPm1haW5GcmFtZSgpICE9IGZy
YW1lKQogICAgICAgICByZXR1cm47CiAKLSNpZiBQTEFURk9STShRVCkgfHwgKFBMQVRGT1JNKEVG
TCkgJiYgVVNFKFRJTEVEX0JBQ0tJTkdfU1RPUkUpKQorI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NU
T1JFKQogICAgIGlmIChtX3BhZ2UtPnVzZUZpeGVkTGF5b3V0KCkpIHsKICAgICAgICAgLy8gVGhl
IGJlbG93IG1ldGhvZCB1cGRhdGVzIHRoZSBzaXplKCkuCiAgICAgICAgIG1fcGFnZS0+cmVzaXpl
VG9Db250ZW50c0lmTmVlZGVkKCk7CiAgICAgICAgIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+bGF5
ZXJUcmVlSG9zdCgpLT5zaXplRGlkQ2hhbmdlKG1fcGFnZS0+c2l6ZSgpKTsKICAgICB9CisjZW5k
aWYKIAorI2lmIFBMQVRGT1JNKFFUKSB8fCBQTEFURk9STShFRkwpCiAgICAgbV9wYWdlLT5zZW5k
KE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OkRpZENoYW5nZUNvbnRlbnRzU2l6ZShtX3BhZ2UtPnNp
emUoKSkpOwotCiAjZW5kaWYKIAogICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gZnJhbWUtPnZp
ZXcoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175909</attachid>
            <date>2012-11-25 18:38:05 -0800</date>
            <delta_ts>2012-11-29 08:48:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103094-20121126113543.patch</filename>
            <type>text/plain</type>
            <size>9282</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM1Njc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggNzFhMjViYmZlODViNWI0
YjQ0ZWU5YzE4ZTcxNGJkZTAxYTM1NmQyMC4uZDk1YTIxM2NjMjg2OWI5MjFmMmI4YTgxZTFhYmFj
NmZmMjg5NzQ5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTExLTI1ICBSeXVh
biBDaG9pICA8cnl1YW4uY2hvaUBnbWFpbC5jb20+CisKKyAgICAgICAgW0VGTF1bV0syXSBBZGQg
Y29udGVudHMsc2l6ZSxjaGFuZ2VkIHNpZ25hbCB0byB0aGUgZXdrX3ZpZXcgQVBJCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMwOTQKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGVtaXRz
IHNpZ25hbCB0byBsZXQgYXBwbGljYXRpb25zIGtub3cgY29udGVudHMgc2l6ZS4KKworICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdDYWxsYmFja3MuaDoKKyAgICAgICAgKEV3a1Zp
ZXdDYWxsYmFja3MpOiBBZGRlZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsLgorICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcDoKKyAgICAgICAgKEV3a1ZpZXdJ
bXBsOjppbmZvcm1Db250ZW50c1NpemVDaGFuZ2UpOgorICAgICAgICBDbGVhbmVkIHVwIGRlYWQg
Y29kZSBhbmQgZW1pdHRlZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsLgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvZWZsL2V3a192aWV3Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9l
ZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwOiBBZGRlZCB0ZXN0IGNhc2UuCisgICAgICAgIChv
bkNvbnRlbnRzU2l6ZUNoYW5nZWQpOgorICAgICAgICAoVEVTVF9GKToKKyAgICAgICAgKiBVSVBy
b2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZhdWx0SW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OlBh
Z2VDbGllbnREZWZhdWx0SW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKToKKyAgICAgICAgKiBV
SVByb2Nlc3MvZWZsL1BhZ2VDbGllbnRMZWdhY3lJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
UGFnZUNsaWVudExlZ2FjeUltcGw6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZSk6CisgICAgICAgICog
V2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwOgorICAgICAgICAo
V2ViS2l0OjpXZWJDaHJvbWVDbGllbnQ6OmNvbnRlbnRzU2l6ZUNoYW5nZWQpOgorICAgICAgICBT
ZW5kZWQgRGlkQ2hhbmdlQ29udGVudHNTaXplIG1lc3NhZ2UgYWx0aG91Z2ggVElMRURfQkFDS0lO
R1NUT1JFIGlzIGRpc2FibGVkLgorCiAyMDEyLTExLTI1ICBNaWtoYWlsIFBvemRueWFrb3YgIDxt
aWtoYWlsLnBvemRueWFrb3ZAaW50ZWwuY29tPgogCiAgICAgICAgIFtXSzJdIFRpbGVkQmFja2lu
Z1N0b3JlOiBwYWdlIGNvbnRlbnRzIGlzIHNjYWxlZCB3cm9uZ2x5CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3Q2FsbGJhY2tzLmggYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3Q2FsbGJhY2tzLmgKaW5kZXggY2Y4MjJh
MmVkY2I2NjRiNDI2NDNmM2NhMzE5Y2M2OGEyYjgwZDhkOS4uNGZlMjMwYjU0Yzc5ODdjMjMyYjY0
NWE5MGE3ZjI3Mjk3ZDk0ZDdhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9lZmwvRXdrVmlld0NhbGxiYWNrcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvZWZsL0V3a1ZpZXdDYWxsYmFja3MuaApAQCAtNTAsNiArNTAsNyBAQCBzdHJ1Y3QgRXdr
X0Rvd25sb2FkX0pvYl9FcnJvcjsKIHN0cnVjdCBFd2tfUmVzb3VyY2VfUmVxdWVzdDsKIHN0cnVj
dCBFd2tfUmVzb3VyY2VfTG9hZF9SZXNwb25zZTsKIHN0cnVjdCBFd2tfUmVzb3VyY2VfTG9hZF9F
cnJvcjsKK3N0cnVjdCBFd2tfU2l6ZTsKIAogbmFtZXNwYWNlIEV3a1ZpZXdDYWxsYmFja3Mgewog
CkBAIC01Nyw2ICs1OCw3IEBAIGVudW0gQ2FsbGJhY2tUeXBlIHsKICAgICBBdXRoZW50aWNhdGlv
blJlcXVlc3QsCiAgICAgQmFja0ZvcndhcmRMaXN0Q2hhbmdlLAogICAgIENhbmNlbFZpYnJhdGlv
biwKKyAgICBDb250ZW50c1NpemVDaGFuZ2VkLAogICAgIERvd25sb2FkSm9iQ2FuY2VsbGVkLAog
ICAgIERvd25sb2FkSm9iRmFpbGVkLAogICAgIERvd25sb2FkSm9iRmluaXNoZWQsCkBAIC0xNjEs
NiArMTYzLDcgQEAgc3RydWN0IENhbGxCYWNrSW5mbzxjYWxsYmFja1R5cGU+IHsgICAgICAgICAg
ICAgICAgICAgICAgICAgICBcCiBERUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKEF1dGhlbnRpY2F0
aW9uUmVxdWVzdCwgImF1dGhlbnRpY2F0aW9uLHJlcXVlc3QiLCBFd2tfQXV0aF9SZXF1ZXN0Kik7
CiBERUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKEJhY2tGb3J3YXJkTGlzdENoYW5nZSwgImJhY2ss
Zm9yd2FyZCxsaXN0LGNoYW5nZWQiLCB2b2lkKTsKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0so
Q2FuY2VsVmlicmF0aW9uLCAiY2FuY2VsLHZpYnJhdGlvbiIsIHZvaWQpOworREVDTEFSRV9FV0tf
VklFV19DQUxMQkFDSyhDb250ZW50c1NpemVDaGFuZ2VkLCAiY29udGVudHMsc2l6ZSxjaGFuZ2Vk
IiwgRXdrX1NpemUqKTsKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soRG93bmxvYWRKb2JDYW5j
ZWxsZWQsICJkb3dubG9hZCxjYW5jZWxsZWQiLCBFd2tfRG93bmxvYWRfSm9iKik7CiBERUNMQVJF
X0VXS19WSUVXX0NBTExCQUNLKERvd25sb2FkSm9iRmFpbGVkLCAiZG93bmxvYWQsZmFpbGVkIiwg
RXdrX0Rvd25sb2FkX0pvYl9FcnJvciopOwogREVDTEFSRV9FV0tfVklFV19DQUxMQkFDSyhEb3du
bG9hZEpvYkZpbmlzaGVkLCAiZG93bmxvYWQsZmluaXNoZWQiLCBFd2tfRG93bmxvYWRfSm9iKik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3SW1w
bC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3SW1wbC5jcHAK
aW5kZXggMjkxNjFmZjIzYjFkNjUzMTQ1MGQzZjZjYjQ2NDAwY2E4ZjE4ZDM1NC4uZWQ3ZjZjYjU5
ZDQ2NjJlNDQ2NTFlZWQxMDU3MzlmYzJmYjdjYmFlYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcApAQCAtNzMxLDExICs3MzEsMTEgQEAg
dm9pZCBFd2tWaWV3SW1wbDo6ZGlzbWlzc0NvbG9yUGlja2VyKCkKIAogdm9pZCBFd2tWaWV3SW1w
bDo6aW5mb3JtQ29udGVudHNTaXplQ2hhbmdlKGNvbnN0IEludFNpemUmIHNpemUpCiB7Ci0jaWYg
VVNFKENPT1JESU5BVEVEX0dSQVBISUNTKQotICAgIG1fcGFnZUNsaWVudC0+ZGlkQ2hhbmdlQ29u
dGVudHNTaXplKHNpemUpOwotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0oc2l6ZSk7Ci0jZW5kaWYK
KyAgICAvLyBGSVhNRTogSXQgc2hvdWxkIGJlIGNoYW5nZWQgdG8gRXZhc19Db29yZF9TaXplIGFm
dGVyIEVGTCAxLjgKKyAgICBFd2tfU2l6ZSBjb250ZW50c1NpemU7CisgICAgY29udGVudHNTaXpl
LncgPSBzaXplLndpZHRoKCk7CisgICAgY29udGVudHNTaXplLmggPSBzaXplLmhlaWdodCgpOwor
ICAgIHNtYXJ0Q2FsbGJhY2s8Q29udGVudHNTaXplQ2hhbmdlZD4oKS5jYWxsKCZjb250ZW50c1Np
emUpOwogfQogCiBDT01QSUxFX0FTU0VSVF9NQVRDSElOR19FTlVNKEVXS19URVhUX0RJUkVDVElP
Tl9SSUdIVF9UT19MRUZULCBSVEwpOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9lZmwvZXdrX3ZpZXcuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZs
L2V3a192aWV3LmgKaW5kZXggOWE0MDhhYjVlNGRkMmQwYzhlN2IzYmEzZDAyMjBiMGIxZmMxMzcy
Mi4uYjRkMDA2MGQxYjNjMTEzZGQwZjA0NTAyOTU0ODU0ZWI1MWY1NWViNSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvZXdrX3ZpZXcuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfdmlldy5oCkBAIC0zMCw2ICszMCw3IEBACiAg
KiAgIGV3a19hdXRoX3JlcXVlc3RfcmVmKCkgb24gdGhlIHJlcXVlc3Qgb2JqZWN0IHRvIHByb2Nl
c3MgdGhlIGF1dGhlbnRpY2F0aW9uIGFzeW5jaHJvbm91c2x5LgogICogLSAiYmFjayxmb3J3YXJk
LGxpc3QsY2hhbmdlZCIsIHZvaWQ6IHJlcG9ydHMgdGhhdCB0aGUgdmlldydzIGJhY2sgLyBmb3J3
YXJkIGxpc3QgaGFkIGNoYW5nZWQuCiAgKiAtICJjYW5jZWwsdmlicmF0aW9uIiwgdm9pZDogcmVx
dWVzdCB0byBjYW5jZWwgdGhlIHZpYnJhdGlvbi4KKyAqIC0gImNvbnRlbnRzLHNpemUsY2hhbmdl
ZCIsIEV3a19TaXplKjogcmVwb3J0cyBjb250ZW50cyBzaXplIHdlcmUgY2hhbmdlZCBkdWUgbmV3
IGxheW91dCwgc2NyaXB0IGFjdGlvbnMgb3IgYW55IG90aGVyIGV2ZW50cy4KICAqIC0gImRvd25s
b2FkLGNhbmNlbGxlZCIsIEV3a19Eb3dubG9hZF9Kb2IqOiByZXBvcnRzIHRoYXQgYSBkb3dubG9h
ZCB3YXMgZWZmZWN0aXZlbHkgY2FuY2VsbGVkLgogICogLSAiZG93bmxvYWQsZmFpbGVkIiwgRXdr
X0Rvd25sb2FkX0pvYl9FcnJvcio6IHJlcG9ydHMgdGhhdCBhIGRvd25sb2FkIGZhaWxlZCB3aXRo
IHRoZSBnaXZlbiBlcnJvci4KICAqIC0gImRvd25sb2FkLGZpbmlzaGVkIiwgRXdrX0Rvd25sb2Fk
X0pvYio6IHJlcG9ydHMgdGhhdCBhIGRvd25sb2FkIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkuCkBA
IC0yNzIsNiArMjczLDE4IEBAIHN0cnVjdCBFd2tfRG93bmxvYWRfSm9iX0Vycm9yIHsKICAgICBF
d2tfRXJyb3IgKmVycm9yOyAvKio8IGRvd25sb2FkIGVycm9yICovCiB9OwogCisvLy8gQ3JlYXRl
cyBhIHR5cGUgbmFtZSBmb3IgRXdrX1NpemUuCit0eXBlZGVmIHN0cnVjdCBFd2tfU2l6ZSBFd2tf
U2l6ZTsKKworLyoqCisgKiBAYnJpZWYgU3RydWN0dXJlIHJlcHJlc2VudGluZyBzaXplLgorICog
QGluZm8gVGhpcyBzdHJ1Y3R1cmUgd2lsbCBiZSBkZXByZWNhdGVkIGFmdGVyIEVGTCAxLjgKKyAq
Lworc3RydWN0IEV3a19TaXplIHsKKyAgICBFdmFzX0Nvb3JkIHc7IC8qKjwgd2lkdGggKi8KKyAg
ICBFdmFzX0Nvb3JkIGg7IC8qKjwgaGVpZ2h0ICovCit9OworCiAvKioKICAqIEVudW0gdmFsdWVz
IHVzZWQgdG8gc3BlY2lmeSBzZWFyY2ggb3B0aW9ucy4KICAqIEBicmllZiAgIFByb3ZpZGVzIG9w
dGlvbiB0byBmaW5kIHRleHQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNwcAppbmRleCAxNDkxY2M3ZDliMWFkOTQ3
OTUxMzEzNDVlMGY3NmJhMjMzYjIwZTI5Li4xMTgwZWIxMjk5MmY2YWUwZGUzZThkOTgyZjExMTk2
NzY2ZTdkZjk4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC90
ZXN0cy90ZXN0X2V3azJfdmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9lZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwCkBAIC04ODEsMyArODgxLDI3IEBAIFRFU1Rf
RihFV0syVW5pdFRlc3RCYXNlLCBld2tfY29udGV4dF92aWJyYXRpb25fY2xpZW50X2NhbGxiYWNr
c19zZXQpCiAgICAgQVNTRVJUX0ZBTFNFKGRhdGEuZGlkUmVjZWl2ZUNhbmNlbFZpYnJhdGlvbik7
CiB9CiAKK3N0YXRpYyB2b2lkIG9uQ29udGVudHNTaXplQ2hhbmdlZCh2b2lkKiB1c2VyRGF0YSwg
RXZhc19PYmplY3QqLCB2b2lkKiBldmVudEluZm8pCit7CisgICAgYm9vbCogcmVzdWx0ID0gc3Rh
dGljX2Nhc3Q8Ym9vbCo+KHVzZXJEYXRhKTsKKyAgICAvLyBGSVhNRTogSXQgc2hvdWxkIGJlIGNo
YW5nZWQgdG8gRXZhc19Db29yZF9TaXplIGFmdGVyIEVGTCAxLjgKKyAgICBFd2tfU2l6ZSogc2l6
ZSA9IHN0YXRpY19jYXN0PEV3a19TaXplKj4oZXZlbnRJbmZvKTsKKworICAgIGlmIChzaXplLT53
ID09IDIwMDAgJiYgc2l6ZS0+aCA9PSAzMDAwKQorICAgICAgICAqcmVzdWx0ID0gdHJ1ZTsKK30K
KworVEVTVF9GKEVXSzJVbml0VGVzdEJhc2UsIGV3a192aWV3X2NvbnRlbnRzX3NpemVfY2hhbmdl
ZCkKK3sKKyAgICBjb25zdCBjaGFyIHRleHRGaW5kSFRNTFtdID0KKyAgICAgICAgIjwhRE9DVFlQ
RSBodG1sPiIKKyAgICAgICAgIjxib2R5IHdpZHRoPTIwMDAgaGVpZ2h0PTMwMDA+IgorICAgICAg
ICAiPC9ib2R5PiI7CisKKyAgICBib29sIHNpemVDaGFuZ2VkID0gZmFsc2U7CisgICAgZXZhc19v
YmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKHdlYlZpZXcoKSwgImNvbnRlbnRzLHNpemUsY2hhbmdl
ZCIsIG9uQ29udGVudHNTaXplQ2hhbmdlZCwgJnNpemVDaGFuZ2VkKTsKKyAgICB3aGlsZSAoc2l6
ZUNoYW5nZWQpCisgICAgICAgIGVjb3JlX21haW5fbG9vcF9pdGVyYXRlKCk7CisKKyAgICBldmFz
X29iamVjdF9zbWFydF9jYWxsYmFja19kZWwod2ViVmlldygpLCAiY29udGVudHMsc2l6ZSxjaGFu
Z2VkIiwgb25Db250ZW50c1NpemVDaGFuZ2VkKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudERlZmF1bHRJbXBsLmNwcCBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudERlZmF1bHRJbXBsLmNwcAppbmRleCBjZWZmNTM0
NjhhMWFjMjYyMjNhMDAyNzM5Y2I4MmMxZTFmNTNlZDUzLi5iMTIyMzdhY2ZjZDUxNDhiMTg1M2Nl
MTIxYWE1Mjk5YjU2ZWVkMzA5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
ZWZsL1BhZ2VDbGllbnREZWZhdWx0SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL2VmbC9QYWdlQ2xpZW50RGVmYXVsdEltcGwuY3BwCkBAIC05NCw5ICs5NCw5IEBAIHZvaWQg
UGFnZUNsaWVudERlZmF1bHRJbXBsOjpkaWRDaGFuZ2VDb250ZW50c1NpemUoY29uc3QgV2ViQ29y
ZTo6SW50U2l6ZSYgc2l6ZSkKICNpZiBVU0UoVElMRURfQkFDS0lOR19TVE9SRSkKICAgICBBU1NF
UlQobV9wYWdlVmlld3BvcnRDb250cm9sbGVyKTsKICAgICBtX3BhZ2VWaWV3cG9ydENvbnRyb2xs
ZXItPmRpZENoYW5nZUNvbnRlbnRzU2l6ZShzaXplKTsKLSNlbHNlCi0gICAgbV92aWV3SW1wbC0+
aW5mb3JtQ29udGVudHNTaXplQ2hhbmdlKHNpemUpOwogI2VuZGlmCisKKyAgICBtX3ZpZXdJbXBs
LT5pbmZvcm1Db250ZW50c1NpemVDaGFuZ2Uoc2l6ZSk7CiB9CiAKICNpZiBVU0UoVElMRURfQkFD
S0lOR19TVE9SRSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFn
ZUNsaWVudExlZ2FjeUltcGwuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdl
Q2xpZW50TGVnYWN5SW1wbC5jcHAKaW5kZXggNmYzMDViZGQ2MzA3MDNhMTllZmRhNjNhNmE1ODMx
Y2ZjN2ExN2RkZS4uM2I2ZDU2YWI2NGJkNTRjMTZiZTdiYzUzYWM4MDgyOWQ0YWI1Y2YyNiAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50TGVnYWN5SW1w
bC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50TGVnYWN5
SW1wbC5jcHAKQEAgLTc4LDkgKzc4LDkgQEAgdm9pZCBQYWdlQ2xpZW50TGVnYWN5SW1wbDo6ZGlk
Q2hhbmdlQ29udGVudHNTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNpemUpCiAgICAgLy8g
bV92aWV3SW1wbC0+aW5mb3JtQ29udGVudFNpemVDaGFuZ2VkIHdpbGwgYmUgY2FsbGVkIGFzIGEg
cmVzdWx0IG9mIHNldENvbnRlbnRzU2l6ZQogICAgIG1fdmlld0ltcGwtPnBhZ2UoKS0+ZHJhd2lu
Z0FyZWEoKS0+bGF5ZXJUcmVlQ29vcmRpbmF0b3JQcm94eSgpLT5zZXRDb250ZW50c1NpemUoRmxv
YXRTaXplKHNpemUud2lkdGgoKSwgc2l6ZS5oZWlnaHQoKSkpOwogICAgIG1fdmlld0ltcGwtPnVw
ZGF0ZSgpOwotI2Vsc2UKLSAgICBtX3ZpZXdJbXBsLT5pbmZvcm1Db250ZW50c1NpemVDaGFuZ2Uo
c2l6ZSk7CiAjZW5kaWYKKworICAgIG1fdmlld0ltcGwtPmluZm9ybUNvbnRlbnRzU2l6ZUNoYW5n
ZShzaXplKTsKIH0KIAogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQpkaWZmIC0tZ2l0IGEv
U291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQu
Y3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVD
bGllbnQuY3BwCmluZGV4IDJhNWRhNWM1OTg2MDczNmE1NTg0YjBmMWM1NDFkZjE2OGIwYzk3ZDcu
LmQ0ZDc3YTVlMDAzMzBlOWRhZDlhODNjMGEzNTUyM2MzYzc3YzQ3NmEgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9t
ZUNsaWVudC5jcHAKQEAgLTQ0NSwxNSArNDQ1LDE2IEBAIHZvaWQgV2ViQ2hyb21lQ2xpZW50Ojpj
b250ZW50c1NpemVDaGFuZ2VkKEZyYW1lKiBmcmFtZSwgY29uc3QgSW50U2l6ZSYgLypzaXplKi8p
CiAgICAgaWYgKGZyYW1lLT5wYWdlKCktPm1haW5GcmFtZSgpICE9IGZyYW1lKQogICAgICAgICBy
ZXR1cm47CiAKLSNpZiBQTEFURk9STShRVCkgfHwgKFBMQVRGT1JNKEVGTCkgJiYgVVNFKFRJTEVE
X0JBQ0tJTkdfU1RPUkUpKQorI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQogICAgIGlmICht
X3BhZ2UtPnVzZUZpeGVkTGF5b3V0KCkpIHsKICAgICAgICAgLy8gVGhlIGJlbG93IG1ldGhvZCB1
cGRhdGVzIHRoZSBzaXplKCkuCiAgICAgICAgIG1fcGFnZS0+cmVzaXplVG9Db250ZW50c0lmTmVl
ZGVkKCk7CiAgICAgICAgIG1fcGFnZS0+ZHJhd2luZ0FyZWEoKS0+bGF5ZXJUcmVlSG9zdCgpLT5z
aXplRGlkQ2hhbmdlKG1fcGFnZS0+c2l6ZSgpKTsKICAgICB9CisjZW5kaWYKIAorI2lmIFBMQVRG
T1JNKFFUKSB8fCBQTEFURk9STShFRkwpCiAgICAgbV9wYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OkRpZENoYW5nZUNvbnRlbnRzU2l6ZShtX3BhZ2UtPnNpemUoKSkpOwotCiAjZW5k
aWYKIAogICAgIEZyYW1lVmlldyogZnJhbWVWaWV3ID0gZnJhbWUtPnZpZXcoKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176742</attachid>
            <date>2012-11-29 08:49:00 -0800</date>
            <delta_ts>2012-11-29 20:19:37 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103094-20121130014633.patch</filename>
            <type>text/plain</type>
            <size>9304</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2MTMzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZDQ5MTJiNjQ0MWY0Zjc5
OTZlZDJjNzczOTJlNzU4Yjc0OWNhMTQwZS4uZTU2NGRhODg0ZmQ5NjRhZDQ5ODUwMjViMTZkNTJl
MThhNjY4OTc3MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTExLTI5ICBSeXVh
biBDaG9pICA8cnl1YW4uY2hvaUBzYW1zdW5nLmNvbT4KKworICAgICAgICBbRUZMXVtXSzJdIEFk
ZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsIHRvIHRoZSBld2tfdmlldyBBUEkKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzA5NAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggZW1p
dHMgc2lnbmFsIHRvIGxldCBhcHBsaWNhdGlvbnMga25vdyBjb250ZW50cyBzaXplLgorCisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0NhbGxiYWNrcy5oOgorICAgICAgICAoRXdr
Vmlld0NhbGxiYWNrcyk6IEFkZGVkIGNvbnRlbnRzLHNpemUsY2hhbmdlZCBzaWduYWwuCisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuY3BwOgorICAgICAgICAoRXdrVmll
d0ltcGw6OmluZm9ybUNvbnRlbnRzU2l6ZUNoYW5nZSk6CisgICAgICAgIENsZWFuZWQgdXAgZGVh
ZCBjb2RlIGFuZCBlbWl0dGVkIGNvbnRlbnRzLHNpemUsY2hhbmdlZCBzaWduYWwuCisgICAgICAg
ICogVUlQcm9jZXNzL0FQSS9lZmwvZXdrX3ZpZXcuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L2VmbC90ZXN0cy90ZXN0X2V3azJfdmlldy5jcHA6IEFkZGVkIHRlc3QgY2FzZS4KKyAgICAgICAg
KG9uQ29udGVudHNTaXplQ2hhbmdlZCk6CisgICAgICAgIChURVNUX0YpOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9lZmwvUGFnZUNsaWVudERlZmF1bHRJbXBsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6
UGFnZUNsaWVudERlZmF1bHRJbXBsOjpkaWRDaGFuZ2VDb250ZW50c1NpemUpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudExlZ2FjeUltcGwuY3BwOgorICAgICAgICAoV2ViS2l0
OjpQYWdlQ2xpZW50TGVnYWN5SW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKToKKyAgICAgICAg
KiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHA6CisgICAgICAg
IChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6Y29udGVudHNTaXplQ2hhbmdlZCk6CisgICAgICAg
IFNlbmRlZCBEaWRDaGFuZ2VDb250ZW50c1NpemUgbWVzc2FnZSBhbHRob3VnaCBUSUxFRF9CQUNL
SU5HU1RPUkUgaXMgZGlzYWJsZWQuCisKIDIwMTItMTEtMjkgIE1pa2hhaWwgUG96ZG55YWtvdiAg
PG1pa2hhaWwucG96ZG55YWtvdkBpbnRlbC5jb20+CiAKICAgICAgICAgW1dLMl0gVGlsZWRCYWNr
aW5nU3RvcmU6IFVzZXIgZXZlbnRzIGFyZSBzZW50IHRvIHdlYiBwYWdlIGJlZm9yZSBpdCBpcyBz
aG93bgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmll
d0NhbGxiYWNrcy5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0Nh
bGxiYWNrcy5oCmluZGV4IGNmODIyYTJlZGNiNjY0YjQyNjQzZjNjYTMxOWNjNjhhMmI4MGQ4ZDku
LjRmZTIzMGI1NGM3OTg3YzIzMmI2NDVhOTBhN2YyNzI5N2Q5NGQ3YTUgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdDYWxsYmFja3MuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3Q2FsbGJhY2tzLmgKQEAgLTUw
LDYgKzUwLDcgQEAgc3RydWN0IEV3a19Eb3dubG9hZF9Kb2JfRXJyb3I7CiBzdHJ1Y3QgRXdrX1Jl
c291cmNlX1JlcXVlc3Q7CiBzdHJ1Y3QgRXdrX1Jlc291cmNlX0xvYWRfUmVzcG9uc2U7CiBzdHJ1
Y3QgRXdrX1Jlc291cmNlX0xvYWRfRXJyb3I7CitzdHJ1Y3QgRXdrX1NpemU7CiAKIG5hbWVzcGFj
ZSBFd2tWaWV3Q2FsbGJhY2tzIHsKIApAQCAtNTcsNiArNTgsNyBAQCBlbnVtIENhbGxiYWNrVHlw
ZSB7CiAgICAgQXV0aGVudGljYXRpb25SZXF1ZXN0LAogICAgIEJhY2tGb3J3YXJkTGlzdENoYW5n
ZSwKICAgICBDYW5jZWxWaWJyYXRpb24sCisgICAgQ29udGVudHNTaXplQ2hhbmdlZCwKICAgICBE
b3dubG9hZEpvYkNhbmNlbGxlZCwKICAgICBEb3dubG9hZEpvYkZhaWxlZCwKICAgICBEb3dubG9h
ZEpvYkZpbmlzaGVkLApAQCAtMTYxLDYgKzE2Myw3IEBAIHN0cnVjdCBDYWxsQmFja0luZm88Y2Fs
bGJhY2tUeXBlPiB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgXAogREVDTEFSRV9FV0tfVklF
V19DQUxMQkFDSyhBdXRoZW50aWNhdGlvblJlcXVlc3QsICJhdXRoZW50aWNhdGlvbixyZXF1ZXN0
IiwgRXdrX0F1dGhfUmVxdWVzdCopOwogREVDTEFSRV9FV0tfVklFV19DQUxMQkFDSyhCYWNrRm9y
d2FyZExpc3RDaGFuZ2UsICJiYWNrLGZvcndhcmQsbGlzdCxjaGFuZ2VkIiwgdm9pZCk7CiBERUNM
QVJFX0VXS19WSUVXX0NBTExCQUNLKENhbmNlbFZpYnJhdGlvbiwgImNhbmNlbCx2aWJyYXRpb24i
LCB2b2lkKTsKK0RFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soQ29udGVudHNTaXplQ2hhbmdlZCwg
ImNvbnRlbnRzLHNpemUsY2hhbmdlZCIsIEV3a19TaXplKik7CiBERUNMQVJFX0VXS19WSUVXX0NB
TExCQUNLKERvd25sb2FkSm9iQ2FuY2VsbGVkLCAiZG93bmxvYWQsY2FuY2VsbGVkIiwgRXdrX0Rv
d25sb2FkX0pvYiopOwogREVDTEFSRV9FV0tfVklFV19DQUxMQkFDSyhEb3dubG9hZEpvYkZhaWxl
ZCwgImRvd25sb2FkLGZhaWxlZCIsIEV3a19Eb3dubG9hZF9Kb2JfRXJyb3IqKTsKIERFQ0xBUkVf
RVdLX1ZJRVdfQ0FMTEJBQ0soRG93bmxvYWRKb2JGaW5pc2hlZCwgImRvd25sb2FkLGZpbmlzaGVk
IiwgRXdrX0Rvd25sb2FkX0pvYiopOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9lZmwvRXdrVmlld0ltcGwuY3BwCmluZGV4IDUwZTRjYjIwNTU0MmIxNjZjNDY4ZmM5YjA3ZThl
OWVmZjBhZTVlNjAuLjVhOTNhOGVlNGZlZWUwOTZjZjRlMTljYTEyNDg3MjVhMzEzNTgzMWUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3SW1wbC5jcHAK
QEAgLTczNiwxMSArNzM2LDExIEBAIHZvaWQgRXdrVmlld0ltcGw6OmRpc21pc3NDb2xvclBpY2tl
cigpCiAKIHZvaWQgRXdrVmlld0ltcGw6OmluZm9ybUNvbnRlbnRzU2l6ZUNoYW5nZShjb25zdCBJ
bnRTaXplJiBzaXplKQogewotI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKLSAgICBtX3Bh
Z2VDbGllbnQtPmRpZENoYW5nZUNvbnRlbnRzU2l6ZShzaXplKTsKLSNlbHNlCi0gICAgVU5VU0VE
X1BBUkFNKHNpemUpOwotI2VuZGlmCisgICAgLy8gRklYTUU6IEl0IHNob3VsZCBiZSBjaGFuZ2Vk
IHRvIEV2YXNfQ29vcmRfU2l6ZSBhZnRlciBFRkwgMS44CisgICAgRXdrX1NpemUgY29udGVudHNT
aXplOworICAgIGNvbnRlbnRzU2l6ZS53ID0gc2l6ZS53aWR0aCgpOworICAgIGNvbnRlbnRzU2l6
ZS5oID0gc2l6ZS5oZWlnaHQoKTsKKyAgICBzbWFydENhbGxiYWNrPENvbnRlbnRzU2l6ZUNoYW5n
ZWQ+KCkuY2FsbCgmY29udGVudHNTaXplKTsKIH0KIAogQ09NUElMRV9BU1NFUlRfTUFUQ0hJTkdf
RU5VTShFV0tfVEVYVF9ESVJFQ1RJT05fUklHSFRfVE9fTEVGVCwgUlRMKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL2V3a192aWV3LmggYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfdmlldy5oCmluZGV4IDlhNDA4YWI1ZTRkZDJkMGM4
ZTdiM2JhM2QwMjIwYjBiMWZjMTM3MjIuLmI0ZDAwNjBkMWIzYzExM2RkMGYwNDUwMjk1NDg1NGVi
NTFmNTVlYjUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL2V3
a192aWV3LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvZXdrX3ZpZXcu
aApAQCAtMzAsNiArMzAsNyBAQAogICogICBld2tfYXV0aF9yZXF1ZXN0X3JlZigpIG9uIHRoZSBy
ZXF1ZXN0IG9iamVjdCB0byBwcm9jZXNzIHRoZSBhdXRoZW50aWNhdGlvbiBhc3luY2hyb25vdXNs
eS4KICAqIC0gImJhY2ssZm9yd2FyZCxsaXN0LGNoYW5nZWQiLCB2b2lkOiByZXBvcnRzIHRoYXQg
dGhlIHZpZXcncyBiYWNrIC8gZm9yd2FyZCBsaXN0IGhhZCBjaGFuZ2VkLgogICogLSAiY2FuY2Vs
LHZpYnJhdGlvbiIsIHZvaWQ6IHJlcXVlc3QgdG8gY2FuY2VsIHRoZSB2aWJyYXRpb24uCisgKiAt
ICJjb250ZW50cyxzaXplLGNoYW5nZWQiLCBFd2tfU2l6ZSo6IHJlcG9ydHMgY29udGVudHMgc2l6
ZSB3ZXJlIGNoYW5nZWQgZHVlIG5ldyBsYXlvdXQsIHNjcmlwdCBhY3Rpb25zIG9yIGFueSBvdGhl
ciBldmVudHMuCiAgKiAtICJkb3dubG9hZCxjYW5jZWxsZWQiLCBFd2tfRG93bmxvYWRfSm9iKjog
cmVwb3J0cyB0aGF0IGEgZG93bmxvYWQgd2FzIGVmZmVjdGl2ZWx5IGNhbmNlbGxlZC4KICAqIC0g
ImRvd25sb2FkLGZhaWxlZCIsIEV3a19Eb3dubG9hZF9Kb2JfRXJyb3IqOiByZXBvcnRzIHRoYXQg
YSBkb3dubG9hZCBmYWlsZWQgd2l0aCB0aGUgZ2l2ZW4gZXJyb3IuCiAgKiAtICJkb3dubG9hZCxm
aW5pc2hlZCIsIEV3a19Eb3dubG9hZF9Kb2IqOiByZXBvcnRzIHRoYXQgYSBkb3dubG9hZCBjb21w
bGV0ZWQgc3VjY2Vzc2Z1bGx5LgpAQCAtMjcyLDYgKzI3MywxOCBAQCBzdHJ1Y3QgRXdrX0Rvd25s
b2FkX0pvYl9FcnJvciB7CiAgICAgRXdrX0Vycm9yICplcnJvcjsgLyoqPCBkb3dubG9hZCBlcnJv
ciAqLwogfTsKIAorLy8vIENyZWF0ZXMgYSB0eXBlIG5hbWUgZm9yIEV3a19TaXplLgordHlwZWRl
ZiBzdHJ1Y3QgRXdrX1NpemUgRXdrX1NpemU7CisKKy8qKgorICogQGJyaWVmIFN0cnVjdHVyZSBy
ZXByZXNlbnRpbmcgc2l6ZS4KKyAqIEBpbmZvIFRoaXMgc3RydWN0dXJlIHdpbGwgYmUgZGVwcmVj
YXRlZCBhZnRlciBFRkwgMS44CisgKi8KK3N0cnVjdCBFd2tfU2l6ZSB7CisgICAgRXZhc19Db29y
ZCB3OyAvKio8IHdpZHRoICovCisgICAgRXZhc19Db29yZCBoOyAvKio8IGhlaWdodCAqLworfTsK
KwogLyoqCiAgKiBFbnVtIHZhbHVlcyB1c2VkIHRvIHNwZWNpZnkgc2VhcmNoIG9wdGlvbnMuCiAg
KiBAYnJpZWYgICBQcm92aWRlcyBvcHRpb24gdG8gZmluZCB0ZXh0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC90ZXN0cy90ZXN0X2V3azJfdmlldy5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC90ZXN0cy90ZXN0X2V3azJfdmlldy5jcHAK
aW5kZXggMjVmZTA2OThiNjc4OWMzNmEzZmU4MmRiNTFjMmVjZWI0MWQxOGNjOS4uNzA4NzZmMWJm
OTk5M2VkMzViZjZjNmVkYTk0YzEzZTlmNzNmZDVhZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9lZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNwcApAQCAt
ODgxLDMgKzg4MSwyNyBAQCBURVNUX0YoRVdLMlVuaXRUZXN0QmFzZSwgZXdrX2NvbnRleHRfdmli
cmF0aW9uX2NsaWVudF9jYWxsYmFja3Nfc2V0KQogICAgIEFTU0VSVF9GQUxTRShkYXRhLmRpZFJl
Y2VpdmVDYW5jZWxWaWJyYXRpb24pOwogfQogCitzdGF0aWMgdm9pZCBvbkNvbnRlbnRzU2l6ZUNo
YW5nZWQodm9pZCogdXNlckRhdGEsIEV2YXNfT2JqZWN0Kiwgdm9pZCogZXZlbnRJbmZvKQorewor
ICAgIGJvb2wqIHJlc3VsdCA9IHN0YXRpY19jYXN0PGJvb2wqPih1c2VyRGF0YSk7CisgICAgLy8g
RklYTUU6IEl0IHNob3VsZCBiZSBjaGFuZ2VkIHRvIEV2YXNfQ29vcmRfU2l6ZSBhZnRlciBFRkwg
MS44CisgICAgRXdrX1NpemUqIHNpemUgPSBzdGF0aWNfY2FzdDxFd2tfU2l6ZSo+KGV2ZW50SW5m
byk7CisKKyAgICBpZiAoc2l6ZS0+dyA9PSAyMDAwICYmIHNpemUtPmggPT0gMzAwMCkKKyAgICAg
ICAgKnJlc3VsdCA9IHRydWU7Cit9CisKK1RFU1RfRihFV0syVW5pdFRlc3RCYXNlLCBld2tfdmll
d19jb250ZW50c19zaXplX2NoYW5nZWQpCit7CisgICAgY29uc3QgY2hhciB0ZXh0RmluZEhUTUxb
XSA9CisgICAgICAgICI8IURPQ1RZUEUgaHRtbD4iCisgICAgICAgICI8Ym9keSB3aWR0aD0yMDAw
IGhlaWdodD0zMDAwPiIKKyAgICAgICAgIjwvYm9keT4iOworCisgICAgYm9vbCBzaXplQ2hhbmdl
ZCA9IGZhbHNlOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZCh3ZWJWaWV3KCks
ICJjb250ZW50cyxzaXplLGNoYW5nZWQiLCBvbkNvbnRlbnRzU2l6ZUNoYW5nZWQsICZzaXplQ2hh
bmdlZCk7CisgICAgd2hpbGUgKHNpemVDaGFuZ2VkKQorICAgICAgICBlY29yZV9tYWluX2xvb3Bf
aXRlcmF0ZSgpOworCisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfZGVsKHdlYlZpZXco
KSwgImNvbnRlbnRzLHNpemUsY2hhbmdlZCIsIG9uQ29udGVudHNTaXplQ2hhbmdlZCk7Cit9CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZhdWx0
SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZhdWx0
SW1wbC5jcHAKaW5kZXggY2VmZjUzNDY4YTFhYzI2MjIzYTAwMjczOWNiODJjMWUxZjUzZWQ1My4u
YjEyMjM3YWNmY2Q1MTQ4YjE4NTNjZTEyMWFhNTI5OWI1NmVlZDMwOSAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RGVmYXVsdEltcGwuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudERlZmF1bHRJbXBsLmNwcApA
QCAtOTQsOSArOTQsOSBAQCB2b2lkIFBhZ2VDbGllbnREZWZhdWx0SW1wbDo6ZGlkQ2hhbmdlQ29u
dGVudHNTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNpemUpCiAjaWYgVVNFKFRJTEVEX0JB
Q0tJTkdfU1RPUkUpCiAgICAgQVNTRVJUKG1fcGFnZVZpZXdwb3J0Q29udHJvbGxlcik7CiAgICAg
bV9wYWdlVmlld3BvcnRDb250cm9sbGVyLT5kaWRDaGFuZ2VDb250ZW50c1NpemUoc2l6ZSk7Ci0j
ZWxzZQotICAgIG1fdmlld0ltcGwtPmluZm9ybUNvbnRlbnRzU2l6ZUNoYW5nZShzaXplKTsKICNl
bmRpZgorCisgICAgbV92aWV3SW1wbC0+aW5mb3JtQ29udGVudHNTaXplQ2hhbmdlKHNpemUpOwog
fQogCiAjaWYgVVNFKFRJTEVEX0JBQ0tJTkdfU1RPUkUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnRMZWdhY3lJbXBsLmNwcCBiL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudExlZ2FjeUltcGwuY3BwCmluZGV4IGY2MmI4Njcx
YTkzMDg4MjY4YjlkYWVkNDk4M2E1NDNjMGFjMTZlMzcuLjlkN2EzMzE3ZDlmMGVmYWM4OTk1YmU3
MDhkNWQ5ZWI3Y2U0ZDdiZDMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9l
ZmwvUGFnZUNsaWVudExlZ2FjeUltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9lZmwvUGFnZUNsaWVudExlZ2FjeUltcGwuY3BwCkBAIC03OCw5ICs3OCw5IEBAIHZvaWQgUGFn
ZUNsaWVudExlZ2FjeUltcGw6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJiBzaXplKQogICAgIC8vIG1fdmlld0ltcGwtPmluZm9ybUNvbnRlbnRTaXplQ2hhbmdl
ZCB3aWxsIGJlIGNhbGxlZCBhcyBhIHJlc3VsdCBvZiBzZXRDb250ZW50c1NpemUKICAgICBtX3Zp
ZXdJbXBsLT5wYWdlKCktPmRyYXdpbmdBcmVhKCktPmxheWVyVHJlZUNvb3JkaW5hdG9yUHJveHko
KS0+c2V0Q29udGVudHNTaXplKEZsb2F0U2l6ZShzaXplLndpZHRoKCksIHNpemUuaGVpZ2h0KCkp
KTsKICAgICBtX3ZpZXdJbXBsLT51cGRhdGUoKTsKLSNlbHNlCi0gICAgbV92aWV3SW1wbC0+aW5m
b3JtQ29udGVudHNTaXplQ2hhbmdlKHNpemUpOwogI2VuZGlmCisKKyAgICBtX3ZpZXdJbXBsLT5p
bmZvcm1Db250ZW50c1NpemVDaGFuZ2Uoc2l6ZSk7CiB9CiAKICNpZiBVU0UoVElMRURfQkFDS0lO
R19TVE9SRSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1
cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
Q29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAppbmRleCAyYTVkYTVjNTk4NjA3MzZhNTU4
NGIwZjFjNTQxZGYxNjhiMGM5N2Q3Li5kNGQ3N2E1ZTAwMzMwZTlkYWQ5YTgzYzBhMzU1MjNjM2M3
N2M0NzZhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkNocm9tZUNsaWVudC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCkBAIC00NDUsMTUgKzQ0NSwxNiBAQCB2
b2lkIFdlYkNocm9tZUNsaWVudDo6Y29udGVudHNTaXplQ2hhbmdlZChGcmFtZSogZnJhbWUsIGNv
bnN0IEludFNpemUmIC8qc2l6ZSovKQogICAgIGlmIChmcmFtZS0+cGFnZSgpLT5tYWluRnJhbWUo
KSAhPSBmcmFtZSkKICAgICAgICAgcmV0dXJuOwogCi0jaWYgUExBVEZPUk0oUVQpIHx8IChQTEFU
Rk9STShFRkwpICYmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKSkKKyNpZiBVU0UoVElMRURfQkFD
S0lOR19TVE9SRSkKICAgICBpZiAobV9wYWdlLT51c2VGaXhlZExheW91dCgpKSB7CiAgICAgICAg
IC8vIFRoZSBiZWxvdyBtZXRob2QgdXBkYXRlcyB0aGUgc2l6ZSgpLgogICAgICAgICBtX3BhZ2Ut
PnJlc2l6ZVRvQ29udGVudHNJZk5lZWRlZCgpOwogICAgICAgICBtX3BhZ2UtPmRyYXdpbmdBcmVh
KCktPmxheWVyVHJlZUhvc3QoKS0+c2l6ZURpZENoYW5nZShtX3BhZ2UtPnNpemUoKSk7CiAgICAg
fQorI2VuZGlmCiAKKyNpZiBQTEFURk9STShRVCkgfHwgUExBVEZPUk0oRUZMKQogICAgIG1fcGFn
ZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VDb250ZW50c1NpemUobV9w
YWdlLT5zaXplKCkpKTsKLQogI2VuZGlmCiAKICAgICBGcmFtZVZpZXcqIGZyYW1lVmlldyA9IGZy
YW1lLT52aWV3KCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176893</attachid>
            <date>2012-11-29 20:19:43 -0800</date>
            <delta_ts>2012-11-30 01:59:41 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103094-20121130131714.patch</filename>
            <type>text/plain</type>
            <size>10702</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2MTkxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZGM3N2JmNjBlMWYwNDZi
MjhhOThlNDFhZGI4Y2MxYjlkNmRjN2RjNC4uYTQ1NDY1NzZhZmRhN2U5NWFmNDExNTYyNmZhZTBm
OGVkZDg4YWUzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEyLTExLTI5ICBSeXVh
biBDaG9pICA8cnl1YW4uY2hvaUBnbWFpbC5jb20+CisKKyAgICAgICAgW0VGTF1bV0syXSBBZGQg
Y29udGVudHMsc2l6ZSxjaGFuZ2VkIHNpZ25hbCB0byB0aGUgZXdrX3ZpZXcgQVBJCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMwOTQKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGVtaXRz
IHNpZ25hbCB0byBsZXQgYXBwbGljYXRpb25zIGtub3cgY29udGVudHMgc2l6ZS4KKworICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdDYWxsYmFja3MuaDogQWRkZWQgY29udGVudHMs
c2l6ZSxjaGFuZ2VkIHNpZ25hbC4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3
SW1wbC5jcHA6IFJlbW92ZWQgZGVhZCBjb2RlLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZWZs
L0V3a1ZpZXdJbXBsLmg6IERpdHRvLgorICAgICAgICAoRXdrVmlld0ltcGwpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvZWZsL2V3a192aWV3Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9l
ZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwOiBBZGRlZCB0ZXN0IGNhc2UuCisgICAgICAgIChv
bkNvbnRlbnRzU2l6ZUNoYW5nZWQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9lZmwvUGFnZUNsaWVu
dERlZmF1bHRJbXBsLmNwcDogRW1pdHRlZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsLgor
ICAgICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50RGVmYXVsdEltcGw6OmRpZENoYW5nZUNvbnRlbnRz
U2l6ZSk6CisgICAgICAgICogVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHA6
IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50TGVnYWN5SW1wbDo6ZGlkQ2hhbmdl
Q29udGVudHNTaXplKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6Y29udGVu
dHNTaXplQ2hhbmdlZCk6CisgICAgICAgIFNlbmRlZCBEaWRDaGFuZ2VDb250ZW50c1NpemUgbWVz
c2FnZSBhbHRob3VnaCBUSUxFRF9CQUNLSU5HU1RPUkUgaXMgZGlzYWJsZWQuCisKIDIwMTItMTEt
MjkgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBJbml0
aWFsaXplIG1feHBjQ29ubmVjdGlvbiB0byBudWxsIGlmIHRoZSBpZGVudGlmaWVyIGRvZXNuJ3Qg
aGF2ZSBhbiBYUEMgY29ubmVjdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9lZmwvRXdrVmlld0NhbGxiYWNrcy5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9lZmwvRXdrVmlld0NhbGxiYWNrcy5oCmluZGV4IGNmODIyYTJlZGNiNjY0YjQyNjQzZjNj
YTMxOWNjNjhhMmI4MGQ4ZDkuLjRmZTIzMGI1NGM3OTg3YzIzMmI2NDVhOTBhN2YyNzI5N2Q5NGQ3
YTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdD
YWxsYmFja3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3
Q2FsbGJhY2tzLmgKQEAgLTUwLDYgKzUwLDcgQEAgc3RydWN0IEV3a19Eb3dubG9hZF9Kb2JfRXJy
b3I7CiBzdHJ1Y3QgRXdrX1Jlc291cmNlX1JlcXVlc3Q7CiBzdHJ1Y3QgRXdrX1Jlc291cmNlX0xv
YWRfUmVzcG9uc2U7CiBzdHJ1Y3QgRXdrX1Jlc291cmNlX0xvYWRfRXJyb3I7CitzdHJ1Y3QgRXdr
X1NpemU7CiAKIG5hbWVzcGFjZSBFd2tWaWV3Q2FsbGJhY2tzIHsKIApAQCAtNTcsNiArNTgsNyBA
QCBlbnVtIENhbGxiYWNrVHlwZSB7CiAgICAgQXV0aGVudGljYXRpb25SZXF1ZXN0LAogICAgIEJh
Y2tGb3J3YXJkTGlzdENoYW5nZSwKICAgICBDYW5jZWxWaWJyYXRpb24sCisgICAgQ29udGVudHNT
aXplQ2hhbmdlZCwKICAgICBEb3dubG9hZEpvYkNhbmNlbGxlZCwKICAgICBEb3dubG9hZEpvYkZh
aWxlZCwKICAgICBEb3dubG9hZEpvYkZpbmlzaGVkLApAQCAtMTYxLDYgKzE2Myw3IEBAIHN0cnVj
dCBDYWxsQmFja0luZm88Y2FsbGJhY2tUeXBlPiB7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAogREVDTEFSRV9FV0tfVklFV19DQUxMQkFDSyhBdXRoZW50aWNhdGlvblJlcXVlc3QsICJhdXRo
ZW50aWNhdGlvbixyZXF1ZXN0IiwgRXdrX0F1dGhfUmVxdWVzdCopOwogREVDTEFSRV9FV0tfVklF
V19DQUxMQkFDSyhCYWNrRm9yd2FyZExpc3RDaGFuZ2UsICJiYWNrLGZvcndhcmQsbGlzdCxjaGFu
Z2VkIiwgdm9pZCk7CiBERUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKENhbmNlbFZpYnJhdGlvbiwg
ImNhbmNlbCx2aWJyYXRpb24iLCB2b2lkKTsKK0RFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soQ29u
dGVudHNTaXplQ2hhbmdlZCwgImNvbnRlbnRzLHNpemUsY2hhbmdlZCIsIEV3a19TaXplKik7CiBE
RUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKERvd25sb2FkSm9iQ2FuY2VsbGVkLCAiZG93bmxvYWQs
Y2FuY2VsbGVkIiwgRXdrX0Rvd25sb2FkX0pvYiopOwogREVDTEFSRV9FV0tfVklFV19DQUxMQkFD
SyhEb3dubG9hZEpvYkZhaWxlZCwgImRvd25sb2FkLGZhaWxlZCIsIEV3a19Eb3dubG9hZF9Kb2Jf
RXJyb3IqKTsKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soRG93bmxvYWRKb2JGaW5pc2hlZCwg
ImRvd25sb2FkLGZpbmlzaGVkIiwgRXdrX0Rvd25sb2FkX0pvYiopOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuY3BwIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuY3BwCmluZGV4IDUwZTRjYjIwNTU0
MmIxNjZjNDY4ZmM5YjA3ZThlOWVmZjBhZTVlNjAuLjZlODllMDNjOGEyZjI3NzNjNzAxMzI0ODk4
YWRjMjkzZDQ1YWVjM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
ZWZsL0V3a1ZpZXdJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2Vm
bC9Fd2tWaWV3SW1wbC5jcHAKQEAgLTczNCwxNSArNzM0LDYgQEAgdm9pZCBFd2tWaWV3SW1wbDo6
ZGlzbWlzc0NvbG9yUGlja2VyKCkKIH0KICNlbmRpZgogCi12b2lkIEV3a1ZpZXdJbXBsOjppbmZv
cm1Db250ZW50c1NpemVDaGFuZ2UoY29uc3QgSW50U2l6ZSYgc2l6ZSkKLXsKLSNpZiBVU0UoQ09P
UkRJTkFURURfR1JBUEhJQ1MpCi0gICAgbV9wYWdlQ2xpZW50LT5kaWRDaGFuZ2VDb250ZW50c1Np
emUoc2l6ZSk7Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShzaXplKTsKLSNlbmRpZgotfQotCiBD
T01QSUxFX0FTU0VSVF9NQVRDSElOR19FTlVNKEVXS19URVhUX0RJUkVDVElPTl9SSUdIVF9UT19M
RUZULCBSVEwpOwogQ09NUElMRV9BU1NFUlRfTUFUQ0hJTkdfRU5VTShFV0tfVEVYVF9ESVJFQ1RJ
T05fTEVGVF9UT19SSUdIVCwgTFRSKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvZWZsL0V3a1ZpZXdJbXBsLmgKaW5kZXggY2IxODc1NjcyOTM4MGRiMDBmMGU0NzA2MDNiNjY2
NzRmYTU2MDcyMy4uZjA2YjNlOTE5MDc4N2M0MmRlYTkzMjVjNzBmZDY1YWQxNjgxMzFkZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3SW1wbC5oCkBAIC0x
OTIsNyArMTkyLDYgQEAgcHVibGljOgogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQogICAg
IHZvaWQgaW5mb3JtTG9hZENvbW1pdHRlZCgpOwogI2VuZGlmCi0gICAgdm9pZCBpbmZvcm1Db250
ZW50c1NpemVDaGFuZ2UoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2l6ZSk7CiAgICAgdW5zaWdu
ZWQgbG9uZyBsb25nIGluZm9ybURhdGFiYXNlUXVvdGFSZWFjaGVkKGNvbnN0IFN0cmluZyYgZGF0
YWJhc2VOYW1lLCBjb25zdCBTdHJpbmcmIGRpc3BsYXlOYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcg
Y3VycmVudFF1b3RhLCB1bnNpZ25lZCBsb25nIGxvbmcgY3VycmVudE9yaWdpblVzYWdlLCB1bnNp
Z25lZCBsb25nIGxvbmcgY3VycmVudERhdGFiYXNlVXNhZ2UsIHVuc2lnbmVkIGxvbmcgbG9uZyBl
eHBlY3RlZFVzYWdlKTsKIAogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvZXdrX3ZpZXcuaCBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL2V3a192aWV3LmgKaW5kZXggOWE0MDhhYjVlNGRkMmQw
YzhlN2IzYmEzZDAyMjBiMGIxZmMxMzcyMi4uYjRkMDA2MGQxYjNjMTEzZGQwZjA0NTAyOTU0ODU0
ZWI1MWY1NWViNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwv
ZXdrX3ZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfdmll
dy5oCkBAIC0zMCw2ICszMCw3IEBACiAgKiAgIGV3a19hdXRoX3JlcXVlc3RfcmVmKCkgb24gdGhl
IHJlcXVlc3Qgb2JqZWN0IHRvIHByb2Nlc3MgdGhlIGF1dGhlbnRpY2F0aW9uIGFzeW5jaHJvbm91
c2x5LgogICogLSAiYmFjayxmb3J3YXJkLGxpc3QsY2hhbmdlZCIsIHZvaWQ6IHJlcG9ydHMgdGhh
dCB0aGUgdmlldydzIGJhY2sgLyBmb3J3YXJkIGxpc3QgaGFkIGNoYW5nZWQuCiAgKiAtICJjYW5j
ZWwsdmlicmF0aW9uIiwgdm9pZDogcmVxdWVzdCB0byBjYW5jZWwgdGhlIHZpYnJhdGlvbi4KKyAq
IC0gImNvbnRlbnRzLHNpemUsY2hhbmdlZCIsIEV3a19TaXplKjogcmVwb3J0cyBjb250ZW50cyBz
aXplIHdlcmUgY2hhbmdlZCBkdWUgbmV3IGxheW91dCwgc2NyaXB0IGFjdGlvbnMgb3IgYW55IG90
aGVyIGV2ZW50cy4KICAqIC0gImRvd25sb2FkLGNhbmNlbGxlZCIsIEV3a19Eb3dubG9hZF9Kb2Iq
OiByZXBvcnRzIHRoYXQgYSBkb3dubG9hZCB3YXMgZWZmZWN0aXZlbHkgY2FuY2VsbGVkLgogICog
LSAiZG93bmxvYWQsZmFpbGVkIiwgRXdrX0Rvd25sb2FkX0pvYl9FcnJvcio6IHJlcG9ydHMgdGhh
dCBhIGRvd25sb2FkIGZhaWxlZCB3aXRoIHRoZSBnaXZlbiBlcnJvci4KICAqIC0gImRvd25sb2Fk
LGZpbmlzaGVkIiwgRXdrX0Rvd25sb2FkX0pvYio6IHJlcG9ydHMgdGhhdCBhIGRvd25sb2FkIGNv
bXBsZXRlZCBzdWNjZXNzZnVsbHkuCkBAIC0yNzIsNiArMjczLDE4IEBAIHN0cnVjdCBFd2tfRG93
bmxvYWRfSm9iX0Vycm9yIHsKICAgICBFd2tfRXJyb3IgKmVycm9yOyAvKio8IGRvd25sb2FkIGVy
cm9yICovCiB9OwogCisvLy8gQ3JlYXRlcyBhIHR5cGUgbmFtZSBmb3IgRXdrX1NpemUuCit0eXBl
ZGVmIHN0cnVjdCBFd2tfU2l6ZSBFd2tfU2l6ZTsKKworLyoqCisgKiBAYnJpZWYgU3RydWN0dXJl
IHJlcHJlc2VudGluZyBzaXplLgorICogQGluZm8gVGhpcyBzdHJ1Y3R1cmUgd2lsbCBiZSBkZXBy
ZWNhdGVkIGFmdGVyIEVGTCAxLjgKKyAqLworc3RydWN0IEV3a19TaXplIHsKKyAgICBFdmFzX0Nv
b3JkIHc7IC8qKjwgd2lkdGggKi8KKyAgICBFdmFzX0Nvb3JkIGg7IC8qKjwgaGVpZ2h0ICovCit9
OworCiAvKioKICAqIEVudW0gdmFsdWVzIHVzZWQgdG8gc3BlY2lmeSBzZWFyY2ggb3B0aW9ucy4K
ICAqIEBicmllZiAgIFByb3ZpZGVzIG9wdGlvbiB0byBmaW5kIHRleHQKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNw
cAppbmRleCAyNWZlMDY5OGI2Nzg5YzM2YTNmZTgyZGI1MWMyZWNlYjQxZDE4Y2M5Li5mM2RlOGRk
YmY2N2NlODU5MWVjZGNjMDVhYjU3ZDAxYjExOWZhZGYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC90ZXN0cy90ZXN0X2V3azJfdmlldy5jcHAKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwCkBA
IC04ODEsMyArODgxLDI3IEBAIFRFU1RfRihFV0syVW5pdFRlc3RCYXNlLCBld2tfY29udGV4dF92
aWJyYXRpb25fY2xpZW50X2NhbGxiYWNrc19zZXQpCiAgICAgQVNTRVJUX0ZBTFNFKGRhdGEuZGlk
UmVjZWl2ZUNhbmNlbFZpYnJhdGlvbik7CiB9CiAKK3N0YXRpYyB2b2lkIG9uQ29udGVudHNTaXpl
Q2hhbmdlZCh2b2lkKiB1c2VyRGF0YSwgRXZhc19PYmplY3QqLCB2b2lkKiBldmVudEluZm8pCit7
CisgICAgYm9vbCogcmVzdWx0ID0gc3RhdGljX2Nhc3Q8Ym9vbCo+KHVzZXJEYXRhKTsKKyAgICAv
LyBGSVhNRTogSXQgc2hvdWxkIGJlIGNoYW5nZWQgdG8gRXZhc19Db29yZF9TaXplIGFmdGVyIEVG
TCAxLjgKKyAgICBFd2tfU2l6ZSogc2l6ZSA9IHN0YXRpY19jYXN0PEV3a19TaXplKj4oZXZlbnRJ
bmZvKTsKKworICAgIGlmIChzaXplLT53ID09IDIwMDAgJiYgc2l6ZS0+aCA9PSAzMDAwKQorICAg
ICAgICAqcmVzdWx0ID0gdHJ1ZTsKK30KKworVEVTVF9GKEVXSzJVbml0VGVzdEJhc2UsIGV3a192
aWV3X2NvbnRlbnRzX3NpemVfY2hhbmdlZCkKK3sKKyAgICBjb25zdCBjaGFyIHRleHRGaW5kSFRN
TFtdID0KKyAgICAgICAgIjwhRE9DVFlQRSBodG1sPiIKKyAgICAgICAgIjxib2R5IHdpZHRoPTIw
MDAgaGVpZ2h0PTMwMDA+IgorICAgICAgICAiPC9ib2R5PiI7CisKKyAgICBib29sIHNpemVDaGFu
Z2VkID0gZmFsc2U7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKHdlYlZpZXco
KSwgImNvbnRlbnRzLHNpemUsY2hhbmdlZCIsIG9uQ29udGVudHNTaXplQ2hhbmdlZCwgJnNpemVD
aGFuZ2VkKTsKKyAgICB3aGlsZSAoIXNpemVDaGFuZ2VkKQorICAgICAgICBlY29yZV9tYWluX2xv
b3BfaXRlcmF0ZSgpOworCisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfZGVsKHdlYlZp
ZXcoKSwgImNvbnRlbnRzLHNpemUsY2hhbmdlZCIsIG9uQ29udGVudHNTaXplQ2hhbmdlZCk7Cit9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZh
dWx0SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZh
dWx0SW1wbC5jcHAKaW5kZXggY2VmZjUzNDY4YTFhYzI2MjIzYTAwMjczOWNiODJjMWUxZjUzZWQ1
My4uMjdhNWFkNGUzOWNiYjVkMjE5NTQxYzIxZDJmODE1NTI5NDIxYWZlOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RGVmYXVsdEltcGwuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudERlZmF1bHRJbXBsLmNw
cApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgIlBhZ2VDbGllbnREZWZhdWx0SW1wbC5oIgog
CiAjaW5jbHVkZSAiRXdrVmlld0ltcGwuaCIKKyNpbmNsdWRlICJld2tfdmlldy5oIgogCiAjaWYg
VVNFKFRJTEVEX0JBQ0tJTkdfU1RPUkUpCiAjaW5jbHVkZSAiUGFnZVZpZXdwb3J0Q29udHJvbGxl
ci5oIgpAQCAtOTQsOSArOTUsMTEgQEAgdm9pZCBQYWdlQ2xpZW50RGVmYXVsdEltcGw6OmRpZENo
YW5nZUNvbnRlbnRzU2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzaXplKQogI2lmIFVTRShU
SUxFRF9CQUNLSU5HX1NUT1JFKQogICAgIEFTU0VSVChtX3BhZ2VWaWV3cG9ydENvbnRyb2xsZXIp
OwogICAgIG1fcGFnZVZpZXdwb3J0Q29udHJvbGxlci0+ZGlkQ2hhbmdlQ29udGVudHNTaXplKHNp
emUpOwotI2Vsc2UKLSAgICBtX3ZpZXdJbXBsLT5pbmZvcm1Db250ZW50c1NpemVDaGFuZ2Uoc2l6
ZSk7CiAjZW5kaWYKKworICAgIC8vIEZJWE1FOiBJdCBzaG91bGQgYmUgY2hhbmdlZCB0byBFdmFz
X0Nvb3JkX1NpemUgYWZ0ZXIgRUZMIDEuOAorICAgIEV3a19TaXplIGNvbnRlbnRzU2l6ZSA9IHsg
c2l6ZS53aWR0aCgpLCBzaXplLmhlaWdodCgpIH07CisgICAgbV92aWV3SW1wbC0+c21hcnRDYWxs
YmFjazxDb250ZW50c1NpemVDaGFuZ2VkPigpLmNhbGwoJmNvbnRlbnRzU2l6ZSk7CiB9CiAKICNp
ZiBVU0UoVElMRURfQkFDS0lOR19TVE9SRSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9lZmwvUGFnZUNsaWVudExlZ2FjeUltcGwuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2VmbC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKaW5kZXggZjYyYjg2NzFhOTMwODgy
NjhiOWRhZWQ0OTgzYTU0M2MwYWMxNmUzNy4uMWRkOTY4NDNhOWNjZGU5ZGIzNWJjOWY3NGRhNjU1
MmZkYWI1Zjc1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdl
Q2xpZW50TGVnYWN5SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9Q
YWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJFd2tW
aWV3SW1wbC5oIgogI2luY2x1ZGUgIkxheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkuaCIKICNpbmNs
dWRlICJOb3RJbXBsZW1lbnRlZC5oIgorI2luY2x1ZGUgImV3a192aWV3LmgiCiAKIHVzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOwogdXNpbmcgbmFtZXNwYWNlIEV3a1ZpZXdDYWxsYmFja3M7CkBAIC03
NSwxMiArNzYsMTMgQEAgdm9pZCBQYWdlQ2xpZW50TGVnYWN5SW1wbDo6ZGlkQ2hhbmdlVmlld3Bv
cnRQcm9wZXJ0aWVzKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXQKIHZvaWQgUGFnZUNsaWVudExl
Z2FjeUltcGw6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBz
aXplKQogewogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQotICAgIC8vIG1fdmlld0ltcGwt
PmluZm9ybUNvbnRlbnRTaXplQ2hhbmdlZCB3aWxsIGJlIGNhbGxlZCBhcyBhIHJlc3VsdCBvZiBz
ZXRDb250ZW50c1NpemUKICAgICBtX3ZpZXdJbXBsLT5wYWdlKCktPmRyYXdpbmdBcmVhKCktPmxh
eWVyVHJlZUNvb3JkaW5hdG9yUHJveHkoKS0+c2V0Q29udGVudHNTaXplKEZsb2F0U2l6ZShzaXpl
LndpZHRoKCksIHNpemUuaGVpZ2h0KCkpKTsKICAgICBtX3ZpZXdJbXBsLT51cGRhdGUoKTsKLSNl
bHNlCi0gICAgbV92aWV3SW1wbC0+aW5mb3JtQ29udGVudHNTaXplQ2hhbmdlKHNpemUpOwogI2Vu
ZGlmCisKKyAgICAvLyBGSVhNRTogSXQgc2hvdWxkIGJlIGNoYW5nZWQgdG8gRXZhc19Db29yZF9T
aXplIGFmdGVyIEVGTCAxLjgKKyAgICBFd2tfU2l6ZSBjb250ZW50c1NpemUgPSB7IHNpemUud2lk
dGgoKSwgc2l6ZS5oZWlnaHQoKSB9OworICAgIG1fdmlld0ltcGwtPnNtYXJ0Q2FsbGJhY2s8Q29u
dGVudHNTaXplQ2hhbmdlZD4oKS5jYWxsKCZjb250ZW50c1NpemUpOwogfQogCiAjaWYgVVNFKFRJ
TEVEX0JBQ0tJTkdfU1RPUkUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKaW5kZXggMjgzYTgzOWM0
ZmViYTk1ZjUwNjRhMzg2NWRiMjA0ZGJhYzljOTI2Yi4uODNmZjBmMDI3NWI2MzQyZTIyMzM0MDQz
ODg3NTU0YTQ1ZmVmYjU2NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcApAQCAtNDQ1LDE1ICs0
NDUsMTYgQEAgdm9pZCBXZWJDaHJvbWVDbGllbnQ6OmNvbnRlbnRzU2l6ZUNoYW5nZWQoRnJhbWUq
IGZyYW1lLCBjb25zdCBJbnRTaXplJiBzaXplKSBjb24KICAgICBpZiAoZnJhbWUtPnBhZ2UoKS0+
bWFpbkZyYW1lKCkgIT0gZnJhbWUpCiAgICAgICAgIHJldHVybjsKIAotI2lmIFBMQVRGT1JNKFFU
KSB8fCAoUExBVEZPUk0oRUZMKSAmJiBVU0UoVElMRURfQkFDS0lOR19TVE9SRSkpCisjaWYgVVNF
KFRJTEVEX0JBQ0tJTkdfU1RPUkUpCiAgICAgaWYgKG1fcGFnZS0+dXNlRml4ZWRMYXlvdXQoKSkg
ewogICAgICAgICAvLyBUaGUgYmVsb3cgbWV0aG9kIHVwZGF0ZXMgdGhlIHNpemUoKS4KICAgICAg
ICAgbV9wYWdlLT5yZXNpemVUb0NvbnRlbnRzSWZOZWVkZWQoKTsKICAgICAgICAgbV9wYWdlLT5k
cmF3aW5nQXJlYSgpLT5sYXllclRyZWVIb3N0KCktPnNpemVEaWRDaGFuZ2UobV9wYWdlLT5zaXpl
KCkpOwogICAgIH0KKyNlbmRpZgogCisjaWYgUExBVEZPUk0oUVQpIHx8IFBMQVRGT1JNKEVGTCkK
ICAgICBtX3BhZ2UtPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6RGlkQ2hhbmdlQ29udGVu
dHNTaXplKG1fcGFnZS0+c2l6ZSgpKSk7Ci0KICNlbmRpZgogCiAgICAgbV9wYWdlLT5kcmF3aW5n
QXJlYSgpLT5tYWluRnJhbWVDb250ZW50U2l6ZUNoYW5nZWQoc2l6ZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>176901</attachid>
            <date>2012-11-29 22:15:03 -0800</date>
            <delta_ts>2012-12-03 06:38:09 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103094-20121130151234.patch</filename>
            <type>text/plain</type>
            <size>10455</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2MTkxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZGM3N2JmNjBlMWYwNDZi
MjhhOThlNDFhZGI4Y2MxYjlkNmRjN2RjNC4uYTQ1NDY1NzZhZmRhN2U5NWFmNDExNTYyNmZhZTBm
OGVkZDg4YWUzNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEyLTExLTI5ICBSeXVh
biBDaG9pICA8cnl1YW4uY2hvaUBnbWFpbC5jb20+CisKKyAgICAgICAgW0VGTF1bV0syXSBBZGQg
Y29udGVudHMsc2l6ZSxjaGFuZ2VkIHNpZ25hbCB0byB0aGUgZXdrX3ZpZXcgQVBJCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMwOTQKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGVtaXRz
IHNpZ25hbCB0byBsZXQgYXBwbGljYXRpb25zIGtub3cgY29udGVudHMgc2l6ZS4KKworICAgICAg
ICAqIFVJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdDYWxsYmFja3MuaDogQWRkZWQgY29udGVudHMs
c2l6ZSxjaGFuZ2VkIHNpZ25hbC4KKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3
SW1wbC5jcHA6IFJlbW92ZWQgZGVhZCBjb2RlLgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvZWZs
L0V3a1ZpZXdJbXBsLmg6IERpdHRvLgorICAgICAgICAoRXdrVmlld0ltcGwpOgorICAgICAgICAq
IFVJUHJvY2Vzcy9BUEkvZWZsL2V3a192aWV3Lmg6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9l
ZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwOiBBZGRlZCB0ZXN0IGNhc2UuCisgICAgICAgIChv
bkNvbnRlbnRzU2l6ZUNoYW5nZWQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9lZmwvUGFnZUNsaWVu
dERlZmF1bHRJbXBsLmNwcDogRW1pdHRlZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsLgor
ICAgICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50RGVmYXVsdEltcGw6OmRpZENoYW5nZUNvbnRlbnRz
U2l6ZSk6CisgICAgICAgICogVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHA6
IERpdHRvLgorICAgICAgICAoV2ViS2l0OjpQYWdlQ2xpZW50TGVnYWN5SW1wbDo6ZGlkQ2hhbmdl
Q29udGVudHNTaXplKToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNo
cm9tZUNsaWVudC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYkNocm9tZUNsaWVudDo6Y29udGVu
dHNTaXplQ2hhbmdlZCk6CisgICAgICAgIFNlbmRlZCBEaWRDaGFuZ2VDb250ZW50c1NpemUgbWVz
c2FnZSBhbHRob3VnaCBUSUxFRF9CQUNLSU5HU1RPUkUgaXMgZGlzYWJsZWQuCisKIDIwMTItMTEt
MjkgIEFuZGVycyBDYXJsc3NvbiAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KIAogICAgICAgICBJbml0
aWFsaXplIG1feHBjQ29ubmVjdGlvbiB0byBudWxsIGlmIHRoZSBpZGVudGlmaWVyIGRvZXNuJ3Qg
aGF2ZSBhbiBYUEMgY29ubmVjdGlvbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9lZmwvRXdrVmlld0NhbGxiYWNrcy5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9lZmwvRXdrVmlld0NhbGxiYWNrcy5oCmluZGV4IGNmODIyYTJlZGNiNjY0YjQyNjQzZjNj
YTMxOWNjNjhhMmI4MGQ4ZDkuLjRmZTIzMGI1NGM3OTg3YzIzMmI2NDVhOTBhN2YyNzI5N2Q5NGQ3
YTUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdD
YWxsYmFja3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3
Q2FsbGJhY2tzLmgKQEAgLTUwLDYgKzUwLDcgQEAgc3RydWN0IEV3a19Eb3dubG9hZF9Kb2JfRXJy
b3I7CiBzdHJ1Y3QgRXdrX1Jlc291cmNlX1JlcXVlc3Q7CiBzdHJ1Y3QgRXdrX1Jlc291cmNlX0xv
YWRfUmVzcG9uc2U7CiBzdHJ1Y3QgRXdrX1Jlc291cmNlX0xvYWRfRXJyb3I7CitzdHJ1Y3QgRXdr
X1NpemU7CiAKIG5hbWVzcGFjZSBFd2tWaWV3Q2FsbGJhY2tzIHsKIApAQCAtNTcsNiArNTgsNyBA
QCBlbnVtIENhbGxiYWNrVHlwZSB7CiAgICAgQXV0aGVudGljYXRpb25SZXF1ZXN0LAogICAgIEJh
Y2tGb3J3YXJkTGlzdENoYW5nZSwKICAgICBDYW5jZWxWaWJyYXRpb24sCisgICAgQ29udGVudHNT
aXplQ2hhbmdlZCwKICAgICBEb3dubG9hZEpvYkNhbmNlbGxlZCwKICAgICBEb3dubG9hZEpvYkZh
aWxlZCwKICAgICBEb3dubG9hZEpvYkZpbmlzaGVkLApAQCAtMTYxLDYgKzE2Myw3IEBAIHN0cnVj
dCBDYWxsQmFja0luZm88Y2FsbGJhY2tUeXBlPiB7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAogREVDTEFSRV9FV0tfVklFV19DQUxMQkFDSyhBdXRoZW50aWNhdGlvblJlcXVlc3QsICJhdXRo
ZW50aWNhdGlvbixyZXF1ZXN0IiwgRXdrX0F1dGhfUmVxdWVzdCopOwogREVDTEFSRV9FV0tfVklF
V19DQUxMQkFDSyhCYWNrRm9yd2FyZExpc3RDaGFuZ2UsICJiYWNrLGZvcndhcmQsbGlzdCxjaGFu
Z2VkIiwgdm9pZCk7CiBERUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKENhbmNlbFZpYnJhdGlvbiwg
ImNhbmNlbCx2aWJyYXRpb24iLCB2b2lkKTsKK0RFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soQ29u
dGVudHNTaXplQ2hhbmdlZCwgImNvbnRlbnRzLHNpemUsY2hhbmdlZCIsIEV3a19TaXplKik7CiBE
RUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKERvd25sb2FkSm9iQ2FuY2VsbGVkLCAiZG93bmxvYWQs
Y2FuY2VsbGVkIiwgRXdrX0Rvd25sb2FkX0pvYiopOwogREVDTEFSRV9FV0tfVklFV19DQUxMQkFD
SyhEb3dubG9hZEpvYkZhaWxlZCwgImRvd25sb2FkLGZhaWxlZCIsIEV3a19Eb3dubG9hZF9Kb2Jf
RXJyb3IqKTsKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soRG93bmxvYWRKb2JGaW5pc2hlZCwg
ImRvd25sb2FkLGZpbmlzaGVkIiwgRXdrX0Rvd25sb2FkX0pvYiopOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuY3BwIGIvU291cmNlL1dl
YktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuY3BwCmluZGV4IDUwZTRjYjIwNTU0
MmIxNjZjNDY4ZmM5YjA3ZThlOWVmZjBhZTVlNjAuLjZlODllMDNjOGEyZjI3NzNjNzAxMzI0ODk4
YWRjMjkzZDQ1YWVjM2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
ZWZsL0V3a1ZpZXdJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2Vm
bC9Fd2tWaWV3SW1wbC5jcHAKQEAgLTczNCwxNSArNzM0LDYgQEAgdm9pZCBFd2tWaWV3SW1wbDo6
ZGlzbWlzc0NvbG9yUGlja2VyKCkKIH0KICNlbmRpZgogCi12b2lkIEV3a1ZpZXdJbXBsOjppbmZv
cm1Db250ZW50c1NpemVDaGFuZ2UoY29uc3QgSW50U2l6ZSYgc2l6ZSkKLXsKLSNpZiBVU0UoQ09P
UkRJTkFURURfR1JBUEhJQ1MpCi0gICAgbV9wYWdlQ2xpZW50LT5kaWRDaGFuZ2VDb250ZW50c1Np
emUoc2l6ZSk7Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShzaXplKTsKLSNlbmRpZgotfQotCiBD
T01QSUxFX0FTU0VSVF9NQVRDSElOR19FTlVNKEVXS19URVhUX0RJUkVDVElPTl9SSUdIVF9UT19M
RUZULCBSVEwpOwogQ09NUElMRV9BU1NFUlRfTUFUQ0hJTkdfRU5VTShFV0tfVEVYVF9ESVJFQ1RJ
T05fTEVGVF9UT19SSUdIVCwgTFRSKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvZWZsL0V3a1ZpZXdJbXBsLmgKaW5kZXggY2IxODc1NjcyOTM4MGRiMDBmMGU0NzA2MDNiNjY2
NzRmYTU2MDcyMy4uZjA2YjNlOTE5MDc4N2M0MmRlYTkzMjVjNzBmZDY1YWQxNjgxMzFkZCAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuaAor
KysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3SW1wbC5oCkBAIC0x
OTIsNyArMTkyLDYgQEAgcHVibGljOgogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQogICAg
IHZvaWQgaW5mb3JtTG9hZENvbW1pdHRlZCgpOwogI2VuZGlmCi0gICAgdm9pZCBpbmZvcm1Db250
ZW50c1NpemVDaGFuZ2UoY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2l6ZSk7CiAgICAgdW5zaWdu
ZWQgbG9uZyBsb25nIGluZm9ybURhdGFiYXNlUXVvdGFSZWFjaGVkKGNvbnN0IFN0cmluZyYgZGF0
YWJhc2VOYW1lLCBjb25zdCBTdHJpbmcmIGRpc3BsYXlOYW1lLCB1bnNpZ25lZCBsb25nIGxvbmcg
Y3VycmVudFF1b3RhLCB1bnNpZ25lZCBsb25nIGxvbmcgY3VycmVudE9yaWdpblVzYWdlLCB1bnNp
Z25lZCBsb25nIGxvbmcgY3VycmVudERhdGFiYXNlVXNhZ2UsIHVuc2lnbmVkIGxvbmcgbG9uZyBl
eHBlY3RlZFVzYWdlKTsKIAogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvZXdrX3ZpZXcuaCBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL2V3a192aWV3LmgKaW5kZXggOWE0MDhhYjVlNGRkMmQw
YzhlN2IzYmEzZDAyMjBiMGIxZmMxMzcyMi4uYjRkMDA2MGQxYjNjMTEzZGQwZjA0NTAyOTU0ODU0
ZWI1MWY1NWViNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwv
ZXdrX3ZpZXcuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfdmll
dy5oCkBAIC0zMCw2ICszMCw3IEBACiAgKiAgIGV3a19hdXRoX3JlcXVlc3RfcmVmKCkgb24gdGhl
IHJlcXVlc3Qgb2JqZWN0IHRvIHByb2Nlc3MgdGhlIGF1dGhlbnRpY2F0aW9uIGFzeW5jaHJvbm91
c2x5LgogICogLSAiYmFjayxmb3J3YXJkLGxpc3QsY2hhbmdlZCIsIHZvaWQ6IHJlcG9ydHMgdGhh
dCB0aGUgdmlldydzIGJhY2sgLyBmb3J3YXJkIGxpc3QgaGFkIGNoYW5nZWQuCiAgKiAtICJjYW5j
ZWwsdmlicmF0aW9uIiwgdm9pZDogcmVxdWVzdCB0byBjYW5jZWwgdGhlIHZpYnJhdGlvbi4KKyAq
IC0gImNvbnRlbnRzLHNpemUsY2hhbmdlZCIsIEV3a19TaXplKjogcmVwb3J0cyBjb250ZW50cyBz
aXplIHdlcmUgY2hhbmdlZCBkdWUgbmV3IGxheW91dCwgc2NyaXB0IGFjdGlvbnMgb3IgYW55IG90
aGVyIGV2ZW50cy4KICAqIC0gImRvd25sb2FkLGNhbmNlbGxlZCIsIEV3a19Eb3dubG9hZF9Kb2Iq
OiByZXBvcnRzIHRoYXQgYSBkb3dubG9hZCB3YXMgZWZmZWN0aXZlbHkgY2FuY2VsbGVkLgogICog
LSAiZG93bmxvYWQsZmFpbGVkIiwgRXdrX0Rvd25sb2FkX0pvYl9FcnJvcio6IHJlcG9ydHMgdGhh
dCBhIGRvd25sb2FkIGZhaWxlZCB3aXRoIHRoZSBnaXZlbiBlcnJvci4KICAqIC0gImRvd25sb2Fk
LGZpbmlzaGVkIiwgRXdrX0Rvd25sb2FkX0pvYio6IHJlcG9ydHMgdGhhdCBhIGRvd25sb2FkIGNv
bXBsZXRlZCBzdWNjZXNzZnVsbHkuCkBAIC0yNzIsNiArMjczLDE4IEBAIHN0cnVjdCBFd2tfRG93
bmxvYWRfSm9iX0Vycm9yIHsKICAgICBFd2tfRXJyb3IgKmVycm9yOyAvKio8IGRvd25sb2FkIGVy
cm9yICovCiB9OwogCisvLy8gQ3JlYXRlcyBhIHR5cGUgbmFtZSBmb3IgRXdrX1NpemUuCit0eXBl
ZGVmIHN0cnVjdCBFd2tfU2l6ZSBFd2tfU2l6ZTsKKworLyoqCisgKiBAYnJpZWYgU3RydWN0dXJl
IHJlcHJlc2VudGluZyBzaXplLgorICogQGluZm8gVGhpcyBzdHJ1Y3R1cmUgd2lsbCBiZSBkZXBy
ZWNhdGVkIGFmdGVyIEVGTCAxLjgKKyAqLworc3RydWN0IEV3a19TaXplIHsKKyAgICBFdmFzX0Nv
b3JkIHc7IC8qKjwgd2lkdGggKi8KKyAgICBFdmFzX0Nvb3JkIGg7IC8qKjwgaGVpZ2h0ICovCit9
OworCiAvKioKICAqIEVudW0gdmFsdWVzIHVzZWQgdG8gc3BlY2lmeSBzZWFyY2ggb3B0aW9ucy4K
ICAqIEBicmllZiAgIFByb3ZpZGVzIG9wdGlvbiB0byBmaW5kIHRleHQKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNwcCBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNw
cAppbmRleCAyNWZlMDY5OGI2Nzg5YzM2YTNmZTgyZGI1MWMyZWNlYjQxZDE4Y2M5Li5mM2RlOGRk
YmY2N2NlODU5MWVjZGNjMDVhYjU3ZDAxYjExOWZhZGYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC90ZXN0cy90ZXN0X2V3azJfdmlldy5jcHAKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwCkBA
IC04ODEsMyArODgxLDI3IEBAIFRFU1RfRihFV0syVW5pdFRlc3RCYXNlLCBld2tfY29udGV4dF92
aWJyYXRpb25fY2xpZW50X2NhbGxiYWNrc19zZXQpCiAgICAgQVNTRVJUX0ZBTFNFKGRhdGEuZGlk
UmVjZWl2ZUNhbmNlbFZpYnJhdGlvbik7CiB9CiAKK3N0YXRpYyB2b2lkIG9uQ29udGVudHNTaXpl
Q2hhbmdlZCh2b2lkKiB1c2VyRGF0YSwgRXZhc19PYmplY3QqLCB2b2lkKiBldmVudEluZm8pCit7
CisgICAgYm9vbCogcmVzdWx0ID0gc3RhdGljX2Nhc3Q8Ym9vbCo+KHVzZXJEYXRhKTsKKyAgICAv
LyBGSVhNRTogSXQgc2hvdWxkIGJlIGNoYW5nZWQgdG8gRXZhc19Db29yZF9TaXplIGFmdGVyIEVG
TCAxLjgKKyAgICBFd2tfU2l6ZSogc2l6ZSA9IHN0YXRpY19jYXN0PEV3a19TaXplKj4oZXZlbnRJ
bmZvKTsKKworICAgIGlmIChzaXplLT53ID09IDIwMDAgJiYgc2l6ZS0+aCA9PSAzMDAwKQorICAg
ICAgICAqcmVzdWx0ID0gdHJ1ZTsKK30KKworVEVTVF9GKEVXSzJVbml0VGVzdEJhc2UsIGV3a192
aWV3X2NvbnRlbnRzX3NpemVfY2hhbmdlZCkKK3sKKyAgICBjb25zdCBjaGFyIHRleHRGaW5kSFRN
TFtdID0KKyAgICAgICAgIjwhRE9DVFlQRSBodG1sPiIKKyAgICAgICAgIjxib2R5IHdpZHRoPTIw
MDAgaGVpZ2h0PTMwMDA+IgorICAgICAgICAiPC9ib2R5PiI7CisKKyAgICBib29sIHNpemVDaGFu
Z2VkID0gZmFsc2U7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKHdlYlZpZXco
KSwgImNvbnRlbnRzLHNpemUsY2hhbmdlZCIsIG9uQ29udGVudHNTaXplQ2hhbmdlZCwgJnNpemVD
aGFuZ2VkKTsKKyAgICB3aGlsZSAoIXNpemVDaGFuZ2VkKQorICAgICAgICBlY29yZV9tYWluX2xv
b3BfaXRlcmF0ZSgpOworCisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfZGVsKHdlYlZp
ZXcoKSwgImNvbnRlbnRzLHNpemUsY2hhbmdlZCIsIG9uQ29udGVudHNTaXplQ2hhbmdlZCk7Cit9
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZh
dWx0SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZh
dWx0SW1wbC5jcHAKaW5kZXggY2VmZjUzNDY4YTFhYzI2MjIzYTAwMjczOWNiODJjMWUxZjUzZWQ1
My4uMjdhNWFkNGUzOWNiYjVkMjE5NTQxYzIxZDJmODE1NTI5NDIxYWZlOSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RGVmYXVsdEltcGwuY3BwCisr
KyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudERlZmF1bHRJbXBsLmNw
cApAQCAtMjgsNiArMjgsNyBAQAogI2luY2x1ZGUgIlBhZ2VDbGllbnREZWZhdWx0SW1wbC5oIgog
CiAjaW5jbHVkZSAiRXdrVmlld0ltcGwuaCIKKyNpbmNsdWRlICJld2tfdmlldy5oIgogCiAjaWYg
VVNFKFRJTEVEX0JBQ0tJTkdfU1RPUkUpCiAjaW5jbHVkZSAiUGFnZVZpZXdwb3J0Q29udHJvbGxl
ci5oIgpAQCAtOTQsOSArOTUsMTEgQEAgdm9pZCBQYWdlQ2xpZW50RGVmYXVsdEltcGw6OmRpZENo
YW5nZUNvbnRlbnRzU2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBzaXplKQogI2lmIFVTRShU
SUxFRF9CQUNLSU5HX1NUT1JFKQogICAgIEFTU0VSVChtX3BhZ2VWaWV3cG9ydENvbnRyb2xsZXIp
OwogICAgIG1fcGFnZVZpZXdwb3J0Q29udHJvbGxlci0+ZGlkQ2hhbmdlQ29udGVudHNTaXplKHNp
emUpOwotI2Vsc2UKLSAgICBtX3ZpZXdJbXBsLT5pbmZvcm1Db250ZW50c1NpemVDaGFuZ2Uoc2l6
ZSk7CiAjZW5kaWYKKworICAgIC8vIEZJWE1FOiBJdCBzaG91bGQgYmUgY2hhbmdlZCB0byBFdmFz
X0Nvb3JkX1NpemUgYWZ0ZXIgRUZMIDEuOAorICAgIEV3a19TaXplIGNvbnRlbnRzU2l6ZSA9IHsg
c2l6ZS53aWR0aCgpLCBzaXplLmhlaWdodCgpIH07CisgICAgbV92aWV3SW1wbC0+c21hcnRDYWxs
YmFjazxDb250ZW50c1NpemVDaGFuZ2VkPigpLmNhbGwoJmNvbnRlbnRzU2l6ZSk7CiB9CiAKICNp
ZiBVU0UoVElMRURfQkFDS0lOR19TVE9SRSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9lZmwvUGFnZUNsaWVudExlZ2FjeUltcGwuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQ
cm9jZXNzL2VmbC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKaW5kZXggZjYyYjg2NzFhOTMwODgy
NjhiOWRhZWQ0OTgzYTU0M2MwYWMxNmUzNy4uMWRkOTY4NDNhOWNjZGU5ZGIzNWJjOWY3NGRhNjU1
MmZkYWI1Zjc1YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdl
Q2xpZW50TGVnYWN5SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9Q
YWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJFd2tW
aWV3SW1wbC5oIgogI2luY2x1ZGUgIkxheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkuaCIKICNpbmNs
dWRlICJOb3RJbXBsZW1lbnRlZC5oIgorI2luY2x1ZGUgImV3a192aWV3LmgiCiAKIHVzaW5nIG5h
bWVzcGFjZSBXZWJDb3JlOwogdXNpbmcgbmFtZXNwYWNlIEV3a1ZpZXdDYWxsYmFja3M7CkBAIC03
NSwxMiArNzYsMTMgQEAgdm9pZCBQYWdlQ2xpZW50TGVnYWN5SW1wbDo6ZGlkQ2hhbmdlVmlld3Bv
cnRQcm9wZXJ0aWVzKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXQKIHZvaWQgUGFnZUNsaWVudExl
Z2FjeUltcGw6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXplJiBz
aXplKQogewogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQotICAgIC8vIG1fdmlld0ltcGwt
PmluZm9ybUNvbnRlbnRTaXplQ2hhbmdlZCB3aWxsIGJlIGNhbGxlZCBhcyBhIHJlc3VsdCBvZiBz
ZXRDb250ZW50c1NpemUKICAgICBtX3ZpZXdJbXBsLT5wYWdlKCktPmRyYXdpbmdBcmVhKCktPmxh
eWVyVHJlZUNvb3JkaW5hdG9yUHJveHkoKS0+c2V0Q29udGVudHNTaXplKEZsb2F0U2l6ZShzaXpl
LndpZHRoKCksIHNpemUuaGVpZ2h0KCkpKTsKICAgICBtX3ZpZXdJbXBsLT51cGRhdGUoKTsKLSNl
bHNlCi0gICAgbV92aWV3SW1wbC0+aW5mb3JtQ29udGVudHNTaXplQ2hhbmdlKHNpemUpOwogI2Vu
ZGlmCisKKyAgICAvLyBGSVhNRTogSXQgc2hvdWxkIGJlIGNoYW5nZWQgdG8gRXZhc19Db29yZF9T
aXplIGFmdGVyIEVGTCAxLjgKKyAgICBFd2tfU2l6ZSBjb250ZW50c1NpemUgPSB7IHNpemUud2lk
dGgoKSwgc2l6ZS5oZWlnaHQoKSB9OworICAgIG1fdmlld0ltcGwtPnNtYXJ0Q2FsbGJhY2s8Q29u
dGVudHNTaXplQ2hhbmdlZD4oKS5jYWxsKCZjb250ZW50c1NpemUpOwogfQogCiAjaWYgVVNFKFRJ
TEVEX0JBQ0tJTkdfU1RPUkUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQ
cm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKaW5kZXggMjgzYTgzOWM0
ZmViYTk1ZjUwNjRhMzg2NWRiMjA0ZGJhYzljOTI2Yi4uMDZiY2ZmNDIxZDcwNDA5N2Q3MTJjMTlj
OWI0OTViZGI4M2ZjYzRmMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9X
ZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcApAQCAtNDUxLDkgKzQ1
MSwxMCBAQCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y29udGVudHNTaXplQ2hhbmdlZChGcmFtZSog
ZnJhbWUsIGNvbnN0IEludFNpemUmIHNpemUpIGNvbgogICAgICAgICBtX3BhZ2UtPnJlc2l6ZVRv
Q29udGVudHNJZk5lZWRlZCgpOwogICAgICAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPmxheWVy
VHJlZUhvc3QoKS0+c2l6ZURpZENoYW5nZShtX3BhZ2UtPnNpemUoKSk7CiAgICAgfQorI2VuZGlm
CiAKKyNpZiBQTEFURk9STShRVCkgfHwgUExBVEZPUk0oRUZMKQogICAgIG1fcGFnZS0+c2VuZChN
ZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VDb250ZW50c1NpemUobV9wYWdlLT5zaXpl
KCkpKTsKLQogI2VuZGlmCiAKICAgICBtX3BhZ2UtPmRyYXdpbmdBcmVhKCktPm1haW5GcmFtZUNv
bnRlbnRTaXplQ2hhbmdlZChzaXplKTsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>177244</attachid>
            <date>2012-12-03 06:38:15 -0800</date>
            <delta_ts>2012-12-03 07:39:55 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103094-20121203233540.patch</filename>
            <type>text/plain</type>
            <size>10773</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2Mzc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggM2RmMzQyODQyYTZmNzdl
ZTkxNWVjYTg2ZjUxNDEwYjQ2Y2MwYTUyZi4uOGExYjUzOWZkYWM1Y2EzNWU5ZTdmZGUwMmUzNDYz
Mzk3YmRlYTUyYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTEyLTAzICBSeXVh
biBDaG9pICA8cnl1YW4uY2hvaUBnbWFpbC5jb20+CisKKyAgICAgICAgW0VGTF1bV0syXSBBZGQg
Y29udGVudHMsc2l6ZSxjaGFuZ2VkIHNpZ25hbCB0byB0aGUgZXdrX3ZpZXcgQVBJCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDMwOTQKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGlzIHBhdGNoIGVtaXRz
IHNpZ25hbCB0byBsZXQgYXBwbGljYXRpb25zIGtub3cgY29udGVudHMgc2l6ZS4KKyAgICAgICAg
QXBwbGljYXRpb25zIGNhbiB1c2UgdGhpcyBzaWduYWwgdG8gZ2l2ZSBzb21lIGFkZGl0aW9uYWwg
YmVoYXZpb3Igc3VjaCBhcworICAgICAgICBtaW5pbWFwLCBleHRlcm5hbCBzY3JvbGwgZm9yIHF1
aWNrIG1vdmVtZW50LgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0NhbGxi
YWNrcy5oOiBBZGRlZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsLgorICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcDogUmVtb3ZlZCBkZWFkIGNvZGUuCisgICAg
ICAgICogVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuaDogRGl0dG8uCisgICAgICAgIChF
d2tWaWV3SW1wbCk6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9lZmwvZXdrX3ZpZXcuaDoKKyAg
ICAgICAgKiBVSVByb2Nlc3MvQVBJL2VmbC90ZXN0cy90ZXN0X2V3azJfdmlldy5jcHA6IEFkZGVk
IHRlc3QgY2FzZS4KKyAgICAgICAgKG9uQ29udGVudHNTaXplQ2hhbmdlZCk6CisgICAgICAgICog
VUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RGVmYXVsdEltcGwuY3BwOiBFbWl0dGVkIGNvbnRlbnRz
LHNpemUsY2hhbmdlZCBzaWduYWwuCisgICAgICAgIChXZWJLaXQ6OlBhZ2VDbGllbnREZWZhdWx0
SW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKToKKyAgICAgICAgKiBVSVByb2Nlc3MvZWZsL1Bh
Z2VDbGllbnRMZWdhY3lJbXBsLmNwcDogRGl0dG8uCisgICAgICAgIChXZWJLaXQ6OlBhZ2VDbGll
bnRMZWdhY3lJbXBsOjpkaWRDaGFuZ2VDb250ZW50c1NpemUpOgorICAgICAgICAqIFdlYlByb2Nl
c3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcDoKKyAgICAgICAgKFdlYktpdDo6
V2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2VkKToKKyAgICAgICAgU2VuZGVkIERp
ZENoYW5nZUNvbnRlbnRzU2l6ZSBtZXNzYWdlIGFsdGhvdWdoIFRJTEVEX0JBQ0tJTkdTVE9SRSBp
cyBkaXNhYmxlZC4KKwogMjAxMi0xMi0wMyAgTWlraGFpbCBQb3pkbnlha292ICA8bWlraGFpbC5w
b3pkbnlha292QGludGVsLmNvbT4KIAogICAgICAgICBDU1MgRGV2aWNlIEFkYXB0YXRpb246IHdp
bmRvdy5pbm5lcldpZHRoIHJldHVybnMgd3JvbmcgdmFsdWUgaWYgQ1NTIHZpZXdwb3J0IGRlc2Ny
aXB0b3JzIGFyZSBhcHBsaWVkCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL2VmbC9Fd2tWaWV3Q2FsbGJhY2tzLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L2VmbC9Fd2tWaWV3Q2FsbGJhY2tzLmgKaW5kZXggY2Y4MjJhMmVkY2I2NjRiNDI2NDNmM2NhMzE5
Y2M2OGEyYjgwZDhkOS4uY2I1MzE5NzAwMzVjMmU1MmY3NDAxNmEzYTcxNTc2Njc0YjVlNTRkMCAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0NhbGxi
YWNrcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdDYWxs
YmFja3MuaApAQCAtNTAsNiArNTAsNyBAQCBzdHJ1Y3QgRXdrX0Rvd25sb2FkX0pvYl9FcnJvcjsK
IHN0cnVjdCBFd2tfUmVzb3VyY2VfUmVxdWVzdDsKIHN0cnVjdCBFd2tfUmVzb3VyY2VfTG9hZF9S
ZXNwb25zZTsKIHN0cnVjdCBFd2tfUmVzb3VyY2VfTG9hZF9FcnJvcjsKK3N0cnVjdCBFd2tfQ1NT
X1NpemU7CiAKIG5hbWVzcGFjZSBFd2tWaWV3Q2FsbGJhY2tzIHsKIApAQCAtNTcsNiArNTgsNyBA
QCBlbnVtIENhbGxiYWNrVHlwZSB7CiAgICAgQXV0aGVudGljYXRpb25SZXF1ZXN0LAogICAgIEJh
Y2tGb3J3YXJkTGlzdENoYW5nZSwKICAgICBDYW5jZWxWaWJyYXRpb24sCisgICAgQ29udGVudHNT
aXplQ2hhbmdlZCwKICAgICBEb3dubG9hZEpvYkNhbmNlbGxlZCwKICAgICBEb3dubG9hZEpvYkZh
aWxlZCwKICAgICBEb3dubG9hZEpvYkZpbmlzaGVkLApAQCAtMTYxLDYgKzE2Myw3IEBAIHN0cnVj
dCBDYWxsQmFja0luZm88Y2FsbGJhY2tUeXBlPiB7ICAgICAgICAgICAgICAgICAgICAgICAgICAg
XAogREVDTEFSRV9FV0tfVklFV19DQUxMQkFDSyhBdXRoZW50aWNhdGlvblJlcXVlc3QsICJhdXRo
ZW50aWNhdGlvbixyZXF1ZXN0IiwgRXdrX0F1dGhfUmVxdWVzdCopOwogREVDTEFSRV9FV0tfVklF
V19DQUxMQkFDSyhCYWNrRm9yd2FyZExpc3RDaGFuZ2UsICJiYWNrLGZvcndhcmQsbGlzdCxjaGFu
Z2VkIiwgdm9pZCk7CiBERUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKENhbmNlbFZpYnJhdGlvbiwg
ImNhbmNlbCx2aWJyYXRpb24iLCB2b2lkKTsKK0RFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soQ29u
dGVudHNTaXplQ2hhbmdlZCwgImNvbnRlbnRzLHNpemUsY2hhbmdlZCIsIEV3a19DU1NfU2l6ZSop
OwogREVDTEFSRV9FV0tfVklFV19DQUxMQkFDSyhEb3dubG9hZEpvYkNhbmNlbGxlZCwgImRvd25s
b2FkLGNhbmNlbGxlZCIsIEV3a19Eb3dubG9hZF9Kb2IqKTsKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FM
TEJBQ0soRG93bmxvYWRKb2JGYWlsZWQsICJkb3dubG9hZCxmYWlsZWQiLCBFd2tfRG93bmxvYWRf
Sm9iX0Vycm9yKik7CiBERUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKERvd25sb2FkSm9iRmluaXNo
ZWQsICJkb3dubG9hZCxmaW5pc2hlZCIsIEV3a19Eb3dubG9hZF9Kb2IqKTsKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcCBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcAppbmRleCAyZjI2Mjlj
ZTA5ZDZlMzJhMzY1YmIxYjViNzYxNzAzNWVkYTk3MzM1Li5mMGEwYWRlOWIwNmQyYWE5YTMzNjFk
N2E4NmQ5NDdlYWZmNjNkMDA3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL2VmbC9Fd2tWaWV3SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9lZmwvRXdrVmlld0ltcGwuY3BwCkBAIC03NDIsMTUgKzc0Miw2IEBAIHZvaWQgRXdrVmlld0lt
cGw6OmRpc21pc3NDb2xvclBpY2tlcigpCiB9CiAjZW5kaWYKIAotdm9pZCBFd2tWaWV3SW1wbDo6
aW5mb3JtQ29udGVudHNTaXplQ2hhbmdlKGNvbnN0IEludFNpemUmIHNpemUpCi17Ci0jaWYgVVNF
KENPT1JESU5BVEVEX0dSQVBISUNTKQotICAgIG1fcGFnZUNsaWVudC0+ZGlkQ2hhbmdlQ29udGVu
dHNTaXplKHNpemUpOwotI2Vsc2UKLSAgICBVTlVTRURfUEFSQU0oc2l6ZSk7Ci0jZW5kaWYKLX0K
LQogQ09NUElMRV9BU1NFUlRfTUFUQ0hJTkdfRU5VTShFV0tfVEVYVF9ESVJFQ1RJT05fUklHSFRf
VE9fTEVGVCwgUlRMKTsKIENPTVBJTEVfQVNTRVJUX01BVENISU5HX0VOVU0oRVdLX1RFWFRfRElS
RUNUSU9OX0xFRlRfVE9fUklHSFQsIExUUik7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL2VmbC9Fd2tWaWV3SW1wbC5oCmluZGV4IGJiOTNmZWRiMTkzNGVjYjlkYzE2N2Q2ZDI3
NjNkNjQzZTEyZTY2YmMuLmEwYTkyODkyNGRkOGU4YTdkMjQ4MTA1NGQ0NTcxYzQ4YWFhMDIzYWYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBs
LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuaApA
QCAtMTkzLDcgKzE5Myw2IEBAIHB1YmxpYzoKICNpZiBVU0UoVElMRURfQkFDS0lOR19TVE9SRSkK
ICAgICB2b2lkIGluZm9ybUxvYWRDb21taXR0ZWQoKTsKICNlbmRpZgotICAgIHZvaWQgaW5mb3Jt
Q29udGVudHNTaXplQ2hhbmdlKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNpemUpOwogICAgIHVu
c2lnbmVkIGxvbmcgbG9uZyBpbmZvcm1EYXRhYmFzZVF1b3RhUmVhY2hlZChjb25zdCBTdHJpbmcm
IGRhdGFiYXNlTmFtZSwgY29uc3QgU3RyaW5nJiBkaXNwbGF5TmFtZSwgdW5zaWduZWQgbG9uZyBs
b25nIGN1cnJlbnRRdW90YSwgdW5zaWduZWQgbG9uZyBsb25nIGN1cnJlbnRPcmlnaW5Vc2FnZSwg
dW5zaWduZWQgbG9uZyBsb25nIGN1cnJlbnREYXRhYmFzZVVzYWdlLCB1bnNpZ25lZCBsb25nIGxv
bmcgZXhwZWN0ZWRVc2FnZSk7CiAKICNpZiBVU0UoVElMRURfQkFDS0lOR19TVE9SRSkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL2V3a192aWV3LmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfdmlldy5oCmluZGV4IDlhNDA4YWI1ZTRk
ZDJkMGM4ZTdiM2JhM2QwMjIwYjBiMWZjMTM3MjIuLjUzMjJkN2NlYWQzMTVhZDQ5NWEzM2M0YWU2
NTBkMzZiODI1Y2Q5YzMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
ZWZsL2V3a192aWV3LmgKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvZXdr
X3ZpZXcuaApAQCAtMzAsNiArMzAsNyBAQAogICogICBld2tfYXV0aF9yZXF1ZXN0X3JlZigpIG9u
IHRoZSByZXF1ZXN0IG9iamVjdCB0byBwcm9jZXNzIHRoZSBhdXRoZW50aWNhdGlvbiBhc3luY2hy
b25vdXNseS4KICAqIC0gImJhY2ssZm9yd2FyZCxsaXN0LGNoYW5nZWQiLCB2b2lkOiByZXBvcnRz
IHRoYXQgdGhlIHZpZXcncyBiYWNrIC8gZm9yd2FyZCBsaXN0IGhhZCBjaGFuZ2VkLgogICogLSAi
Y2FuY2VsLHZpYnJhdGlvbiIsIHZvaWQ6IHJlcXVlc3QgdG8gY2FuY2VsIHRoZSB2aWJyYXRpb24u
CisgKiAtICJjb250ZW50cyxzaXplLGNoYW5nZWQiLCBFd2tfQ1NTX1NpemUqOiByZXBvcnRzIHRo
YXQgY29udGVudHMgc2l6ZSB3YXMgY2hhbmdlZC4KICAqIC0gImRvd25sb2FkLGNhbmNlbGxlZCIs
IEV3a19Eb3dubG9hZF9Kb2IqOiByZXBvcnRzIHRoYXQgYSBkb3dubG9hZCB3YXMgZWZmZWN0aXZl
bHkgY2FuY2VsbGVkLgogICogLSAiZG93bmxvYWQsZmFpbGVkIiwgRXdrX0Rvd25sb2FkX0pvYl9F
cnJvcio6IHJlcG9ydHMgdGhhdCBhIGRvd25sb2FkIGZhaWxlZCB3aXRoIHRoZSBnaXZlbiBlcnJv
ci4KICAqIC0gImRvd25sb2FkLGZpbmlzaGVkIiwgRXdrX0Rvd25sb2FkX0pvYio6IHJlcG9ydHMg
dGhhdCBhIGRvd25sb2FkIGNvbXBsZXRlZCBzdWNjZXNzZnVsbHkuCkBAIC0yNzIsNiArMjczLDE3
IEBAIHN0cnVjdCBFd2tfRG93bmxvYWRfSm9iX0Vycm9yIHsKICAgICBFd2tfRXJyb3IgKmVycm9y
OyAvKio8IGRvd25sb2FkIGVycm9yICovCiB9OwogCisvLy8gQ3JlYXRlcyBhIHR5cGUgbmFtZSBm
b3IgRXdrX0NTU19TaXplLgordHlwZWRlZiBzdHJ1Y3QgRXdrX0NTU19TaXplIEV3a19DU1NfU2l6
ZTsKKworLyoqCisgKiBAYnJpZWYgU3RydWN0dXJlIHJlcHJlc2VudGluZyBzaXplLgorICovCitz
dHJ1Y3QgRXdrX0NTU19TaXplIHsKKyAgICBFdmFzX0Nvb3JkIHc7IC8qKjwgd2lkdGggKi8KKyAg
ICBFdmFzX0Nvb3JkIGg7IC8qKjwgaGVpZ2h0ICovCit9OworCiAvKioKICAqIEVudW0gdmFsdWVz
IHVzZWQgdG8gc3BlY2lmeSBzZWFyY2ggb3B0aW9ucy4KICAqIEBicmllZiAgIFByb3ZpZGVzIG9w
dGlvbiB0byBmaW5kIHRleHQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNwcAppbmRleCA5MjJjM2VjMjE4ZDA3Y2Rj
ZmU1YWI0NmI0MGEwN2FjYTMyMWMzZjY4Li40MDVlMTdlM2UyYTcxZWU4ZmMyMzYzYTg2NjA2NTY1
NTg0NmNjNzhiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC90
ZXN0cy90ZXN0X2V3azJfdmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQ
SS9lZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwCkBAIC04ODEsMyArODgxLDM4IEBAIFRFU1Rf
RihFV0syVW5pdFRlc3RCYXNlLCBld2tfY29udGV4dF92aWJyYXRpb25fY2xpZW50X2NhbGxiYWNr
c19zZXQpCiAgICAgQVNTRVJUX0ZBTFNFKGRhdGEuZGlkUmVjZWl2ZUNhbmNlbFZpYnJhdGlvbik7
CiB9CiAKK3N0YXRpYyB2b2lkIG9uQ29udGVudHNTaXplQ2hhbmdlZCh2b2lkKiB1c2VyRGF0YSwg
RXZhc19PYmplY3QqLCB2b2lkKiBldmVudEluZm8pCit7CisgICAgYm9vbCogcmVzdWx0ID0gc3Rh
dGljX2Nhc3Q8Ym9vbCo+KHVzZXJEYXRhKTsKKyAgICBFd2tfQ1NTX1NpemUqIHNpemUgPSBzdGF0
aWNfY2FzdDxFd2tfQ1NTX1NpemUqPihldmVudEluZm8pOworCisgICAgaWYgKHNpemUtPncgPT0g
MjAwMCAmJiBzaXplLT5oID09IDMwMDApCisgICAgICAgICpyZXN1bHQgPSB0cnVlOworfQorCitU
RVNUX0YoRVdLMlVuaXRUZXN0QmFzZSwgZXdrX3ZpZXdfY29udGVudHNfc2l6ZV9jaGFuZ2VkKQor
eworICAgIGNvbnN0IGNoYXIgY29udGVudHNTaXplSFRNTFtdID0KKyAgICAgICAgIjwhRE9DVFlQ
RSBodG1sPiIKKyAgICAgICAgIjxib2R5IHN0eWxlPVwibWFyZ2luOjBweDt3aWR0aDoyMDAwcHg7
aGVpZ2h0OjMwMDBweFwiPjwvYm9keT4iOworCisgICAgYm9vbCBzaXplQ2hhbmdlZCA9IGZhbHNl
OworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZCh3ZWJWaWV3KCksICJjb250ZW50
cyxzaXplLGNoYW5nZWQiLCBvbkNvbnRlbnRzU2l6ZUNoYW5nZWQsICZzaXplQ2hhbmdlZCk7Cisg
ICAgZXdrX3ZpZXdfaHRtbF9zdHJpbmdfbG9hZCh3ZWJWaWV3KCksIGNvbnRlbnRzU2l6ZUhUTUws
IDAsIDApOworICAgIHdoaWxlICghc2l6ZUNoYW5nZWQpCisgICAgICAgIGVjb3JlX21haW5fbG9v
cF9pdGVyYXRlKCk7CisKKyAgICBld2tfdmlld19kZXZpY2VfcGl4ZWxfcmF0aW9fc2V0KHdlYlZp
ZXcoKSwgMik7CisgICAgZXdrX3ZpZXdfaHRtbF9zdHJpbmdfbG9hZCh3ZWJWaWV3KCksIGNvbnRl
bnRzU2l6ZUhUTUwsIDAsIDApOworICAgIHNpemVDaGFuZ2VkID0gZmFsc2U7CisgICAgd2hpbGUg
KCFzaXplQ2hhbmdlZCkKKyAgICAgICAgZWNvcmVfbWFpbl9sb29wX2l0ZXJhdGUoKTsKKworICAg
IGV3a192aWV3X3NjYWxlX3NldCh3ZWJWaWV3KCksIDMsIDAsIDApOworICAgIGV3a192aWV3X2h0
bWxfc3RyaW5nX2xvYWQod2ViVmlldygpLCBjb250ZW50c1NpemVIVE1MLCAwLCAwKTsKKyAgICBz
aXplQ2hhbmdlZCA9IGZhbHNlOworICAgIHdoaWxlICghc2l6ZUNoYW5nZWQpCisgICAgICAgIGVj
b3JlX21haW5fbG9vcF9pdGVyYXRlKCk7CisKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFj
a19kZWwod2ViVmlldygpLCAiY29udGVudHMsc2l6ZSxjaGFuZ2VkIiwgb25Db250ZW50c1NpemVD
aGFuZ2VkKTsKK30KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFn
ZUNsaWVudERlZmF1bHRJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9lZmwvUGFn
ZUNsaWVudERlZmF1bHRJbXBsLmNwcAppbmRleCBjZWZmNTM0NjhhMWFjMjYyMjNhMDAyNzM5Y2I4
MmMxZTFmNTNlZDUzLi40NDExYmZhNzM2YzRiMGI3Njc3MTk0MmJiNDgyMDI4YTdlYTE5ODgxIDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZhdWx0
SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RGVm
YXVsdEltcGwuY3BwCkBAIC0yOCw2ICsyOCw3IEBACiAjaW5jbHVkZSAiUGFnZUNsaWVudERlZmF1
bHRJbXBsLmgiCiAKICNpbmNsdWRlICJFd2tWaWV3SW1wbC5oIgorI2luY2x1ZGUgImV3a192aWV3
LmgiCiAKICNpZiBVU0UoVElMRURfQkFDS0lOR19TVE9SRSkKICNpbmNsdWRlICJQYWdlVmlld3Bv
cnRDb250cm9sbGVyLmgiCkBAIC05NCw5ICs5NSwxMCBAQCB2b2lkIFBhZ2VDbGllbnREZWZhdWx0
SW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIHNpemUp
CiAjaWYgVVNFKFRJTEVEX0JBQ0tJTkdfU1RPUkUpCiAgICAgQVNTRVJUKG1fcGFnZVZpZXdwb3J0
Q29udHJvbGxlcik7CiAgICAgbV9wYWdlVmlld3BvcnRDb250cm9sbGVyLT5kaWRDaGFuZ2VDb250
ZW50c1NpemUoc2l6ZSk7Ci0jZWxzZQotICAgIG1fdmlld0ltcGwtPmluZm9ybUNvbnRlbnRzU2l6
ZUNoYW5nZShzaXplKTsKICNlbmRpZgorCisgICAgRXdrX0NTU19TaXplIGNvbnRlbnRzU2l6ZSA9
IHsgc2l6ZS53aWR0aCgpLCBzaXplLmhlaWdodCgpIH07CisgICAgbV92aWV3SW1wbC0+c21hcnRD
YWxsYmFjazxDb250ZW50c1NpemVDaGFuZ2VkPigpLmNhbGwoJmNvbnRlbnRzU2l6ZSk7CiB9CiAK
ICNpZiBVU0UoVElMRURfQkFDS0lOR19TVE9SRSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudExlZ2FjeUltcGwuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKaW5kZXggZjYyYjg2NzFhOTMw
ODgyNjhiOWRhZWQ0OTgzYTU0M2MwYWMxNmUzNy4uYmU2ZjFhNzA3NzU1MjE5ODA0ZGU2ZWUxN2I4
YzEwMmVmZDQ0ZTkxOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2VmbC9Q
YWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2Vm
bC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRlICJF
d2tWaWV3SW1wbC5oIgogI2luY2x1ZGUgIkxheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkuaCIKICNp
bmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgorI2luY2x1ZGUgImV3a192aWV3LmgiCiAKIHVzaW5n
IG5hbWVzcGFjZSBXZWJDb3JlOwogdXNpbmcgbmFtZXNwYWNlIEV3a1ZpZXdDYWxsYmFja3M7CkBA
IC03NSwxMiArNzYsMTIgQEAgdm9pZCBQYWdlQ2xpZW50TGVnYWN5SW1wbDo6ZGlkQ2hhbmdlVmll
d3BvcnRQcm9wZXJ0aWVzKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXQKIHZvaWQgUGFnZUNsaWVu
dExlZ2FjeUltcGw6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25zdCBXZWJDb3JlOjpJbnRTaXpl
JiBzaXplKQogewogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQotICAgIC8vIG1fdmlld0lt
cGwtPmluZm9ybUNvbnRlbnRTaXplQ2hhbmdlZCB3aWxsIGJlIGNhbGxlZCBhcyBhIHJlc3VsdCBv
ZiBzZXRDb250ZW50c1NpemUKICAgICBtX3ZpZXdJbXBsLT5wYWdlKCktPmRyYXdpbmdBcmVhKCkt
PmxheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkoKS0+c2V0Q29udGVudHNTaXplKEZsb2F0U2l6ZShz
aXplLndpZHRoKCksIHNpemUuaGVpZ2h0KCkpKTsKICAgICBtX3ZpZXdJbXBsLT51cGRhdGUoKTsK
LSNlbHNlCi0gICAgbV92aWV3SW1wbC0+aW5mb3JtQ29udGVudHNTaXplQ2hhbmdlKHNpemUpOwog
I2VuZGlmCisKKyAgICBFd2tfQ1NTX1NpemUgY29udGVudHNTaXplID0geyBzaXplLndpZHRoKCks
IHNpemUuaGVpZ2h0KCkgfTsKKyAgICBtX3ZpZXdJbXBsLT5zbWFydENhbGxiYWNrPENvbnRlbnRz
U2l6ZUNoYW5nZWQ+KCkuY2FsbCgmY29udGVudHNTaXplKTsKIH0KIAogI2lmIFVTRShUSUxFRF9C
QUNLSU5HX1NUT1JFKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJD
b3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJDb3JlU3VwcG9ydC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IDI4M2E4MzljNGZlYmE5
NWY1MDY0YTM4NjVkYjIwNGRiYWM5YzkyNmIuLjA5N2FiZThjYWFkNTFjNTMzYWVkYjRjOTMyODI1
MDI1NTUxYzk4MTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29y
ZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYkNvcmVTdXBwb3J0L1dlYkNocm9tZUNsaWVudC5jcHAKQEAgLTQ1Myw3ICs0NTMsOCBA
QCB2b2lkIFdlYkNocm9tZUNsaWVudDo6Y29udGVudHNTaXplQ2hhbmdlZChGcmFtZSogZnJhbWUs
IGNvbnN0IEludFNpemUmIHNpemUpIGNvbgogICAgIH0KIAogICAgIG1fcGFnZS0+c2VuZChNZXNz
YWdlczo6V2ViUGFnZVByb3h5OjpEaWRDaGFuZ2VDb250ZW50c1NpemUobV9wYWdlLT5zaXplKCkp
KTsKLQorI2VsaWYgUExBVEZPUk0oRUZMKQorICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2Vi
UGFnZVByb3h5OjpEaWRDaGFuZ2VDb250ZW50c1NpemUoc2l6ZSkpOwogI2VuZGlmCiAKICAgICBt
X3BhZ2UtPmRyYXdpbmdBcmVhKCktPm1haW5GcmFtZUNvbnRlbnRTaXplQ2hhbmdlZChzaXplKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>177253</attachid>
            <date>2012-12-03 07:40:00 -0800</date>
            <delta_ts>2012-12-03 07:51:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-103094-20121204003726.patch</filename>
            <type>text/plain</type>
            <size>11613</size>
            <attacher name="Ryuan Choi">ryuan.choi</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM2Mzc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggM2RmMzQyODQyYTZmNzdl
ZTkxNWVjYTg2ZjUxNDEwYjQ2Y2MwYTUyZi4uZmE2MmZhYzY3NjFjNTEzMjVhNWQzMWFlZDQyODFl
NDczYTU4NzAzYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTEyLTAzICBSeXVh
biBDaG9pICA8cnl1YW4uY2hvaUBzYW1zdW5nLGNvbT4KKworICAgICAgICBbRUZMXVtXSzJdIEFk
ZCBjb250ZW50cyxzaXplLGNoYW5nZWQgc2lnbmFsIHRvIHRoZSBld2tfdmlldyBBUEkKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMzA5NAorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgcGF0Y2ggZW1p
dHMgc2lnbmFsIHRvIGxldCBhcHBsaWNhdGlvbnMga25vdyBjb250ZW50cyBzaXplLgorICAgICAg
ICBBcHBsaWNhdGlvbnMgY2FuIHVzZSB0aGlzIHNpZ25hbCB0byBnaXZlIHNvbWUgYWRkaXRpb25h
bCBiZWhhdmlvciBzdWNoIGFzCisgICAgICAgIG1pbmltYXAsIGV4dGVybmFsIHNjcm9sbCBmb3Ig
cXVpY2sgbW92ZW1lbnQuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3Q2Fs
bGJhY2tzLmg6IEFkZGVkIGNvbnRlbnRzLHNpemUsY2hhbmdlZCBzaWduYWwuCisgICAgICAgICog
VUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuY3BwOiBSZW1vdmVkIGRlYWQgY29kZS4KKyAg
ICAgICAgKiBVSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3SW1wbC5oOiBEaXR0by4KKyAgICAgICAg
KEV3a1ZpZXdJbXBsKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL2VmbC9ld2tfdmlldy5oOiBB
ZGRlZCB0ZXN0IGNhc2UuCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9lZmwvdGVzdHMvdGVzdF9l
d2syX3ZpZXcuY3BwOgorICAgICAgICAob25Db250ZW50c1NpemVDaGFuZ2VkKToKKyAgICAgICAg
KFRFU1RfRik6CisgICAgICAgICogVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RGVmYXVsdEltcGwu
Y3BwOiBFbWl0dGVkIGNvbnRlbnRzLHNpemUsY2hhbmdlZCBzaWduYWwuCisgICAgICAgIChXZWJL
aXQ6OlBhZ2VDbGllbnREZWZhdWx0SW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKToKKyAgICAg
ICAgKiBVSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnRMZWdhY3lJbXBsLmNwcDogRGl0dG8uCisgICAg
ICAgIChXZWJLaXQ6OlBhZ2VDbGllbnRMZWdhY3lJbXBsOjpkaWRDaGFuZ2VDb250ZW50c1NpemUp
OgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hyb21lQ2xpZW50LmNw
cDoKKyAgICAgICAgKFdlYktpdDo6V2ViQ2hyb21lQ2xpZW50Ojpjb250ZW50c1NpemVDaGFuZ2Vk
KToKKyAgICAgICAgU2VuZGVkIERpZENoYW5nZUNvbnRlbnRzU2l6ZSBtZXNzYWdlIGFsdGhvdWdo
IFRJTEVEX0JBQ0tJTkdTVE9SRSBpcyBkaXNhYmxlZC4KKwogMjAxMi0xMi0wMyAgTWlraGFpbCBQ
b3pkbnlha292ICA8bWlraGFpbC5wb3pkbnlha292QGludGVsLmNvbT4KIAogICAgICAgICBDU1Mg
RGV2aWNlIEFkYXB0YXRpb246IHdpbmRvdy5pbm5lcldpZHRoIHJldHVybnMgd3JvbmcgdmFsdWUg
aWYgQ1NTIHZpZXdwb3J0IGRlc2NyaXB0b3JzIGFyZSBhcHBsaWVkCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3Q2FsbGJhY2tzLmggYi9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3Q2FsbGJhY2tzLmgKaW5kZXggY2Y4MjJh
MmVkY2I2NjRiNDI2NDNmM2NhMzE5Y2M2OGEyYjgwZDhkOS4uYmZkZjcxMzBhYThlYzQyMTAzZmNk
ZTk2YWVkZDY0ZjIyN2Q3NmYzMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L0FQSS9lZmwvRXdrVmlld0NhbGxiYWNrcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvZWZsL0V3a1ZpZXdDYWxsYmFja3MuaApAQCAtMjksNiArMjksNyBAQAogI2luY2x1ZGUg
IldLRWluYVNoYXJlZFN0cmluZy5oIgogI2luY2x1ZGUgImV3a19wcml2YXRlLmgiCiAjaW5jbHVk
ZSA8RXZhcy5oPgorI2luY2x1ZGUgPFdlYkNvcmUvSW50U2l6ZS5oPgogI2luY2x1ZGUgPHd0Zi90
ZXh0L0NTdHJpbmcuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4KIApAQCAtNTAs
NiArNTEsNyBAQCBzdHJ1Y3QgRXdrX0Rvd25sb2FkX0pvYl9FcnJvcjsKIHN0cnVjdCBFd2tfUmVz
b3VyY2VfUmVxdWVzdDsKIHN0cnVjdCBFd2tfUmVzb3VyY2VfTG9hZF9SZXNwb25zZTsKIHN0cnVj
dCBFd2tfUmVzb3VyY2VfTG9hZF9FcnJvcjsKK3N0cnVjdCBFd2tfQ1NTX1NpemU7CiAKIG5hbWVz
cGFjZSBFd2tWaWV3Q2FsbGJhY2tzIHsKIApAQCAtNTcsNiArNTksNyBAQCBlbnVtIENhbGxiYWNr
VHlwZSB7CiAgICAgQXV0aGVudGljYXRpb25SZXF1ZXN0LAogICAgIEJhY2tGb3J3YXJkTGlzdENo
YW5nZSwKICAgICBDYW5jZWxWaWJyYXRpb24sCisgICAgQ29udGVudHNTaXplQ2hhbmdlZCwKICAg
ICBEb3dubG9hZEpvYkNhbmNlbGxlZCwKICAgICBEb3dubG9hZEpvYkZhaWxlZCwKICAgICBEb3du
bG9hZEpvYkZpbmlzaGVkLApAQCAtMTUwLDYgKzE1MywyMiBAQCBzdHJ1Y3QgQ2FsbEJhY2sgPGNh
bGxiYWNrVHlwZSwgY29uc3QgY2hhcio+IDogcHVibGljIEV2YXNPYmplY3RIb2xkZXIgewogICAg
IH0KIH07CiAKK3RlbXBsYXRlIDxDYWxsYmFja1R5cGUgY2FsbGJhY2tUeXBlPgorc3RydWN0IENh
bGxCYWNrIDxjYWxsYmFja1R5cGUsIEV3a19DU1NfU2l6ZSo+IDogcHVibGljIEV2YXNPYmplY3RI
b2xkZXIgeworICAgIGV4cGxpY2l0IENhbGxCYWNrKEV2YXNfT2JqZWN0KiB2aWV3KSA6IEV2YXNP
YmplY3RIb2xkZXIodmlldykgeyB9CisKKyAgICB2b2lkIGNhbGwoRXdrX0NTU19TaXplKiBzaXpl
KQorICAgIHsKKyAgICAgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfY2FsbChtX29iamVj
dCwgQ2FsbEJhY2tJbmZvPGNhbGxiYWNrVHlwZT46Om5hbWUoKSwgc2l6ZSk7CisgICAgfQorCisg
ICAgdm9pZCBjYWxsKGNvbnN0IFdlYkNvcmU6OkludFNpemUmIGFyZykKKyAgICB7CisgICAgICAg
IEV3a19DU1NfU2l6ZSBzaXplID0geyBhcmcud2lkdGgoKSwgYXJnLmhlaWdodCgpIH07CisgICAg
ICAgIGNhbGwoJnNpemUpOworICAgIH0KK307CisKICNkZWZpbmUgREVDTEFSRV9FV0tfVklFV19D
QUxMQkFDSyhjYWxsYmFja1R5cGUsIHN0cmluZywgdHlwZSkgXAogdGVtcGxhdGUgPD4gICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBcCiBzdHJ1Y3QgQ2Fs
bEJhY2tJbmZvPGNhbGxiYWNrVHlwZT4geyAgICAgICAgICAgICAgICAgICAgICAgICAgIFwKQEAg
LTE2MSw2ICsxODAsNyBAQCBzdHJ1Y3QgQ2FsbEJhY2tJbmZvPGNhbGxiYWNrVHlwZT4geyAgICAg
ICAgICAgICAgICAgICAgICAgICAgIFwKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soQXV0aGVu
dGljYXRpb25SZXF1ZXN0LCAiYXV0aGVudGljYXRpb24scmVxdWVzdCIsIEV3a19BdXRoX1JlcXVl
c3QqKTsKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soQmFja0ZvcndhcmRMaXN0Q2hhbmdlLCAi
YmFjayxmb3J3YXJkLGxpc3QsY2hhbmdlZCIsIHZvaWQpOwogREVDTEFSRV9FV0tfVklFV19DQUxM
QkFDSyhDYW5jZWxWaWJyYXRpb24sICJjYW5jZWwsdmlicmF0aW9uIiwgdm9pZCk7CitERUNMQVJF
X0VXS19WSUVXX0NBTExCQUNLKENvbnRlbnRzU2l6ZUNoYW5nZWQsICJjb250ZW50cyxzaXplLGNo
YW5nZWQiLCBFd2tfQ1NTX1NpemUqKTsKIERFQ0xBUkVfRVdLX1ZJRVdfQ0FMTEJBQ0soRG93bmxv
YWRKb2JDYW5jZWxsZWQsICJkb3dubG9hZCxjYW5jZWxsZWQiLCBFd2tfRG93bmxvYWRfSm9iKik7
CiBERUNMQVJFX0VXS19WSUVXX0NBTExCQUNLKERvd25sb2FkSm9iRmFpbGVkLCAiZG93bmxvYWQs
ZmFpbGVkIiwgRXdrX0Rvd25sb2FkX0pvYl9FcnJvciopOwogREVDTEFSRV9FV0tfVklFV19DQUxM
QkFDSyhEb3dubG9hZEpvYkZpbmlzaGVkLCAiZG93bmxvYWQsZmluaXNoZWQiLCBFd2tfRG93bmxv
YWRfSm9iKik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9F
d2tWaWV3SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3
SW1wbC5jcHAKaW5kZXggMmYyNjI5Y2UwOWQ2ZTMyYTM2NWJiMWI1Yjc2MTcwMzVlZGE5NzMzNS4u
ZjBhMGFkZTliMDZkMmFhOWEzMzYxZDdhODZkOTQ3ZWFmZjYzZDAwNyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL0V3a1ZpZXdJbXBsLmNwcApAQCAtNzQyLDE1ICs3
NDIsNiBAQCB2b2lkIEV3a1ZpZXdJbXBsOjpkaXNtaXNzQ29sb3JQaWNrZXIoKQogfQogI2VuZGlm
CiAKLXZvaWQgRXdrVmlld0ltcGw6OmluZm9ybUNvbnRlbnRzU2l6ZUNoYW5nZShjb25zdCBJbnRT
aXplJiBzaXplKQotewotI2lmIFVTRShDT09SRElOQVRFRF9HUkFQSElDUykKLSAgICBtX3BhZ2VD
bGllbnQtPmRpZENoYW5nZUNvbnRlbnRzU2l6ZShzaXplKTsKLSNlbHNlCi0gICAgVU5VU0VEX1BB
UkFNKHNpemUpOwotI2VuZGlmCi19Ci0KIENPTVBJTEVfQVNTRVJUX01BVENISU5HX0VOVU0oRVdL
X1RFWFRfRElSRUNUSU9OX1JJR0hUX1RPX0xFRlQsIFJUTCk7CiBDT01QSUxFX0FTU0VSVF9NQVRD
SElOR19FTlVNKEVXS19URVhUX0RJUkVDVElPTl9MRUZUX1RPX1JJR0hULCBMVFIpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9Fd2tWaWV3SW1wbC5oIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvRXdrVmlld0ltcGwuaAppbmRleCBiYjkz
ZmVkYjE5MzRlY2I5ZGMxNjdkNmQyNzYzZDY0M2UxMmU2NmJjLi5hMGE5Mjg5MjRkZDhlOGE3ZDI0
ODEwNTRkNDU3MWM0OGFhYTAyM2FmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL2VmbC9Fd2tWaWV3SW1wbC5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9B
UEkvZWZsL0V3a1ZpZXdJbXBsLmgKQEAgLTE5Myw3ICsxOTMsNiBAQCBwdWJsaWM6CiAjaWYgVVNF
KFRJTEVEX0JBQ0tJTkdfU1RPUkUpCiAgICAgdm9pZCBpbmZvcm1Mb2FkQ29tbWl0dGVkKCk7CiAj
ZW5kaWYKLSAgICB2b2lkIGluZm9ybUNvbnRlbnRzU2l6ZUNoYW5nZShjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJiBzaXplKTsKICAgICB1bnNpZ25lZCBsb25nIGxvbmcgaW5mb3JtRGF0YWJhc2VRdW90
YVJlYWNoZWQoY29uc3QgU3RyaW5nJiBkYXRhYmFzZU5hbWUsIGNvbnN0IFN0cmluZyYgZGlzcGxh
eU5hbWUsIHVuc2lnbmVkIGxvbmcgbG9uZyBjdXJyZW50UXVvdGEsIHVuc2lnbmVkIGxvbmcgbG9u
ZyBjdXJyZW50T3JpZ2luVXNhZ2UsIHVuc2lnbmVkIGxvbmcgbG9uZyBjdXJyZW50RGF0YWJhc2VV
c2FnZSwgdW5zaWduZWQgbG9uZyBsb25nIGV4cGVjdGVkVXNhZ2UpOwogCiAjaWYgVVNFKFRJTEVE
X0JBQ0tJTkdfU1RPUkUpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L2VmbC9ld2tfdmlldy5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9lZmwvZXdrX3Zp
ZXcuaAppbmRleCA5YTQwOGFiNWU0ZGQyZDBjOGU3YjNiYTNkMDIyMGIwYjFmYzEzNzIyLi41MzIy
ZDdjZWFkMzE1YWQ0OTVhMzNjNGFlNjUwZDM2YjgyNWNkOWMzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC9ld2tfdmlldy5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZWZsL2V3a192aWV3LmgKQEAgLTMwLDYgKzMwLDcgQEAKICAqICAgZXdr
X2F1dGhfcmVxdWVzdF9yZWYoKSBvbiB0aGUgcmVxdWVzdCBvYmplY3QgdG8gcHJvY2VzcyB0aGUg
YXV0aGVudGljYXRpb24gYXN5bmNocm9ub3VzbHkuCiAgKiAtICJiYWNrLGZvcndhcmQsbGlzdCxj
aGFuZ2VkIiwgdm9pZDogcmVwb3J0cyB0aGF0IHRoZSB2aWV3J3MgYmFjayAvIGZvcndhcmQgbGlz
dCBoYWQgY2hhbmdlZC4KICAqIC0gImNhbmNlbCx2aWJyYXRpb24iLCB2b2lkOiByZXF1ZXN0IHRv
IGNhbmNlbCB0aGUgdmlicmF0aW9uLgorICogLSAiY29udGVudHMsc2l6ZSxjaGFuZ2VkIiwgRXdr
X0NTU19TaXplKjogcmVwb3J0cyB0aGF0IGNvbnRlbnRzIHNpemUgd2FzIGNoYW5nZWQuCiAgKiAt
ICJkb3dubG9hZCxjYW5jZWxsZWQiLCBFd2tfRG93bmxvYWRfSm9iKjogcmVwb3J0cyB0aGF0IGEg
ZG93bmxvYWQgd2FzIGVmZmVjdGl2ZWx5IGNhbmNlbGxlZC4KICAqIC0gImRvd25sb2FkLGZhaWxl
ZCIsIEV3a19Eb3dubG9hZF9Kb2JfRXJyb3IqOiByZXBvcnRzIHRoYXQgYSBkb3dubG9hZCBmYWls
ZWQgd2l0aCB0aGUgZ2l2ZW4gZXJyb3IuCiAgKiAtICJkb3dubG9hZCxmaW5pc2hlZCIsIEV3a19E
b3dubG9hZF9Kb2IqOiByZXBvcnRzIHRoYXQgYSBkb3dubG9hZCBjb21wbGV0ZWQgc3VjY2Vzc2Z1
bGx5LgpAQCAtMjcyLDYgKzI3MywxNyBAQCBzdHJ1Y3QgRXdrX0Rvd25sb2FkX0pvYl9FcnJvciB7
CiAgICAgRXdrX0Vycm9yICplcnJvcjsgLyoqPCBkb3dubG9hZCBlcnJvciAqLwogfTsKIAorLy8v
IENyZWF0ZXMgYSB0eXBlIG5hbWUgZm9yIEV3a19DU1NfU2l6ZS4KK3R5cGVkZWYgc3RydWN0IEV3
a19DU1NfU2l6ZSBFd2tfQ1NTX1NpemU7CisKKy8qKgorICogQGJyaWVmIFN0cnVjdHVyZSByZXBy
ZXNlbnRpbmcgc2l6ZS4KKyAqLworc3RydWN0IEV3a19DU1NfU2l6ZSB7CisgICAgRXZhc19Db29y
ZCB3OyAvKio8IHdpZHRoICovCisgICAgRXZhc19Db29yZCBoOyAvKio8IGhlaWdodCAqLworfTsK
KwogLyoqCiAgKiBFbnVtIHZhbHVlcyB1c2VkIHRvIHNwZWNpZnkgc2VhcmNoIG9wdGlvbnMuCiAg
KiBAYnJpZWYgICBQcm92aWRlcyBvcHRpb24gdG8gZmluZCB0ZXh0CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC90ZXN0cy90ZXN0X2V3azJfdmlldy5jcHAgYi9T
b3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2VmbC90ZXN0cy90ZXN0X2V3azJfdmlldy5jcHAK
aW5kZXggOTIyYzNlYzIxOGQwN2NkY2ZlNWFiNDZiNDBhMDdhY2EzMjFjM2Y2OC4uNDA1ZTE3ZTNl
MmE3MWVlOGZjMjM2M2E4NjYwNjU2NTU4NDZjYzc4YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL0FQSS9lZmwvdGVzdHMvdGVzdF9ld2syX3ZpZXcuY3BwCisrKyBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZWZsL3Rlc3RzL3Rlc3RfZXdrMl92aWV3LmNwcApAQCAt
ODgxLDMgKzg4MSwzOCBAQCBURVNUX0YoRVdLMlVuaXRUZXN0QmFzZSwgZXdrX2NvbnRleHRfdmli
cmF0aW9uX2NsaWVudF9jYWxsYmFja3Nfc2V0KQogICAgIEFTU0VSVF9GQUxTRShkYXRhLmRpZFJl
Y2VpdmVDYW5jZWxWaWJyYXRpb24pOwogfQogCitzdGF0aWMgdm9pZCBvbkNvbnRlbnRzU2l6ZUNo
YW5nZWQodm9pZCogdXNlckRhdGEsIEV2YXNfT2JqZWN0Kiwgdm9pZCogZXZlbnRJbmZvKQorewor
ICAgIGJvb2wqIHJlc3VsdCA9IHN0YXRpY19jYXN0PGJvb2wqPih1c2VyRGF0YSk7CisgICAgRXdr
X0NTU19TaXplKiBzaXplID0gc3RhdGljX2Nhc3Q8RXdrX0NTU19TaXplKj4oZXZlbnRJbmZvKTsK
KworICAgIGlmIChzaXplLT53ID09IDIwMDAgJiYgc2l6ZS0+aCA9PSAzMDAwKQorICAgICAgICAq
cmVzdWx0ID0gdHJ1ZTsKK30KKworVEVTVF9GKEVXSzJVbml0VGVzdEJhc2UsIGV3a192aWV3X2Nv
bnRlbnRzX3NpemVfY2hhbmdlZCkKK3sKKyAgICBjb25zdCBjaGFyIGNvbnRlbnRzU2l6ZUhUTUxb
XSA9CisgICAgICAgICI8IURPQ1RZUEUgaHRtbD4iCisgICAgICAgICI8Ym9keSBzdHlsZT1cIm1h
cmdpbjowcHg7d2lkdGg6MjAwMHB4O2hlaWdodDozMDAwcHhcIj48L2JvZHk+IjsKKworICAgIGJv
b2wgc2l6ZUNoYW5nZWQgPSBmYWxzZTsKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19h
ZGQod2ViVmlldygpLCAiY29udGVudHMsc2l6ZSxjaGFuZ2VkIiwgb25Db250ZW50c1NpemVDaGFu
Z2VkLCAmc2l6ZUNoYW5nZWQpOworICAgIGV3a192aWV3X2h0bWxfc3RyaW5nX2xvYWQod2ViVmll
dygpLCBjb250ZW50c1NpemVIVE1MLCAwLCAwKTsKKyAgICB3aGlsZSAoIXNpemVDaGFuZ2VkKQor
ICAgICAgICBlY29yZV9tYWluX2xvb3BfaXRlcmF0ZSgpOworCisgICAgZXdrX3ZpZXdfZGV2aWNl
X3BpeGVsX3JhdGlvX3NldCh3ZWJWaWV3KCksIDIpOworICAgIGV3a192aWV3X2h0bWxfc3RyaW5n
X2xvYWQod2ViVmlldygpLCBjb250ZW50c1NpemVIVE1MLCAwLCAwKTsKKyAgICBzaXplQ2hhbmdl
ZCA9IGZhbHNlOworICAgIHdoaWxlICghc2l6ZUNoYW5nZWQpCisgICAgICAgIGVjb3JlX21haW5f
bG9vcF9pdGVyYXRlKCk7CisKKyAgICBld2tfdmlld19zY2FsZV9zZXQod2ViVmlldygpLCAzLCAw
LCAwKTsKKyAgICBld2tfdmlld19odG1sX3N0cmluZ19sb2FkKHdlYlZpZXcoKSwgY29udGVudHNT
aXplSFRNTCwgMCwgMCk7CisgICAgc2l6ZUNoYW5nZWQgPSBmYWxzZTsKKyAgICB3aGlsZSAoIXNp
emVDaGFuZ2VkKQorICAgICAgICBlY29yZV9tYWluX2xvb3BfaXRlcmF0ZSgpOworCisgICAgZXZh
c19vYmplY3Rfc21hcnRfY2FsbGJhY2tfZGVsKHdlYlZpZXcoKSwgImNvbnRlbnRzLHNpemUsY2hh
bmdlZCIsIG9uQ29udGVudHNTaXplQ2hhbmdlZCk7Cit9CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZhdWx0SW1wbC5jcHAgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnREZWZhdWx0SW1wbC5jcHAKaW5kZXggY2VmZjUz
NDY4YTFhYzI2MjIzYTAwMjczOWNiODJjMWUxZjUzZWQ1My4uMTY5M2I5OWIxMTg1MTVkNTYxNDI1
YzY1ZTk3ZWNkY2NhMjk5MjQxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2VmbC9QYWdlQ2xpZW50RGVmYXVsdEltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9lZmwvUGFnZUNsaWVudERlZmF1bHRJbXBsLmNwcApAQCAtMjgsNiArMjgsNyBAQAogI2lu
Y2x1ZGUgIlBhZ2VDbGllbnREZWZhdWx0SW1wbC5oIgogCiAjaW5jbHVkZSAiRXdrVmlld0ltcGwu
aCIKKyNpbmNsdWRlICJld2tfdmlldy5oIgogCiAjaWYgVVNFKFRJTEVEX0JBQ0tJTkdfU1RPUkUp
CiAjaW5jbHVkZSAiUGFnZVZpZXdwb3J0Q29udHJvbGxlci5oIgpAQCAtOTQsOSArOTUsOSBAQCB2
b2lkIFBhZ2VDbGllbnREZWZhdWx0SW1wbDo6ZGlkQ2hhbmdlQ29udGVudHNTaXplKGNvbnN0IFdl
YkNvcmU6OkludFNpemUmIHNpemUpCiAjaWYgVVNFKFRJTEVEX0JBQ0tJTkdfU1RPUkUpCiAgICAg
QVNTRVJUKG1fcGFnZVZpZXdwb3J0Q29udHJvbGxlcik7CiAgICAgbV9wYWdlVmlld3BvcnRDb250
cm9sbGVyLT5kaWRDaGFuZ2VDb250ZW50c1NpemUoc2l6ZSk7Ci0jZWxzZQotICAgIG1fdmlld0lt
cGwtPmluZm9ybUNvbnRlbnRzU2l6ZUNoYW5nZShzaXplKTsKICNlbmRpZgorCisgICAgbV92aWV3
SW1wbC0+c21hcnRDYWxsYmFjazxDb250ZW50c1NpemVDaGFuZ2VkPigpLmNhbGwoc2l6ZSk7CiB9
CiAKICNpZiBVU0UoVElMRURfQkFDS0lOR19TVE9SRSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudExlZ2FjeUltcGwuY3BwIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKaW5kZXggZjYyYjg2NzFh
OTMwODgyNjhiOWRhZWQ0OTgzYTU0M2MwYWMxNmUzNy4uYzhiMjZmZWFkNTdmZGMxYWZhYmFjM2Fl
Mjg4MGYxODY5MjNjMWFiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2Vm
bC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L2VmbC9QYWdlQ2xpZW50TGVnYWN5SW1wbC5jcHAKQEAgLTMwLDYgKzMwLDcgQEAKICNpbmNsdWRl
ICJFd2tWaWV3SW1wbC5oIgogI2luY2x1ZGUgIkxheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkuaCIK
ICNpbmNsdWRlICJOb3RJbXBsZW1lbnRlZC5oIgorI2luY2x1ZGUgImV3a192aWV3LmgiCiAKIHVz
aW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogdXNpbmcgbmFtZXNwYWNlIEV3a1ZpZXdDYWxsYmFja3M7
CkBAIC03NSwxMiArNzYsMTEgQEAgdm9pZCBQYWdlQ2xpZW50TGVnYWN5SW1wbDo6ZGlkQ2hhbmdl
Vmlld3BvcnRQcm9wZXJ0aWVzKGNvbnN0IFdlYkNvcmU6OlZpZXdwb3J0QXQKIHZvaWQgUGFnZUNs
aWVudExlZ2FjeUltcGw6OmRpZENoYW5nZUNvbnRlbnRzU2l6ZShjb25zdCBXZWJDb3JlOjpJbnRT
aXplJiBzaXplKQogewogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQotICAgIC8vIG1fdmll
d0ltcGwtPmluZm9ybUNvbnRlbnRTaXplQ2hhbmdlZCB3aWxsIGJlIGNhbGxlZCBhcyBhIHJlc3Vs
dCBvZiBzZXRDb250ZW50c1NpemUKICAgICBtX3ZpZXdJbXBsLT5wYWdlKCktPmRyYXdpbmdBcmVh
KCktPmxheWVyVHJlZUNvb3JkaW5hdG9yUHJveHkoKS0+c2V0Q29udGVudHNTaXplKEZsb2F0U2l6
ZShzaXplLndpZHRoKCksIHNpemUuaGVpZ2h0KCkpKTsKICAgICBtX3ZpZXdJbXBsLT51cGRhdGUo
KTsKLSNlbHNlCi0gICAgbV92aWV3SW1wbC0+aW5mb3JtQ29udGVudHNTaXplQ2hhbmdlKHNpemUp
OwogI2VuZGlmCisKKyAgICBtX3ZpZXdJbXBsLT5zbWFydENhbGxiYWNrPENvbnRlbnRzU2l6ZUNo
YW5nZWQ+KCkuY2FsbChzaXplKTsKIH0KIAogI2lmIFVTRShUSUxFRF9CQUNLSU5HX1NUT1JFKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJD
aHJvbWVDbGllbnQuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9y
dC9XZWJDaHJvbWVDbGllbnQuY3BwCmluZGV4IDI4M2E4MzljNGZlYmE5NWY1MDY0YTM4NjVkYjIw
NGRiYWM5YzkyNmIuLjA5N2FiZThjYWFkNTFjNTMzYWVkYjRjOTMyODI1MDI1NTUxYzk4MTAgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViQ2hy
b21lQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBw
b3J0L1dlYkNocm9tZUNsaWVudC5jcHAKQEAgLTQ1Myw3ICs0NTMsOCBAQCB2b2lkIFdlYkNocm9t
ZUNsaWVudDo6Y29udGVudHNTaXplQ2hhbmdlZChGcmFtZSogZnJhbWUsIGNvbnN0IEludFNpemUm
IHNpemUpIGNvbgogICAgIH0KIAogICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVBy
b3h5OjpEaWRDaGFuZ2VDb250ZW50c1NpemUobV9wYWdlLT5zaXplKCkpKTsKLQorI2VsaWYgUExB
VEZPUk0oRUZMKQorICAgIG1fcGFnZS0+c2VuZChNZXNzYWdlczo6V2ViUGFnZVByb3h5OjpEaWRD
aGFuZ2VDb250ZW50c1NpemUoc2l6ZSkpOwogI2VuZGlmCiAKICAgICBtX3BhZ2UtPmRyYXdpbmdB
cmVhKCktPm1haW5GcmFtZUNvbnRlbnRTaXplQ2hhbmdlZChzaXplKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>