<?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>100633</bug_id>
          
          <creation_ts>2012-10-29 00:02:43 -0700</creation_ts>
          <short_desc>Text Autosizing: Add Text Autosizing APIs for WK2</short_desc>
          <delta_ts>2012-11-26 03:17:01 -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>WebKit2</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>
          
          <blocked>84186</blocked>
    
    <blocked>99074</blocked>
          <everconfirmed>0</everconfirmed>
          <reporter name="Jaehun Lim">ljaehun.lim</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>dglazkov</cc>
    
    <cc>jchaffraix</cc>
    
    <cc>johnme</cc>
    
    <cc>joone</cc>
    
    <cc>kenneth</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>753096</commentid>
    <comment_count>0</comment_count>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-10-29 00:02:43 -0700</bug_when>
    <thetext>Add basic Text Autosizing APIs for WK2.

- WKPreferences{Set, Get}TextAutosizingEnabled()
- WKPreferences{Set, Get}TextAutosizingFontScaleFactor()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>753100</commentid>
    <comment_count>1</comment_count>
      <attachid>171164</attachid>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-10-29 00:05:17 -0700</bug_when>
    <thetext>Created attachment 171164
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>753103</commentid>
    <comment_count>2</comment_count>
      <attachid>171164</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-10-29 00:11:27 -0700</bug_when>
    <thetext>Comment on attachment 171164
Patch

Attachment 171164 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/14626053</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>753110</commentid>
    <comment_count>3</comment_count>
      <attachid>171168</attachid>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-10-29 00:30:31 -0700</bug_when>
    <thetext>Created attachment 171168
Fixed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>753248</commentid>
    <comment_count>4</comment_count>
    <who name="John Mellor">johnme</who>
    <bug_when>2012-10-29 04:13:16 -0700</bug_when>
    <thetext>Thanks for the cc. We may as well mark this as blocking the Text Autosizing master bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>753877</commentid>
    <comment_count>5</comment_count>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-10-29 16:59:15 -0700</bug_when>
    <thetext>setFloatValueIfInUserDefaults() has nothing to do with Text Autosizing.
I added these functions to fix build breaks.
I think it&apos;s better to make another bug for them.
I&apos;ll upload new patches soon.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>753956</commentid>
    <comment_count>6</comment_count>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-10-29 20:11:54 -0700</bug_when>
    <thetext>I tried to split this patch (Text Autosizing + setFloatValueIfInUserDefaults()).
But I couldn&apos;t because of &quot;unused function error&quot; in MAC port.
I&apos;m sorry to annoy you.
Please review my current patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>754159</commentid>
    <comment_count>7</comment_count>
      <attachid>171168</attachid>
    <who name="John Mellor">johnme</who>
    <bug_when>2012-10-30 03:35:08 -0700</bug_when>
    <thetext>Comment on attachment 171168
Fixed patch

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

Looks fine to me. I&apos;m not a WebKit reviewer though, nor am I familiar with WebKit2, so best to find a reviewer there.

Kenneth, could you suggest a reviewer for this perhaps?

&gt; Source/WebKit2/UIProcess/API/C/WKPreferences.cpp:949
&gt; +#if ENABLE(TEXT_AUTOSIZING)

I can&apos;t see any other preferences in this file which are guarded by feature defines. For example WKPreferencesSetWebArchiveDebugModeEnabled isn&apos;t guarded, even though setWebArchiveDebugModeEnabled is behind ENABLE(WEB_ARCHIVE) in WebCore/page/Settings.h. Are you sure WebKit2 style isn&apos;t to have these preferences always gettable/settable, even if their feature is disabled at compile time? (though I agree that this way makes sense)

&gt; Source/WebKit2/UIProcess/cf/WebPreferencesCF.cpp:96
&gt; +static void setFloatValueIfInUserDefaults(const String&amp; identifier, const String&amp; baseKey, WebPreferencesStore&amp; store)

Are the setFloatValueIfInUserDefaults functions needed because FOR_EACH_WEBKIT_FLOAT_PREFERENCE is no longer empty? If so that seems reasonable.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>754783</commentid>
    <comment_count>8</comment_count>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-10-30 16:40:41 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 171168 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=171168&amp;action=review
&gt; 
&gt; Looks fine to me. I&apos;m not a WebKit reviewer though, nor am I familiar with WebKit2, so best to find a reviewer there.
&gt; 
&gt; Kenneth, could you suggest a reviewer for this perhaps?
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/C/WKPreferences.cpp:949
&gt; &gt; +#if ENABLE(TEXT_AUTOSIZING)
&gt; 
&gt; I can&apos;t see any other preferences in this file which are guarded by feature defines. For example WKPreferencesSetWebArchiveDebugModeEnabled isn&apos;t guarded, even though setWebArchiveDebugModeEnabled is behind ENABLE(WEB_ARCHIVE) in WebCore/page/Settings.h. Are you sure WebKit2 style isn&apos;t to have these preferences always gettable/settable, even if their feature is disabled at compile time? (though I agree that this way makes sense)

It seems like no problem to remove guards. I&apos;ll upload new patch soon.

&gt; 
&gt; &gt; Source/WebKit2/UIProcess/cf/WebPreferencesCF.cpp:96
&gt; &gt; +static void setFloatValueIfInUserDefaults(const String&amp; identifier, const String&amp; baseKey, WebPreferencesStore&amp; store)
&gt; 
&gt; Are the setFloatValueIfInUserDefaults functions needed because FOR_EACH_WEBKIT_FLOAT_PREFERENCE is no longer empty? If so that seems reasonable.

Yes, you are right. I want to split them from this patch, but I can&apos;t as I said my previous comments.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>754792</commentid>
    <comment_count>9</comment_count>
      <attachid>171548</attachid>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-10-30 16:48:45 -0700</bug_when>
    <thetext>Created attachment 171548
Fixed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>754987</commentid>
    <comment_count>10</comment_count>
      <attachid>171548</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2012-10-30 23:00:32 -0700</bug_when>
    <thetext>Comment on attachment 171548
Fixed patch

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

&gt; Source/WebKit2/UIProcess/API/C/WKPreferences.h:229
&gt; +// Defaults to 1.0
&gt; +WK_EXPORT void WKPreferencesSetTextAutosizingFontScaleFactor(WKPreferencesRef preferences, float fontScaleFactor);
&gt; +WK_EXPORT float WKPreferencesGetTextAutosizingFontScaleFactor(WKPreferencesRef preferences);

All the other preferences use double, why use float here?  I&apos;d prefer we keep it consistent and use double.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>755012</commentid>
    <comment_count>11</comment_count>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-10-30 23:56:40 -0700</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 171548 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=171548&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/UIProcess/API/C/WKPreferences.h:229
&gt; &gt; +// Defaults to 1.0
&gt; &gt; +WK_EXPORT void WKPreferencesSetTextAutosizingFontScaleFactor(WKPreferencesRef preferences, float fontScaleFactor);
&gt; &gt; +WK_EXPORT float WKPreferencesGetTextAutosizingFontScaleFactor(WKPreferencesRef preferences);
&gt; 
&gt; All the other preferences use double, why use float here?  I&apos;d prefer we keep it consistent and use double.

&quot;Text Autosizing&quot; uses float variable for font scale factor. So I just conform to its implementation.

Using double instead of float in my patch is trivial. But I think it&apos;s strange to use different types between WebCore::Settings and WebKit::Preferences.

If using double is a concrete rule. I&apos;ll follow.

John, how about using double instead of float in Text Autosizing ?
Text Autosizing is only feature using float in Settings. :(
If you agree, I will fix.

Sam, this is just my curiosity, is there any technical reasons to use double instead of float ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>755018</commentid>
    <comment_count>12</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2012-10-31 00:11:29 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; (In reply to comment #10)
&gt; &gt; (From update of attachment 171548 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=171548&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Source/WebKit2/UIProcess/API/C/WKPreferences.h:229
&gt; &gt; &gt; +// Defaults to 1.0
&gt; &gt; &gt; +WK_EXPORT void WKPreferencesSetTextAutosizingFontScaleFactor(WKPreferencesRef preferences, float fontScaleFactor);
&gt; &gt; &gt; +WK_EXPORT float WKPreferencesGetTextAutosizingFontScaleFactor(WKPreferencesRef preferences);
&gt; &gt; 
&gt; &gt; All the other preferences use double, why use float here?  I&apos;d prefer we keep it consistent and use double.
&gt; 
&gt; &quot;Text Autosizing&quot; uses float variable for font scale factor. So I just conform to its implementation.
&gt; 
&gt; Using double instead of float in my patch is trivial. But I think it&apos;s strange to use different types between WebCore::Settings and WebKit::Preferences.
&gt; 
&gt; If using double is a concrete rule. I&apos;ll follow.
&gt; 
&gt; John, how about using double instead of float in Text Autosizing ?
&gt; Text Autosizing is only feature using float in Settings. :(
&gt; If you agree, I will fix.
&gt; 
&gt; Sam, this is just my curiosity, is there any technical reasons to use double instead of float ?

The is no technical reason, but I would like the API to remain consistent unless there is a good reason to deviate, and I don&apos;t think this qualifies.  Please do change it to a double.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>755825</commentid>
    <comment_count>13</comment_count>
      <attachid>171762</attachid>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-10-31 20:13:29 -0700</bug_when>
    <thetext>Created attachment 171762
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>756259</commentid>
    <comment_count>14</comment_count>
    <who name="John Mellor">johnme</who>
    <bug_when>2012-11-01 08:16:50 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; John, how about using double instead of float in Text Autosizing ?
&gt; Text Autosizing is only feature using float in Settings. :(
&gt; If you agree, I will fix.

I&apos;m fine with switching the textAutosizingFontScaleFactor to being a double in Settings.h/cpp. There was no strong reason for using a float. Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>756264</commentid>
    <comment_count>15</comment_count>
      <attachid>171762</attachid>
    <who name="John Mellor">johnme</who>
    <bug_when>2012-11-01 08:19:49 -0700</bug_when>
    <thetext>Comment on attachment 171762
Patch

The latest patch looks good to me too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>760449</commentid>
    <comment_count>16</comment_count>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-11-07 01:00:46 -0800</bug_when>
    <thetext>Sam, please review the fixed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>763731</commentid>
    <comment_count>17</comment_count>
      <attachid>171762</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2012-11-10 14:39:36 -0800</bug_when>
    <thetext>Comment on attachment 171762
Patch

Please add an API test for this new functionality.  Also, please add what the use case for being able to control text autosizing at the preference level is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>764116</commentid>
    <comment_count>18</comment_count>
      <attachid>173576</attachid>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-11-12 00:07:57 -0800</bug_when>
    <thetext>Created attachment 173576
Add testcase</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768545</commentid>
    <comment_count>19</comment_count>
      <attachid>173576</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2012-11-15 15:04:47 -0800</bug_when>
    <thetext>Comment on attachment 173576
Add testcase

r-, as this still doesn&apos;t seem to have a use case mentioned.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768590</commentid>
    <comment_count>20</comment_count>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-11-15 15:52:30 -0800</bug_when>
    <thetext>(In reply to comment #19)
&gt; (From update of attachment 173576 [details])
&gt; r-, as this still doesn&apos;t seem to have a use case mentioned.

Sam, this is an optional, mobile specific feature like frame flattening. Frame flattening APIs are implemented in WKPreferences already.

Text Autosizing adjusts the original CSS properties to enhance usability. But not all applications need it.

I explain one scenario.
When I see the news site using WebKit-based browser in mobile phone, text autosizing is useful. But when I go back home, and connect my phone to TV via cable or dock (I heard Motorola made this), text autosizing is useless at this time, because TV screen is big enough.

And font scale factor should be adjustable according to the screen size or user preference, too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>771498</commentid>
    <comment_count>21</comment_count>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-11-19 21:54:03 -0800</bug_when>
    <thetext>Sam, I added one use case in comment #19.
Please, review again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>774726</commentid>
    <comment_count>22</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2012-11-23 16:17:26 -0800</bug_when>
    <thetext>I suppose having a pref to turn the feature on or off is acceptable, but I don&apos;t think the custom scale makes sense.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775103</commentid>
    <comment_count>23</comment_count>
      <attachid>175916</attachid>
    <who name="Jaehun Lim">ljaehun.lim</who>
    <bug_when>2012-11-25 20:04:31 -0800</bug_when>
    <thetext>Created attachment 175916
patch

I agree with sam.
APIs for scale factor are removed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775129</commentid>
    <comment_count>24</comment_count>
      <attachid>175916</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-25 21:53:27 -0800</bug_when>
    <thetext>Comment on attachment 175916
patch

Attachment 175916 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/14980596

New failing tests:
svg/W3C-SVG-1.1/animate-elem-78-t.svg</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775303</commentid>
    <comment_count>25</comment_count>
    <who name="John Mellor">johnme</who>
    <bug_when>2012-11-26 02:55:12 -0800</bug_when>
    <thetext>The fontScaleFactor is indeed optional. It is intended to be used for accessibility purposes, controlled by either browser or OS text size settings; but that&apos;s something you can hook up later, according to your OS&apos;s accessibility conventions.

For reference: Increasing the fontScaleFactor causes text that is already autosized to be proportionately larger (so when that block is fit to screen width, the legibility increases proportionately). As a consequence of this, it also reduces the minimum cluster width that gets autosized (with fontScaleFactor=1 and device-width=320 UI pixels, no cluster narrower than 320 CSS px gets autosized; but with fontScaleFactor=2, no cluster narrower than 160 CSS px gets autosized, and a 320 CSS px cluster would have a multiplier of 2x). Since the fontScaleFactor doesn&apos;t affect non-autosized text, it is intended to be integrated into double-tap zoom, such that double-tapping on non-autosized text zooms such that there are fontScaleFactor UI pixels per 1 CSS px. Thus the fontScaleFactor would directly scale up/down the effective text size that is seen after double-tapping to zoom in on text (whether or not that text is autosized).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775306</commentid>
    <comment_count>26</comment_count>
      <attachid>175916</attachid>
    <who name="Peter Beverloo">peter</who>
    <bug_when>2012-11-26 02:59:53 -0800</bug_when>
    <thetext>Comment on attachment 175916
patch

Unused APIs are unlikely to cause SVG tests to fail. Setting cq+ again on request.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775315</commentid>
    <comment_count>27</comment_count>
      <attachid>175916</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-26 03:16:56 -0800</bug_when>
    <thetext>Comment on attachment 175916
patch

Clearing flags on attachment: 175916

Committed r135702: &lt;http://trac.webkit.org/changeset/135702&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>775316</commentid>
    <comment_count>28</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-26 03:17:01 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>171164</attachid>
            <date>2012-10-29 00:05:17 -0700</date>
            <delta_ts>2012-10-29 00:30:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>5256</size>
            <attacher name="Jaehun Lim">ljaehun.lim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA4N2IwNjYwLi41NWNlZTFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjMg
QEAKKzIwMTItMTAtMjggIEphZWh1biBMaW0gIDxsamFlaHVuLmxpbUBzYW1zdW5nLmNvbT4KKwor
ICAgICAgICBUZXh0IEF1dG9zaXppbmc6IEFkZCBUZXh0IEF1dG9zaXppbmcgQVBJcyBmb3IgV0sy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDA2MzMK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1l
bnQgYmFzaWMgVGV4dCBBdXRvc2l6aW5nIEFQSXMgZm9yIFdLMi4KKworICAgICAgICAqIFNoYXJl
ZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmg6CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcDoKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNT
ZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldFRleHRB
dXRvc2l6aW5nRW5hYmxlZCk6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0VGV4dEF1dG9zaXpp
bmdGb250U2NhbGVGYWN0b3IpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldFRleHRBdXRvc2l6
aW5nRm9udFNjYWxlRmFjdG9yKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJl
bmNlcy5oOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMpOgorCiAyMDEyLTEwLTI4ICBZ
YWVsIEFoYXJvbiAgPHlhZWwuYWhhcm9uQGludGVsLmNvbT4KIAogICAgICAgICBbRUZMXVtXSzJd
W0FDXSBWaWV3cG9ydCBzaXplIGRvZXMgbm90IGNoYW5nZSB3aGVuIHRoZSB3aW5kb3cgc2l6ZSBj
aGFuZ2VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNT
dG9yZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaAppbmRl
eCBkYzA3M2RlLi5lNTE3Y2Q4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2Vi
UHJlZmVyZW5jZXNTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJl
bmNlc1N0b3JlLmgKQEAgLTEzOCw2ICsxMzgsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKICAgICBt
YWNybyhDb29raWVFbmFibGVkLCBjb29raWVFbmFibGVkLCBCb29sLCBib29sLCB0cnVlKSBcCiAg
ICAgbWFjcm8oUGx1Z0luU25hcHNob3R0aW5nRW5hYmxlZCwgcGx1Z0luU25hcHNob3R0aW5nRW5h
YmxlZCwgQm9vbCwgYm9vbCwgZmFsc2UpIFwKICAgICBtYWNybyhQREZQbHVnaW5FbmFibGVkLCBw
ZGZQbHVnaW5FbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSkgXAorICAgIG1hY3JvKFRleHRBdXRv
c2l6aW5nRW5hYmxlZCwgdGV4dEF1dG9zaXppbmdFbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSkg
XAogICAgIFwKIAogI2RlZmluZSBGT1JfRUFDSF9XRUJLSVRfRE9VQkxFX1BSRUZFUkVOQ0UobWFj
cm8pIFwKQEAgLTE0NSw2ICsxNDYsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKICAgICBcCiAKICNk
ZWZpbmUgRk9SX0VBQ0hfV0VCS0lUX0ZMT0FUX1BSRUZFUkVOQ0UobWFjcm8pIFwKKyAgICBtYWNy
byhUZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3RvciwgdGV4dEF1dG9zaXppbmdGb250U2NhbGVG
YWN0b3IsIEZsb2F0LCBmbG9hdCwgMS4wKSBcCiAgICAgXAogCiAjaWYgUExBVEZPUk0oV0lOKQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMu
Y3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCmlu
ZGV4IDUzMmQ4MmMuLjQ0MTgwYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKQEAgLTk0MywzICs5NDMsNDQgQEAgYm9vbCBXS1ByZWZl
cmVuY2VzR2V0UERGUGx1Z2luRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVm
KQogewogICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5wZGZQbHVnaW5FbmFibGVk
KCk7CiB9CisKK3ZvaWQgV0tQcmVmZXJlbmNlc1NldFRleHRBdXRvc2l6aW5nRW5hYmxlZChXS1By
ZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIHRleHRBdXRvc2l6aW5nRW5hYmxlZCkK
K3sKKyNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQorICAgIHRvSW1wbChwcmVmZXJlbmNlc1Jl
ZiktPnNldFRleHRBdXRvc2l6aW5nRW5hYmxlZCh0ZXh0QXV0b3NpemluZ0VuYWJsZWQpOworI2Vs
c2UKKyAgICBVTlVTRURfUEFSQU0ocHJlZmVyZW5jZXNSZWYpOworICAgIFVOVVNFRF9QQVJBTSh0
ZXh0QXV0b3NpemluZ0VuYWJsZWQpOworI2VuZGlmCit9CisKK2Jvb2wgV0tQcmVmZXJlbmNlc0dl
dFRleHRBdXRvc2l6aW5nRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQor
eworI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCisgICAgcmV0dXJuIHRvSW1wbChwcmVmZXJl
bmNlc1JlZiktPnRleHRBdXRvc2l6aW5nRW5hYmxlZCgpOworI2Vsc2UKKyAgICBVTlVTRURfUEFS
QU0ocHJlZmVyZW5jZXNSZWYpOworICAgIHJldHVybiBmYWxzZTsKKyNlbmRpZgorfQorCit2b2lk
IFdLUHJlZmVyZW5jZXNTZXRUZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3RvcihXS1ByZWZlcmVu
Y2VzUmVmIHByZWZlcmVuY2VzUmVmLCBmbG9hdCBmb250U2NhbGVGYWN0b3IpCit7CisjaWYgRU5B
QkxFKFRFWFRfQVVUT1NJWklORykKKyAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zZXRUZXh0
QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3Rvcihmb250U2NhbGVGYWN0b3IpOworI2Vsc2UKKyAgICBV
TlVTRURfUEFSQU0ocHJlZmVyZW5jZXNSZWYpOworICAgIFVOVVNFRF9QQVJBTShmb250U2NhbGVG
YWN0b3IpOworI2VuZGlmCit9CisKK2Zsb2F0IFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3Npemlu
Z0ZvbnRTY2FsZUZhY3RvcihXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQoreworI2lm
IEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCisgICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNlc1Jl
ZiktPnRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKCk7CisjZWxzZQorICAgIFVOVVNFRF9Q
QVJBTShwcmVmZXJlbmNlc1JlZik7CisgICAgcmV0dXJuIDEuMDsKKyNlbmRpZgorfQorCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5oIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuaAppbmRleCBkOTFi
ODJkLi5mOTAxYWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0Mv
V0tQcmVmZXJlbmNlcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1By
ZWZlcmVuY2VzLmgKQEAgLTIyMCw2ICsyMjAsMTQgQEAgV0tfRVhQT1JUIFdLU3RvcmFnZUJsb2Nr
aW5nUG9saWN5IFdLUHJlZmVyZW5jZXNHZXRTdG9yYWdlQmxvY2tpbmdQb2xpY3koV0tQcmVmZXIK
IFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRQbHVnSW5TbmFwc2hvdHRpbmdFbmFibGVk
KFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxlZCk7CiBXS19FWFBP
UlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0UGx1Z0luU25hcHNob3R0aW5nRW5hYmxlZChXS1ByZWZl
cmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKIAorLy8gRGVmYXVsdHMgdG8gZmFsc2UuCitXS19F
WFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0VGV4dEF1dG9zaXppbmdFbmFibGVkKFdLUHJlZmVy
ZW5jZXNSZWYgcHJlZmVyZW5jZXMsIGJvb2wgdGV4dEF1dG9zaXppbmdFbmFibGVkKTsKK1dLX0VY
UE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQoV0tQcmVmZXJl
bmNlc1JlZiBwcmVmZXJlbmNlcyk7CisKKy8vIERlZmF1bHRzIHRvIDEuMAorV0tfRVhQT1JUIHZv
aWQgV0tQcmVmZXJlbmNlc1NldFRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKFdLUHJlZmVy
ZW5jZXNSZWYgcHJlZmVyZW5jZXMsIGZsb2F0IGZvbnRTY2FsZUZhY3Rvcik7CitXS19FWFBPUlQg
ZmxvYXQgV0tQcmVmZXJlbmNlc0dldFRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKFdLUHJl
ZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMpOworCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KICNlbmRp
ZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
Y3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4
IDIwNDk1ZDIuLmUxZWI5ZWIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvV2ViUGFnZS5jcHAKQEAgLTIyNjAsNiArMjI2MCwxMSBAQCB2b2lkIFdlYlBhZ2U6OnVwZGF0
ZVByZWZlcmVuY2VzKGNvbnN0IFdlYlByZWZlcmVuY2VzU3RvcmUmIHN0b3JlKQogCiAgICAgc2V0
dGluZ3MtPnNldFBsdWdJblNuYXBzaG90dGluZ0VuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9y
S2V5KFdlYlByZWZlcmVuY2VzS2V5OjpwbHVnSW5TbmFwc2hvdHRpbmdFbmFibGVkS2V5KCkpKTsK
IAorI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCisgICAgc2V0dGluZ3MtPnNldFRleHRBdXRv
c2l6aW5nRW5hYmxlZChzdG9yZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6
OnRleHRBdXRvc2l6aW5nRW5hYmxlZEtleSgpKSk7CisgICAgc2V0dGluZ3MtPnNldFRleHRBdXRv
c2l6aW5nRm9udFNjYWxlRmFjdG9yKHN0b3JlLmdldEZsb2F0VmFsdWVGb3JLZXkoV2ViUHJlZmVy
ZW5jZXNLZXk6OnRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yS2V5KCkpKTsKKyNlbmRpZgor
CiAgICAgcGxhdGZvcm1QcmVmZXJlbmNlc0RpZENoYW5nZShzdG9yZSk7CiAKICAgICBpZiAobV9k
cmF3aW5nQXJlYSkK
</data>
<flag name="commit-queue"
          id="184978"
          type_id="3"
          status="-"
          setter="buildbot"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>171168</attachid>
            <date>2012-10-29 00:30:31 -0700</date>
            <delta_ts>2012-10-30 16:48:45 -0700</delta_ts>
            <desc>Fixed patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>7435</size>
            <attacher name="Jaehun Lim">ljaehun.lim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA4N2IwNjYwLi4xZTM5ZGIwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjkg
QEAKKzIwMTItMTAtMjkgIEphZWh1biBMaW0gIDxsamFlaHVuLmxpbUBzYW1zdW5nLmNvbT4KKwor
ICAgICAgICBUZXh0IEF1dG9zaXppbmc6IEFkZCBUZXh0IEF1dG9zaXppbmcgQVBJcyBmb3IgV0sy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDA2MzMK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1l
bnQgYmFzaWMgVGV4dCBBdXRvc2l6aW5nIEFQSXMgZm9yIFdLMi4KKworICAgICAgICAqIFNoYXJl
ZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmg6CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcDoKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNT
ZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldFRleHRB
dXRvc2l6aW5nRW5hYmxlZCk6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0VGV4dEF1dG9zaXpp
bmdGb250U2NhbGVGYWN0b3IpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldFRleHRBdXRvc2l6
aW5nRm9udFNjYWxlRmFjdG9yKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJl
bmNlcy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9jZi9XZWJQcmVmZXJlbmNlc0NGLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6c2V0RmxvYXRWYWx1ZUlmSW5Vc2VyRGVmYXVsdHMpOgorICAgICAgICAo
V2ViS2l0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dlYlByZWZlcmVuY2VzTWFjLm1tOgor
ICAgICAgICAoV2ViS2l0OjpzZXRGbG9hdFZhbHVlSWZJblVzZXJEZWZhdWx0cyk6CisgICAgICAg
IChXZWJLaXQpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMpOgorCiAyMDEyLTEwLTI4
ICBZYWVsIEFoYXJvbiAgPHlhZWwuYWhhcm9uQGludGVsLmNvbT4KIAogICAgICAgICBbRUZMXVtX
SzJdW0FDXSBWaWV3cG9ydCBzaXplIGRvZXMgbm90IGNoYW5nZSB3aGVuIHRoZSB3aW5kb3cgc2l6
ZSBjaGFuZ2VzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5j
ZXNTdG9yZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaApp
bmRleCBkYzA3M2RlLi5lNTE3Y2Q4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQv
V2ViUHJlZmVyZW5jZXNTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVm
ZXJlbmNlc1N0b3JlLmgKQEAgLTEzOCw2ICsxMzgsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKICAg
ICBtYWNybyhDb29raWVFbmFibGVkLCBjb29raWVFbmFibGVkLCBCb29sLCBib29sLCB0cnVlKSBc
CiAgICAgbWFjcm8oUGx1Z0luU25hcHNob3R0aW5nRW5hYmxlZCwgcGx1Z0luU25hcHNob3R0aW5n
RW5hYmxlZCwgQm9vbCwgYm9vbCwgZmFsc2UpIFwKICAgICBtYWNybyhQREZQbHVnaW5FbmFibGVk
LCBwZGZQbHVnaW5FbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSkgXAorICAgIG1hY3JvKFRleHRB
dXRvc2l6aW5nRW5hYmxlZCwgdGV4dEF1dG9zaXppbmdFbmFibGVkLCBCb29sLCBib29sLCBmYWxz
ZSkgXAogICAgIFwKIAogI2RlZmluZSBGT1JfRUFDSF9XRUJLSVRfRE9VQkxFX1BSRUZFUkVOQ0Uo
bWFjcm8pIFwKQEAgLTE0NSw2ICsxNDYsNyBAQCBuYW1lc3BhY2UgV2ViS2l0IHsKICAgICBcCiAK
ICNkZWZpbmUgRk9SX0VBQ0hfV0VCS0lUX0ZMT0FUX1BSRUZFUkVOQ0UobWFjcm8pIFwKKyAgICBt
YWNybyhUZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3RvciwgdGV4dEF1dG9zaXppbmdGb250U2Nh
bGVGYWN0b3IsIEZsb2F0LCBmbG9hdCwgMS4wKSBcCiAgICAgXAogCiAjaWYgUExBVEZPUk0oV0lO
KQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5j
ZXMuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3Bw
CmluZGV4IDUzMmQ4MmMuLjQ0MTgwYmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKQEAgLTk0MywzICs5NDMsNDQgQEAgYm9vbCBXS1By
ZWZlcmVuY2VzR2V0UERGUGx1Z2luRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2Vz
UmVmKQogewogICAgIHJldHVybiB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5wZGZQbHVnaW5FbmFi
bGVkKCk7CiB9CisKK3ZvaWQgV0tQcmVmZXJlbmNlc1NldFRleHRBdXRvc2l6aW5nRW5hYmxlZChX
S1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBib29sIHRleHRBdXRvc2l6aW5nRW5hYmxl
ZCkKK3sKKyNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQorICAgIHRvSW1wbChwcmVmZXJlbmNl
c1JlZiktPnNldFRleHRBdXRvc2l6aW5nRW5hYmxlZCh0ZXh0QXV0b3NpemluZ0VuYWJsZWQpOwor
I2Vsc2UKKyAgICBVTlVTRURfUEFSQU0ocHJlZmVyZW5jZXNSZWYpOworICAgIFVOVVNFRF9QQVJB
TSh0ZXh0QXV0b3NpemluZ0VuYWJsZWQpOworI2VuZGlmCit9CisKK2Jvb2wgV0tQcmVmZXJlbmNl
c0dldFRleHRBdXRvc2l6aW5nRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVm
KQoreworI2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCisgICAgcmV0dXJuIHRvSW1wbChwcmVm
ZXJlbmNlc1JlZiktPnRleHRBdXRvc2l6aW5nRW5hYmxlZCgpOworI2Vsc2UKKyAgICBVTlVTRURf
UEFSQU0ocHJlZmVyZW5jZXNSZWYpOworICAgIHJldHVybiBmYWxzZTsKKyNlbmRpZgorfQorCit2
b2lkIFdLUHJlZmVyZW5jZXNTZXRUZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3RvcihXS1ByZWZl
cmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmLCBmbG9hdCBmb250U2NhbGVGYWN0b3IpCit7CisjaWYg
RU5BQkxFKFRFWFRfQVVUT1NJWklORykKKyAgICB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT5zZXRU
ZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3Rvcihmb250U2NhbGVGYWN0b3IpOworI2Vsc2UKKyAg
ICBVTlVTRURfUEFSQU0ocHJlZmVyZW5jZXNSZWYpOworICAgIFVOVVNFRF9QQVJBTShmb250U2Nh
bGVGYWN0b3IpOworI2VuZGlmCit9CisKK2Zsb2F0IFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3Np
emluZ0ZvbnRTY2FsZUZhY3RvcihXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQorewor
I2lmIEVOQUJMRShURVhUX0FVVE9TSVpJTkcpCisgICAgcmV0dXJuIHRvSW1wbChwcmVmZXJlbmNl
c1JlZiktPnRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKCk7CisjZWxzZQorICAgIFVOVVNF
RF9QQVJBTShwcmVmZXJlbmNlc1JlZik7CisgICAgcmV0dXJuIDEuMDsKKyNlbmRpZgorfQorCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5o
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuaAppbmRleCBk
OTFiODJkLi5mOTAxYWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0MvV0tQcmVmZXJlbmNlcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9X
S1ByZWZlcmVuY2VzLmgKQEAgLTIyMCw2ICsyMjAsMTQgQEAgV0tfRVhQT1JUIFdLU3RvcmFnZUJs
b2NraW5nUG9saWN5IFdLUHJlZmVyZW5jZXNHZXRTdG9yYWdlQmxvY2tpbmdQb2xpY3koV0tQcmVm
ZXIKIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRQbHVnSW5TbmFwc2hvdHRpbmdFbmFi
bGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxlZCk7CiBXS19F
WFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0UGx1Z0luU25hcHNob3R0aW5nRW5hYmxlZChXS1By
ZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKIAorLy8gRGVmYXVsdHMgdG8gZmFsc2UuCitX
S19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0VGV4dEF1dG9zaXppbmdFbmFibGVkKFdLUHJl
ZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMsIGJvb2wgdGV4dEF1dG9zaXppbmdFbmFibGVkKTsKK1dL
X0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQoV0tQcmVm
ZXJlbmNlc1JlZiBwcmVmZXJlbmNlcyk7CisKKy8vIERlZmF1bHRzIHRvIDEuMAorV0tfRVhQT1JU
IHZvaWQgV0tQcmVmZXJlbmNlc1NldFRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKFdLUHJl
ZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMsIGZsb2F0IGZvbnRTY2FsZUZhY3Rvcik7CitXS19FWFBP
UlQgZmxvYXQgV0tQcmVmZXJlbmNlc0dldFRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMpOworCiAjaWZkZWYgX19jcGx1c3BsdXMKIH0KICNl
bmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2NmL1dlYlByZWZlcmVu
Y2VzQ0YuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2NmL1dlYlByZWZlcmVuY2VzQ0Yu
Y3BwCmluZGV4IGQ2MWI5OGMuLjBlMTQ3MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9jZi9XZWJQcmVmZXJlbmNlc0NGLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvY2YvV2ViUHJlZmVyZW5jZXNDRi5jcHAKQEAgLTkzLDYgKzkzLDIwIEBAIHN0YXRpYyB2
b2lkIHNldERvdWJsZVZhbHVlSWZJblVzZXJEZWZhdWx0cyhjb25zdCBTdHJpbmcmIGlkZW50aWZp
ZXIsIGNvbnN0IFN0cmluCiAgICAgc3RvcmUuc2V0RG91YmxlVmFsdWVGb3JLZXkoYmFzZUtleSwg
ZG91YmxlVmFsdWUpOwogfQogCitzdGF0aWMgdm9pZCBzZXRGbG9hdFZhbHVlSWZJblVzZXJEZWZh
dWx0cyhjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgYmFzZUtleSwgV2Vi
UHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpCit7CisgICAgUmV0YWluUHRyPENGUHJvcGVydHlMaXN0
UmVmPiB2YWx1ZShBZG9wdENGLCBDRlByZWZlcmVuY2VzQ29weUFwcFZhbHVlKG1ha2VLZXkoaWRl
bnRpZmllciwgYmFzZUtleSkuZ2V0KCksIGtDRlByZWZlcmVuY2VzQ3VycmVudEFwcGxpY2F0aW9u
KSk7CisgICAgaWYgKCF2YWx1ZSkKKyAgICAgICAgcmV0dXJuOworICAgIGlmIChDRkdldFR5cGVJ
RCh2YWx1ZS5nZXQoKSkgIT0gQ0ZOdW1iZXJHZXRUeXBlSUQoKSkKKyAgICAgICAgcmV0dXJuOwor
ICAgIGZsb2F0IGZsb2F0VmFsdWUgPSAwOworICAgIGlmICghQ0ZOdW1iZXJHZXRWYWx1ZSgoQ0ZO
dW1iZXJSZWYpdmFsdWUuZ2V0KCksIGtDRk51bWJlckZsb2F0VHlwZSwgJmZsb2F0VmFsdWUpKQor
ICAgICAgICByZXR1cm47CisKKyAgICBzdG9yZS5zZXRGbG9hdFZhbHVlRm9yS2V5KGJhc2VLZXks
IGZsb2F0VmFsdWUpOworfQorCiB2b2lkIFdlYlByZWZlcmVuY2VzOjpwbGF0Zm9ybUluaXRpYWxp
emVTdG9yZSgpCiB7CiAgICAgaWYgKCFtX2lkZW50aWZpZXIpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYlByZWZlcmVuY2VzTWFjLm1tIGIvU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL21hYy9XZWJQcmVmZXJlbmNlc01hYy5tbQppbmRleCBmMTlhNmM3Li5jODFi
NzUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYlByZWZlcmVu
Y2VzTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2ViUHJlZmVyZW5j
ZXNNYWMubW0KQEAgLTgwLDYgKzgwLDE3IEBAIHN0YXRpYyB2b2lkIHNldERvdWJsZVZhbHVlSWZJ
blVzZXJEZWZhdWx0cyhjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluCiAgICAg
c3RvcmUuc2V0RG91YmxlVmFsdWVGb3JLZXkoa2V5LCBbb2JqZWN0IGRvdWJsZVZhbHVlXSk7CiB9
CiAKK3N0YXRpYyB2b2lkIHNldEZsb2F0VmFsdWVJZkluVXNlckRlZmF1bHRzKGNvbnN0IFN0cmlu
ZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBrZXksIFdlYlByZWZlcmVuY2VzU3RvcmUmIHN0
b3JlKQoreworICAgIGlkIG9iamVjdCA9IFtbTlNVc2VyRGVmYXVsdHMgc3RhbmRhcmRVc2VyRGVm
YXVsdHNdIG9iamVjdEZvcktleTptYWtlS2V5KGlkZW50aWZpZXIsIGtleSldOworICAgIGlmICgh
b2JqZWN0KQorICAgICAgICByZXR1cm47CisgICAgaWYgKCFbb2JqZWN0IHJlc3BvbmRzVG9TZWxl
Y3RvcjpAc2VsZWN0b3IoZmxvYXRWYWx1ZSldKQorICAgICAgICByZXR1cm47CisKKyAgICBzdG9y
ZS5zZXRGbG9hdFZhbHVlRm9yS2V5KGtleSwgW29iamVjdCBmbG9hdFZhbHVlXSk7Cit9CisKIHZv
aWQgV2ViUHJlZmVyZW5jZXM6OnBsYXRmb3JtSW5pdGlhbGl6ZVN0b3JlKCkKIHsKICAgICBpZiAo
IW1faWRlbnRpZmllcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQ
YWdlLmNwcAppbmRleCAyMDQ5NWQyLi5lMWViOWViIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0yMjYwLDYgKzIyNjAsMTEgQEAgdm9pZCBX
ZWJQYWdlOjp1cGRhdGVQcmVmZXJlbmNlcyhjb25zdCBXZWJQcmVmZXJlbmNlc1N0b3JlJiBzdG9y
ZSkKIAogICAgIHNldHRpbmdzLT5zZXRQbHVnSW5TbmFwc2hvdHRpbmdFbmFibGVkKHN0b3JlLmdl
dEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6cGx1Z0luU25hcHNob3R0aW5nRW5h
YmxlZEtleSgpKSk7CiAKKyNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQorICAgIHNldHRpbmdz
LT5zZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlBy
ZWZlcmVuY2VzS2V5Ojp0ZXh0QXV0b3NpemluZ0VuYWJsZWRLZXkoKSkpOworICAgIHNldHRpbmdz
LT5zZXRUZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3RvcihzdG9yZS5nZXRGbG9hdFZhbHVlRm9y
S2V5KFdlYlByZWZlcmVuY2VzS2V5Ojp0ZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3RvcktleSgp
KSk7CisjZW5kaWYKKwogICAgIHBsYXRmb3JtUHJlZmVyZW5jZXNEaWRDaGFuZ2Uoc3RvcmUpOwog
CiAgICAgaWYgKG1fZHJhd2luZ0FyZWEpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>171548</attachid>
            <date>2012-10-30 16:48:45 -0700</date>
            <delta_ts>2012-10-31 20:13:21 -0700</delta_ts>
            <desc>Fixed patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>7045</size>
            <attacher name="Jaehun Lim">ljaehun.lim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCAwM2E3NTM5Li5iMWJhYzRjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzAg
QEAKKzIwMTItMTAtMzAgIEphZWh1biBMaW0gIDxsamFlaHVuLmxpbUBzYW1zdW5nLmNvbT4KKwor
ICAgICAgICBUZXh0IEF1dG9zaXppbmc6IEFkZCBUZXh0IEF1dG9zaXppbmcgQVBJcyBmb3IgV0sy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDA2MzMK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1l
bnQgYmFzaWMgVGV4dCBBdXRvc2l6aW5nIEFQSXMgZm9yIFdLMi4KKyAgICAgICAgQWRkIHNldEZs
b2F0VmFsdWVJZkluVXNlckRlZmF1bHRzKCkgZm9yIGNmL21hYy4KKworICAgICAgICAqIFNoYXJl
ZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmg6CisgICAgICAgIChXZWJLaXQpOgorICAgICAgICAqIFVJ
UHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcDoKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNT
ZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldFRleHRB
dXRvc2l6aW5nRW5hYmxlZCk6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0VGV4dEF1dG9zaXpp
bmdGb250U2NhbGVGYWN0b3IpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc0dldFRleHRBdXRvc2l6
aW5nRm9udFNjYWxlRmFjdG9yKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJl
bmNlcy5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9jZi9XZWJQcmVmZXJlbmNlc0NGLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6c2V0RmxvYXRWYWx1ZUlmSW5Vc2VyRGVmYXVsdHMpOgorICAgICAgICAo
V2ViS2l0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvbWFjL1dlYlByZWZlcmVuY2VzTWFjLm1tOgor
ICAgICAgICAoV2ViS2l0OjpzZXRGbG9hdFZhbHVlSWZJblVzZXJEZWZhdWx0cyk6CisgICAgICAg
IChXZWJLaXQpOgorICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcDoKKyAg
ICAgICAgKFdlYktpdDo6V2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMpOgorCiAyMDEyLTEwLTMw
ICBKZXNzZSB2YW4gZGVuIEtpZWJvb20gIDxqZXNzZXZka0Bnbm9tZS5vcmc+CiAKICAgICAgICAg
Rml4ZWQgdHJhbnNmZXIgYW5ub3RhdGlvbiBmb3IgZGVmYXVsdCB3ZWIgY29udGV4dApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaCBiL1NvdXJj
ZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgKaW5kZXggZGMwNzNkZS4uZTUx
N2NkOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3Rv
cmUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCkBA
IC0xMzgsNiArMTM4LDcgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAgICAgbWFjcm8oQ29va2llRW5h
YmxlZCwgY29va2llRW5hYmxlZCwgQm9vbCwgYm9vbCwgdHJ1ZSkgXAogICAgIG1hY3JvKFBsdWdJ
blNuYXBzaG90dGluZ0VuYWJsZWQsIHBsdWdJblNuYXBzaG90dGluZ0VuYWJsZWQsIEJvb2wsIGJv
b2wsIGZhbHNlKSBcCiAgICAgbWFjcm8oUERGUGx1Z2luRW5hYmxlZCwgcGRmUGx1Z2luRW5hYmxl
ZCwgQm9vbCwgYm9vbCwgZmFsc2UpIFwKKyAgICBtYWNybyhUZXh0QXV0b3NpemluZ0VuYWJsZWQs
IHRleHRBdXRvc2l6aW5nRW5hYmxlZCwgQm9vbCwgYm9vbCwgZmFsc2UpIFwKICAgICBcCiAKICNk
ZWZpbmUgRk9SX0VBQ0hfV0VCS0lUX0RPVUJMRV9QUkVGRVJFTkNFKG1hY3JvKSBcCkBAIC0xNDUs
NiArMTQ2LDcgQEAgbmFtZXNwYWNlIFdlYktpdCB7CiAgICAgXAogCiAjZGVmaW5lIEZPUl9FQUNI
X1dFQktJVF9GTE9BVF9QUkVGRVJFTkNFKG1hY3JvKSBcCisgICAgbWFjcm8oVGV4dEF1dG9zaXpp
bmdGb250U2NhbGVGYWN0b3IsIHRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yLCBGbG9hdCwg
ZmxvYXQsIDEuMCkgXAogICAgIFwKIAogI2lmIFBMQVRGT1JNKFdJTikKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcCBiL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAppbmRleCA1MzJkODJjLi5j
MjEyMjVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVm
ZXJlbmNlcy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVy
ZW5jZXMuY3BwCkBAIC05NDMsMyArOTQzLDI0IEBAIGJvb2wgV0tQcmVmZXJlbmNlc0dldFBERlBs
dWdpbkVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKIHsKICAgICByZXR1
cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+cGRmUGx1Z2luRW5hYmxlZCgpOwogfQorCit2b2lk
IFdLUHJlZmVyZW5jZXNTZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBw
cmVmZXJlbmNlc1JlZiwgYm9vbCB0ZXh0QXV0b3NpemluZ0VuYWJsZWQpCit7CisgICAgdG9JbXBs
KHByZWZlcmVuY2VzUmVmKS0+c2V0VGV4dEF1dG9zaXppbmdFbmFibGVkKHRleHRBdXRvc2l6aW5n
RW5hYmxlZCk7Cit9CisKK2Jvb2wgV0tQcmVmZXJlbmNlc0dldFRleHRBdXRvc2l6aW5nRW5hYmxl
ZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQoreworICAgIHJldHVybiB0b0ltcGwo
cHJlZmVyZW5jZXNSZWYpLT50ZXh0QXV0b3NpemluZ0VuYWJsZWQoKTsKK30KKwordm9pZCBXS1By
ZWZlcmVuY2VzU2V0VGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3IoV0tQcmVmZXJlbmNlc1Jl
ZiBwcmVmZXJlbmNlc1JlZiwgZmxvYXQgZm9udFNjYWxlRmFjdG9yKQoreworICAgIHRvSW1wbChw
cmVmZXJlbmNlc1JlZiktPnNldFRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKGZvbnRTY2Fs
ZUZhY3Rvcik7Cit9CisKK2Zsb2F0IFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3NpemluZ0ZvbnRT
Y2FsZUZhY3RvcihXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQoreworICAgIHJldHVy
biB0b0ltcGwocHJlZmVyZW5jZXNSZWYpLT50ZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3Rvcigp
OworfQorCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVm
ZXJlbmNlcy5oIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMu
aAppbmRleCBkOTFiODJkLi5mOTAxYWYxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVBy
b2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQy9XS1ByZWZlcmVuY2VzLmgKQEAgLTIyMCw2ICsyMjAsMTQgQEAgV0tfRVhQT1JUIFdL
U3RvcmFnZUJsb2NraW5nUG9saWN5IFdLUHJlZmVyZW5jZXNHZXRTdG9yYWdlQmxvY2tpbmdQb2xp
Y3koV0tQcmVmZXIKIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRQbHVnSW5TbmFwc2hv
dHRpbmdFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxl
ZCk7CiBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0UGx1Z0luU25hcHNob3R0aW5nRW5h
YmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKIAorLy8gRGVmYXVsdHMgdG8g
ZmFsc2UuCitXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0VGV4dEF1dG9zaXppbmdFbmFi
bGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMsIGJvb2wgdGV4dEF1dG9zaXppbmdFbmFi
bGVkKTsKK1dLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3NpemluZ0VuYWJs
ZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlcyk7CisKKy8vIERlZmF1bHRzIHRvIDEuMAor
V0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldFRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFj
dG9yKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMsIGZsb2F0IGZvbnRTY2FsZUZhY3Rvcik7
CitXS19FWFBPUlQgZmxvYXQgV0tQcmVmZXJlbmNlc0dldFRleHRBdXRvc2l6aW5nRm9udFNjYWxl
RmFjdG9yKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMpOworCiAjaWZkZWYgX19jcGx1c3Bs
dXMKIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2NmL1dl
YlByZWZlcmVuY2VzQ0YuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2NmL1dlYlByZWZl
cmVuY2VzQ0YuY3BwCmluZGV4IGQ2MWI5OGMuLjBlMTQ3MTQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9jZi9XZWJQcmVmZXJlbmNlc0NGLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9VSVByb2Nlc3MvY2YvV2ViUHJlZmVyZW5jZXNDRi5jcHAKQEAgLTkzLDYgKzkzLDIwIEBA
IHN0YXRpYyB2b2lkIHNldERvdWJsZVZhbHVlSWZJblVzZXJEZWZhdWx0cyhjb25zdCBTdHJpbmcm
IGlkZW50aWZpZXIsIGNvbnN0IFN0cmluCiAgICAgc3RvcmUuc2V0RG91YmxlVmFsdWVGb3JLZXko
YmFzZUtleSwgZG91YmxlVmFsdWUpOwogfQogCitzdGF0aWMgdm9pZCBzZXRGbG9hdFZhbHVlSWZJ
blVzZXJEZWZhdWx0cyhjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0cmluZyYgYmFz
ZUtleSwgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpCit7CisgICAgUmV0YWluUHRyPENGUHJv
cGVydHlMaXN0UmVmPiB2YWx1ZShBZG9wdENGLCBDRlByZWZlcmVuY2VzQ29weUFwcFZhbHVlKG1h
a2VLZXkoaWRlbnRpZmllciwgYmFzZUtleSkuZ2V0KCksIGtDRlByZWZlcmVuY2VzQ3VycmVudEFw
cGxpY2F0aW9uKSk7CisgICAgaWYgKCF2YWx1ZSkKKyAgICAgICAgcmV0dXJuOworICAgIGlmIChD
RkdldFR5cGVJRCh2YWx1ZS5nZXQoKSkgIT0gQ0ZOdW1iZXJHZXRUeXBlSUQoKSkKKyAgICAgICAg
cmV0dXJuOworICAgIGZsb2F0IGZsb2F0VmFsdWUgPSAwOworICAgIGlmICghQ0ZOdW1iZXJHZXRW
YWx1ZSgoQ0ZOdW1iZXJSZWYpdmFsdWUuZ2V0KCksIGtDRk51bWJlckZsb2F0VHlwZSwgJmZsb2F0
VmFsdWUpKQorICAgICAgICByZXR1cm47CisKKyAgICBzdG9yZS5zZXRGbG9hdFZhbHVlRm9yS2V5
KGJhc2VLZXksIGZsb2F0VmFsdWUpOworfQorCiB2b2lkIFdlYlByZWZlcmVuY2VzOjpwbGF0Zm9y
bUluaXRpYWxpemVTdG9yZSgpCiB7CiAgICAgaWYgKCFtX2lkZW50aWZpZXIpCmRpZmYgLS1naXQg
YS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dlYlByZWZlcmVuY2VzTWFjLm1tIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL21hYy9XZWJQcmVmZXJlbmNlc01hYy5tbQppbmRleCBmMTlh
NmM3Li5jODFiNzUwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvbWFjL1dl
YlByZWZlcmVuY2VzTWFjLm1tCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9tYWMvV2Vi
UHJlZmVyZW5jZXNNYWMubW0KQEAgLTgwLDYgKzgwLDE3IEBAIHN0YXRpYyB2b2lkIHNldERvdWJs
ZVZhbHVlSWZJblVzZXJEZWZhdWx0cyhjb25zdCBTdHJpbmcmIGlkZW50aWZpZXIsIGNvbnN0IFN0
cmluCiAgICAgc3RvcmUuc2V0RG91YmxlVmFsdWVGb3JLZXkoa2V5LCBbb2JqZWN0IGRvdWJsZVZh
bHVlXSk7CiB9CiAKK3N0YXRpYyB2b2lkIHNldEZsb2F0VmFsdWVJZkluVXNlckRlZmF1bHRzKGNv
bnN0IFN0cmluZyYgaWRlbnRpZmllciwgY29uc3QgU3RyaW5nJiBrZXksIFdlYlByZWZlcmVuY2Vz
U3RvcmUmIHN0b3JlKQoreworICAgIGlkIG9iamVjdCA9IFtbTlNVc2VyRGVmYXVsdHMgc3RhbmRh
cmRVc2VyRGVmYXVsdHNdIG9iamVjdEZvcktleTptYWtlS2V5KGlkZW50aWZpZXIsIGtleSldOwor
ICAgIGlmICghb2JqZWN0KQorICAgICAgICByZXR1cm47CisgICAgaWYgKCFbb2JqZWN0IHJlc3Bv
bmRzVG9TZWxlY3RvcjpAc2VsZWN0b3IoZmxvYXRWYWx1ZSldKQorICAgICAgICByZXR1cm47CisK
KyAgICBzdG9yZS5zZXRGbG9hdFZhbHVlRm9yS2V5KGtleSwgW29iamVjdCBmbG9hdFZhbHVlXSk7
Cit9CisKIHZvaWQgV2ViUHJlZmVyZW5jZXM6OnBsYXRmb3JtSW5pdGlhbGl6ZVN0b3JlKCkKIHsK
ICAgICBpZiAoIW1faWRlbnRpZmllcikKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlBy
b2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLmNwcAppbmRleCA3OGNiYWVlLi45Yzk2MzhmIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0yMjQ5LDYgKzIyNDksMTEg
QEAgdm9pZCBXZWJQYWdlOjp1cGRhdGVQcmVmZXJlbmNlcyhjb25zdCBXZWJQcmVmZXJlbmNlc1N0
b3JlJiBzdG9yZSkKIAogICAgIHNldHRpbmdzLT5zZXRQbHVnSW5TbmFwc2hvdHRpbmdFbmFibGVk
KHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6cGx1Z0luU25hcHNo
b3R0aW5nRW5hYmxlZEtleSgpKSk7CiAKKyNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQorICAg
IHNldHRpbmdzLT5zZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9y
S2V5KFdlYlByZWZlcmVuY2VzS2V5Ojp0ZXh0QXV0b3NpemluZ0VuYWJsZWRLZXkoKSkpOworICAg
IHNldHRpbmdzLT5zZXRUZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3RvcihzdG9yZS5nZXRGbG9h
dFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5Ojp0ZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZh
Y3RvcktleSgpKSk7CisjZW5kaWYKKwogICAgIHBsYXRmb3JtUHJlZmVyZW5jZXNEaWRDaGFuZ2Uo
c3RvcmUpOwogCiAgICAgaWYgKG1fZHJhd2luZ0FyZWEpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>171762</attachid>
            <date>2012-10-31 20:13:29 -0700</date>
            <delta_ts>2012-11-12 00:07:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-100633-20121101121151.patch</filename>
            <type>text/plain</type>
            <size>5217</size>
            <attacher name="Jaehun Lim">ljaehun.lim</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMzMTA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZWMyMzg3OTQwZTAwZWQz
ZGNhYmIyNDI3ZTM1MDRkMGFlZGU1NjMwZC4uY2JjODRiYWRlZWZjNzIxOTI5MTBmYWY4YjIyYjEz
ZmQ1Y2I0Zjc4NiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDEyLTEwLTMxICBKYWVo
dW4gTGltICA8bGphZWh1bi5saW1Ac2Ftc3VuZy5jb20+CisKKyAgICAgICAgVGV4dCBBdXRvc2l6
aW5nOiBBZGQgVGV4dCBBdXRvc2l6aW5nIEFQSXMgZm9yIFdLMgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAwNjMzCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgSW1wbGVtZW50IGJhc2ljIFRleHQgQXV0b3Np
emluZyBBUElzIGZvciBXSzIuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9y
ZS5oOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJL0MvV0tQcmVm
ZXJlbmNlcy5jcHA6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0VGV4dEF1dG9zaXppbmdFbmFi
bGVkKToKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQpOgor
ICAgICAgICAoV0tQcmVmZXJlbmNlc1NldFRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKToK
KyAgICAgICAgKFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3Rvcik6
CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuaDoKKyAgICAgICAgKiBX
ZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6
OnVwZGF0ZVByZWZlcmVuY2VzKToKKwogMjAxMi0xMC0zMSAgQWxleGFuZHJ1IENoaWN1bGl0YSAg
PGFjaGljdUBhZG9iZS5jb20+CiAKICAgICAgICAgQ3VzdG9tRmlsdGVyT3BlcmF0aW9uIHBhcmFt
ZXRlcnMgbGlzdCBpcyBub3QgZGVjb2RlZCBjb3JyZWN0bHkgaW4gQ29vcmRpbmF0ZWRHcmFwaGlj
c0FyZ3VtZW50Q29kZXJzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJl
ZmVyZW5jZXNTdG9yZS5oIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3Rv
cmUuaAppbmRleCBkYzA3M2RlMDM5ZDlmY2I4ODAxODBiOWQzNzhmMDMxOWNlODMxNTBhLi5mYWZm
NzAzMjdiZmYwZDM0YmM5MjdlMzY4YzZlMzYxNzg3MjQyMzUzIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgKQEAgLTEzOCwxMCArMTM4LDEyIEBAIG5hbWVz
cGFjZSBXZWJLaXQgewogICAgIG1hY3JvKENvb2tpZUVuYWJsZWQsIGNvb2tpZUVuYWJsZWQsIEJv
b2wsIGJvb2wsIHRydWUpIFwKICAgICBtYWNybyhQbHVnSW5TbmFwc2hvdHRpbmdFbmFibGVkLCBw
bHVnSW5TbmFwc2hvdHRpbmdFbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSkgXAogICAgIG1hY3Jv
KFBERlBsdWdpbkVuYWJsZWQsIHBkZlBsdWdpbkVuYWJsZWQsIEJvb2wsIGJvb2wsIGZhbHNlKSBc
CisgICAgbWFjcm8oVGV4dEF1dG9zaXppbmdFbmFibGVkLCB0ZXh0QXV0b3NpemluZ0VuYWJsZWQs
IEJvb2wsIGJvb2wsIGZhbHNlKSBcCiAgICAgXAogCiAjZGVmaW5lIEZPUl9FQUNIX1dFQktJVF9E
T1VCTEVfUFJFRkVSRU5DRShtYWNybykgXAogICAgIG1hY3JvKFBERlNjYWxlRmFjdG9yLCBwZGZT
Y2FsZUZhY3RvciwgRG91YmxlLCBkb3VibGUsIDApIFwKKyAgICBtYWNybyhUZXh0QXV0b3Npemlu
Z0ZvbnRTY2FsZUZhY3RvciwgdGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3IsIERvdWJsZSwg
ZG91YmxlLCAxKSBcCiAgICAgXAogCiAjZGVmaW5lIEZPUl9FQUNIX1dFQktJVF9GTE9BVF9QUkVG
RVJFTkNFKG1hY3JvKSBcCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0MvV0tQcmVmZXJlbmNlcy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQ
cmVmZXJlbmNlcy5jcHAKaW5kZXggNTMyZDgyY2FmOWZiY2U2MTFmNWYwNTA4MGQ1NWU5MjZlMGFh
NmMxOC4uYjcyOTkzODEyOWRhY2Q0Zjc0OTg1N2VjYmY4M2Q2MWU2ZmJmNmM2YSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcApAQCAtOTQz
LDMgKzk0MywyNCBAQCBib29sIFdLUHJlZmVyZW5jZXNHZXRQREZQbHVnaW5FbmFibGVkKFdLUHJl
ZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpCiB7CiAgICAgcmV0dXJuIHRvSW1wbChwcmVmZXJl
bmNlc1JlZiktPnBkZlBsdWdpbkVuYWJsZWQoKTsKIH0KKwordm9pZCBXS1ByZWZlcmVuY2VzU2V0
VGV4dEF1dG9zaXppbmdFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJv
b2wgdGV4dEF1dG9zaXppbmdFbmFibGVkKQoreworICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZikt
PnNldFRleHRBdXRvc2l6aW5nRW5hYmxlZCh0ZXh0QXV0b3NpemluZ0VuYWJsZWQpOworfQorCiti
b29sIFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQoV0tQcmVmZXJlbmNlc1Jl
ZiBwcmVmZXJlbmNlc1JlZikKK3sKKyAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+
dGV4dEF1dG9zaXppbmdFbmFibGVkKCk7Cit9CisKK3ZvaWQgV0tQcmVmZXJlbmNlc1NldFRleHRB
dXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYs
IGRvdWJsZSBmb250U2NhbGVGYWN0b3IpCit7CisgICAgdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+
c2V0VGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3IoZm9udFNjYWxlRmFjdG9yKTsKK30KKwor
ZG91YmxlIFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3RvcihXS1By
ZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKQoreworICAgIHJldHVybiB0b0ltcGwocHJlZmVy
ZW5jZXNSZWYpLT50ZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3RvcigpOworfQorCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5oIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuaAppbmRleCBkOTFiODJk
ODNhODk1ZTJlODJmNjI4YWMzOTllYzM2ZmU3ZTk5MGZkLi40OGY3MWRhZDI4ZWJlNzgwM2Q1ZTg4
OGVjMjUwMjJiYzJjMGIzZDIyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0MvV0tQcmVmZXJlbmNlcy5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkv
Qy9XS1ByZWZlcmVuY2VzLmgKQEAgLTIyMCw2ICsyMjAsMTQgQEAgV0tfRVhQT1JUIFdLU3RvcmFn
ZUJsb2NraW5nUG9saWN5IFdLUHJlZmVyZW5jZXNHZXRTdG9yYWdlQmxvY2tpbmdQb2xpY3koV0tQ
cmVmZXIKIFdLX0VYUE9SVCB2b2lkIFdLUHJlZmVyZW5jZXNTZXRQbHVnSW5TbmFwc2hvdHRpbmdF
bmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgZW5hYmxlZCk7CiBX
S19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0UGx1Z0luU25hcHNob3R0aW5nRW5hYmxlZChX
S1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKIAorLy8gRGVmYXVsdHMgdG8gZmFsc2Uu
CitXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0VGV4dEF1dG9zaXppbmdFbmFibGVkKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMsIGJvb2wgdGV4dEF1dG9zaXppbmdFbmFibGVkKTsK
K1dLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQoV0tQ
cmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlcyk7CisKKy8vIERlZmF1bHRzIHRvIDEuMAorV0tfRVhQ
T1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldFRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMsIGRvdWJsZSBmb250U2NhbGVGYWN0b3IpOworV0tf
RVhQT1JUIGRvdWJsZSBXS1ByZWZlcmVuY2VzR2V0VGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0
b3IoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlcyk7CisKICNpZmRlZiBfX2NwbHVzcGx1cwog
fQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAKaW5kZXggYjFlZTM1ODMzMTIwOWZlN2JmODU5MDEwNGZlNTA0OWJmMDNjN2M3NC4uZmY2OGVk
OTYyZDNmODI3Mzc4YzNiN2MzZWMzNDhlNDY5ZjAyMjcxYyAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMjI2Myw2ICsyMjYzLDExIEBAIHZv
aWQgV2ViUGFnZTo6dXBkYXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYg
c3RvcmUpCiAKICAgICBzZXR0aW5ncy0+c2V0UGx1Z0luU25hcHNob3R0aW5nRW5hYmxlZChzdG9y
ZS5nZXRCb29sVmFsdWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OnBsdWdJblNuYXBzaG90dGlu
Z0VuYWJsZWRLZXkoKSkpOwogCisjaWYgRU5BQkxFKFRFWFRfQVVUT1NJWklORykKKyAgICBzZXR0
aW5ncy0+c2V0VGV4dEF1dG9zaXppbmdFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShX
ZWJQcmVmZXJlbmNlc0tleTo6dGV4dEF1dG9zaXppbmdFbmFibGVkS2V5KCkpKTsKKyAgICBzZXR0
aW5ncy0+c2V0VGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3Ioc3RvcmUuZ2V0RG91YmxlVmFs
dWVGb3JLZXkoV2ViUHJlZmVyZW5jZXNLZXk6OnRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9y
S2V5KCkpKTsKKyNlbmRpZgorCiAgICAgcGxhdGZvcm1QcmVmZXJlbmNlc0RpZENoYW5nZShzdG9y
ZSk7CiAKICAgICBpZiAobV9kcmF3aW5nQXJlYSkK
</data>
<flag name="review"
          id="185795"
          type_id="1"
          status="-"
          setter="sam"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>173576</attachid>
            <date>2012-11-12 00:07:57 -0800</date>
            <delta_ts>2012-11-25 20:04:31 -0800</delta_ts>
            <desc>Add testcase</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>6527</size>
            <attacher name="Jaehun Lim">ljaehun.lim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA0YzM2YmIwLi5mYjkyZmVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjYg
QEAKKzIwMTItMTEtMTEgIEphZWh1biBMaW0gIDxsamFlaHVuLmxpbUBzYW1zdW5nLmNvbT4KKwor
ICAgICAgICBUZXh0IEF1dG9zaXppbmc6IEFkZCBUZXh0IEF1dG9zaXppbmcgQVBJcyBmb3IgV0sy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDA2MzMK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1l
bnQgYmFzaWMgVGV4dCBBdXRvc2l6aW5nIEFQSXMgZm9yIFdLMi4KKyAgICAgICAgVGV4dCBBdXRv
c2l6aW5nIGlzIGEgdXNlZnVsIGZlYXR1cmUgZm9yIG1vYmlsZSBicm93c2Vycy4gSXQgYWRqdXN0
cyB0aGUgZm9udCBzaXplCisgICAgICAgIG9mIHRleHQgaW4gd2lkZSBjb2x1bW5zLCBhbmQgbWFr
ZXMgdGV4dCBtb3JlIGxlZ2libGUuCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBzZXR0aW5nIEFQ
SXMgZm9yIFRleHQgQXV0b3NpemluZyBpbiBXSzIuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJl
ZmVyZW5jZXNTdG9yZS5oOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKiBVSVByb2Nlc3Mv
QVBJL0MvV0tQcmVmZXJlbmNlcy5jcHA6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0VGV4dEF1
dG9zaXppbmdFbmFibGVkKToKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3Npemlu
Z0VuYWJsZWQpOgorICAgICAgICAoV0tQcmVmZXJlbmNlc1NldFRleHRBdXRvc2l6aW5nRm9udFNj
YWxlRmFjdG9yKToKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3NpemluZ0ZvbnRT
Y2FsZUZhY3Rvcik6CisgICAgICAgICogVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuaDoK
KyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJL
aXQ6OldlYlBhZ2U6OnVwZGF0ZVByZWZlcmVuY2VzKToKKwogMjAxMi0xMS0xMSAgU2hlcmlmZiBC
b3QgIDx3ZWJraXQucmV2aWV3LmJvdEBnbWFpbC5jb20+CiAKICAgICAgICAgVW5yZXZpZXdlZCwg
cm9sbGluZyBvdXQgcjEzNDE0NC4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9X
ZWJQcmVmZXJlbmNlc1N0b3JlLmggYi9Tb3VyY2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5j
ZXNTdG9yZS5oCmluZGV4IDA3ZDYyYWMuLjEyODQ5ZmEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hh
cmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaApAQCAtMTM5LDEwICsxMzksMTIgQEAgbmFtZXNwYWNl
IFdlYktpdCB7CiAgICAgbWFjcm8oUGx1Z0luU25hcHNob3R0aW5nRW5hYmxlZCwgcGx1Z0luU25h
cHNob3R0aW5nRW5hYmxlZCwgQm9vbCwgYm9vbCwgZmFsc2UpIFwKICAgICBtYWNybyhQREZQbHVn
aW5FbmFibGVkLCBwZGZQbHVnaW5FbmFibGVkLCBCb29sLCBib29sLCBmYWxzZSkgXAogICAgIG1h
Y3JvKFVzZXNFbmNvZGluZ0RldGVjdG9yLCB1c2VzRW5jb2RpbmdEZXRlY3RvciwgQm9vbCwgYm9v
bCwgZmFsc2UpIFwKKyAgICBtYWNybyhUZXh0QXV0b3NpemluZ0VuYWJsZWQsIHRleHRBdXRvc2l6
aW5nRW5hYmxlZCwgQm9vbCwgYm9vbCwgZmFsc2UpIFwKICAgICBcCiAKICNkZWZpbmUgRk9SX0VB
Q0hfV0VCS0lUX0RPVUJMRV9QUkVGRVJFTkNFKG1hY3JvKSBcCiAgICAgbWFjcm8oUERGU2NhbGVG
YWN0b3IsIHBkZlNjYWxlRmFjdG9yLCBEb3VibGUsIGRvdWJsZSwgMCkgXAorICAgIG1hY3JvKFRl
eHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yLCB0ZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3Rv
ciwgRG91YmxlLCBkb3VibGUsIDEpIFwKICAgICBcCiAKICNkZWZpbmUgRk9SX0VBQ0hfV0VCS0lU
X0ZMT0FUX1BSRUZFUkVOQ0UobWFjcm8pIFwKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAppbmRleCAwNjg1NjNkLi45ZGRlNWNlIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKKysr
IGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuY3BwCkBAIC05
NTMsMyArOTUzLDI0IEBAIGJvb2wgV0tQcmVmZXJlbmNlc0dldEVuY29kaW5nRGV0ZWN0b3JFbmFi
bGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpCiB7CiAgICAgcmV0dXJuIHRvSW1w
bChwcmVmZXJlbmNlc1JlZiktPnVzZXNFbmNvZGluZ0RldGVjdG9yKCk7CiB9CisKK3ZvaWQgV0tQ
cmVmZXJlbmNlc1NldFRleHRBdXRvc2l6aW5nRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZl
cmVuY2VzUmVmLCBib29sIHRleHRBdXRvc2l6aW5nRW5hYmxlZCkKK3sKKyAgICB0b0ltcGwocHJl
ZmVyZW5jZXNSZWYpLT5zZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQodGV4dEF1dG9zaXppbmdFbmFi
bGVkKTsKK30KKworYm9vbCBXS1ByZWZlcmVuY2VzR2V0VGV4dEF1dG9zaXppbmdFbmFibGVkKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYpCit7CisgICAgcmV0dXJuIHRvSW1wbChwcmVm
ZXJlbmNlc1JlZiktPnRleHRBdXRvc2l6aW5nRW5hYmxlZCgpOworfQorCit2b2lkIFdLUHJlZmVy
ZW5jZXNTZXRUZXh0QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3RvcihXS1ByZWZlcmVuY2VzUmVmIHBy
ZWZlcmVuY2VzUmVmLCBkb3VibGUgZm9udFNjYWxlRmFjdG9yKQoreworICAgIHRvSW1wbChwcmVm
ZXJlbmNlc1JlZiktPnNldFRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKGZvbnRTY2FsZUZh
Y3Rvcik7Cit9CisKK2RvdWJsZSBXS1ByZWZlcmVuY2VzR2V0VGV4dEF1dG9zaXppbmdGb250U2Nh
bGVGYWN0b3IoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZikKK3sKKyAgICByZXR1cm4g
dG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+dGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3IoKTsK
K30KKwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVy
ZW5jZXMuaCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmgK
aW5kZXggZmYyZTBhMC4uNTI2OWRhZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9j
ZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3Mv
QVBJL0MvV0tQcmVmZXJlbmNlcy5oCkBAIC0yMjQsNiArMjI0LDE0IEBAIFdLX0VYUE9SVCBib29s
IFdLUHJlZmVyZW5jZXNHZXRQbHVnSW5TbmFwc2hvdHRpbmdFbmFibGVkKFdLUHJlZmVyZW5jZXNS
ZWYgcHJlZmVyCiBXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0RW5jb2RpbmdEZXRlY3Rv
ckVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZiwgYm9vbCBlbmFibGVkKTsK
IFdLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRFbmNvZGluZ0RldGVjdG9yRW5hYmxlZChX
S1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzUmVmKTsKIAorLy8gRGVmYXVsdHMgdG8gZmFsc2Uu
CitXS19FWFBPUlQgdm9pZCBXS1ByZWZlcmVuY2VzU2V0VGV4dEF1dG9zaXppbmdFbmFibGVkKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMsIGJvb2wgdGV4dEF1dG9zaXppbmdFbmFibGVkKTsK
K1dLX0VYUE9SVCBib29sIFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQoV0tQ
cmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlcyk7CisKKy8vIERlZmF1bHRzIHRvIDEuMAorV0tfRVhQ
T1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldFRleHRBdXRvc2l6aW5nRm9udFNjYWxlRmFjdG9yKFdL
UHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMsIGRvdWJsZSBmb250U2NhbGVGYWN0b3IpOworV0tf
RVhQT1JUIGRvdWJsZSBXS1ByZWZlcmVuY2VzR2V0VGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0
b3IoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlcyk7CisKICNpZmRlZiBfX2NwbHVzcGx1cwog
fQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2Uv
V2ViUGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5j
cHAKaW5kZXggNjBjYTY3OC4uZWFjOWQ2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2Vi
UHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9XZWJQYWdlLmNwcApAQCAtMjI3Nyw2ICsyMjc3LDExIEBAIHZvaWQgV2ViUGFn
ZTo6dXBkYXRlUHJlZmVyZW5jZXMoY29uc3QgV2ViUHJlZmVyZW5jZXNTdG9yZSYgc3RvcmUpCiAg
ICAgc2V0dGluZ3MtPnNldFBsdWdJblNuYXBzaG90dGluZ0VuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZh
bHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5OjpwbHVnSW5TbmFwc2hvdHRpbmdFbmFibGVkS2V5
KCkpKTsKICAgICBzZXR0aW5ncy0+c2V0VXNlc0VuY29kaW5nRGV0ZWN0b3Ioc3RvcmUuZ2V0Qm9v
bFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2VzS2V5Ojp1c2VzRW5jb2RpbmdEZXRlY3RvcktleSgp
KSk7CiAKKyNpZiBFTkFCTEUoVEVYVF9BVVRPU0laSU5HKQorICAgIHNldHRpbmdzLT5zZXRUZXh0
QXV0b3NpemluZ0VuYWJsZWQoc3RvcmUuZ2V0Qm9vbFZhbHVlRm9yS2V5KFdlYlByZWZlcmVuY2Vz
S2V5Ojp0ZXh0QXV0b3NpemluZ0VuYWJsZWRLZXkoKSkpOworICAgIHNldHRpbmdzLT5zZXRUZXh0
QXV0b3NpemluZ0ZvbnRTY2FsZUZhY3RvcihzdG9yZS5nZXREb3VibGVWYWx1ZUZvcktleShXZWJQ
cmVmZXJlbmNlc0tleTo6dGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3JLZXkoKSkpOworI2Vu
ZGlmCisKICAgICBwbGF0Zm9ybVByZWZlcmVuY2VzRGlkQ2hhbmdlKHN0b3JlKTsKIAogICAgIGlm
IChtX2RyYXdpbmdBcmVhKQpkaWZmIC0tZ2l0IGEvVG9vbHMvQ2hhbmdlTG9nIGIvVG9vbHMvQ2hh
bmdlTG9nCmluZGV4IDA5NGFiZTUuLjdhZjgyOTAgMTAwNjQ0Ci0tLSBhL1Rvb2xzL0NoYW5nZUxv
ZworKysgYi9Ub29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNSBAQAorMjAxMi0xMS0xMSAgSmFl
aHVuIExpbSAgPGxqYWVodW4ubGltQHNhbXN1bmcuY29tPgorCisgICAgICAgIFRleHQgQXV0b3Np
emluZzogQWRkIFRleHQgQXV0b3NpemluZyBBUElzIGZvciBXSzIKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwMDYzMworCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCB0ZXN0IGNhc2VzIGZvciBUZXh0IEF1
dG9zaXppbmcgaW4gV0tQcmVmZXJlbmNlcy4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkvVGVz
dHMvV2ViS2l0Mi9XS1ByZWZlcmVuY2VzLmNwcDoKKyAgICAgICAgKFRlc3RXZWJLaXRBUEk6OlRF
U1QpOgorCiAyMDEyLTExLTA5ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAg
ICAgICAgIFBlb3BsZSB3aXRoIGRpY2hyb21hY3kgY2FuJ3QgdGVsbCBjcmFzaGVzIGFuZCBwYXNz
ZXMgb24gZmxha2luZXNzIGRhc2hib2FyZApkaWZmIC0tZ2l0IGEvVG9vbHMvVGVzdFdlYktpdEFQ
SS9UZXN0cy9XZWJLaXQyL1dLUHJlZmVyZW5jZXMuY3BwIGIvVG9vbHMvVGVzdFdlYktpdEFQSS9U
ZXN0cy9XZWJLaXQyL1dLUHJlZmVyZW5jZXMuY3BwCmluZGV4IDVjMDc1MWIuLjNhZmQzMzkgMTAw
NjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9XS1ByZWZlcmVuY2Vz
LmNwcAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIvV0tQcmVmZXJlbmNl
cy5jcHAKQEAgLTEwMiw2ICsxMDIsOCBAQCBURVNUKFdlYktpdDIsIFdLUHJlZmVyZW5jZXNEZWZh
dWx0cykKICAgICBFWFBFQ1RfRkFMU0UoV0tQcmVmZXJlbmNlc0dldENvbXBvc2l0aW5nUmVwYWlu
dENvdW50ZXJzVmlzaWJsZShwcmVmZXJlbmNlKSk7CiAgICAgRVhQRUNUX0ZBTFNFKFdLUHJlZmVy
ZW5jZXNHZXROZWVkc1NpdGVTcGVjaWZpY1F1aXJrcyhwcmVmZXJlbmNlKSk7CiAgICAgRVhQRUNU
X0VRKGtXS0FsbG93QWxsU3RvcmFnZSwgV0tQcmVmZXJlbmNlc0dldFN0b3JhZ2VCbG9ja2luZ1Bv
bGljeShwcmVmZXJlbmNlKSk7CisgICAgRVhQRUNUX0ZBTFNFKFdLUHJlZmVyZW5jZXNHZXRUZXh0
QXV0b3NpemluZ0VuYWJsZWQocHJlZmVyZW5jZSkpOworICAgIEVYUEVDVF9FUSgxLCBXS1ByZWZl
cmVuY2VzR2V0VGV4dEF1dG9zaXppbmdGb250U2NhbGVGYWN0b3IocHJlZmVyZW5jZSkpOwogCiAg
ICAgV0tSZWxlYXNlKHByZWZlcmVuY2UpOwogfQo=
</data>
<flag name="review"
          id="188311"
          type_id="1"
          status="-"
          setter="sam"
    />
    <flag name="commit-queue"
          id="188312"
          type_id="3"
          status="-"
          setter="sam"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>175916</attachid>
            <date>2012-11-25 20:04:31 -0800</date>
            <delta_ts>2012-11-26 03:16:56 -0800</delta_ts>
            <desc>patch</desc>
            <filename>patch.diff</filename>
            <type>text/plain</type>
            <size>5378</size>
            <attacher name="Jaehun Lim">ljaehun.lim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCA3MWEyNWJiLi4wOWQ1ZTkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQg
QEAKKzIwMTItMTEtMjUgIEphZWh1biBMaW0gIDxsamFlaHVuLmxpbUBzYW1zdW5nLmNvbT4KKwor
ICAgICAgICBUZXh0IEF1dG9zaXppbmc6IEFkZCBUZXh0IEF1dG9zaXppbmcgQVBJcyBmb3IgV0sy
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDA2MzMK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1l
bnQgYmFzaWMgVGV4dCBBdXRvc2l6aW5nIEFQSXMgZm9yIFdLMi4KKyAgICAgICAgVGV4dCBBdXRv
c2l6aW5nIGlzIGEgdXNlZnVsIGZlYXR1cmUgZm9yIG1vYmlsZSBicm93c2Vycy4gSXQgYWRqdXN0
cyB0aGUgZm9udCBzaXplCisgICAgICAgIG9mIHRleHQgaW4gd2lkZSBjb2x1bW5zLCBhbmQgbWFr
ZXMgdGV4dCBtb3JlIGxlZ2libGUuCisgICAgICAgIFRoaXMgcGF0Y2ggYWRkcyBzZXR0aW5nIEFQ
SXMgZm9yIFRleHQgQXV0b3NpemluZyBpbiBXSzIuCisKKyAgICAgICAgKiBTaGFyZWQvV2ViUHJl
ZmVyZW5jZXNTdG9yZS5oOgorICAgICAgICAoV2ViS2l0KToKKyAgICAgICAgKiBVSVByb2Nlc3Mv
QVBJL0MvV0tQcmVmZXJlbmNlcy5jcHA6CisgICAgICAgIChXS1ByZWZlcmVuY2VzU2V0VGV4dEF1
dG9zaXppbmdFbmFibGVkKToKKyAgICAgICAgKFdLUHJlZmVyZW5jZXNHZXRUZXh0QXV0b3Npemlu
Z0VuYWJsZWQpOgorICAgICAgICAqIFVJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmg6Cisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJQYWdlOjp1cGRhdGVQcmVmZXJlbmNlcyk6CisKIDIwMTItMTEtMjUgIE1pa2hhaWwgUG96
ZG55YWtvdiAgPG1pa2hhaWwucG96ZG55YWtvdkBpbnRlbC5jb20+CiAKICAgICAgICAgW1dLMl0g
VGlsZWRCYWNraW5nU3RvcmU6IHBhZ2UgY29udGVudHMgaXMgc2NhbGVkIHdyb25nbHkKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0b3JlLmggYi9Tb3Vy
Y2UvV2ViS2l0Mi9TaGFyZWQvV2ViUHJlZmVyZW5jZXNTdG9yZS5oCmluZGV4IDA3ZDYyYWMuLjI3
MGZjYjMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1NoYXJlZC9XZWJQcmVmZXJlbmNlc1N0
b3JlLmgKKysrIGIvU291cmNlL1dlYktpdDIvU2hhcmVkL1dlYlByZWZlcmVuY2VzU3RvcmUuaApA
QCAtMTM5LDYgKzEzOSw3IEBAIG5hbWVzcGFjZSBXZWJLaXQgewogICAgIG1hY3JvKFBsdWdJblNu
YXBzaG90dGluZ0VuYWJsZWQsIHBsdWdJblNuYXBzaG90dGluZ0VuYWJsZWQsIEJvb2wsIGJvb2ws
IGZhbHNlKSBcCiAgICAgbWFjcm8oUERGUGx1Z2luRW5hYmxlZCwgcGRmUGx1Z2luRW5hYmxlZCwg
Qm9vbCwgYm9vbCwgZmFsc2UpIFwKICAgICBtYWNybyhVc2VzRW5jb2RpbmdEZXRlY3RvciwgdXNl
c0VuY29kaW5nRGV0ZWN0b3IsIEJvb2wsIGJvb2wsIGZhbHNlKSBcCisgICAgbWFjcm8oVGV4dEF1
dG9zaXppbmdFbmFibGVkLCB0ZXh0QXV0b3NpemluZ0VuYWJsZWQsIEJvb2wsIGJvb2wsIGZhbHNl
KSBcCiAgICAgXAogCiAjZGVmaW5lIEZPUl9FQUNIX1dFQktJVF9ET1VCTEVfUFJFRkVSRU5DRSht
YWNybykgXApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJl
ZmVyZW5jZXMuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5j
ZXMuY3BwCmluZGV4IDA2ODU2M2QuLjdlM2FhMDIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL0MvV0tQcmVmZXJlbmNlcy5jcHAKQEAgLTk1MywzICs5NTMsMTQgQEAgYm9v
bCBXS1ByZWZlcmVuY2VzR2V0RW5jb2RpbmdEZXRlY3RvckVuYWJsZWQoV0tQcmVmZXJlbmNlc1Jl
ZiBwcmVmZXJlbmNlc1JlZikKIHsKICAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+
dXNlc0VuY29kaW5nRGV0ZWN0b3IoKTsKIH0KKwordm9pZCBXS1ByZWZlcmVuY2VzU2V0VGV4dEF1
dG9zaXppbmdFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNSZWYsIGJvb2wgdGV4
dEF1dG9zaXppbmdFbmFibGVkKQoreworICAgIHRvSW1wbChwcmVmZXJlbmNlc1JlZiktPnNldFRl
eHRBdXRvc2l6aW5nRW5hYmxlZCh0ZXh0QXV0b3NpemluZ0VuYWJsZWQpOworfQorCitib29sIFdL
UHJlZmVyZW5jZXNHZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVm
ZXJlbmNlc1JlZikKK3sKKyAgICByZXR1cm4gdG9JbXBsKHByZWZlcmVuY2VzUmVmKS0+dGV4dEF1
dG9zaXppbmdFbmFibGVkKCk7Cit9CisKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmggYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L0MvV0tQcmVmZXJlbmNlcy5oCmluZGV4IGZmMmUwYTAuLjQwMzNkOGMgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvQy9XS1ByZWZlcmVuY2VzLmgKKysrIGIvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0FQSS9DL1dLUHJlZmVyZW5jZXMuaApAQCAtMjI0LDYgKzIyNCwx
MCBAQCBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0UGx1Z0luU25hcHNob3R0aW5nRW5h
YmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcgogV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNl
c1NldEVuY29kaW5nRGV0ZWN0b3JFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXNS
ZWYsIGJvb2wgZW5hYmxlZCk7CiBXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0RW5jb2Rp
bmdEZXRlY3RvckVuYWJsZWQoV0tQcmVmZXJlbmNlc1JlZiBwcmVmZXJlbmNlc1JlZik7CiAKKy8v
IERlZmF1bHRzIHRvIGZhbHNlLgorV0tfRVhQT1JUIHZvaWQgV0tQcmVmZXJlbmNlc1NldFRleHRB
dXRvc2l6aW5nRW5hYmxlZChXS1ByZWZlcmVuY2VzUmVmIHByZWZlcmVuY2VzLCBib29sIHRleHRB
dXRvc2l6aW5nRW5hYmxlZCk7CitXS19FWFBPUlQgYm9vbCBXS1ByZWZlcmVuY2VzR2V0VGV4dEF1
dG9zaXppbmdFbmFibGVkKFdLUHJlZmVyZW5jZXNSZWYgcHJlZmVyZW5jZXMpOworCiAjaWZkZWYg
X19jcGx1c3BsdXMKIH0KICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuY3BwCmluZGV4IGM5MWM3M2UuLmEyMWZhZTMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAgLTIyOTMsNiArMjI5MywxMCBA
QCB2b2lkIFdlYlBhZ2U6OnVwZGF0ZVByZWZlcmVuY2VzKGNvbnN0IFdlYlByZWZlcmVuY2VzU3Rv
cmUmIHN0b3JlKQogICAgIHNldHRpbmdzLT5zZXRQbHVnSW5TbmFwc2hvdHRpbmdFbmFibGVkKHN0
b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6cGx1Z0luU25hcHNob3R0
aW5nRW5hYmxlZEtleSgpKSk7CiAgICAgc2V0dGluZ3MtPnNldFVzZXNFbmNvZGluZ0RldGVjdG9y
KHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShXZWJQcmVmZXJlbmNlc0tleTo6dXNlc0VuY29kaW5n
RGV0ZWN0b3JLZXkoKSkpOwogCisjaWYgRU5BQkxFKFRFWFRfQVVUT1NJWklORykKKyAgICBzZXR0
aW5ncy0+c2V0VGV4dEF1dG9zaXppbmdFbmFibGVkKHN0b3JlLmdldEJvb2xWYWx1ZUZvcktleShX
ZWJQcmVmZXJlbmNlc0tleTo6dGV4dEF1dG9zaXppbmdFbmFibGVkS2V5KCkpKTsKKyNlbmRpZgor
CiAgICAgcGxhdGZvcm1QcmVmZXJlbmNlc0RpZENoYW5nZShzdG9yZSk7CiAKICAgICBpZiAobV9k
cmF3aW5nQXJlYSkKZGlmZiAtLWdpdCBhL1Rvb2xzL0NoYW5nZUxvZyBiL1Rvb2xzL0NoYW5nZUxv
ZwppbmRleCA4ODAzYTZmLi44ZDkxZDBlIDEwMDY0NAotLS0gYS9Ub29scy9DaGFuZ2VMb2cKKysr
IGIvVG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTItMTEtMjUgIEphZWh1biBM
aW0gIDxsamFlaHVuLmxpbUBzYW1zdW5nLmNvbT4KKworICAgICAgICBUZXh0IEF1dG9zaXppbmc6
IEFkZCBUZXh0IEF1dG9zaXppbmcgQVBJcyBmb3IgV0syCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDA2MzMKKworICAgICAgICBSZXZpZXdlZCBieSBO
T0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgdGVzdCBjYXNlcyBmb3IgVGV4dCBBdXRvc2l6
aW5nIGluIFdLUHJlZmVyZW5jZXMuCisKKyAgICAgICAgKiBUZXN0V2ViS2l0QVBJL1Rlc3RzL1dl
YktpdDIvV0tQcmVmZXJlbmNlcy5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToK
KwogMjAxMi0xMS0yNCAgWmFuIERvYmVyc2VrICA8emFuZG9iZXJzZWtAZ21haWwuY29tPgogCiAg
ICAgICAgIEFkZCB0aGUgLS1vcmRlciBvcHRpb24gdG8gTlJXVApkaWZmIC0tZ2l0IGEvVG9vbHMv
VGVzdFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1dLUHJlZmVyZW5jZXMuY3BwIGIvVG9vbHMvVGVz
dFdlYktpdEFQSS9UZXN0cy9XZWJLaXQyL1dLUHJlZmVyZW5jZXMuY3BwCmluZGV4IDNjNGJlZGEu
Ljk3NmU3MDQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV2ViS2l0Mi9X
S1ByZWZlcmVuY2VzLmNwcAorKysgYi9Ub29scy9UZXN0V2ViS2l0QVBJL1Rlc3RzL1dlYktpdDIv
V0tQcmVmZXJlbmNlcy5jcHAKQEAgLTEwMiw2ICsxMDIsNyBAQCBURVNUKFdlYktpdDIsIFdLUHJl
ZmVyZW5jZXNEZWZhdWx0cykKICAgICBFWFBFQ1RfRkFMU0UoV0tQcmVmZXJlbmNlc0dldENvbXBv
c2l0aW5nUmVwYWludENvdW50ZXJzVmlzaWJsZShwcmVmZXJlbmNlKSk7CiAgICAgRVhQRUNUX0ZB
TFNFKFdLUHJlZmVyZW5jZXNHZXROZWVkc1NpdGVTcGVjaWZpY1F1aXJrcyhwcmVmZXJlbmNlKSk7
CiAgICAgRVhQRUNUX0VRKGtXS0FsbG93QWxsU3RvcmFnZSwgV0tQcmVmZXJlbmNlc0dldFN0b3Jh
Z2VCbG9ja2luZ1BvbGljeShwcmVmZXJlbmNlKSk7CisgICAgRVhQRUNUX0ZBTFNFKFdLUHJlZmVy
ZW5jZXNHZXRUZXh0QXV0b3NpemluZ0VuYWJsZWQocHJlZmVyZW5jZSkpOwogCiAgICAgV0tSZWxl
YXNlKHByZWZlcmVuY2UpOwogfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>