<?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>115890</bug_id>
          
          <creation_ts>2013-05-09 22:14:41 -0700</creation_ts>
          <short_desc>[EFL] Implement colorpicker for HTML5 input type color on Minibrowser</short_desc>
          <delta_ts>2013-06-07 00:51:33 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit EFL</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>117237</dependson>
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Jungsik Tae">davidtlay88</reporter>
          <assigned_to name="Jungsik Tae">davidtlay88</assigned_to>
          <cc>cdumez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>eflews.bot</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>ljaehun.lim</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>mikhail.pozdnyakov</cc>
    
    <cc>ryuan.choi</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>887229</commentid>
    <comment_count>0</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-09 22:14:41 -0700</bug_when>
    <thetext>Colorpicker implemnetation by using existent colorpicker API.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>888033</commentid>
    <comment_count>1</comment_count>
      <attachid>201512</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-12 17:08:07 -0700</bug_when>
    <thetext>Created attachment 201512
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>888046</commentid>
    <comment_count>2</comment_count>
      <attachid>201512</attachid>
    <who name="Jinwoo Song">jinwoo7.song</who>
    <bug_when>2013-05-12 18:09:26 -0700</bug_when>
    <thetext>Comment on attachment 201512
Patch

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

&gt; Tools/ChangeLog:3
&gt; +        [EFL]Implement colorpicker for HTML5 input type color on Minibrowser

s/colorpicker/color picker UI/ ?

&gt; Tools/MiniBrowser/efl/main.c:67
&gt; +

Unnecessary modification.

&gt; Tools/MiniBrowser/efl/main.c:95
&gt; +    Ewk_Color_Picker *colorPicker;

s/colorPicker/color_picker/

&gt; Tools/MiniBrowser/efl/main.c:605
&gt; +on_changed_color(void *data, Evas_Object *obj, void *event_info)

on_color_changed?

&gt; Tools/MiniBrowser/efl/main.c:608
&gt; +    Color_Picker_Data *cp_data = (Color_Picker_Data *) data;

Remove blank after right bracket.

&gt; Tools/MiniBrowser/efl/main.c:618
&gt; +    Color_Picker_Data *cp_data = (Color_Picker_Data *) data;

ditto.

&gt; Tools/MiniBrowser/efl/main.c:619
&gt; +    Elm_Object_Item *color_item = (Elm_Object_Item *) event_info;

ditto.

&gt; Tools/MiniBrowser/efl/main.c:661
&gt; +    window-&gt;color_selector = elm_win_add(window-&gt;elm_window, &quot;color selector&quot;, ELM_WIN_DIALOG_BASIC);

IMO, we should use a modal popup instead of elm_window.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>888658</commentid>
    <comment_count>3</comment_count>
      <attachid>201667</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-13 19:29:50 -0700</bug_when>
    <thetext>Created attachment 201667
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>888662</commentid>
    <comment_count>4</comment_count>
      <attachid>201667</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-13 19:34:05 -0700</bug_when>
    <thetext>Comment on attachment 201667
Patch

Attachment 201667 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/465523</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>888673</commentid>
    <comment_count>5</comment_count>
      <attachid>201671</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-13 20:30:28 -0700</bug_when>
    <thetext>Created attachment 201671
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>888674</commentid>
    <comment_count>6</comment_count>
      <attachid>201671</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-13 20:35:31 -0700</bug_when>
    <thetext>Comment on attachment 201671
Patch

Attachment 201671 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/472033</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>888675</commentid>
    <comment_count>7</comment_count>
      <attachid>201672</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-13 20:47:19 -0700</bug_when>
    <thetext>Created attachment 201672
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>888676</commentid>
    <comment_count>8</comment_count>
      <attachid>201672</attachid>
    <who name="EFL EWS Bot">eflews.bot</who>
    <bug_when>2013-05-13 20:50:00 -0700</bug_when>
    <thetext>Comment on attachment 201672
Patch

Attachment 201672 did not pass efl-wk2-ews (efl-wk2):
Output: http://webkit-queues.appspot.com/results/475015</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>888677</commentid>
    <comment_count>9</comment_count>
      <attachid>201671</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-05-13 20:50:24 -0700</bug_when>
    <thetext>Comment on attachment 201671
Patch

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

r- because of efl ews fail and some comments.

&gt; Tools/ChangeLog:8
&gt; +        When user click HTML5 input type color, 

click -&gt; clicks

&gt; Tools/ChangeLog:11
&gt; +        The evas_objet_color_set() set a color value returning to browser.

set -&gt; sets ?

&gt; Tools/MiniBrowser/efl/main.c:666
&gt; +    cp_data-&gt;colorPicker = color_Picker;

colorPicker -&gt; color_picker ?

&gt; Tools/MiniBrowser/efl/main.c:693
&gt; +    fr = elm_frame_add(window-&gt;color_selector);

I don&apos;t see why you add a frame to *fr* as well as 679 line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>888703</commentid>
    <comment_count>10</comment_count>
      <attachid>201680</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-13 22:50:44 -0700</bug_when>
    <thetext>Created attachment 201680
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>888704</commentid>
    <comment_count>11</comment_count>
      <attachid>201680</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-05-13 23:02:16 -0700</bug_when>
    <thetext>Comment on attachment 201680
Patch

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

It would be good if you submit a screenshot of color picker by this patch.

&gt; Tools/MiniBrowser/efl/main.c:614
&gt; +on_colorpalette_clicked(void *data, Evas_Object *obj, void *event_info)

Looks color_palette better.

&gt; Tools/MiniBrowser/efl/main.c:625
&gt; +on_colorpalette_longpressed(void *data, Evas_Object *obj, void *event_info)

ditto. longpressed -&gt; long_pressed ?

&gt; Tools/MiniBrowser/efl/main.c:636
&gt; +on_colorpicker_ok_clicked(void *data, Evas_Object *obj, void *event_info)

ditto.

&gt; Tools/MiniBrowser/efl/main.c:648
&gt; +on_colorpicker_dismiss(Ewk_View_Smart_Data *sd)

ditto

&gt; Tools/MiniBrowser/efl/main.c:657
&gt; +on_colorpicker_request(Ewk_View_Smart_Data *sd, Ewk_Color_Picker* color_picker)

Wrong * place at Ewk_Color_Picker* color_picker.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>889940</commentid>
    <comment_count>12</comment_count>
      <attachid>201680</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-16 11:57:05 -0700</bug_when>
    <thetext>Comment on attachment 201680
Patch

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

The color picker looks nice but there are a few outstanding issues that need fixing.

&gt; Tools/ChangeLog:14
&gt; +        (_Color_Picker_Data): To deliver two object of different type.

This comment is not really needed / useful.

&gt; Tools/MiniBrowser/efl/main.c:96
&gt; +} Color_Picker_Data;

I don&apos;t think we really need this struct.

&gt; Tools/MiniBrowser/efl/main.c:117
&gt; +    Evas_Object *color_selector;

This could be an inline struct with 2 members:
Evas_Object *color_selector;
Evas_Object *rect_data;

Similar to the &quot;popup&quot; above.

&gt;&gt; Tools/MiniBrowser/efl/main.c:625
&gt;&gt; +on_colorpalette_longpressed(void *data, Evas_Object *obj, void *event_info)
&gt; 
&gt; ditto. longpressed -&gt; long_pressed ?

This function looks identical to on_colorpalette_clicked, please reuse the same function instead of duplicating code.

&gt; Tools/MiniBrowser/efl/main.c:641
&gt; +    evas_object_color_get(cp_data-&gt;rect_data, &amp;r, &amp;g, &amp;b, &amp;a);

If you pass the window as userData, you can get the color from the colorSelector widget instead of the rect.

&gt; Tools/MiniBrowser/efl/main.c:652
&gt; +

Looks like cp_data may be leaked if the view requests to dismiss the color picker.

&gt; Tools/MiniBrowser/efl/main.c:660
&gt; +    window-&gt;color_selector = elm_win_add(window-&gt;elm_window, &quot;color selector&quot;, ELM_WIN_DIALOG_BASIC);

You probably need to do some cleanup when the color picker window is destroyed or it may lead to problems. Try the following:
1. Open http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_input_type_color
2. Click the color input element to show the color picker
3. Close the color picker window by clicking the &apos;x&apos; button (NOT by clicking OK button)
4. Click the &quot;Submit&quot; button

CRASH:
CRI&lt;2046&gt;:evas_main main.c:97 evas_debug_magic_null() Input object is zero&apos;ed out (maybe a freed object or zero-filled RAM)!
ASSERTION FAILED: m_colorChooser
/home/chris/devel/WebKit/Source/WebKit2/UIProcess/WebPageProxy.cpp(2965) : void WebKit::WebPageProxy::endColorChooser()
1   0x7ff0113fa726 WebKit::WebPageProxy::endColorChooser()
2   0x7ff01160f370 void CoreIPC::callMemberFunction&lt;WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)()&gt;(CoreIPC::Arguments0 const&amp;, WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)())
3   0x7ff01160b97a void CoreIPC::handleMessage&lt;Messages::WebPageProxy::EndColorChooser, WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)()&gt;(CoreIPC::MessageDecoder&amp;, WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)())
4   0x7ff0116058e0 WebKit::WebPageProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
5   0x7ff01131bb7d CoreIPC::MessageReceiverMap::dispatchMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
6   0x7ff0113316b5 WebKit::ChildProcessProxy::dispatchMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
7   0x7ff011438b5f WebKit::WebProcessProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
8   0x7ff011308e2e CoreIPC::Connection::dispatchMessage(CoreIPC::MessageDecoder&amp;)
9   0x7ff011308f0e CoreIPC::Connection::dispatchMessage(WTF::PassOwnPtr&lt;CoreIPC::MessageDecoder&gt;)
10  0x7ff01130911f CoreIPC::Connection::dispatchOneMessage()
11  0x7ff01131aeb7 WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;::operator()(CoreIPC::Connection*)
12  0x7ff01131aa3c WTF::BoundFunctionImpl&lt;WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;, void (CoreIPC::Connection*)&gt;::operator()()
13  0x7ff0115413d4 WTF::Function&lt;void ()&gt;::operator()() const
14  0x7ff00cb7a825 WebCore::RunLoop::performWork()
15  0x7ff00d78ab1c WebCore::RunLoop::wakeUpEvent(void*, void*, unsigned int)

&gt; Tools/MiniBrowser/efl/main.c:671
&gt; +    elm_policy_set(ELM_POLICY_QUIT, ELM_POLICY_QUIT_LAST_WINDOW_CLOSED);

Does not seem related to color picker and should go somewhere else if it is really needed.

&gt; Tools/MiniBrowser/efl/main.c:673
&gt; +    bx = elm_box_add(window-&gt;color_selector);

bx -&gt; box ?

&gt; Tools/MiniBrowser/efl/main.c:679
&gt; +    fr = elm_frame_add(window-&gt;color_selector);

fr -&gt; frame ?

&gt; Tools/MiniBrowser/efl/main.c:703
&gt; +    bt = elm_button_add(window-&gt;color_selector);

bt -&gt; ok_button ?

&gt; Tools/MiniBrowser/efl/main.c:704
&gt; +    elm_object_text_set(bt, &quot;OK&quot;);

It would be nice to have a Cancel button as well.

&gt; Tools/MiniBrowser/efl/main.c:709
&gt; +    evas_object_smart_callback_add(bt, &quot;clicked&quot;, on_colorpicker_ok_clicked, cp_data);

You can probably pass the window pointer as cp_data.

&gt; Tools/MiniBrowser/efl/main.c:710
&gt; +    evas_object_smart_callback_add(color_picker_obj, &quot;changed&quot;, on_color_changed, cp_data);

You could simply pass the &quot;rect&quot; as userData instead of cp_data.

&gt; Tools/MiniBrowser/efl/main.c:711
&gt; +    evas_object_smart_callback_add(color_picker_obj, &quot;color,item,selected&quot;, on_colorpalette_clicked, cp_data);

Ditto.

&gt; Tools/MiniBrowser/efl/main.c:712
&gt; +    evas_object_smart_callback_add(color_picker_obj, &quot;color,item,longpressed&quot;, on_colorpalette_longpressed, cp_data);

Actually, I would completely remove handling for longpress. I don&apos;t think this is really useful here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891132</commentid>
    <comment_count>13</comment_count>
      <attachid>202262</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-19 23:54:12 -0700</bug_when>
    <thetext>Created attachment 202262
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891134</commentid>
    <comment_count>14</comment_count>
      <attachid>202262</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-20 00:05:51 -0700</bug_when>
    <thetext>Comment on attachment 202262
Patch

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

&gt; Tools/MiniBrowser/efl/main.c:110
&gt; +        Ewk_Color_Picker *color_picker;

How about &quot;ewk_picker&quot; for clarity?

&gt; Tools/MiniBrowser/efl/main.c:111
&gt; +        Evas_Object *color_selector;

How about &quot;elm_picker&quot; for clarity?

&gt; Tools/MiniBrowser/efl/main.c:112
&gt; +        Evas_Object *rect_data;

I don&apos;t believe the rect_data needs to be part of the struct.

&gt; Tools/MiniBrowser/efl/main.c:612
&gt; +on_colorpalette_clicked(void *data, Evas_Object *obj, void *event_info)

I believe Gyuyoung had some naming suggestions that you did not take into consideration? (color_palette?)

&gt; Tools/MiniBrowser/efl/main.c:627
&gt; +    evas_object_color_get(window-&gt;color_selector.rect_data, &amp;r, &amp;g, &amp;b, &amp;a);

You can get the color using elm_colorselector_color_get(window-&gt;color_selector, ...) instead right?

&gt; Tools/MiniBrowser/efl/main.c:637
&gt; +    ewk_color_picker_color_get(window-&gt;color_selector.color_picker, &amp;r, &amp;g, &amp;b, &amp;a);

I think this shows we need a new EWK API to cancel.. Would you mind adding that API in a separate patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891136</commentid>
    <comment_count>15</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-20 00:57:29 -0700</bug_when>
    <thetext>Also note that the crash I reported is still reproduceable with your latest patch.

I also think it would be much nicer if the OK / Cancel buttons were side by side instead of on top of each other.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891137</commentid>
    <comment_count>16</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-20 01:07:45 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; Also note that the crash I reported is still reproduceable with your latest patch.
&gt; 
&gt; I also think it would be much nicer if the OK / Cancel buttons were side by side instead of on top of each other.

To fix the crash, my guess is that you need to handle the &quot;delete,request&quot; smart callback on your new elm window and cancel color picking.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891404</commentid>
    <comment_count>17</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-20 17:15:38 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; (From update of attachment 202262 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202262&amp;action=review

&gt; &gt; Tools/MiniBrowser/efl/main.c:112
&gt; &gt; +        Evas_Object *rect_data;
&gt; 
&gt; I don&apos;t believe the rect_data needs to be part of the struct.
&gt; 

When we click the ok_button, we have two choice passing data on your advice.
 1. window
 2. rect
The color value is stored in rect because we pass the rect to change the color.
So, in first case, we don&apos;t get the color from the rect.
And in second case, it is possible we get the color, but we don&apos;t set the color to window-&gt;color_selector.elm_selector.
What do you think about it?


&gt; 
&gt; I think this shows we need a new EWK API to cancel.. Would you mind adding that API in a separate patch?

I&apos;ll think about it after solving this bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891498</commentid>
    <comment_count>18</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-20 18:49:24 -0700</bug_when>
    <thetext>
&gt; 
&gt; When we click the ok_button, we have two choice passing data on your advice.
&gt;  1. window
&gt;  2. rect
&gt; The color value is stored in rect because we pass the rect to change the color.
&gt; So, in first case, we don&apos;t get the color from the rect.
&gt; And in second case, it is possible we get the color, but we don&apos;t set the color to window-&gt;color_selector.elm_selector.
&gt; What do you think about it?
&gt; 

Oh, I didn&apos;t think of that. I think It would be solved if I pass the window in callback func of on_color_changed().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891500</commentid>
    <comment_count>19</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-20 18:56:26 -0700</bug_when>
    <thetext>i&apos;m sorry it is incorrect upper comment #18.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891548</commentid>
    <comment_count>20</comment_count>
      <attachid>202375</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-20 20:54:13 -0700</bug_when>
    <thetext>Created attachment 202375
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891550</commentid>
    <comment_count>21</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-20 20:59:38 -0700</bug_when>
    <thetext>I&apos;m sorry about replying now.
 Jinwoo Song, I heard that the EFL does not support modal popup.

 Gyuyoung Kim, I tried to implement the color picker without frame but i looked at some problem that were color afterimage during translocating color bar and does not take colorpicker&apos;s position.
 So, I thought the EFL is unstable and I decided using the frame.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891551</commentid>
    <comment_count>22</comment_count>
      <attachid>202375</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-20 21:00:50 -0700</bug_when>
    <thetext>Comment on attachment 202375
Patch

a</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891552</commentid>
    <comment_count>23</comment_count>
      <attachid>202375</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-20 21:01:32 -0700</bug_when>
    <thetext>Comment on attachment 202375
Patch

This patch has still rect_data.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891553</commentid>
    <comment_count>24</comment_count>
      <attachid>202376</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-20 21:20:12 -0700</bug_when>
    <thetext>Created attachment 202376
color picker screen shot.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891557</commentid>
    <comment_count>25</comment_count>
      <attachid>202375</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-05-20 21:40:12 -0700</bug_when>
    <thetext>Comment on attachment 202375
Patch

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

&gt; Tools/MiniBrowser/efl/main.c:622
&gt; +on_colorpicker_ok_clicked(void *data, Evas_Object *obj, void *event_info)

It seems to me *color_picker* is better than colorpicker in EFL side.

&gt; Tools/MiniBrowser/efl/main.c:626
&gt; +    Browser_Window* window = (Browser_Window *)data;

Wrong * place.

&gt; Tools/MiniBrowser/efl/main.c:636
&gt; +    Browser_Window* window = (Browser_Window *)data;

ditto

&gt; Tools/MiniBrowser/efl/main.c:662
&gt; +

It would be good if you add comments for each UI component as on_fullscreen_enter().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891571</commentid>
    <comment_count>26</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-20 22:53:06 -0700</bug_when>
    <thetext>(In reply to comment #17)
&gt; (In reply to comment #14)
&gt; &gt; (From update of attachment 202262 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202262&amp;action=review
&gt; 
&gt; &gt; &gt; Tools/MiniBrowser/efl/main.c:112
&gt; &gt; &gt; +        Evas_Object *rect_data;
&gt; &gt; 
&gt; &gt; I don&apos;t believe the rect_data needs to be part of the struct.
&gt; &gt; 
&gt; 
&gt; When we click the ok_button, we have two choice passing data on your advice.
&gt;  1. window
&gt;  2. rect
&gt; The color value is stored in rect because we pass the rect to change the color.
&gt; So, in first case, we don&apos;t get the color from the rect.
&gt; And in second case, it is possible we get the color, but we don&apos;t set the color to window-&gt;color_selector.elm_selector.
&gt; What do you think about it?

I already proposed (several times) that we pass the window and get the color from the elm_selector instead of the rect. If this is not possible, please explain why.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891641</commentid>
    <comment_count>27</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-21 01:30:17 -0700</bug_when>
    <thetext>(In reply to comment #26)
&gt; (In reply to comment #17)
&gt; &gt; (In reply to comment #14)
&gt; &gt; &gt; (From update of attachment 202262 [details] [details] [details])
&gt; &gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202262&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; &gt; Tools/MiniBrowser/efl/main.c:112
&gt; &gt; &gt; &gt; +        Evas_Object *rect_data;
&gt; &gt; &gt; 
&gt; &gt; &gt; I don&apos;t believe the rect_data needs to be part of the struct.
&gt; &gt; &gt; 
&gt; &gt; 
&gt; &gt; When we click the ok_button, we have two choice passing data on your advice.
&gt; &gt;  1. window
&gt; &gt;  2. rect
&gt; &gt; The color value is stored in rect because we pass the rect to change the color.
&gt; &gt; So, in first case, we don&apos;t get the color from the rect.
&gt; &gt; And in second case, it is possible we get the color, but we don&apos;t set the color to window-&gt;color_selector.elm_selector.
&gt; &gt; What do you think about it?
&gt; 
&gt; I already proposed (several times) that we pass the window and get the color from the elm_selector instead of the rect. If this is not possible, please explain why.

I get it now. I mean it includes rect view for showing color.
If there is not rect view it is possible.
But I think the color picker should have view of color.
I wanna hear your opinion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891652</commentid>
    <comment_count>28</comment_count>
      <attachid>202262</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-21 02:05:40 -0700</bug_when>
    <thetext>Comment on attachment 202262
Patch

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

&gt;&gt;&gt;&gt;&gt; Tools/MiniBrowser/efl/main.c:112
&gt;&gt;&gt;&gt;&gt; +        Evas_Object *rect_data;
&gt;&gt;&gt;&gt; 
&gt;&gt;&gt;&gt; I don&apos;t believe the rect_data needs to be part of the struct.
&gt;&gt;&gt; 
&gt;&gt;&gt; When we click the ok_button, we have two choice passing data on your advice.
&gt;&gt;&gt;  1. window
&gt;&gt;&gt;  2. rect
&gt;&gt;&gt; The color value is stored in rect because we pass the rect to change the color.
&gt;&gt;&gt; So, in first case, we don&apos;t get the color from the rect.
&gt;&gt;&gt; And in second case, it is possible we get the color, but we don&apos;t set the color to window-&gt;color_selector.elm_selector.
&gt;&gt;&gt; What do you think about it?
&gt;&gt; 
&gt;&gt; I already proposed (several times) that we pass the window and get the color from the elm_selector instead of the rect. If this is not possible, please explain why.
&gt; 
&gt; I get it now. I mean it includes rect view for showing color.
&gt; If there is not rect view it is possible.
&gt; But I think the color picker should have view of color.
&gt; I wanna hear your opinion.

Yes, of course, keeping the rect in the color picker window to visualize the color is fine. My point is merely that rect_data does not need to be part of the color_selector struct because you don&apos;t need to use it in the on_colorpicker_ok_clicked callback.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891698</commentid>
    <comment_count>29</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-21 03:58:47 -0700</bug_when>
    <thetext>(In reply to comment #28)
&gt; (From update of attachment 202262 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202262&amp;action=review
&gt; 
&gt; &gt;&gt;&gt;&gt;&gt; Tools/MiniBrowser/efl/main.c:112
&gt; &gt;&gt;&gt;&gt;&gt; +        Evas_Object *rect_data;
&gt; &gt;&gt;&gt;&gt; 
&gt; &gt;&gt;&gt;&gt; I don&apos;t believe the rect_data needs to be part of the struct.
&gt; &gt;&gt;&gt; 
&gt; &gt;&gt;&gt; When we click the ok_button, we have two choice passing data on your advice.
&gt; &gt;&gt;&gt;  1. window
&gt; &gt;&gt;&gt;  2. rect
&gt; &gt;&gt;&gt; The color value is stored in rect because we pass the rect to change the color.
&gt; &gt;&gt;&gt; So, in first case, we don&apos;t get the color from the rect.
&gt; &gt;&gt;&gt; And in second case, it is possible we get the color, but we don&apos;t set the color to window-&gt;color_selector.elm_selector.
&gt; &gt;&gt;&gt; What do you think about it?
&gt; &gt;&gt; 
&gt; &gt;&gt; I already proposed (several times) that we pass the window and get the color from the elm_selector instead of the rect. If this is not possible, please explain why.
&gt; &gt; 
&gt; &gt; I get it now. I mean it includes rect view for showing color.
&gt; &gt; If there is not rect view it is possible.
&gt; &gt; But I think the color picker should have view of color.
&gt; &gt; I wanna hear your opinion.
&gt; 
&gt; Yes, of course, keeping the rect in the color picker window to visualize the color is fine. My point is merely that rect_data does not need to be part of the color_selector struct because you don&apos;t need to use it in the on_colorpicker_ok_clicked callback.

I understand it.
I use the rect_data to visualize the color. A changed color is stored in rect_data since I delivery the rect in on_color_changed() and on_color_palette_clicked(). As a result, I need to get a changed color from rect_data.
But If you wanna delete the rect_data, I will.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891699</commentid>
    <comment_count>30</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-21 04:04:59 -0700</bug_when>
    <thetext>If I delete the rect_data, a rect view would to be removed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>891701</commentid>
    <comment_count>31</comment_count>
      <attachid>202375</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-21 04:13:32 -0700</bug_when>
    <thetext>Comment on attachment 202375
Patch

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

You say you understand but I don&apos;t think you do (because the rect would stay in the new window, just be removed from the struct), here is what I mean:

&gt; Tools/MiniBrowser/efl/main.c:112
&gt; +        Evas_Object *rect_data;

Remove this struct member.

&gt; Tools/MiniBrowser/efl/main.c:627
&gt; +    evas_object_color_get(window-&gt;color_selector.rect_data, &amp;r, &amp;g, &amp;b, &amp;a);

Replace with: elm_colorselector_color_get(window-&gt;color_selector.elm_picker, &amp;r, &amp;g, &amp;b, &amp;a);

&gt; Tools/MiniBrowser/efl/main.c:680
&gt; +    window-&gt;color_selector.rect_data = rect;

Remove this assignment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892080</commentid>
    <comment_count>32</comment_count>
      <attachid>202488</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-21 18:50:55 -0700</bug_when>
    <thetext>Created attachment 202488
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892081</commentid>
    <comment_count>33</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-21 18:55:09 -0700</bug_when>
    <thetext>I fixed it.
 But, I didn&apos;t implement that the rect view was changed whenever a color bar was translocated since I didn&apos;t know to access the rect through window.
 In on_color_changed(), I used 
elm_colorselector_color_set(window-&gt;color_selector.elm_selector, r, g, b, a) to change the rect (remove it this patch). And then I encountered 
 ERR&lt;14891&gt;:elementary elm_widget.c:3563 elm_widget_type_check() Passing Object: 0x1d0a640 in function: elm_colorselector_color_set, of type: &apos;elm_win&apos; when expecting type: &apos;elm_colorselector&apos;

It is normally operated except this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892082</commentid>
    <comment_count>34</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-21 19:00:41 -0700</bug_when>
    <thetext>(In reply to comment #25)
&gt; (From update of attachment 202375 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202375&amp;action=review
&gt; 
&gt; &gt; Tools/MiniBrowser/efl/main.c:622
&gt; &gt; +on_colorpicker_ok_clicked(void *data, Evas_Object *obj, void *event_info)
&gt; 
&gt; It seems to me *color_picker* is better than colorpicker in EFL side.
&gt; 
Modify *colorpicker* in every function name relate to color picker. 

&gt; &gt; Tools/MiniBrowser/efl/main.c:662
&gt; &gt; +
&gt; 
&gt; It would be good if you add comments for each UI component as on_fullscreen_enter().

I just simply add comments. Is it correct?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892128</commentid>
    <comment_count>35</comment_count>
      <attachid>202488</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-21 22:51:40 -0700</bug_when>
    <thetext>Comment on attachment 202488
Patch

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

&gt; Tools/MiniBrowser/efl/main.c:111
&gt; +        Evas_Object *elm_selector;

inconsistent naming, why not call it elm_picker?

&gt; Tools/MiniBrowser/efl/main.c:608
&gt; +    evas_object_color_set(window-&gt;color_selector.elm_selector, r, g, b, a);

You&apos;re supposed to set the rect color here, not the elm_selector&apos;s.

&gt; Tools/MiniBrowser/efl/main.c:619
&gt; +    evas_object_color_set(window-&gt;color_selector.elm_selector, r, g, b, a);

ditto.

&gt; Tools/MiniBrowser/efl/main.c:716
&gt; +    evas_object_smart_callback_add(color_picker_obj, &quot;changed&quot;, on_color_changed, window);

You&apos;re supposed to pass rect here, not window.

&gt; Tools/MiniBrowser/efl/main.c:717
&gt; +    evas_object_smart_callback_add(color_picker_obj, &quot;color,item,selected&quot;, on_color_palette_clicked, window);

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892139</commentid>
    <comment_count>36</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-21 23:27:12 -0700</bug_when>
    <thetext>(In reply to comment #35)
&gt; (From update of attachment 202488 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202488&amp;action=review
&gt; 
&gt; &gt; Tools/MiniBrowser/efl/main.c:111
&gt; &gt; +        Evas_Object *elm_selector;
&gt; 
&gt; inconsistent naming, why not call it elm_picker?
&gt; 
&gt; &gt; Tools/MiniBrowser/efl/main.c:608
&gt; &gt; +    evas_object_color_set(window-&gt;color_selector.elm_selector, r, g, b, a);
&gt; 
&gt; You&apos;re supposed to set the rect color here, not the elm_selector&apos;s.
&gt; 
&gt; &gt; Tools/MiniBrowser/efl/main.c:619
&gt; &gt; +    evas_object_color_set(window-&gt;color_selector.elm_selector, r, g, b, a);
&gt; 
&gt; ditto.
&gt; 
&gt; &gt; Tools/MiniBrowser/efl/main.c:716
&gt; &gt; +    evas_object_smart_callback_add(color_picker_obj, &quot;changed&quot;, on_color_changed, window);
&gt; 
&gt; You&apos;re supposed to pass rect here, not window.
&gt; 
&gt; &gt; Tools/MiniBrowser/efl/main.c:717
&gt; &gt; +    evas_object_smart_callback_add(color_picker_obj, &quot;color,item,selected&quot;, on_color_palette_clicked, window);
&gt; 
&gt; Ditto.

I fixed it on your review. But, when I clicked the ok_button I have a problem.
It is a 
ASSERTION FAILED: value == sanitizeValue(value) || sanitizeValue(value).isEmpty()
/home/jstae/WebKit/Source/WebCore/html/HTMLInputElement.cpp(1093) : void WebCore::HTMLInputElement::setValueFromRenderer(const WTF::String&amp;)
1   0x7f3cb932e9ab WebCore::HTMLInputElement::setValueFromRenderer(WTF::String const&amp;)
2   0x7f3cb92dcec0 WebCore::ColorInputType::didChooseColor(WebCore::Color const&amp;)
3   0x7f3cbe2e3326 WebKit::WebColorChooser::didChooseColor(WebCore::Color const&amp;)
4   0x7f3cbe3225dc WebKit::WebPage::didChooseColor(WebCore::Color const&amp;)
5   0x7f3cbe3ee833 void CoreIPC::callMemberFunction&lt;WebKit::WebPage, void (WebKit::WebPage::*)(WebCore::Color const&amp;), WebCore::Color&gt;(CoreIPC::Arguments1&lt;WebCore::Color&gt; const&amp;, WebKit::WebPage*, void (WebKit::WebPage::*)(WebCore::Color const&amp;))
6   0x7f3cbe3ebb9a void CoreIPC::handleMessage&lt;Messages::WebPage::DidChooseColor, WebKit::WebPage, void (WebKit::WebPage::*)(WebCore::Color const&amp;)&gt;(CoreIPC::MessageDecoder&amp;, WebKit::WebPage*, void (WebKit::WebPage::*)(WebCore::Color const&amp;))
7   0x7f3cbe3e6755 WebKit::WebPage::didReceiveWebPageMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
8   0x7f3cbe3234ba WebKit::WebPage::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
9   0x7f3cbe0e02fd CoreIPC::MessageReceiverMap::dispatchMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
10  0x7f3cbe24b081 WebKit::WebProcess::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
11  0x7f3cbe0cdc6e CoreIPC::Connection::dispatchMessage(CoreIPC::MessageDecoder&amp;)
12  0x7f3cbe0cdd4e CoreIPC::Connection::dispatchMessage(WTF::PassOwnPtr&lt;CoreIPC::MessageDecoder&gt;)
13  0x7f3cbe0cdf5f CoreIPC::Connection::dispatchOneMessage()
14  0x7f3cbe0df639 WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;::operator()(CoreIPC::Connection*)
15  0x7f3cbe0df1be WTF::BoundFunctionImpl&lt;WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;, void (CoreIPC::Connection*)&gt;::operator()()
16  0x7f3cbe30099e WTF::Function&lt;void ()&gt;::operator()() const
17  0x7f3cb973a3fd WebCore::RunLoop::performWork()
18  0x7f3cba33d2be WebCore::RunLoop::wakeUpEvent(void*, void*, unsigned int)
19  0x7f3cb61a88c7
20  0x7f3cb61a78e1
21  0x7f3cb61a7d57 ecore_main_loop_begin
22  0x7f3cba33d24f WebCore::RunLoop::run()
23  0x7f3cbe3abdc7 WebProcessMainEfl
24  0x40082c main
25  0x7f3cbd3c576d __libc_start_main
26  0x400729
ERR&lt;15965&gt;:elementary els_tooltip.c:906 elm_object_tooltip_unset() Object does not have tooltip: obj.

I passed the window in on_color_picker_ok_clicked() callback and I get a color by evas_object_color_get(window-&gt;color_selector.elm_picker,...).
What is wrong with me?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892140</commentid>
    <comment_count>37</comment_count>
      <attachid>202488</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-21 23:41:35 -0700</bug_when>
    <thetext>Comment on attachment 202488
Patch

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

&gt; Tools/MiniBrowser/efl/main.c:628
&gt; +    evas_object_color_get(window-&gt;color_selector.elm_selector, &amp;r, &amp;g, &amp;b, &amp;a);

Should use elm_colorselector_color_get(), not evas_object_color_get().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892149</commentid>
    <comment_count>38</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-21 23:58:05 -0700</bug_when>
    <thetext>(In reply to comment #37)
&gt; (From update of attachment 202488 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202488&amp;action=review
&gt; 
&gt; &gt; Tools/MiniBrowser/efl/main.c:628
&gt; &gt; +    evas_object_color_get(window-&gt;color_selector.elm_selector, &amp;r, &amp;g, &amp;b, &amp;a);
&gt; 
&gt; Should use elm_colorselector_color_get(), not evas_object_color_get().

I use elm_colorselector_color_get(window-&gt;color_selector.elm_selector,,,). But It is error.

ERR&lt;16131&gt;:elementary elm_widget.c:3563 elm_widget_type_check() Passing Object: 0x1765860 in function: elm_colorselector_color_get, of type: &apos;elm_win&apos; when expecting type: &apos;elm_colorselector&apos;
ASSERTION FAILED: value == sanitizeValue(value) || sanitizeValue(value).isEmpty()
/home/jstae/WebKit/Source/WebCore/html/HTMLInputElement.cpp(1093) : void WebCore::HTMLInputElement::setValueFromRenderer(const WTF::String&amp;)
1   0x7f2a80b9b9ab WebCore::HTMLInputElement::setValueFromRenderer(WTF::String const&amp;)
2   0x7f2a80b49ec0 WebCore::ColorInputType::didChooseColor(WebCore::Color const&amp;)
3   0x7f2a85b50326 WebKit::WebColorChooser::didChooseColor(WebCore::Color const&amp;)
4   0x7f2a85b8f5dc WebKit::WebPage::didChooseColor(WebCore::Color const&amp;)
5   0x7f2a85c5b833 void CoreIPC::callMemberFunction&lt;WebKit::WebPage, void (WebKit::WebPage::*)(WebCore::Color const&amp;), WebCore::Color&gt;(CoreIPC::Arguments1&lt;WebCore::Color&gt; const&amp;, WebKit::WebPage*, void (WebKit::WebPage::*)(WebCore::Color const&amp;))
6   0x7f2a85c58b9a void CoreIPC::handleMessage&lt;Messages::WebPage::DidChooseColor, WebKit::WebPage, void (WebKit::WebPage::*)(WebCore::Color const&amp;)&gt;(CoreIPC::MessageDecoder&amp;, WebKit::WebPage*, void (WebKit::WebPage::*)(WebCore::Color const&amp;))
7   0x7f2a85c53755 WebKit::WebPage::didReceiveWebPageMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
8   0x7f2a85b904ba WebKit::WebPage::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
9   0x7f2a8594d2fd CoreIPC::MessageReceiverMap::dispatchMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
10  0x7f2a85ab8081 WebKit::WebProcess::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
11  0x7f2a8593ac6e CoreIPC::Connection::dispatchMessage(CoreIPC::MessageDecoder&amp;)
12  0x7f2a8593ad4e CoreIPC::Connection::dispatchMessage(WTF::PassOwnPtr&lt;CoreIPC::MessageDecoder&gt;)
13  0x7f2a8593af5f CoreIPC::Connection::dispatchOneMessage()
14  0x7f2a8594c639 WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;::operator()(CoreIPC::Connection*)
15  0x7f2a8594c1be WTF::BoundFunctionImpl&lt;WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;, void (CoreIPC::Connection*)&gt;::operator()()
16  0x7f2a85b6d99e WTF::Function&lt;void ()&gt;::operator()() const
17  0x7f2a80fa73fd WebCore::RunLoop::performWork()
18  0x7f2a81baa2be WebCore::RunLoop::wakeUpEvent(void*, void*, unsigned int)
19  0x7f2a7da158c7
20  0x7f2a7da148e1
21  0x7f2a7da14d57 ecore_main_loop_begin
22  0x7f2a81baa24f WebCore::RunLoop::run()
23  0x7f2a85c18dc7 WebProcessMainEfl
24  0x40082c main
25  0x7f2a84c3276d __libc_start_main
26  0x400729
ERR&lt;16131&gt;:elementary els_tooltip.c:906 elm_object_tooltip_unset() Object does not have tooltip: obj</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892153</commentid>
    <comment_count>39</comment_count>
      <attachid>202488</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-22 00:10:52 -0700</bug_when>
    <thetext>Comment on attachment 202488
Patch

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

&gt; Tools/MiniBrowser/efl/main.c:656
&gt; +    window-&gt;color_selector.elm_selector = elm_win_add(window-&gt;elm_window, &quot;color selector&quot;, ELM_WIN_BASIC);

You&apos;re assigning an elm_win to elm_selector...

&gt; Tools/MiniBrowser/efl/main.c:692
&gt; +    color_picker_obj = elm_colorselector_add(window-&gt;color_selector.elm_selector);

This one should be assigned to elm_selector</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892187</commentid>
    <comment_count>40</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-22 02:28:18 -0700</bug_when>
    <thetext>(In reply to comment #39)
&gt; (From update of attachment 202488 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202488&amp;action=review
&gt; 
&gt; &gt; Tools/MiniBrowser/efl/main.c:656
&gt; &gt; +    window-&gt;color_selector.elm_selector = elm_win_add(window-&gt;elm_window, &quot;color selector&quot;, ELM_WIN_BASIC);
&gt; 
&gt; You&apos;re assigning an elm_win to elm_selector...
&gt; 
&gt; &gt; Tools/MiniBrowser/efl/main.c:692
&gt; &gt; +    color_picker_obj = elm_colorselector_add(window-&gt;color_selector.elm_selector);
&gt; 
&gt; This one should be assigned to elm_selector

I&apos;m really sorry I couldn&apos;t understand because of lack of ability.

When I removed the rect view (color view), I implemented it.
This patch is it. (I didn&apos;t remove the rect object yet.)
If the on_color_chagned() and on_color_palette_clicked() pass the rect of void and color_picker_obj of Evas_object, I would set the color to rect.
So, when I click the ok_button, I have to get a data of rect. (To change the color view)

The callback of ok_button pass the window(has ewk_color_picker, evas_object).
In the case, Neither elm_colorselector_color_get() or evas_object_color_get() has a error.

You said I could access the rect because window-&gt;color_selector.elm_selector(elm_picker). But I couldn&apos;t know the way of accessing the rect object through color_selector_elm_selector.

As a result, If I remove the color view (rect object), I would think there is no problem.

ps) If you have a spare time, i think you better execute the code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892196</commentid>
    <comment_count>41</comment_count>
      <attachid>202488</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-22 02:39:45 -0700</bug_when>
    <thetext>Comment on attachment 202488
Patch

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

&gt;&gt;&gt; Tools/MiniBrowser/efl/main.c:656
&gt;&gt;&gt; +    window-&gt;color_selector.elm_selector = elm_win_add(window-&gt;elm_window, &quot;color selector&quot;, ELM_WIN_BASIC);
&gt;&gt; 
&gt;&gt; You&apos;re assigning an elm_win to elm_selector...
&gt; 
&gt; I&apos;m really sorry I couldn&apos;t understand because of lack of ability.
&gt; 
&gt; When I removed the rect view (color view), I implemented it.
&gt; This patch is it. (I didn&apos;t remove the rect object yet.)
&gt; If the on_color_chagned() and on_color_palette_clicked() pass the rect of void and color_picker_obj of Evas_object, I would set the color to rect.
&gt; So, when I click the ok_button, I have to get a data of rect. (To change the color view)
&gt; 
&gt; The callback of ok_button pass the window(has ewk_color_picker, evas_object).
&gt; In the case, Neither elm_colorselector_color_get() or evas_object_color_get() has a error.
&gt; 
&gt; You said I could access the rect because window-&gt;color_selector.elm_selector(elm_picker). But I couldn&apos;t know the way of accessing the rect object through color_selector_elm_selector.
&gt; 
&gt; As a result, If I remove the color view (rect object), I would think there is no problem.
&gt; 
&gt; ps) If you have a spare time, i think you better execute the code.

- Please keep the color view in the new elm window, it looks much better.
- You do *not* need to get the color from the rect in on_color_picker_ok_clicked(). You can get the color from the elm_picker using elm_colorselector_color_get(). The color of the colorselector is the *same* as the color of the rect because of your code in on_color_changed(). You take the color from the elm_picker and assign it to the rect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892634</commentid>
    <comment_count>42</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-22 19:18:53 -0700</bug_when>
    <thetext>(In reply to comment #41)
&gt; (From update of attachment 202488 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202488&amp;action=review
&gt; 
&gt; &gt;&gt;&gt; Tools/MiniBrowser/efl/main.c:656
&gt; &gt;&gt;&gt; +    window-&gt;color_selector.elm_selector = elm_win_add(window-&gt;elm_window, &quot;color selector&quot;, ELM_WIN_BASIC);
&gt; &gt;&gt; 
&gt; &gt;&gt; You&apos;re assigning an elm_win to elm_selector...
&gt; &gt; 
&gt; &gt; I&apos;m really sorry I couldn&apos;t understand because of lack of ability.
&gt; &gt; 
&gt; &gt; When I removed the rect view (color view), I implemented it.
&gt; &gt; This patch is it. (I didn&apos;t remove the rect object yet.)
&gt; &gt; If the on_color_chagned() and on_color_palette_clicked() pass the rect of void and color_picker_obj of Evas_object, I would set the color to rect.
&gt; &gt; So, when I click the ok_button, I have to get a data of rect. (To change the color view)
&gt; &gt; 
&gt; &gt; The callback of ok_button pass the window(has ewk_color_picker, evas_object).
&gt; &gt; In the case, Neither elm_colorselector_color_get() or evas_object_color_get() has a error.
&gt; &gt; 
&gt; &gt; You said I could access the rect because window-&gt;color_selector.elm_selector(elm_picker). But I couldn&apos;t know the way of accessing the rect object through color_selector_elm_selector.
&gt; &gt; 
&gt; &gt; As a result, If I remove the color view (rect object), I would think there is no problem.
&gt; &gt; 
&gt; &gt; ps) If you have a spare time, i think you better execute the code.
&gt; 
&gt; - Please keep the color view in the new elm window, it looks much better.
&gt; - You do *not* need to get the color from the rect in on_color_picker_ok_clicked(). You can get the color from the elm_picker using elm_colorselector_color_get(). The color of the colorselector is the *same* as the color of the rect because of your code in on_color_changed(). You take the color from the elm_picker and assign it to the rect.


Situation (since it is comment #35):
 1. The rect is delivered to on_color_changed(). 
   -&gt; I could change the color view (rect object) to use evas_object_color_set(rect). It I don&apos;t do this, I couldn&apos;t change the color view (rect object).
 2. The window is delivered to on_color_picker_ok_clicked().
   -&gt; evas_object_color_get(..elm_picker)
   -&gt; elm_colorselector_color_get(..elm_picker)
     -&gt; Both of them occurred an error.
ERR&lt;16446&gt;:elementary els_tooltip.c:906 elm_object_tooltip_unset() Object does not have tooltip: obj
LEAK: 1 WebContext
and
ERR&lt;17479&gt;:elementary elm_widget.c:3563 elm_widget_type_check() Passing Object: 0x1b82390 in function: elm_colorselector_color_get, of type: &apos;elm_win&apos; when expecting type: &apos;elm_colorselector&apos;

In this situation, I will need the rect_data.

And, In Comment #41, elm_picker differ from colorselector (elm_colorselector_add..).


Also, I couldn&apos;t understand a Comment #39.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>892662</commentid>
    <comment_count>43</comment_count>
      <attachid>202488</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2013-05-22 21:44:39 -0700</bug_when>
    <thetext>Comment on attachment 202488
Patch

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

&gt;&gt;&gt; Tools/MiniBrowser/efl/main.c:111
&gt;&gt;&gt; +        Evas_Object *elm_selector;
&gt;&gt; 
&gt;&gt; inconsistent naming, why not call it elm_picker?
&gt; 
&gt; I fixed it on your review. But, when I clicked the ok_button I have a problem.
&gt; It is a 
&gt; ASSERTION FAILED: value == sanitizeValue(value) || sanitizeValue(value).isEmpty()
&gt; /home/jstae/WebKit/Source/WebCore/html/HTMLInputElement.cpp(1093) : void WebCore::HTMLInputElement::setValueFromRenderer(const WTF::String&amp;)
&gt; 1   0x7f3cb932e9ab WebCore::HTMLInputElement::setValueFromRenderer(WTF::String const&amp;)
&gt; 2   0x7f3cb92dcec0 WebCore::ColorInputType::didChooseColor(WebCore::Color const&amp;)
&gt; 3   0x7f3cbe2e3326 WebKit::WebColorChooser::didChooseColor(WebCore::Color const&amp;)
&gt; 4   0x7f3cbe3225dc WebKit::WebPage::didChooseColor(WebCore::Color const&amp;)
&gt; 5   0x7f3cbe3ee833 void CoreIPC::callMemberFunction&lt;WebKit::WebPage, void (WebKit::WebPage::*)(WebCore::Color const&amp;), WebCore::Color&gt;(CoreIPC::Arguments1&lt;WebCore::Color&gt; const&amp;, WebKit::WebPage*, void (WebKit::WebPage::*)(WebCore::Color const&amp;))
&gt; 6   0x7f3cbe3ebb9a void CoreIPC::handleMessage&lt;Messages::WebPage::DidChooseColor, WebKit::WebPage, void (WebKit::WebPage::*)(WebCore::Color const&amp;)&gt;(CoreIPC::MessageDecoder&amp;, WebKit::WebPage*, void (WebKit::WebPage::*)(WebCore::Color const&amp;))
&gt; 7   0x7f3cbe3e6755 WebKit::WebPage::didReceiveWebPageMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
&gt; 8   0x7f3cbe3234ba WebKit::WebPage::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
&gt; 9   0x7f3cbe0e02fd CoreIPC::MessageReceiverMap::dispatchMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
&gt; 10  0x7f3cbe24b081 WebKit::WebProcess::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
&gt; 11  0x7f3cbe0cdc6e CoreIPC::Connection::dispatchMessage(CoreIPC::MessageDecoder&amp;)
&gt; 12  0x7f3cbe0cdd4e CoreIPC::Connection::dispatchMessage(WTF::PassOwnPtr&lt;CoreIPC::MessageDecoder&gt;)
&gt; 13  0x7f3cbe0cdf5f CoreIPC::Connection::dispatchOneMessage()
&gt; 14  0x7f3cbe0df639 WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;::operator()(CoreIPC::Connection*)
&gt; 15  0x7f3cbe0df1be WTF::BoundFunctionImpl&lt;WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;, void (CoreIPC::Connection*)&gt;::operator()()
&gt; 16  0x7f3cbe30099e WTF::Function&lt;void ()&gt;::operator()() const
&gt; 17  0x7f3cb973a3fd WebCore::RunLoop::performWork()
&gt; 18  0x7f3cba33d2be WebCore::RunLoop::wakeUpEvent(void*, void*, unsigned int)
&gt; 19  0x7f3cb61a88c7
&gt; 20  0x7f3cb61a78e1
&gt; 21  0x7f3cb61a7d57 ecore_main_loop_begin
&gt; 22  0x7f3cba33d24f WebCore::RunLoop::run()
&gt; 23  0x7f3cbe3abdc7 WebProcessMainEfl
&gt; 24  0x40082c main
&gt; 25  0x7f3cbd3c576d __libc_start_main
&gt; 26  0x400729
&gt; ERR&lt;15965&gt;:elementary els_tooltip.c:906 elm_object_tooltip_unset() Object does not have tooltip: obj.
&gt; 
&gt; I passed the window in on_color_picker_ok_clicked() callback and I get a color by evas_object_color_get(window-&gt;color_selector.elm_picker,...).
&gt; What is wrong with me?

Agree with chris.

You probably keep three members.
ewk_picker to change input color.
elm_selector(bad naming.) to dismiss color picker window when we closed parent window.
elm_colorselector to follow the color which user changes.

&gt;&gt; Tools/MiniBrowser/efl/main.c:608
&gt;&gt; +    evas_object_color_set(window-&gt;color_selector.elm_selector, r, g, b, a);
&gt; 
&gt; You&apos;re supposed to set the rect color here, not the elm_selector&apos;s.

Like chris mentioned, you should receive evas object and use it here.

elm_selector is window, so this is wrong.

&gt;&gt;&gt; Tools/MiniBrowser/efl/main.c:628
&gt;&gt;&gt; +    evas_object_color_get(window-&gt;color_selector.elm_selector, &amp;r, &amp;g, &amp;b, &amp;a);
&gt;&gt; 
&gt;&gt; Should use elm_colorselector_color_get(), not evas_object_color_get().
&gt; 
&gt; I use elm_colorselector_color_get(window-&gt;color_selector.elm_selector,,,). But It is error.
&gt; 
&gt; ERR&lt;16131&gt;:elementary elm_widget.c:3563 elm_widget_type_check() Passing Object: 0x1765860 in function: elm_colorselector_color_get, of type: &apos;elm_win&apos; when expecting type: &apos;elm_colorselector&apos;
&gt; ASSERTION FAILED: value == sanitizeValue(value) || sanitizeValue(value).isEmpty()
&gt; /home/jstae/WebKit/Source/WebCore/html/HTMLInputElement.cpp(1093) : void WebCore::HTMLInputElement::setValueFromRenderer(const WTF::String&amp;)
&gt; 1   0x7f2a80b9b9ab WebCore::HTMLInputElement::setValueFromRenderer(WTF::String const&amp;)
&gt; 2   0x7f2a80b49ec0 WebCore::ColorInputType::didChooseColor(WebCore::Color const&amp;)
&gt; 3   0x7f2a85b50326 WebKit::WebColorChooser::didChooseColor(WebCore::Color const&amp;)
&gt; 4   0x7f2a85b8f5dc WebKit::WebPage::didChooseColor(WebCore::Color const&amp;)
&gt; 5   0x7f2a85c5b833 void CoreIPC::callMemberFunction&lt;WebKit::WebPage, void (WebKit::WebPage::*)(WebCore::Color const&amp;), WebCore::Color&gt;(CoreIPC::Arguments1&lt;WebCore::Color&gt; const&amp;, WebKit::WebPage*, void (WebKit::WebPage::*)(WebCore::Color const&amp;))
&gt; 6   0x7f2a85c58b9a void CoreIPC::handleMessage&lt;Messages::WebPage::DidChooseColor, WebKit::WebPage, void (WebKit::WebPage::*)(WebCore::Color const&amp;)&gt;(CoreIPC::MessageDecoder&amp;, WebKit::WebPage*, void (WebKit::WebPage::*)(WebCore::Color const&amp;))
&gt; 7   0x7f2a85c53755 WebKit::WebPage::didReceiveWebPageMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
&gt; 8   0x7f2a85b904ba WebKit::WebPage::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
&gt; 9   0x7f2a8594d2fd CoreIPC::MessageReceiverMap::dispatchMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
&gt; 10  0x7f2a85ab8081 WebKit::WebProcess::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
&gt; 11  0x7f2a8593ac6e CoreIPC::Connection::dispatchMessage(CoreIPC::MessageDecoder&amp;)
&gt; 12  0x7f2a8593ad4e CoreIPC::Connection::dispatchMessage(WTF::PassOwnPtr&lt;CoreIPC::MessageDecoder&gt;)
&gt; 13  0x7f2a8593af5f CoreIPC::Connection::dispatchOneMessage()
&gt; 14  0x7f2a8594c639 WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;::operator()(CoreIPC::Connection*)
&gt; 15  0x7f2a8594c1be WTF::BoundFunctionImpl&lt;WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;, void (CoreIPC::Connection*)&gt;::operator()()
&gt; 16  0x7f2a85b6d99e WTF::Function&lt;void ()&gt;::operator()() const
&gt; 17  0x7f2a80fa73fd WebCore::RunLoop::performWork()
&gt; 18  0x7f2a81baa2be WebCore::RunLoop::wakeUpEvent(void*, void*, unsigned int)
&gt; 19  0x7f2a7da158c7
&gt; 20  0x7f2a7da148e1
&gt; 21  0x7f2a7da14d57 ecore_main_loop_begin
&gt; 22  0x7f2a81baa24f WebCore::RunLoop::run()
&gt; 23  0x7f2a85c18dc7 WebProcessMainEfl
&gt; 24  0x40082c main
&gt; 25  0x7f2a84c3276d __libc_start_main
&gt; 26  0x400729
&gt; ERR&lt;16131&gt;:elementary els_tooltip.c:906 elm_object_tooltip_unset() Object does not have tooltip: obj

I agree with chris. So you&apos;d better to add elm_colorselector in color_selector structure and call elm_colorselector_color_set(window-&gt;color_selector.elm_colorselector)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893088</commentid>
    <comment_count>44</comment_count>
      <attachid>202753</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-23 17:01:26 -0700</bug_when>
    <thetext>Created attachment 202753
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893097</commentid>
    <comment_count>45</comment_count>
      <attachid>202753</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2013-05-23 18:47:06 -0700</bug_when>
    <thetext>Comment on attachment 202753
Patch

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

Good, quite better than before.

&gt; Tools/MiniBrowser/efl/main.c:659
&gt; +    window-&gt;color_selector.elm_selector_window = elm_win_add(window-&gt;elm_window, &quot;color selector&quot;, ELM_WIN_BASIC);

Shouldn&apos;t we add delete,request signal for this?

&gt; Tools/MiniBrowser/efl/main.c:667
&gt; +    elm_win_resize_object_add(window-&gt;color_selector.elm_selector_window, box);

hint looks wrong.
Because box follow elm_selector_window, you&apos;d better to give EVAS_HINT_EXPAND instead of 0.9

&gt; Tools/MiniBrowser/efl/main.c:672
&gt; +    evas_object_size_hint_align_set(rect_frame, EVAS_HINT_FILL, EVAS_HINT_FILL);

Please check these hints also.

&gt; Tools/MiniBrowser/efl/main.c:697
&gt; +    evas_object_size_hint_weight_set(button_box, EVAS_HINT_EXPAND, 0.1);

Ditto.
I think that min size hint looks better for here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893114</commentid>
    <comment_count>46</comment_count>
      <attachid>202759</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-23 20:57:00 -0700</bug_when>
    <thetext>Created attachment 202759
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893117</commentid>
    <comment_count>47</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-23 21:00:05 -0700</bug_when>
    <thetext>(In reply to comment #45)
&gt; (From update of attachment 202753 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202753&amp;action=review
&gt; 
&gt; Good, quite better than before.
&gt; 
&gt; &gt; Tools/MiniBrowser/efl/main.c:659
&gt; &gt; +    window-&gt;color_selector.elm_selector_window = elm_win_add(window-&gt;elm_window, &quot;color selector&quot;, ELM_WIN_BASIC);
&gt; 
&gt; Shouldn&apos;t we add delete,request signal for this?
&gt; 
I couldn&apos;t know what to do.
When I used win_auto_del(), I encountered error.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893138</commentid>
    <comment_count>48</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2013-05-23 22:20:49 -0700</bug_when>
    <thetext>(In reply to comment #47)
&gt; (In reply to comment #45)
&gt; &gt; (From update of attachment 202753 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202753&amp;action=review
&gt; &gt; 
&gt; &gt; Good, quite better than before.
&gt; &gt; 
&gt; &gt; &gt; Tools/MiniBrowser/efl/main.c:659
&gt; &gt; &gt; +    window-&gt;color_selector.elm_selector_window = elm_win_add(window-&gt;elm_window, &quot;color selector&quot;, ELM_WIN_BASIC);
&gt; &gt; 
&gt; &gt; Shouldn&apos;t we add delete,request signal for this?
&gt; &gt; 
&gt; I couldn&apos;t know what to do.
&gt; When I used win_auto_del(), I encountered error.

It&apos;s wrong comment. please ignore it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893143</commentid>
    <comment_count>49</comment_count>
      <attachid>202759</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2013-05-23 22:44:44 -0700</bug_when>
    <thetext>Comment on attachment 202759
Patch

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

please rebase patch, this will not be merged because of conflict.

&gt; Tools/MiniBrowser/efl/main.c:608
&gt; +    

Unnecessary spaces.

&gt; Tools/MiniBrowser/efl/main.c:680
&gt; +    evas_object_color_set(rect, r, g, b, a);

I think you should update color selector as this color.
If not, color bar will indicates initial color.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893165</commentid>
    <comment_count>50</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-23 23:26:46 -0700</bug_when>
    <thetext>(In reply to comment #49)
&gt; (From update of attachment 202759 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202759&amp;action=review
&gt; 

&gt; &gt; Tools/MiniBrowser/efl/main.c:680
&gt; &gt; +    evas_object_color_set(rect, r, g, b, a);
&gt; 
&gt; I think you should update color selector as this color.
&gt; If not, color bar will indicates initial color.

I just change the rect for color view.
Otherwise, Whenever we execute the color picker we will see the white color rect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893166</commentid>
    <comment_count>51</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2013-05-23 23:32:01 -0700</bug_when>
    <thetext>(In reply to comment #50)
&gt; (In reply to comment #49)
&gt; &gt; (From update of attachment 202759 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202759&amp;action=review
&gt; &gt; 
&gt; 
&gt; &gt; &gt; Tools/MiniBrowser/efl/main.c:680
&gt; &gt; &gt; +    evas_object_color_set(rect, r, g, b, a);
&gt; &gt; 
&gt; &gt; I think you should update color selector as this color.
&gt; &gt; If not, color bar will indicates initial color.
&gt; 
&gt; I just change the rect for color view.
&gt; Otherwise, Whenever we execute the color picker we will see the white color rect.

Please update both rect and color selector.
You only updated rect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893167</commentid>
    <comment_count>52</comment_count>
      <attachid>202759</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-05-23 23:34:37 -0700</bug_when>
    <thetext>Comment on attachment 202759
Patch

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

&gt;&gt;&gt;&gt; Tools/MiniBrowser/efl/main.c:680
&gt;&gt;&gt;&gt; +    evas_object_color_set(rect, r, g, b, a);
&gt;&gt;&gt; 
&gt;&gt;&gt; I think you should update color selector as this color.
&gt;&gt;&gt; If not, color bar will indicates initial color.
&gt;&gt; 
&gt;&gt; I just change the rect for color view.
&gt;&gt; Otherwise, Whenever we execute the color picker we will see the white color rect.
&gt; 
&gt; Please update both rect and color selector.
&gt; You only updated rect.

+1</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>893840</commentid>
    <comment_count>53</comment_count>
      <attachid>202938</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-05-26 17:31:27 -0700</bug_when>
    <thetext>Created attachment 202938
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895798</commentid>
    <comment_count>54</comment_count>
      <attachid>202938</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2013-05-31 00:42:22 -0700</bug_when>
    <thetext>Comment on attachment 202938
Patch

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

&gt; Tools/MiniBrowser/efl/main.c:672
&gt; +

Please clear the elm_selector_window to NULL.

In addition, for the exception handling, you should release elm_selector_window when parent window is closed.
If not, we may got a crash when clicked OK/Cancel button after closed parent window(which contains webview).

&gt; Tools/MiniBrowser/efl/main.c:687
&gt; +

IMO, you should add elm_bg.
If not, elm_selector_window may have broken background.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896306</commentid>
    <comment_count>55</comment_count>
      <attachid>202938</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-02 23:15:09 -0700</bug_when>
    <thetext>Comment on attachment 202938
Patch

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

&gt;&gt; Tools/MiniBrowser/efl/main.c:687
&gt;&gt; +
&gt; 
&gt; IMO, you should add elm_bg.
&gt; If not, elm_selector_window may have broken background.

Or simply use elm_win_util_standard_add() (http://docs.enlightenment.org/stable/elementary/group__Win.html#gac75d7752662fab73d6420706ce5be996) and then we don&apos;t need to set a bg or a title. Shorter code is always nice.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896310</commentid>
    <comment_count>56</comment_count>
      <attachid>203556</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-06-03 00:00:04 -0700</bug_when>
    <thetext>Created attachment 203556
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896311</commentid>
    <comment_count>57</comment_count>
      <attachid>203556</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-03 00:03:10 -0700</bug_when>
    <thetext>Comment on attachment 203556
Patch

the new patch does not apply cleanly nor does it address the feedback.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896315</commentid>
    <comment_count>58</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-06-03 00:15:07 -0700</bug_when>
    <thetext>But, I looked at the code about elm_win_util_standard_add() and It uses elm_wind_add(NULL....) in the code.
I think we have to create the color picker as window&apos;s descendent. Do you agree?(In reply to comment #55)
&gt; (From update of attachment 202938 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202938&amp;action=review
&gt; 
&gt; &gt;&gt; Tools/MiniBrowser/efl/main.c:687
&gt; &gt;&gt; +
&gt; &gt; 
&gt; &gt; IMO, you should add elm_bg.
&gt; &gt; If not, elm_selector_window may have broken background.
&gt; 
&gt; Or simply use elm_win_util_standard_add() (http://docs.enlightenment.org/stable/elementary/group__Win.html#gac75d7752662fab73d6420706ce5be996) and then we don&apos;t need to set a bg or a title. Shorter code is always nice.

But, I looked at the code about elm_win_util_standard_add() and It uses elm_wind_add(NULL....) in the code.
I think we have to create the color picker as window&apos;s descendent. Do you agree?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896316</commentid>
    <comment_count>59</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-03 00:24:18 -0700</bug_when>
    <thetext>(In reply to comment #58)
&gt; But, I looked at the code about elm_win_util_standard_add() and It uses elm_wind_add(NULL....) in the code.
&gt; I think we have to create the color picker as window&apos;s descendent. Do you agree?(In reply to comment #55)
&gt; &gt; (From update of attachment 202938 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202938&amp;action=review
&gt; &gt; 
&gt; &gt; &gt;&gt; Tools/MiniBrowser/efl/main.c:687
&gt; &gt; &gt;&gt; +
&gt; &gt; &gt; 
&gt; &gt; &gt; IMO, you should add elm_bg.
&gt; &gt; &gt; If not, elm_selector_window may have broken background.
&gt; &gt; 
&gt; &gt; Or simply use elm_win_util_standard_add() (http://docs.enlightenment.org/stable/elementary/group__Win.html#gac75d7752662fab73d6420706ce5be996) and then we don&apos;t need to set a bg or a title. Shorter code is always nice.
&gt; 
&gt; But, I looked at the code about elm_win_util_standard_add() and It uses elm_wind_add(NULL....) in the code.
&gt; I think we have to create the color picker as window&apos;s descendent. Do you agree?

Then please comment *BEFORE* reuploading a new patch for review or at least explain why you did not take the feedback into consideration when uploading a new patch.

The fact is that you still need to add a bg for your elm_win. So please add it manually as Ryuan suggested since elm_win_util_standard_add() does not seem to be suitable.

Ryuan also had a comment about resetting a pointer to NULL which I don&apos;t think you addressed, right.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896321</commentid>
    <comment_count>60</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-06-03 00:52:40 -0700</bug_when>
    <thetext>(In reply to comment #59)
&gt; (In reply to comment #58)
&gt; &gt; But, I looked at the code about elm_win_util_standard_add() and It uses elm_wind_add(NULL....) in the code.
&gt; &gt; I think we have to create the color picker as window&apos;s descendent. Do you agree?(In reply to comment #55)
&gt; &gt; &gt; (From update of attachment 202938 [details] [details] [details])
&gt; &gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=202938&amp;action=review
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt;&gt; Tools/MiniBrowser/efl/main.c:687
&gt; &gt; &gt; &gt;&gt; +
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; IMO, you should add elm_bg.
&gt; &gt; &gt; &gt; If not, elm_selector_window may have broken background.
&gt; &gt; &gt; 
&gt; &gt; &gt; Or simply use elm_win_util_standard_add() (http://docs.enlightenment.org/stable/elementary/group__Win.html#gac75d7752662fab73d6420706ce5be996) and then we don&apos;t need to set a bg or a title. Shorter code is always nice.
&gt; &gt; 
&gt; &gt; But, I looked at the code about elm_win_util_standard_add() and It uses elm_wind_add(NULL....) in the code.
&gt; &gt; I think we have to create the color picker as window&apos;s descendent. Do you agree?
&gt; 
&gt; Then please comment *BEFORE* reuploading a new patch for review or at least explain why you did not take the feedback into consideration when uploading a new patch.
&gt; 
&gt; The fact is that you still need to add a bg for your elm_win. So please add it manually as Ryuan suggested since elm_win_util_standard_add() does not seem to be suitable.
&gt; 
&gt; Ryuan also had a comment about resetting a pointer to NULL which I don&apos;t think you addressed, right.

I&apos;m so sorry. I didn&apos;t see your comments.
So, That patch is modified your comments.
I added bg. 
And As Ryuan said, I solved the crash problem. (line 275)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896327</commentid>
    <comment_count>61</comment_count>
      <attachid>203556</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-03 01:18:48 -0700</bug_when>
    <thetext>Comment on attachment 203556
Patch

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

&gt; Tools/MiniBrowser/efl/main.c:650
&gt; +    evas_object_del(window-&gt;color_selector.elm_selector_window);

As ryuan said, you should probably set window-&gt;color_selector.elm_selector_window to NULL after this call.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896661</commentid>
    <comment_count>62</comment_count>
      <attachid>203634</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-06-03 17:19:46 -0700</bug_when>
    <thetext>Created attachment 203634
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896662</commentid>
    <comment_count>63</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-06-03 17:20:16 -0700</bug_when>
    <thetext>(In reply to comment #61)
&gt; (From update of attachment 203556 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=203556&amp;action=review
&gt; 
&gt; &gt; Tools/MiniBrowser/efl/main.c:650
&gt; &gt; +    evas_object_del(window-&gt;color_selector.elm_selector_window);
&gt; 
&gt; As ryuan said, you should probably set window-&gt;color_selector.elm_selector_window to NULL after this call.

I fixed it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896745</commentid>
    <comment_count>64</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-03 23:06:02 -0700</bug_when>
    <thetext>(In reply to comment #63)
&gt; (In reply to comment #61)
&gt; &gt; (From update of attachment 203556 [details] [details])
&gt; &gt; View in context: https://bugs.webkit.org/attachment.cgi?id=203556&amp;action=review
&gt; &gt; 
&gt; &gt; &gt; Tools/MiniBrowser/efl/main.c:650
&gt; &gt; &gt; +    evas_object_del(window-&gt;color_selector.elm_selector_window);
&gt; &gt; 
&gt; &gt; As ryuan said, you should probably set window-&gt;color_selector.elm_selector_window to NULL after this call.
&gt; 
&gt; I fixed it.

The patch needs rebasing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896796</commentid>
    <comment_count>65</comment_count>
      <attachid>203669</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-06-04 03:01:50 -0700</bug_when>
    <thetext>Created attachment 203669
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896808</commentid>
    <comment_count>66</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-06-04 03:28:28 -0700</bug_when>
    <thetext>(In reply to comment #65)
&gt; Created an attachment (id=203669) [details]
&gt; Patch

I rebased it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896811</commentid>
    <comment_count>67</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-04 03:39:04 -0700</bug_when>
    <thetext>(In reply to comment #66)
&gt; (In reply to comment #65)
&gt; &gt; Created an attachment (id=203669) [details] [details]
&gt; &gt; Patch
&gt; 
&gt; I rebased it.

The window is not modal. This is an issue because I can click the &quot;submit&quot; button while the color picker window is still showing and I get the following crash:
ASSERTION FAILED: m_colorChooser
/home/chris/devel/WebKit/Source/WebKit2/UIProcess/WebPageProxy.cpp(2995) : void WebKit::WebPageProxy::endColorChooser()
1   0x7f5b4948faaf WTFCrash
2   0x7f5b49255d7e WebKit::WebPageProxy::endColorChooser()
3   0x7f5b4946816e void CoreIPC::callMemberFunction&lt;WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)()&gt;(CoreIPC::Arguments0 const&amp;, WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)())
4   0x7f5b49464552 void CoreIPC::handleMessage&lt;Messages::WebPageProxy::EndColorChooser, WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)()&gt;(CoreIPC::MessageDecoder&amp;, WebKit::WebPageProxy*, void (WebKit::WebPageProxy::*)())
5   0x7f5b4945e140 WebKit::WebPageProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
6   0x7f5b4917f0ba CoreIPC::MessageReceiverMap::dispatchMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
7   0x7f5b491940ed WebKit::ChildProcessProxy::dispatchMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
8   0x7f5b492928dd WebKit::WebProcessProxy::didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageDecoder&amp;)
9   0x7f5b4916d2c8 CoreIPC::Connection::dispatchMessage(CoreIPC::MessageDecoder&amp;)
10  0x7f5b4916d3a8 CoreIPC::Connection::dispatchMessage(WTF::PassOwnPtr&lt;CoreIPC::MessageDecoder&gt;)
11  0x7f5b4916d5b9 CoreIPC::Connection::dispatchOneMessage()
12  0x7f5b4917e499 WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;::operator()(CoreIPC::Connection*)
13  0x7f5b4917e01e WTF::BoundFunctionImpl&lt;WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;, void (CoreIPC::Connection*)&gt;::operator()()
14  0x7f5b49399429 WTF::Function&lt;void ()&gt;::operator()() const
15  0x7f5b44a53a2c WebCore::RunLoop::performWork()
16  0x7f5b455c8150 WebCore::RunLoop::wakeUpEvent(void*, void*, unsigned int)
17  0x7f5b49b1fa07
18  0x7f5b49b1ea21
19  0x7f5b49b1ee97 ecore_main_loop_begin
20  0x40a6be elm_main
21  0x40a708 main
22  0x7f5b48459ea5 __libc_start_main
23  0x4053a9
Segmentation fault (core dumped)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>896814</commentid>
    <comment_count>68</comment_count>
      <attachid>203669</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-04 03:41:25 -0700</bug_when>
    <thetext>Comment on attachment 203669
Patch

r- until the crash is addressed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897211</commentid>
    <comment_count>69</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2013-06-05 02:53:30 -0700</bug_when>
    <thetext>(In reply to comment #68)
&gt; (From update of attachment 203669 [details])
&gt; r- until the crash is addressed.

IMO, it looks WebCore or WebKit2 issue.

So I added bug to fix the crash.

Anyway, I agree with you that we&apos;d better to fix the crash before landing this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897224</commentid>
    <comment_count>70</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-05 03:17:29 -0700</bug_when>
    <thetext>(In reply to comment #69)
&gt; (In reply to comment #68)
&gt; &gt; (From update of attachment 203669 [details] [details])
&gt; &gt; r- until the crash is addressed.
&gt; 
&gt; IMO, it looks WebCore or WebKit2 issue.
&gt; 
&gt; So I added bug to fix the crash.
&gt; 
&gt; Anyway, I agree with you that we&apos;d better to fix the crash before landing this.

I have just checked with Chromium. The color picker dialog is not modal, however, if I click the submit button while the picker is showing, there is no problem.

I believe you are right that this is a WK2 issue. This should definitely be fixed in another patch.

We can fix the crash before or after this patch. I don&apos;t have a strong opinion on this anymore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897230</commentid>
    <comment_count>71</comment_count>
      <attachid>203669</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-05 03:25:28 -0700</bug_when>
    <thetext>Comment on attachment 203669
Patch

Patch looks OK to me now. Ryuan, do you have any remaining comment? If not, I would be tempted to land the patch since the crash issue is handled separately and not strictly related.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897238</commentid>
    <comment_count>72</comment_count>
      <attachid>203669</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2013-06-05 03:42:18 -0700</bug_when>
    <thetext>Comment on attachment 203669
Patch

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

&gt; Tools/ChangeLog:16
&gt; +        (on_color_item_selected): Change color of rectangle with clicking color boxes basically offered by elemnet API.

Typo. s/elemnet/elementary

BTW,

&gt; Tools/MiniBrowser/efl/main.c:692
&gt; +    Browser_Window *window = window_find_with_ewk_view(sd-&gt;self);
&gt; +    window-&gt;color_selector.elm_selector_window = elm_win_add(window-&gt;elm_window, &quot;color selector&quot;, ELM_WIN_BASIC);
&gt; +    window-&gt;color_selector.ewk_picker = color_picker;
&gt; +
&gt; +    elm_win_title_set(window-&gt;color_selector.elm_selector_window, &quot;Color selector&quot;);
&gt; +
&gt; +    /* Show color view */

This patch is still missing elm_bg.(I fixed same issues in file dialog at Bug 117189)

Others looks fine to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897240</commentid>
    <comment_count>73</comment_count>
      <attachid>203669</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-05 03:46:01 -0700</bug_when>
    <thetext>Comment on attachment 203669
Patch

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

&gt;&gt; Tools/MiniBrowser/efl/main.c:692
&gt;&gt; +    /* Show color view */
&gt; 
&gt; This patch is still missing elm_bg.(I fixed same issues in file dialog at Bug 117189)
&gt; 
&gt; Others looks fine to me.

Damn, it was there 3 patches ago. Not sure why Jungsik silently removed it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897261</commentid>
    <comment_count>74</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-06-05 04:21:05 -0700</bug_when>
    <thetext>(In reply to comment #73)
&gt; (From update of attachment 203669 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=203669&amp;action=review
&gt; 
&gt; &gt;&gt; Tools/MiniBrowser/efl/main.c:692
&gt; &gt;&gt; +    /* Show color view */
&gt; &gt; 
&gt; &gt; This patch is still missing elm_bg.(I fixed same issues in file dialog at Bug 117189)
&gt; &gt; 
&gt; &gt; Others looks fine to me.
&gt; 
&gt; Damn, it was there 3 patches ago. Not sure why Jungsik silently removed it.

 I had a problem about uploading patch yesterday since there was a conflict while rebasing. So I copied a backup data without checking by my mistake.
I will upload again. I am sorry to bother you.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897980</commentid>
    <comment_count>75</comment_count>
      <attachid>203979</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-06-06 17:13:15 -0700</bug_when>
    <thetext>Created attachment 203979
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897987</commentid>
    <comment_count>76</comment_count>
      <attachid>203979</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2013-06-06 17:50:45 -0700</bug_when>
    <thetext>Comment on attachment 203979
Patch

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

Without typos, looks good to me.

&gt; Tools/ChangeLog:16
&gt; +        (on_color_item_selected): Change color of rectangle with clicking color boxes basically offered by element API.

s/element/elementary

Anyway, below looks better to me.
&quot;Change color of rectangle when clicked color palettes offered by elm_color_chooser.&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>897993</commentid>
    <comment_count>77</comment_count>
      <attachid>203985</attachid>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-06-06 18:01:14 -0700</bug_when>
    <thetext>Created attachment 203985
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>898025</commentid>
    <comment_count>78</comment_count>
      <attachid>203985</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-06 23:06:33 -0700</bug_when>
    <thetext>Comment on attachment 203985
Patch

Ok, r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>898027</commentid>
    <comment_count>79</comment_count>
    <who name="Jungsik Tae">davidtlay88</who>
    <bug_when>2013-06-06 23:21:56 -0700</bug_when>
    <thetext>(In reply to comment #78)
&gt; (From update of attachment 203985 [details])
&gt; Ok, r=me.

Thank you for your review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>898028</commentid>
    <comment_count>80</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-06 23:30:52 -0700</bug_when>
    <thetext>Ryuan, can you please take one last look and cq+?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>898046</commentid>
    <comment_count>81</comment_count>
      <attachid>203985</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2013-06-07 00:29:19 -0700</bug_when>
    <thetext>Comment on attachment 203985
Patch

Looks fine to me, too.

cq+ed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>898052</commentid>
    <comment_count>82</comment_count>
      <attachid>203985</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-07 00:51:26 -0700</bug_when>
    <thetext>Comment on attachment 203985
Patch

Clearing flags on attachment: 203985

Committed r151308: &lt;http://trac.webkit.org/changeset/151308&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>898053</commentid>
    <comment_count>83</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-07 00:51:33 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201512</attachid>
            <date>2013-05-12 17:08:07 -0700</date>
            <delta_ts>2013-05-13 19:29:42 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130513090705.patch</filename>
            <type>text/plain</type>
            <size>7769</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5MDE2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmM2NWRlYTIxYjM0NWE2MDAyYjg1ZGY5Y2I3OTNlMGY5
NWFkYjZmMC4uMWEzMWRjMGI0MDk0NmYwMGRiZTgxNDg3MzgzYzM1M2EzODU4NDBkNyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2
IEBACisyMDEzLTA1LTA5ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXUltcGxlbWVudCBjb2xvcnBpY2tlciBmb3IgSFRNTDUgaW5wdXQgdHlwZSBj
b2xvciBvbiBNaW5pYnJvd3NlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTE1ODkwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgV2hlbiB1c2VyIGNsaWNrIEhUTUw1IGlucHV0IHR5cGUgY29sb3IsIAorICAg
ICAgICBjb2xvcnBpY2tlciB3aW5kb3cgaXMgY3JlYXRlZCBvbiBicm93c2VyIG9iamVjdCBieSB1
c2luZyBlbG1fY29sb3JjaG9vc2VyX2FkZCgpLiAKKyAgICAgICAgSXQgY2FuIGxpc3RlbiBhIHNp
Z25hbCBkaXNtaXNzaW5nIGNvbG9ycGlja2VyIGJ5IGNhbGxpbmcgdGhlIGV3a19jb2xvcl9waWNr
ZXJfY29sb3Jfc2V0KCkuCisgICAgICAgIFRoZSBldmFzX29iamV0X2NvbG9yX3NldCgpIHNldCBh
IGNvbG9yIHZhbHVlIHJldHVybmluZyB0byBicm93c2VyLgorCisgICAgICAgICogTWluaUJyb3dz
ZXIvZWZsL21haW4uYzoKKyAgICAgICAgKF9Db2xvcl9QaWNrZXJfRGF0YSk6IFRvIGRlbGl2ZXIg
dHdvIG9iamVjdCBvZiBkaWZmZXJlbnQgdHlwZS4KKyAgICAgICAgKF9Ccm93c2VyX1dpbmRvdyk6
CisgICAgICAgIChvbl9jaGFuZ2VkX2NvbG9yKTogQ2hhbmdlIGNvbG9yIG9mIHJlY3RhbmdsZSB0
byBzaG93IGNvbG9yIHNlbGVjdGVkIGJ5IHVzZXIuCisgICAgICAgIChvbl9jb2xvcnBhbGV0dGVf
Y2xpY2tlZCk6IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgd2l0aCBjbGlja2luZyBjb2xvciBi
b3ggYmFzaWNhbGx5IG9mZmVkIGJ5IGVsZW1lbnQgQVBJLiAKKyAgICAgICAgKG9uX2NvbG9ycGFs
ZXR0ZV9sb25ncHJlc3NlZCk6IENoYW5nZSB2YWx1ZSBvZiBjb2xvcnBpY2tlciBvYmplY3Qgd2hl
biBjb2xvciBiYXJzIGFyZSBjbGlja2VkLgorICAgICAgICAob25fY29sb3JwaWNrZXJfb2tfY2xp
Y2tlZCk6IENhbGwgb25fY29sb3JwaWNrZXJfZGlzbWlzcyBhbmQgc2V0IHRoZSBjb2xvci4KKyAg
ICAgICAgKG9uX2NvbG9ycGlja2VyX2Rpc21pc3MpOiBEZWxldGUgY29sb3JwaWNrZXIgb2JqZWN0
LgorICAgICAgICAob25fY29sb3JwaWNrZXJfcmVxdWVzdCk6IENyZWF0ZSBjb2xvcnBpY2tlciB3
aW5kb3cgb2JqZWN0LgorICAgICAgICAod2luZG93X2NyZWF0ZSk6IENvbm5lY3RpbmcgdXAgd2l0
aCBVSVByb2Nlc3MvZWZsL1BhZ2VDbGllbnRFZmwuY3BwCisKIDIwMTMtMDQtMjMgIERhdmlkIEdy
b2dhbiAgPGRncm9nYW5AY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQuIFJlbW92
ZSBteXNlbGYgZnJvbSB3YXRjaGxpc3QuCmRpZmYgLS1naXQgYS9Ub29scy9NaW5pQnJvd3Nlci9l
ZmwvbWFpbi5jIGIvVG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4uYwppbmRleCAzYjM5NTFmNzRh
NjM0MzI2OTYzOTliOGQ0YTRlZWE3NWFjODc0MjM1Li4wNzBhYmFhMGM3YzE5YWE1Y2EwM2VjYTli
ZGY2Yjg3OGI0MWUxZjY2IDEwMDY0NAotLS0gYS9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5j
CisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWluLmMKQEAgLTY0LDYgKzY0LDcgQEAgY29u
c3Qgc3RhdGljIGZsb2F0IHpvb21MZXZlbHNbXSA9IHswLjMsIDAuNSwgMC42NywgMC44LCAwLjks
IDEuMCwgMS4xLCAxLjIsIDEuMzMKIHN0YXRpYyBFaW5hX0Jvb2wKIHpvb21fbGV2ZWxfc2V0KEV2
YXNfT2JqZWN0ICp3ZWJ2aWV3LCBpbnQgbGV2ZWwpCiB7CisKICAgICBpZiAobGV2ZWwgPCAwICB8
fCBsZXZlbCA+PSBzaXplb2Yoem9vbUxldmVscykgLyBzaXplb2YoZmxvYXQpKQogICAgICAgICBy
ZXR1cm4gRUlOQV9GQUxTRTsKIApAQCAtOTAsNiArOTEsMTEgQEAgdHlwZWRlZiBzdHJ1Y3QgX1Rv
b2x0aXBfSW5mb3JtYXRpb24gewogICAgIEVpbmFfQm9vbCBzaG93bjsKIH0gVG9vbHRpcF9JbmZv
cm1hdGlvbjsKIAordHlwZWRlZiBzdHJ1Y3QgX0NvbG9yX1BpY2tlcl9EYXRhIHsKKyAgICBFd2tf
Q29sb3JfUGlja2VyICpjb2xvclBpY2tlcjsKKyAgICBFdmFzX09iamVjdCAqcmVjdF9kYXRhOwor
fSBDb2xvcl9QaWNrZXJfRGF0YTsKKwogdHlwZWRlZiBzdHJ1Y3QgX0Jyb3dzZXJfV2luZG93IHsK
ICAgICBFdmFzX09iamVjdCAqZWxtX3dpbmRvdzsKICAgICBFdmFzX09iamVjdCAqZXdrX3ZpZXc7
CkBAIC0xMDksNiArMTE1LDcgQEAgdHlwZWRlZiBzdHJ1Y3QgX0Jyb3dzZXJfV2luZG93IHsKICAg
ICBpbnQgY3VycmVudF96b29tX2xldmVsOyAKICAgICBUb29sdGlwX0luZm9ybWF0aW9uIHRvb2x0
aXA7CiAgICAgRXZhc19PYmplY3QgKmNvbnRleHRfcG9wdXA7CisgICAgRXZhc19PYmplY3QgKmNv
bG9yX3NlbGVjdG9yOwogfSBCcm93c2VyX1dpbmRvdzsKIAogdHlwZWRlZiBzdHJ1Y3QgX0ZpbGVf
U2VsZWN0b3JfRGF0YSB7CkBAIC01OTUsNiArNjAyLDEyMiBAQCBvbl9kb3dubG9hZF9mYWlsZWQo
dm9pZCAqdXNlcl9kYXRhLCBFdmFzX09iamVjdCAqZXdrX3ZpZXcsIHZvaWQgKmV2ZW50X2luZm8p
CiB9CiAKIHN0YXRpYyB2b2lkCitvbl9jaGFuZ2VkX2NvbG9yKHZvaWQgKmRhdGEsIEV2YXNfT2Jq
ZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIsIGE7CisgICAg
Q29sb3JfUGlja2VyX0RhdGEgKmNwX2RhdGEgPSAoQ29sb3JfUGlja2VyX0RhdGEgKikgZGF0YTsK
KworICAgIGVsbV9jb2xvcnNlbGVjdG9yX2NvbG9yX2dldChvYmosICZyLCAmZywgJmIsICZhKTsK
KyAgICBldmFzX29iamVjdF9jb2xvcl9zZXQoY3BfZGF0YS0+cmVjdF9kYXRhLCByLCBnLCBiLCBh
KTsKK30KKworc3RhdGljIHZvaWQKK29uX2NvbG9ycGFsZXR0ZV9jbGlja2VkKHZvaWQgKmRhdGEs
IEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIs
IGE7CisgICAgQ29sb3JfUGlja2VyX0RhdGEgKmNwX2RhdGEgPSAoQ29sb3JfUGlja2VyX0RhdGEg
KikgZGF0YTsKKyAgICBFbG1fT2JqZWN0X0l0ZW0gKmNvbG9yX2l0ZW0gPSAoRWxtX09iamVjdF9J
dGVtICopIGV2ZW50X2luZm87CisKKyAgICBlbG1fY29sb3JzZWxlY3Rvcl9wYWxldHRlX2l0ZW1f
Y29sb3JfZ2V0KGNvbG9yX2l0ZW0sICZyLCAmZywgJmIsICZhKTsKKyAgICBldmFzX29iamVjdF9j
b2xvcl9zZXQoY3BfZGF0YS0+cmVjdF9kYXRhLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGljIHZv
aWQKK29uX2NvbG9ycGFsZXR0ZV9sb25ncHJlc3NlZCh2b2lkICpkYXRhLCBFdmFzX09iamVjdCAq
b2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCByLCBnLCBiLCBhOworICAgIEVsbV9P
YmplY3RfSXRlbSAqY29sb3JfaXRlbSA9IChFbG1fT2JqZWN0X0l0ZW0gKikgZXZlbnRfaW5mbzsK
KyAgICBDb2xvcl9QaWNrZXJfRGF0YSAqY3BfZGF0YSA9IChDb2xvcl9QaWNrZXJfRGF0YSAqKSBk
YXRhOworCisgICAgZWxtX2NvbG9yc2VsZWN0b3JfcGFsZXR0ZV9pdGVtX2NvbG9yX2dldChjb2xv
cl9pdGVtLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KGNwX2Rh
dGEtPnJlY3RfZGF0YSwgciwgZywgYiwgYSk7Cit9CisKK3N0YXRpYyB2b2lkCitvbl9jb2xvcnBp
Y2tlcl9va19jbGlja2VkKHZvaWQgKmRhdGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50
X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIsIGE7CisgICAgQ29sb3JfUGlja2VyX0RhdGEgKmNw
X2RhdGEgPSAoQ29sb3JfUGlja2VyX0RhdGEgKikgZGF0YTsKKyAgICAKKyAgICBldmFzX29iamVj
dF9jb2xvcl9nZXQoY3BfZGF0YS0+cmVjdF9kYXRhLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXdr
X2NvbG9yX3BpY2tlcl9jb2xvcl9zZXQoY3BfZGF0YS0+Y29sb3JQaWNrZXIsIHIsIGcsIGIsIGEp
OworCisgICAgZnJlZShjcF9kYXRhKTsKK30KKworc3RhdGljIEVpbmFfQm9vbAorb25fY29sb3Jw
aWNrZXJfZGlzbWlzcyhFd2tfVmlld19TbWFydF9EYXRhICpzZCkKK3sKKyAgICBCcm93c2VyX1dp
bmRvdyAqd2luZG93ID0gd2luZG93X2ZpbmRfd2l0aF9ld2tfdmlldyhzZC0+c2VsZik7CisgICAg
ZXZhc19vYmplY3RfZGVsKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpOworCisgICAgcmV0dXJuIEVJ
TkFfVFJVRTsKK30KKworc3RhdGljIEVpbmFfQm9vbAorb25fY29sb3JwaWNrZXJfcmVxdWVzdChF
d2tfVmlld19TbWFydF9EYXRhICpzZCwgRXdrX0NvbG9yX1BpY2tlciogY29sb3JfUGlja2VyKQor
eworICAgIEJyb3dzZXJfV2luZG93ICp3aW5kb3cgPSB3aW5kb3dfZmluZF93aXRoX2V3a192aWV3
KHNkLT5zZWxmKTsKKyAgICB3aW5kb3ctPmNvbG9yX3NlbGVjdG9yID0gZWxtX3dpbl9hZGQod2lu
ZG93LT5lbG1fd2luZG93LCAiY29sb3Igc2VsZWN0b3IiLCBFTE1fV0lOX0RJQUxPR19CQVNJQyk7
CisKKyAgICBFdmFzX09iamVjdCAqcmVjdCwgKmJ4LCAqZnIsICpidCwgKmNvbG9yX3BpY2tlcl9v
Ymo7CisgICAgaW50IHIsIGcsIGIsIGE7CisKKyAgICBDb2xvcl9QaWNrZXJfRGF0YSAqY3BfZGF0
YSA9IChDb2xvcl9QaWNrZXJfRGF0YSAqKW1hbGxvYyhzaXplb2YoQ29sb3JfUGlja2VyX0RhdGEp
KTsKKyAgICBjcF9kYXRhLT5jb2xvclBpY2tlciA9IGNvbG9yX1BpY2tlcjsKKworICAgIGVsbV93
aW5fdGl0bGVfc2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IsICJDb2xvciBzZWxlY3RvciIpOwor
ICAgIGVsbV93aW5fYXV0b2RlbF9zZXQod2luZG93LT5jb2xvcl9zZWxlY3RvciwgRUlOQV9UUlVF
KTsKKyAgICBlbG1fcG9saWN5X3NldChFTE1fUE9MSUNZX1FVSVQsIEVMTV9QT0xJQ1lfUVVJVF9M
QVNUX1dJTkRPV19DTE9TRUQpOworCisgICAgYnggPSBlbG1fYm94X2FkZCh3aW5kb3ctPmNvbG9y
X3NlbGVjdG9yKTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfd2VpZ2h0X3NldChieCwgRVZB
U19ISU5UX0ZJTEwsIEVWQVNfSElOVF9GSUxMKTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRf
YWxpZ25fc2V0KGJ4LCBFVkFTX0hJTlRfRklMTCwgRVZBU19ISU5UX0ZJTEwpOworICAgIGVsbV93
aW5fcmVzaXplX29iamVjdF9hZGQod2luZG93LT5jb2xvcl9zZWxlY3RvciwgYngpOworICAgIGV2
YXNfb2JqZWN0X3Nob3coYngpOworCisgICAgZnIgPSBlbG1fZnJhbWVfYWRkKHdpbmRvdy0+Y29s
b3Jfc2VsZWN0b3IpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF93ZWlnaHRfc2V0KGZyLCAx
LjAsIDAuNSk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X2FsaWduX3NldChmciwgRVZBU19I
SU5UX0ZJTEwsIEVWQVNfSElOVF9GSUxMKTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KGZyLCAi
Q29sb3IgVmlldyIpOworICAgIGVsbV9ib3hfcGFja19lbmQoYngsIGZyKTsKKyAgICBldmFzX29i
amVjdF9zaG93KGZyKTsKKworICAgIHJlY3QgPSBldmFzX29iamVjdF9yZWN0YW5nbGVfYWRkKGV2
YXNfb2JqZWN0X2V2YXNfZ2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpKTsKKyAgICBlbG1fb2Jq
ZWN0X2NvbnRlbnRfc2V0KGZyLCByZWN0KTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX2dl
dChjb2xvcl9QaWNrZXIsICZyLCAmZywgJmIsICZhKTsKKyAgICBldmFzX29iamVjdF9jb2xvcl9z
ZXQocmVjdCwgciwgZywgYiwgYSk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhyZWN0KTsKKyAgICBj
cF9kYXRhLT5yZWN0X2RhdGEgPSByZWN0OworCisgICAgZnIgPSBlbG1fZnJhbWVfYWRkKHdpbmRv
dy0+Y29sb3Jfc2VsZWN0b3IpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF93ZWlnaHRfc2V0
KGZyLCAxLjAsIDEuNSk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X2FsaWduX3NldChmciwg
RVZBU19ISU5UX0ZJTEwsIEVWQVNfSElOVF9GSUxMKTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0
KGZyLCAiQ29sb3IgU2VsZWN0b3IiKTsKKyAgICBlbG1fYm94X3BhY2tfZW5kKGJ4LCBmcik7Cisg
ICAgZXZhc19vYmplY3Rfc2hvdyhmcik7CisKKyAgICBjb2xvcl9waWNrZXJfb2JqID0gZWxtX2Nv
bG9yc2VsZWN0b3JfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpOworICAgIGVsbV9vYmplY3Rf
Y29udGVudF9zZXQoZnIsIGNvbG9yX3BpY2tlcl9vYmopOworCisgICAgYnQgPSBlbG1fYnV0dG9u
X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yKTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KGJ0
LCAiT0siKTsKKyAgICBlbG1fYm94X3BhY2tfZW5kKGJ4LCBidCk7CisgICAgZXZhc19vYmplY3Rf
c2hvdyhidCk7CisKKyAgICBldmFzX29iamVjdF9zaG93KGNvbG9yX3BpY2tlcl9vYmopOyAKKyAg
ICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQoYnQsICJjbGlja2VkIiwgb25fY29sb3Jw
aWNrZXJfb2tfY2xpY2tlZCwgY3BfZGF0YSk7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJh
Y2tfYWRkKGNvbG9yX3BpY2tlcl9vYmosICJjaGFuZ2VkIiwgb25fY2hhbmdlZF9jb2xvciwgY3Bf
ZGF0YSk7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKGNvbG9yX3BpY2tlcl9v
YmosICJjb2xvcixpdGVtLHNlbGVjdGVkIiwgb25fY29sb3JwYWxldHRlX2NsaWNrZWQsIGNwX2Rh
dGEpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZChjb2xvcl9waWNrZXJfb2Jq
LCAiY29sb3IsaXRlbSxsb25ncHJlc3NlZCIsIG9uX2NvbG9ycGFsZXR0ZV9sb25ncHJlc3NlZCwg
Y3BfZGF0YSk7CisKKyAgICBldmFzX29iamVjdF9yZXNpemUod2luZG93LT5jb2xvcl9zZWxlY3Rv
ciwgNjUwLCA0MDApOworICAgIGV2YXNfb2JqZWN0X3Nob3cod2luZG93LT5jb2xvcl9zZWxlY3Rv
cik7CisKKyAgICByZXR1cm4gRUlOQV9UUlVFOworfQorCitzdGF0aWMgdm9pZAogdXBkYXRlX3Zp
ZXdfZmF2aWNvbihCcm93c2VyX1dpbmRvdyAqd2luZG93LCBFdmFzX09iamVjdCAqaWNvbikKIHsK
ICAgICAvKiBSZW1vdmUgcHJldmlvdXMgaWNvbiBmcm9tIFVSTCBiYXIgKi8KQEAgLTE1MDMsNiAr
MTYyNiw4IEBAIHN0YXRpYyBCcm93c2VyX1dpbmRvdyAqd2luZG93X2NyZWF0ZShFdmFzX09iamVj
dCAqb3BlbmVyLCBjb25zdCBjaGFyICp1cmwsIGludCB3CiAKICAgICAvKiBDcmVhdGUgZXdrX3Zp
ZXcgKi8KICAgICBFd2tfVmlld19TbWFydF9DbGFzcyAqZXdrVmlld0NsYXNzID0gbWluaUJyb3dz
ZXJWaWV3U21hcnRDbGFzcygpOworICAgIGV3a1ZpZXdDbGFzcy0+aW5wdXRfcGlja2VyX2NvbG9y
X3JlcXVlc3QgPSBvbl9jb2xvcnBpY2tlcl9yZXF1ZXN0OworICAgIGV3a1ZpZXdDbGFzcy0+aW5w
dXRfcGlja2VyX2NvbG9yX2Rpc21pc3MgPSBvbl9jb2xvcnBpY2tlcl9kaXNtaXNzOwogICAgIGV3
a1ZpZXdDbGFzcy0+cnVuX2phdmFzY3JpcHRfYWxlcnQgPSBvbl9qYXZhc2NyaXB0X2FsZXJ0Owog
ICAgIGV3a1ZpZXdDbGFzcy0+cnVuX2phdmFzY3JpcHRfY29uZmlybSA9IG9uX2phdmFzY3JpcHRf
Y29uZmlybTsKICAgICBld2tWaWV3Q2xhc3MtPnJ1bl9qYXZhc2NyaXB0X3Byb21wdCA9IG9uX2ph
dmFzY3JpcHRfcHJvbXB0Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201667</attachid>
            <date>2013-05-13 19:29:50 -0700</date>
            <delta_ts>2013-05-13 20:30:20 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130514112847.patch</filename>
            <type>text/plain</type>
            <size>7558</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5MDE2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmM2NWRlYTIxYjM0NWE2MDAyYjg1ZGY5Y2I3OTNlMGY5
NWFkYjZmMC4uNTE4OGNlM2UwZTc5MjBiZDNhODUzMTkzNDE4NzM0YTg5ODUyZDI4OSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2
IEBACisyMDEzLTA1LTA5ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXUltcGxlbWVudCBjb2xvcnBpY2tlciBmb3IgSFRNTDUgaW5wdXQgdHlwZSBj
b2xvciBvbiBNaW5pYnJvd3NlcgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTE1ODkwCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgV2hlbiB1c2VyIGNsaWNrIEhUTUw1IGlucHV0IHR5cGUgY29sb3IsIAorICAg
ICAgICBjb2xvciBwaWNrZXIgVUkgd2luZG93IGlzIGNyZWF0ZWQgb24gYnJvd3NlciBvYmplY3Qg
YnkgdXNpbmcgZWxtX2NvbG9yY2hvb3Nlcl9hZGQoKS4gCisgICAgICAgIEl0IGNhbiBsaXN0ZW4g
YSBzaWduYWwgZGlzbWlzc2luZyBjb2xvcnBpY2tlciBieSBjYWxsaW5nIHRoZSBld2tfY29sb3Jf
cGlja2VyX2NvbG9yX3NldCgpLgorICAgICAgICBUaGUgZXZhc19vYmpldF9jb2xvcl9zZXQoKSBz
ZXQgYSBjb2xvciB2YWx1ZSByZXR1cm5pbmcgdG8gYnJvd3Nlci4KKworICAgICAgICAqIE1pbmlC
cm93c2VyL2VmbC9tYWluLmM6CisgICAgICAgIChfQ29sb3JfUGlja2VyX0RhdGEpOiBUbyBkZWxp
dmVyIHR3byBvYmplY3Qgb2YgZGlmZmVyZW50IHR5cGUuCisgICAgICAgIChfQnJvd3Nlcl9XaW5k
b3cpOgorICAgICAgICAob25fY2hhbmdlZF9jb2xvcik6IENoYW5nZSBjb2xvciBvZiByZWN0YW5n
bGUgdG8gc2hvdyBjb2xvciBzZWxlY3RlZCBieSB1c2VyLgorICAgICAgICAob25fY29sb3JwYWxl
dHRlX2NsaWNrZWQpOiBDaGFuZ2UgY29sb3Igb2YgcmVjdGFuZ2xlIHdpdGggY2xpY2tpbmcgY29s
b3IgYm94IGJhc2ljYWxseSBvZmZlZCBieSBlbGVtZW50IEFQSS4gCisgICAgICAgIChvbl9jb2xv
cnBhbGV0dGVfbG9uZ3ByZXNzZWQpOiBDaGFuZ2UgdmFsdWUgb2YgY29sb3JwaWNrZXIgb2JqZWN0
IHdoZW4gY29sb3IgYmFycyBhcmUgY2xpY2tlZC4KKyAgICAgICAgKG9uX2NvbG9ycGlja2VyX29r
X2NsaWNrZWQpOiBDYWxsIG9uX2NvbG9ycGlja2VyX2Rpc21pc3MgYW5kIHNldCB0aGUgY29sb3Iu
CisgICAgICAgIChvbl9jb2xvcnBpY2tlcl9kaXNtaXNzKTogRGVsZXRlIGNvbG9ycGlja2VyIG9i
amVjdC4KKyAgICAgICAgKG9uX2NvbG9ycGlja2VyX3JlcXVlc3QpOiBDcmVhdGUgY29sb3JwaWNr
ZXIgd2luZG93IG9iamVjdC4KKyAgICAgICAgKHdpbmRvd19jcmVhdGUpOiBDb25uZWN0aW5nIHVw
IHdpdGggVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RWZsLmNwcAorCiAyMDEzLTA0LTIzICBEYXZp
ZCBHcm9nYW4gIDxkZ3JvZ2FuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLiBS
ZW1vdmUgbXlzZWxmIGZyb20gd2F0Y2hsaXN0LgpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dz
ZXIvZWZsL21haW4uYyBiL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWluLmMKaW5kZXggM2IzOTUx
Zjc0YTYzNDMyNjk2Mzk5YjhkNGE0ZWVhNzVhYzg3NDIzNS4uNTdlNGE5ZGM5ZDVhOTA1MTRkNzBi
MzM0MTRmNzE3ZTYyZjkwZWUzMiAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvZWZsL21h
aW4uYworKysgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCkBAIC05MCw2ICs5MCwxMSBA
QCB0eXBlZGVmIHN0cnVjdCBfVG9vbHRpcF9JbmZvcm1hdGlvbiB7CiAgICAgRWluYV9Cb29sIHNo
b3duOwogfSBUb29sdGlwX0luZm9ybWF0aW9uOwogCit0eXBlZGVmIHN0cnVjdCBfQ29sb3JfUGlj
a2VyX0RhdGEgeworICAgIEV3a19Db2xvcl9QaWNrZXIgKmNvbG9yX3BpY2tlcjsKKyAgICBFdmFz
X09iamVjdCAqcmVjdF9kYXRhOworfSBDb2xvcl9QaWNrZXJfRGF0YTsKKwogdHlwZWRlZiBzdHJ1
Y3QgX0Jyb3dzZXJfV2luZG93IHsKICAgICBFdmFzX09iamVjdCAqZWxtX3dpbmRvdzsKICAgICBF
dmFzX09iamVjdCAqZXdrX3ZpZXc7CkBAIC0xMDksNiArMTE0LDcgQEAgdHlwZWRlZiBzdHJ1Y3Qg
X0Jyb3dzZXJfV2luZG93IHsKICAgICBpbnQgY3VycmVudF96b29tX2xldmVsOyAKICAgICBUb29s
dGlwX0luZm9ybWF0aW9uIHRvb2x0aXA7CiAgICAgRXZhc19PYmplY3QgKmNvbnRleHRfcG9wdXA7
CisgICAgRXZhc19PYmplY3QgKmNvbG9yX3NlbGVjdG9yOwogfSBCcm93c2VyX1dpbmRvdzsKIAog
dHlwZWRlZiBzdHJ1Y3QgX0ZpbGVfU2VsZWN0b3JfRGF0YSB7CkBAIC01OTUsNiArNjAxLDEyMyBA
QCBvbl9kb3dubG9hZF9mYWlsZWQodm9pZCAqdXNlcl9kYXRhLCBFdmFzX09iamVjdCAqZXdrX3Zp
ZXcsIHZvaWQgKmV2ZW50X2luZm8pCiB9CiAKIHN0YXRpYyB2b2lkCitvbl9jb2xvcl9jaGFuZ2Vk
KHZvaWQgKmRhdGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAg
aW50IHIsIGcsIGIsIGE7CisgICAgQ29sb3JfUGlja2VyX0RhdGEgKmNwX2RhdGEgPSAoQ29sb3Jf
UGlja2VyX0RhdGEgKilkYXRhOworCisgICAgZWxtX2NvbG9yc2VsZWN0b3JfY29sb3JfZ2V0KG9i
aiwgJnIsICZnLCAmYiwgJmEpOworICAgIGV2YXNfb2JqZWN0X2NvbG9yX3NldChjcF9kYXRhLT5y
ZWN0X2RhdGEsIHIsIGcsIGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JwYWxldHRl
X2NsaWNrZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5mbykK
K3sKKyAgICBpbnQgciwgZywgYiwgYTsKKyAgICBDb2xvcl9QaWNrZXJfRGF0YSAqY3BfZGF0YSA9
IChDb2xvcl9QaWNrZXJfRGF0YSAqKWRhdGE7CisgICAgRWxtX09iamVjdF9JdGVtICpjb2xvcl9p
dGVtID0gKEVsbV9PYmplY3RfSXRlbSAqKWV2ZW50X2luZm87CisKKyAgICBlbG1fY29sb3JzZWxl
Y3Rvcl9wYWxldHRlX2l0ZW1fY29sb3JfZ2V0KGNvbG9yX2l0ZW0sICZyLCAmZywgJmIsICZhKTsK
KyAgICBldmFzX29iamVjdF9jb2xvcl9zZXQoY3BfZGF0YS0+cmVjdF9kYXRhLCByLCBnLCBiLCBh
KTsKK30KKworc3RhdGljIHZvaWQKK29uX2NvbG9ycGFsZXR0ZV9sb25ncHJlc3NlZCh2b2lkICpk
YXRhLCBFdmFzX09iamVjdCAqb2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCByLCBn
LCBiLCBhOworICAgIEVsbV9PYmplY3RfSXRlbSAqY29sb3JfaXRlbSA9IChFbG1fT2JqZWN0X0l0
ZW0gKilldmVudF9pbmZvOworICAgIENvbG9yX1BpY2tlcl9EYXRhICpjcF9kYXRhID0gKENvbG9y
X1BpY2tlcl9EYXRhICopZGF0YTsKKworICAgIGVsbV9jb2xvcnNlbGVjdG9yX3BhbGV0dGVfaXRl
bV9jb2xvcl9nZXQoY29sb3JfaXRlbSwgJnIsICZnLCAmYiwgJmEpOworICAgIGV2YXNfb2JqZWN0
X2NvbG9yX3NldChjcF9kYXRhLT5yZWN0X2RhdGEsIHIsIGcsIGIsIGEpOworfQorCitzdGF0aWMg
dm9pZAorb25fY29sb3JwaWNrZXJfb2tfY2xpY2tlZCh2b2lkICpkYXRhLCBFdmFzX09iamVjdCAq
b2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCByLCBnLCBiLCBhOworICAgIENvbG9y
X1BpY2tlcl9EYXRhICpjcF9kYXRhID0gKENvbG9yX1BpY2tlcl9EYXRhICopZGF0YTsKKyAgICAK
KyAgICBldmFzX29iamVjdF9jb2xvcl9nZXQoY3BfZGF0YS0+cmVjdF9kYXRhLCAmciwgJmcsICZi
LCAmYSk7CisgICAgZXdrX2NvbG9yX3BpY2tlcl9jb2xvcl9zZXQoY3BfZGF0YS0+Y29sb3JQaWNr
ZXIsIHIsIGcsIGIsIGEpOworCisgICAgZnJlZShjcF9kYXRhKTsKK30KKworc3RhdGljIEVpbmFf
Qm9vbAorb25fY29sb3JwaWNrZXJfZGlzbWlzcyhFd2tfVmlld19TbWFydF9EYXRhICpzZCkKK3sK
KyAgICBCcm93c2VyX1dpbmRvdyAqd2luZG93ID0gd2luZG93X2ZpbmRfd2l0aF9ld2tfdmlldyhz
ZC0+c2VsZik7CisgICAgZXZhc19vYmplY3RfZGVsKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpOwor
CisgICAgcmV0dXJuIEVJTkFfVFJVRTsKK30KKworc3RhdGljIEVpbmFfQm9vbAorb25fY29sb3Jw
aWNrZXJfcmVxdWVzdChFd2tfVmlld19TbWFydF9EYXRhICpzZCwgRXdrX0NvbG9yX1BpY2tlciog
Y29sb3JfUGlja2VyKQoreworICAgIEJyb3dzZXJfV2luZG93ICp3aW5kb3cgPSB3aW5kb3dfZmlu
ZF93aXRoX2V3a192aWV3KHNkLT5zZWxmKTsKKyAgICB3aW5kb3ctPmNvbG9yX3NlbGVjdG9yID0g
ZWxtX3dpbl9hZGQod2luZG93LT5lbG1fd2luZG93LCAiY29sb3Igc2VsZWN0b3IiLCBFTE1fV0lO
X0RJQUxPR19CQVNJQyk7CisKKyAgICBFdmFzX09iamVjdCAqcmVjdCwgKmJ4LCAqZnIsICpidCwg
KmNvbG9yX3BpY2tlcl9vYmo7CisgICAgaW50IHIsIGcsIGIsIGE7CisKKyAgICBDb2xvcl9QaWNr
ZXJfRGF0YSAqY3BfZGF0YSA9IChDb2xvcl9QaWNrZXJfRGF0YSAqKW1hbGxvYyhzaXplb2YoQ29s
b3JfUGlja2VyX0RhdGEpKTsKKyAgICBjcF9kYXRhLT5jb2xvclBpY2tlciA9IGNvbG9yX1BpY2tl
cjsKKworICAgIGVsbV93aW5fdGl0bGVfc2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IsICJDb2xv
ciBzZWxlY3RvciIpOworICAgIGVsbV93aW5fbW9kYWxfc2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0
b3IsIEVJTkFfVFJVRSk7CisgICAgZWxtX3dpbl9hdXRvZGVsX3NldCh3aW5kb3ctPmNvbG9yX3Nl
bGVjdG9yLCBFSU5BX1RSVUUpOworICAgIGVsbV9wb2xpY3lfc2V0KEVMTV9QT0xJQ1lfUVVJVCwg
RUxNX1BPTElDWV9RVUlUX0xBU1RfV0lORE9XX0NMT1NFRCk7CisKKyAgICBieCA9IGVsbV9ib3hf
YWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF93
ZWlnaHRfc2V0KGJ4LCBFVkFTX0hJTlRfRklMTCwgRVZBU19ISU5UX0ZJTEwpOworICAgIGV2YXNf
b2JqZWN0X3NpemVfaGludF9hbGlnbl9zZXQoYngsIEVWQVNfSElOVF9GSUxMLCBFVkFTX0hJTlRf
RklMTCk7CisgICAgZWxtX3dpbl9yZXNpemVfb2JqZWN0X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVj
dG9yLCBieCk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhieCk7CisKKyAgICBmciA9IGVsbV9mcmFt
ZV9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvcik7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50
X3dlaWdodF9zZXQoZnIsIDEuMCwgMC41KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfYWxp
Z25fc2V0KGZyLCBFVkFTX0hJTlRfRklMTCwgRVZBU19ISU5UX0ZJTEwpOworICAgIGVsbV9vYmpl
Y3RfdGV4dF9zZXQoZnIsICJDb2xvciBWaWV3Iik7CisgICAgZWxtX2JveF9wYWNrX2VuZChieCwg
ZnIpOworICAgIGV2YXNfb2JqZWN0X3Nob3coZnIpOworCisgICAgcmVjdCA9IGV2YXNfb2JqZWN0
X3JlY3RhbmdsZV9hZGQoZXZhc19vYmplY3RfZXZhc19nZXQod2luZG93LT5jb2xvcl9zZWxlY3Rv
cikpOworICAgIGVsbV9vYmplY3RfY29udGVudF9zZXQoZnIsIHJlY3QpOworICAgIGV3a19jb2xv
cl9waWNrZXJfY29sb3JfZ2V0KGNvbG9yX1BpY2tlciwgJnIsICZnLCAmYiwgJmEpOworICAgIGV2
YXNfb2JqZWN0X2NvbG9yX3NldChyZWN0LCByLCBnLCBiLCBhKTsKKyAgICBldmFzX29iamVjdF9z
aG93KHJlY3QpOworICAgIGNwX2RhdGEtPnJlY3RfZGF0YSA9IHJlY3Q7CisKKyAgICBmciA9IGVs
bV9mcmFtZV9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvcik7CisgICAgZXZhc19vYmplY3Rfc2l6
ZV9oaW50X3dlaWdodF9zZXQoZnIsIDEuMCwgMS41KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hp
bnRfYWxpZ25fc2V0KGZyLCBFVkFTX0hJTlRfRklMTCwgRVZBU19ISU5UX0ZJTEwpOworICAgIGVs
bV9vYmplY3RfdGV4dF9zZXQoZnIsICJDb2xvciBTZWxlY3RvciIpOworICAgIGVsbV9ib3hfcGFj
a19lbmQoYngsIGZyKTsKKyAgICBldmFzX29iamVjdF9zaG93KGZyKTsKKworICAgIGNvbG9yX3Bp
Y2tlcl9vYmogPSBlbG1fY29sb3JzZWxlY3Rvcl9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvcik7
CisgICAgZWxtX29iamVjdF9jb250ZW50X3NldChmciwgY29sb3JfcGlja2VyX29iaik7CisKKyAg
ICBidCA9IGVsbV9idXR0b25fYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpOworICAgIGVsbV9v
YmplY3RfdGV4dF9zZXQoYnQsICJPSyIpOworICAgIGVsbV9ib3hfcGFja19lbmQoYngsIGJ0KTsK
KyAgICBldmFzX29iamVjdF9zaG93KGJ0KTsKKworICAgIGV2YXNfb2JqZWN0X3Nob3coY29sb3Jf
cGlja2VyX29iaik7IAorICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZChidCwgImNs
aWNrZWQiLCBvbl9jb2xvcnBpY2tlcl9va19jbGlja2VkLCBjcF9kYXRhKTsKKyAgICBldmFzX29i
amVjdF9zbWFydF9jYWxsYmFja19hZGQoY29sb3JfcGlja2VyX29iaiwgImNoYW5nZWQiLCBvbl9j
b2xvcl9jaGFuZ2VkLCBjcF9kYXRhKTsKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19h
ZGQoY29sb3JfcGlja2VyX29iaiwgImNvbG9yLGl0ZW0sc2VsZWN0ZWQiLCBvbl9jb2xvcnBhbGV0
dGVfY2xpY2tlZCwgY3BfZGF0YSk7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfYWRk
KGNvbG9yX3BpY2tlcl9vYmosICJjb2xvcixpdGVtLGxvbmdwcmVzc2VkIiwgb25fY29sb3JwYWxl
dHRlX2xvbmdwcmVzc2VkLCBjcF9kYXRhKTsKKworICAgIGV2YXNfb2JqZWN0X3Jlc2l6ZSh3aW5k
b3ctPmNvbG9yX3NlbGVjdG9yLCA2NTAsIDQwMCk7CisgICAgZXZhc19vYmplY3Rfc2hvdyh3aW5k
b3ctPmNvbG9yX3NlbGVjdG9yKTsKKworICAgIHJldHVybiBFSU5BX1RSVUU7Cit9CisKK3N0YXRp
YyB2b2lkCiB1cGRhdGVfdmlld19mYXZpY29uKEJyb3dzZXJfV2luZG93ICp3aW5kb3csIEV2YXNf
T2JqZWN0ICppY29uKQogewogICAgIC8qIFJlbW92ZSBwcmV2aW91cyBpY29uIGZyb20gVVJMIGJh
ciAqLwpAQCAtMTUwMyw2ICsxNjI2LDggQEAgc3RhdGljIEJyb3dzZXJfV2luZG93ICp3aW5kb3df
Y3JlYXRlKEV2YXNfT2JqZWN0ICpvcGVuZXIsIGNvbnN0IGNoYXIgKnVybCwgaW50IHcKIAogICAg
IC8qIENyZWF0ZSBld2tfdmlldyAqLwogICAgIEV3a19WaWV3X1NtYXJ0X0NsYXNzICpld2tWaWV3
Q2xhc3MgPSBtaW5pQnJvd3NlclZpZXdTbWFydENsYXNzKCk7CisgICAgZXdrVmlld0NsYXNzLT5p
bnB1dF9waWNrZXJfY29sb3JfcmVxdWVzdCA9IG9uX2NvbG9ycGlja2VyX3JlcXVlc3Q7CisgICAg
ZXdrVmlld0NsYXNzLT5pbnB1dF9waWNrZXJfY29sb3JfZGlzbWlzcyA9IG9uX2NvbG9ycGlja2Vy
X2Rpc21pc3M7CiAgICAgZXdrVmlld0NsYXNzLT5ydW5famF2YXNjcmlwdF9hbGVydCA9IG9uX2ph
dmFzY3JpcHRfYWxlcnQ7CiAgICAgZXdrVmlld0NsYXNzLT5ydW5famF2YXNjcmlwdF9jb25maXJt
ID0gb25famF2YXNjcmlwdF9jb25maXJtOwogICAgIGV3a1ZpZXdDbGFzcy0+cnVuX2phdmFzY3Jp
cHRfcHJvbXB0ID0gb25famF2YXNjcmlwdF9wcm9tcHQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201671</attachid>
            <date>2013-05-13 20:30:28 -0700</date>
            <delta_ts>2013-05-13 22:50:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130514122925.patch</filename>
            <type>text/plain</type>
            <size>7559</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5MDE2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmM2NWRlYTIxYjM0NWE2MDAyYjg1ZGY5Y2I3OTNlMGY5
NWFkYjZmMC4uYWFkNDYwNzlkNDI0MTA3YWU5ZDQ5NGRkY2VmOGZmZGM1YTQyMTJiYyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2
IEBACisyMDEzLTA1LTA5ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXUltcGxlbWVudCBjb2xvciBwaWNrZXIgVUkgZm9yIEhUTUw1IGlucHV0IHR5
cGUgY29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFdoZW4gdXNlciBjbGljayBIVE1MNSBpbnB1dCB0eXBlIGNvbG9yLCAK
KyAgICAgICAgY29sb3IgcGlja2VyIHdpbmRvdyBpcyBjcmVhdGVkIG9uIGJyb3dzZXIgb2JqZWN0
IGJ5IHVzaW5nIGVsbV9jb2xvcmNob29zZXJfYWRkKCkuIAorICAgICAgICBJdCBjYW4gbGlzdGVu
IGEgc2lnbmFsIGRpc21pc3NpbmcgY29sb3JwaWNrZXIgYnkgY2FsbGluZyB0aGUgZXdrX2NvbG9y
X3BpY2tlcl9jb2xvcl9zZXQoKS4KKyAgICAgICAgVGhlIGV2YXNfb2JqZXRfY29sb3Jfc2V0KCkg
c2V0IGEgY29sb3IgdmFsdWUgcmV0dXJuaW5nIHRvIGJyb3dzZXIuCisKKyAgICAgICAgKiBNaW5p
QnJvd3Nlci9lZmwvbWFpbi5jOgorICAgICAgICAoX0NvbG9yX1BpY2tlcl9EYXRhKTogVG8gZGVs
aXZlciB0d28gb2JqZWN0IG9mIGRpZmZlcmVudCB0eXBlLgorICAgICAgICAoX0Jyb3dzZXJfV2lu
ZG93KToKKyAgICAgICAgKG9uX2NoYW5nZWRfY29sb3IpOiBDaGFuZ2UgY29sb3Igb2YgcmVjdGFu
Z2xlIHRvIHNob3cgY29sb3Igc2VsZWN0ZWQgYnkgdXNlci4KKyAgICAgICAgKG9uX2NvbG9ycGFs
ZXR0ZV9jbGlja2VkKTogQ2hhbmdlIGNvbG9yIG9mIHJlY3RhbmdsZSB3aXRoIGNsaWNraW5nIGNv
bG9yIGJveCBiYXNpY2FsbHkgb2ZmZWQgYnkgZWxlbWVudCBBUEkuIAorICAgICAgICAob25fY29s
b3JwYWxldHRlX2xvbmdwcmVzc2VkKTogQ2hhbmdlIHZhbHVlIG9mIGNvbG9ycGlja2VyIG9iamVj
dCB3aGVuIGNvbG9yIGJhcnMgYXJlIGNsaWNrZWQuCisgICAgICAgIChvbl9jb2xvcnBpY2tlcl9v
a19jbGlja2VkKTogQ2FsbCBvbl9jb2xvcnBpY2tlcl9kaXNtaXNzIGFuZCBzZXQgdGhlIGNvbG9y
LgorICAgICAgICAob25fY29sb3JwaWNrZXJfZGlzbWlzcyk6IERlbGV0ZSBjb2xvcnBpY2tlciBv
YmplY3QuCisgICAgICAgIChvbl9jb2xvcnBpY2tlcl9yZXF1ZXN0KTogQ3JlYXRlIGNvbG9ycGlj
a2VyIHdpbmRvdyBvYmplY3QuCisgICAgICAgICh3aW5kb3dfY3JlYXRlKTogQ29ubmVjdGluZyB1
cCB3aXRoIFVJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudEVmbC5jcHAKKwogMjAxMy0wNC0yMyAgRGF2
aWQgR3JvZ2FuICA8ZGdyb2dhbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4g
UmVtb3ZlIG15c2VsZiBmcm9tIHdhdGNobGlzdC4KZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93
c2VyL2VmbC9tYWluLmMgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCmluZGV4IDNiMzk1
MWY3NGE2MzQzMjY5NjM5OWI4ZDRhNGVlYTc1YWM4NzQyMzUuLjU3ZTRhOWRjOWQ1YTkwNTE0ZDcw
YjMzNDE0ZjcxN2U2MmY5MGVlMzIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9t
YWluLmMKKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4uYwpAQCAtOTAsNiArOTAsMTEg
QEAgdHlwZWRlZiBzdHJ1Y3QgX1Rvb2x0aXBfSW5mb3JtYXRpb24gewogICAgIEVpbmFfQm9vbCBz
aG93bjsKIH0gVG9vbHRpcF9JbmZvcm1hdGlvbjsKIAordHlwZWRlZiBzdHJ1Y3QgX0NvbG9yX1Bp
Y2tlcl9EYXRhIHsKKyAgICBFd2tfQ29sb3JfUGlja2VyICpjb2xvcl9waWNrZXI7CisgICAgRXZh
c19PYmplY3QgKnJlY3RfZGF0YTsKK30gQ29sb3JfUGlja2VyX0RhdGE7CisKIHR5cGVkZWYgc3Ry
dWN0IF9Ccm93c2VyX1dpbmRvdyB7CiAgICAgRXZhc19PYmplY3QgKmVsbV93aW5kb3c7CiAgICAg
RXZhc19PYmplY3QgKmV3a192aWV3OwpAQCAtMTA5LDYgKzExNCw3IEBAIHR5cGVkZWYgc3RydWN0
IF9Ccm93c2VyX1dpbmRvdyB7CiAgICAgaW50IGN1cnJlbnRfem9vbV9sZXZlbDsgCiAgICAgVG9v
bHRpcF9JbmZvcm1hdGlvbiB0b29sdGlwOwogICAgIEV2YXNfT2JqZWN0ICpjb250ZXh0X3BvcHVw
OworICAgIEV2YXNfT2JqZWN0ICpjb2xvcl9zZWxlY3RvcjsKIH0gQnJvd3Nlcl9XaW5kb3c7CiAK
IHR5cGVkZWYgc3RydWN0IF9GaWxlX1NlbGVjdG9yX0RhdGEgewpAQCAtNTk1LDYgKzYwMSwxMjMg
QEAgb25fZG93bmxvYWRfZmFpbGVkKHZvaWQgKnVzZXJfZGF0YSwgRXZhc19PYmplY3QgKmV3a192
aWV3LCB2b2lkICpldmVudF9pbmZvKQogfQogCiBzdGF0aWMgdm9pZAorb25fY29sb3JfY2hhbmdl
ZCh2b2lkICpkYXRhLCBFdmFzX09iamVjdCAqb2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAg
IGludCByLCBnLCBiLCBhOworICAgIENvbG9yX1BpY2tlcl9EYXRhICpjcF9kYXRhID0gKENvbG9y
X1BpY2tlcl9EYXRhICopZGF0YTsKKworICAgIGVsbV9jb2xvcnNlbGVjdG9yX2NvbG9yX2dldChv
YmosICZyLCAmZywgJmIsICZhKTsKKyAgICBldmFzX29iamVjdF9jb2xvcl9zZXQoY3BfZGF0YS0+
cmVjdF9kYXRhLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGljIHZvaWQKK29uX2NvbG9ycGFsZXR0
ZV9jbGlja2VkKHZvaWQgKmRhdGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8p
Cit7CisgICAgaW50IHIsIGcsIGIsIGE7CisgICAgQ29sb3JfUGlja2VyX0RhdGEgKmNwX2RhdGEg
PSAoQ29sb3JfUGlja2VyX0RhdGEgKilkYXRhOworICAgIEVsbV9PYmplY3RfSXRlbSAqY29sb3Jf
aXRlbSA9IChFbG1fT2JqZWN0X0l0ZW0gKilldmVudF9pbmZvOworCisgICAgZWxtX2NvbG9yc2Vs
ZWN0b3JfcGFsZXR0ZV9pdGVtX2NvbG9yX2dldChjb2xvcl9pdGVtLCAmciwgJmcsICZiLCAmYSk7
CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KGNwX2RhdGEtPnJlY3RfZGF0YSwgciwgZywgYiwg
YSk7Cit9CisKK3N0YXRpYyB2b2lkCitvbl9jb2xvcnBhbGV0dGVfbG9uZ3ByZXNzZWQodm9pZCAq
ZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5mbykKK3sKKyAgICBpbnQgciwg
ZywgYiwgYTsKKyAgICBFbG1fT2JqZWN0X0l0ZW0gKmNvbG9yX2l0ZW0gPSAoRWxtX09iamVjdF9J
dGVtICopZXZlbnRfaW5mbzsKKyAgICBDb2xvcl9QaWNrZXJfRGF0YSAqY3BfZGF0YSA9IChDb2xv
cl9QaWNrZXJfRGF0YSAqKWRhdGE7CisKKyAgICBlbG1fY29sb3JzZWxlY3Rvcl9wYWxldHRlX2l0
ZW1fY29sb3JfZ2V0KGNvbG9yX2l0ZW0sICZyLCAmZywgJmIsICZhKTsKKyAgICBldmFzX29iamVj
dF9jb2xvcl9zZXQoY3BfZGF0YS0+cmVjdF9kYXRhLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGlj
IHZvaWQKK29uX2NvbG9ycGlja2VyX29rX2NsaWNrZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3Qg
Km9iaiwgdm9pZCAqZXZlbnRfaW5mbykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKyAgICBDb2xv
cl9QaWNrZXJfRGF0YSAqY3BfZGF0YSA9IChDb2xvcl9QaWNrZXJfRGF0YSAqKWRhdGE7CisgICAg
CisgICAgZXZhc19vYmplY3RfY29sb3JfZ2V0KGNwX2RhdGEtPnJlY3RfZGF0YSwgJnIsICZnLCAm
YiwgJmEpOworICAgIGV3a19jb2xvcl9waWNrZXJfY29sb3Jfc2V0KGNwX2RhdGEtPmNvbG9yUGlj
a2VyLCByLCBnLCBiLCBhKTsKKworICAgIGZyZWUoY3BfZGF0YSk7Cit9CisKK3N0YXRpYyBFaW5h
X0Jvb2wKK29uX2NvbG9ycGlja2VyX2Rpc21pc3MoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QpCit7
CisgICAgQnJvd3Nlcl9XaW5kb3cgKndpbmRvdyA9IHdpbmRvd19maW5kX3dpdGhfZXdrX3ZpZXco
c2QtPnNlbGYpOworICAgIGV2YXNfb2JqZWN0X2RlbCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yKTsK
KworICAgIHJldHVybiBFSU5BX1RSVUU7Cit9CisKK3N0YXRpYyBFaW5hX0Jvb2wKK29uX2NvbG9y
cGlja2VyX3JlcXVlc3QoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QsIEV3a19Db2xvcl9QaWNrZXIq
IGNvbG9yX1BpY2tlcikKK3sKKyAgICBCcm93c2VyX1dpbmRvdyAqd2luZG93ID0gd2luZG93X2Zp
bmRfd2l0aF9ld2tfdmlldyhzZC0+c2VsZik7CisgICAgd2luZG93LT5jb2xvcl9zZWxlY3RvciA9
IGVsbV93aW5fYWRkKHdpbmRvdy0+ZWxtX3dpbmRvdywgImNvbG9yIHNlbGVjdG9yIiwgRUxNX1dJ
Tl9ESUFMT0dfQkFTSUMpOworCisgICAgRXZhc19PYmplY3QgKnJlY3QsICpieCwgKmZyLCAqYnQs
ICpjb2xvcl9waWNrZXJfb2JqOworICAgIGludCByLCBnLCBiLCBhOworCisgICAgQ29sb3JfUGlj
a2VyX0RhdGEgKmNwX2RhdGEgPSAoQ29sb3JfUGlja2VyX0RhdGEgKiltYWxsb2Moc2l6ZW9mKENv
bG9yX1BpY2tlcl9EYXRhKSk7CisgICAgY3BfZGF0YS0+Y29sb3JQaWNrZXIgPSBjb2xvcl9QaWNr
ZXI7CisKKyAgICBlbG1fd2luX3RpdGxlX3NldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLCAiQ29s
b3Igc2VsZWN0b3IiKTsKKyAgICBlbG1fd2luX21vZGFsX3NldCh3aW5kb3ctPmNvbG9yX3NlbGVj
dG9yLCBFSU5BX1RSVUUpOworICAgIGVsbV93aW5fYXV0b2RlbF9zZXQod2luZG93LT5jb2xvcl9z
ZWxlY3RvciwgRUlOQV9UUlVFKTsKKyAgICBlbG1fcG9saWN5X3NldChFTE1fUE9MSUNZX1FVSVQs
IEVMTV9QT0xJQ1lfUVVJVF9MQVNUX1dJTkRPV19DTE9TRUQpOworCisgICAgYnggPSBlbG1fYm94
X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yKTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRf
d2VpZ2h0X3NldChieCwgRVZBU19ISU5UX0ZJTEwsIEVWQVNfSElOVF9GSUxMKTsKKyAgICBldmFz
X29iamVjdF9zaXplX2hpbnRfYWxpZ25fc2V0KGJ4LCBFVkFTX0hJTlRfRklMTCwgRVZBU19ISU5U
X0ZJTEwpOworICAgIGVsbV93aW5fcmVzaXplX29iamVjdF9hZGQod2luZG93LT5jb2xvcl9zZWxl
Y3RvciwgYngpOworICAgIGV2YXNfb2JqZWN0X3Nob3coYngpOworCisgICAgZnIgPSBlbG1fZnJh
bWVfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGlu
dF93ZWlnaHRfc2V0KGZyLCAxLjAsIDAuNSk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X2Fs
aWduX3NldChmciwgRVZBU19ISU5UX0ZJTEwsIEVWQVNfSElOVF9GSUxMKTsKKyAgICBlbG1fb2Jq
ZWN0X3RleHRfc2V0KGZyLCAiQ29sb3IgVmlldyIpOworICAgIGVsbV9ib3hfcGFja19lbmQoYngs
IGZyKTsKKyAgICBldmFzX29iamVjdF9zaG93KGZyKTsKKworICAgIHJlY3QgPSBldmFzX29iamVj
dF9yZWN0YW5nbGVfYWRkKGV2YXNfb2JqZWN0X2V2YXNfZ2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0
b3IpKTsKKyAgICBlbG1fb2JqZWN0X2NvbnRlbnRfc2V0KGZyLCByZWN0KTsKKyAgICBld2tfY29s
b3JfcGlja2VyX2NvbG9yX2dldChjb2xvcl9QaWNrZXIsICZyLCAmZywgJmIsICZhKTsKKyAgICBl
dmFzX29iamVjdF9jb2xvcl9zZXQocmVjdCwgciwgZywgYiwgYSk7CisgICAgZXZhc19vYmplY3Rf
c2hvdyhyZWN0KTsKKyAgICBjcF9kYXRhLT5yZWN0X2RhdGEgPSByZWN0OworCisgICAgZnIgPSBl
bG1fZnJhbWVfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpOworICAgIGV2YXNfb2JqZWN0X3Np
emVfaGludF93ZWlnaHRfc2V0KGZyLCAxLjAsIDEuNSk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9o
aW50X2FsaWduX3NldChmciwgRVZBU19ISU5UX0ZJTEwsIEVWQVNfSElOVF9GSUxMKTsKKyAgICBl
bG1fb2JqZWN0X3RleHRfc2V0KGZyLCAiQ29sb3IgU2VsZWN0b3IiKTsKKyAgICBlbG1fYm94X3Bh
Y2tfZW5kKGJ4LCBmcik7CisgICAgZXZhc19vYmplY3Rfc2hvdyhmcik7CisKKyAgICBjb2xvcl9w
aWNrZXJfb2JqID0gZWxtX2NvbG9yc2VsZWN0b3JfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3Ip
OworICAgIGVsbV9vYmplY3RfY29udGVudF9zZXQoZnIsIGNvbG9yX3BpY2tlcl9vYmopOworCisg
ICAgYnQgPSBlbG1fYnV0dG9uX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yKTsKKyAgICBlbG1f
b2JqZWN0X3RleHRfc2V0KGJ0LCAiT0siKTsKKyAgICBlbG1fYm94X3BhY2tfZW5kKGJ4LCBidCk7
CisgICAgZXZhc19vYmplY3Rfc2hvdyhidCk7CisKKyAgICBldmFzX29iamVjdF9zaG93KGNvbG9y
X3BpY2tlcl9vYmopOyAKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQoYnQsICJj
bGlja2VkIiwgb25fY29sb3JwaWNrZXJfb2tfY2xpY2tlZCwgY3BfZGF0YSk7CisgICAgZXZhc19v
YmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKGNvbG9yX3BpY2tlcl9vYmosICJjaGFuZ2VkIiwgb25f
Y29sb3JfY2hhbmdlZCwgY3BfZGF0YSk7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tf
YWRkKGNvbG9yX3BpY2tlcl9vYmosICJjb2xvcixpdGVtLHNlbGVjdGVkIiwgb25fY29sb3JwYWxl
dHRlX2NsaWNrZWQsIGNwX2RhdGEpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2Fk
ZChjb2xvcl9waWNrZXJfb2JqLCAiY29sb3IsaXRlbSxsb25ncHJlc3NlZCIsIG9uX2NvbG9ycGFs
ZXR0ZV9sb25ncHJlc3NlZCwgY3BfZGF0YSk7CisKKyAgICBldmFzX29iamVjdF9yZXNpemUod2lu
ZG93LT5jb2xvcl9zZWxlY3RvciwgNjUwLCA0MDApOworICAgIGV2YXNfb2JqZWN0X3Nob3cod2lu
ZG93LT5jb2xvcl9zZWxlY3Rvcik7CisKKyAgICByZXR1cm4gRUlOQV9UUlVFOworfQorCitzdGF0
aWMgdm9pZAogdXBkYXRlX3ZpZXdfZmF2aWNvbihCcm93c2VyX1dpbmRvdyAqd2luZG93LCBFdmFz
X09iamVjdCAqaWNvbikKIHsKICAgICAvKiBSZW1vdmUgcHJldmlvdXMgaWNvbiBmcm9tIFVSTCBi
YXIgKi8KQEAgLTE1MDMsNiArMTYyNiw4IEBAIHN0YXRpYyBCcm93c2VyX1dpbmRvdyAqd2luZG93
X2NyZWF0ZShFdmFzX09iamVjdCAqb3BlbmVyLCBjb25zdCBjaGFyICp1cmwsIGludCB3CiAKICAg
ICAvKiBDcmVhdGUgZXdrX3ZpZXcgKi8KICAgICBFd2tfVmlld19TbWFydF9DbGFzcyAqZXdrVmll
d0NsYXNzID0gbWluaUJyb3dzZXJWaWV3U21hcnRDbGFzcygpOworICAgIGV3a1ZpZXdDbGFzcy0+
aW5wdXRfcGlja2VyX2NvbG9yX3JlcXVlc3QgPSBvbl9jb2xvcnBpY2tlcl9yZXF1ZXN0OworICAg
IGV3a1ZpZXdDbGFzcy0+aW5wdXRfcGlja2VyX2NvbG9yX2Rpc21pc3MgPSBvbl9jb2xvcnBpY2tl
cl9kaXNtaXNzOwogICAgIGV3a1ZpZXdDbGFzcy0+cnVuX2phdmFzY3JpcHRfYWxlcnQgPSBvbl9q
YXZhc2NyaXB0X2FsZXJ0OwogICAgIGV3a1ZpZXdDbGFzcy0+cnVuX2phdmFzY3JpcHRfY29uZmly
bSA9IG9uX2phdmFzY3JpcHRfY29uZmlybTsKICAgICBld2tWaWV3Q2xhc3MtPnJ1bl9qYXZhc2Ny
aXB0X3Byb21wdCA9IG9uX2phdmFzY3JpcHRfcHJvbXB0Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201672</attachid>
            <date>2013-05-13 20:47:19 -0700</date>
            <delta_ts>2013-05-13 22:50:35 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130514124616.patch</filename>
            <type>text/plain</type>
            <size>7559</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5MDE2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmM2NWRlYTIxYjM0NWE2MDAyYjg1ZGY5Y2I3OTNlMGY5
NWFkYjZmMC4uYWFkNDYwNzlkNDI0MTA3YWU5ZDQ5NGRkY2VmOGZmZGM1YTQyMTJiYyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2
IEBACisyMDEzLTA1LTA5ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXUltcGxlbWVudCBjb2xvciBwaWNrZXIgVUkgZm9yIEhUTUw1IGlucHV0IHR5
cGUgY29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFdoZW4gdXNlciBjbGljayBIVE1MNSBpbnB1dCB0eXBlIGNvbG9yLCAK
KyAgICAgICAgY29sb3IgcGlja2VyIHdpbmRvdyBpcyBjcmVhdGVkIG9uIGJyb3dzZXIgb2JqZWN0
IGJ5IHVzaW5nIGVsbV9jb2xvcmNob29zZXJfYWRkKCkuIAorICAgICAgICBJdCBjYW4gbGlzdGVu
IGEgc2lnbmFsIGRpc21pc3NpbmcgY29sb3JwaWNrZXIgYnkgY2FsbGluZyB0aGUgZXdrX2NvbG9y
X3BpY2tlcl9jb2xvcl9zZXQoKS4KKyAgICAgICAgVGhlIGV2YXNfb2JqZXRfY29sb3Jfc2V0KCkg
c2V0IGEgY29sb3IgdmFsdWUgcmV0dXJuaW5nIHRvIGJyb3dzZXIuCisKKyAgICAgICAgKiBNaW5p
QnJvd3Nlci9lZmwvbWFpbi5jOgorICAgICAgICAoX0NvbG9yX1BpY2tlcl9EYXRhKTogVG8gZGVs
aXZlciB0d28gb2JqZWN0IG9mIGRpZmZlcmVudCB0eXBlLgorICAgICAgICAoX0Jyb3dzZXJfV2lu
ZG93KToKKyAgICAgICAgKG9uX2NoYW5nZWRfY29sb3IpOiBDaGFuZ2UgY29sb3Igb2YgcmVjdGFu
Z2xlIHRvIHNob3cgY29sb3Igc2VsZWN0ZWQgYnkgdXNlci4KKyAgICAgICAgKG9uX2NvbG9ycGFs
ZXR0ZV9jbGlja2VkKTogQ2hhbmdlIGNvbG9yIG9mIHJlY3RhbmdsZSB3aXRoIGNsaWNraW5nIGNv
bG9yIGJveCBiYXNpY2FsbHkgb2ZmZWQgYnkgZWxlbWVudCBBUEkuIAorICAgICAgICAob25fY29s
b3JwYWxldHRlX2xvbmdwcmVzc2VkKTogQ2hhbmdlIHZhbHVlIG9mIGNvbG9ycGlja2VyIG9iamVj
dCB3aGVuIGNvbG9yIGJhcnMgYXJlIGNsaWNrZWQuCisgICAgICAgIChvbl9jb2xvcnBpY2tlcl9v
a19jbGlja2VkKTogQ2FsbCBvbl9jb2xvcnBpY2tlcl9kaXNtaXNzIGFuZCBzZXQgdGhlIGNvbG9y
LgorICAgICAgICAob25fY29sb3JwaWNrZXJfZGlzbWlzcyk6IERlbGV0ZSBjb2xvcnBpY2tlciBv
YmplY3QuCisgICAgICAgIChvbl9jb2xvcnBpY2tlcl9yZXF1ZXN0KTogQ3JlYXRlIGNvbG9ycGlj
a2VyIHdpbmRvdyBvYmplY3QuCisgICAgICAgICh3aW5kb3dfY3JlYXRlKTogQ29ubmVjdGluZyB1
cCB3aXRoIFVJUHJvY2Vzcy9lZmwvUGFnZUNsaWVudEVmbC5jcHAKKwogMjAxMy0wNC0yMyAgRGF2
aWQgR3JvZ2FuICA8ZGdyb2dhbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4g
UmVtb3ZlIG15c2VsZiBmcm9tIHdhdGNobGlzdC4KZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93
c2VyL2VmbC9tYWluLmMgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCmluZGV4IDNiMzk1
MWY3NGE2MzQzMjY5NjM5OWI4ZDRhNGVlYTc1YWM4NzQyMzUuLjU3ZTRhOWRjOWQ1YTkwNTE0ZDcw
YjMzNDE0ZjcxN2U2MmY5MGVlMzIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9t
YWluLmMKKysrIGIvVG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4uYwpAQCAtOTAsNiArOTAsMTEg
QEAgdHlwZWRlZiBzdHJ1Y3QgX1Rvb2x0aXBfSW5mb3JtYXRpb24gewogICAgIEVpbmFfQm9vbCBz
aG93bjsKIH0gVG9vbHRpcF9JbmZvcm1hdGlvbjsKIAordHlwZWRlZiBzdHJ1Y3QgX0NvbG9yX1Bp
Y2tlcl9EYXRhIHsKKyAgICBFd2tfQ29sb3JfUGlja2VyICpjb2xvcl9waWNrZXI7CisgICAgRXZh
c19PYmplY3QgKnJlY3RfZGF0YTsKK30gQ29sb3JfUGlja2VyX0RhdGE7CisKIHR5cGVkZWYgc3Ry
dWN0IF9Ccm93c2VyX1dpbmRvdyB7CiAgICAgRXZhc19PYmplY3QgKmVsbV93aW5kb3c7CiAgICAg
RXZhc19PYmplY3QgKmV3a192aWV3OwpAQCAtMTA5LDYgKzExNCw3IEBAIHR5cGVkZWYgc3RydWN0
IF9Ccm93c2VyX1dpbmRvdyB7CiAgICAgaW50IGN1cnJlbnRfem9vbV9sZXZlbDsgCiAgICAgVG9v
bHRpcF9JbmZvcm1hdGlvbiB0b29sdGlwOwogICAgIEV2YXNfT2JqZWN0ICpjb250ZXh0X3BvcHVw
OworICAgIEV2YXNfT2JqZWN0ICpjb2xvcl9zZWxlY3RvcjsKIH0gQnJvd3Nlcl9XaW5kb3c7CiAK
IHR5cGVkZWYgc3RydWN0IF9GaWxlX1NlbGVjdG9yX0RhdGEgewpAQCAtNTk1LDYgKzYwMSwxMjMg
QEAgb25fZG93bmxvYWRfZmFpbGVkKHZvaWQgKnVzZXJfZGF0YSwgRXZhc19PYmplY3QgKmV3a192
aWV3LCB2b2lkICpldmVudF9pbmZvKQogfQogCiBzdGF0aWMgdm9pZAorb25fY29sb3JfY2hhbmdl
ZCh2b2lkICpkYXRhLCBFdmFzX09iamVjdCAqb2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAg
IGludCByLCBnLCBiLCBhOworICAgIENvbG9yX1BpY2tlcl9EYXRhICpjcF9kYXRhID0gKENvbG9y
X1BpY2tlcl9EYXRhICopZGF0YTsKKworICAgIGVsbV9jb2xvcnNlbGVjdG9yX2NvbG9yX2dldChv
YmosICZyLCAmZywgJmIsICZhKTsKKyAgICBldmFzX29iamVjdF9jb2xvcl9zZXQoY3BfZGF0YS0+
cmVjdF9kYXRhLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGljIHZvaWQKK29uX2NvbG9ycGFsZXR0
ZV9jbGlja2VkKHZvaWQgKmRhdGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8p
Cit7CisgICAgaW50IHIsIGcsIGIsIGE7CisgICAgQ29sb3JfUGlja2VyX0RhdGEgKmNwX2RhdGEg
PSAoQ29sb3JfUGlja2VyX0RhdGEgKilkYXRhOworICAgIEVsbV9PYmplY3RfSXRlbSAqY29sb3Jf
aXRlbSA9IChFbG1fT2JqZWN0X0l0ZW0gKilldmVudF9pbmZvOworCisgICAgZWxtX2NvbG9yc2Vs
ZWN0b3JfcGFsZXR0ZV9pdGVtX2NvbG9yX2dldChjb2xvcl9pdGVtLCAmciwgJmcsICZiLCAmYSk7
CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KGNwX2RhdGEtPnJlY3RfZGF0YSwgciwgZywgYiwg
YSk7Cit9CisKK3N0YXRpYyB2b2lkCitvbl9jb2xvcnBhbGV0dGVfbG9uZ3ByZXNzZWQodm9pZCAq
ZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5mbykKK3sKKyAgICBpbnQgciwg
ZywgYiwgYTsKKyAgICBFbG1fT2JqZWN0X0l0ZW0gKmNvbG9yX2l0ZW0gPSAoRWxtX09iamVjdF9J
dGVtICopZXZlbnRfaW5mbzsKKyAgICBDb2xvcl9QaWNrZXJfRGF0YSAqY3BfZGF0YSA9IChDb2xv
cl9QaWNrZXJfRGF0YSAqKWRhdGE7CisKKyAgICBlbG1fY29sb3JzZWxlY3Rvcl9wYWxldHRlX2l0
ZW1fY29sb3JfZ2V0KGNvbG9yX2l0ZW0sICZyLCAmZywgJmIsICZhKTsKKyAgICBldmFzX29iamVj
dF9jb2xvcl9zZXQoY3BfZGF0YS0+cmVjdF9kYXRhLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGlj
IHZvaWQKK29uX2NvbG9ycGlja2VyX29rX2NsaWNrZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3Qg
Km9iaiwgdm9pZCAqZXZlbnRfaW5mbykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKyAgICBDb2xv
cl9QaWNrZXJfRGF0YSAqY3BfZGF0YSA9IChDb2xvcl9QaWNrZXJfRGF0YSAqKWRhdGE7CisgICAg
CisgICAgZXZhc19vYmplY3RfY29sb3JfZ2V0KGNwX2RhdGEtPnJlY3RfZGF0YSwgJnIsICZnLCAm
YiwgJmEpOworICAgIGV3a19jb2xvcl9waWNrZXJfY29sb3Jfc2V0KGNwX2RhdGEtPmNvbG9yUGlj
a2VyLCByLCBnLCBiLCBhKTsKKworICAgIGZyZWUoY3BfZGF0YSk7Cit9CisKK3N0YXRpYyBFaW5h
X0Jvb2wKK29uX2NvbG9ycGlja2VyX2Rpc21pc3MoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QpCit7
CisgICAgQnJvd3Nlcl9XaW5kb3cgKndpbmRvdyA9IHdpbmRvd19maW5kX3dpdGhfZXdrX3ZpZXco
c2QtPnNlbGYpOworICAgIGV2YXNfb2JqZWN0X2RlbCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yKTsK
KworICAgIHJldHVybiBFSU5BX1RSVUU7Cit9CisKK3N0YXRpYyBFaW5hX0Jvb2wKK29uX2NvbG9y
cGlja2VyX3JlcXVlc3QoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QsIEV3a19Db2xvcl9QaWNrZXIq
IGNvbG9yX1BpY2tlcikKK3sKKyAgICBCcm93c2VyX1dpbmRvdyAqd2luZG93ID0gd2luZG93X2Zp
bmRfd2l0aF9ld2tfdmlldyhzZC0+c2VsZik7CisgICAgd2luZG93LT5jb2xvcl9zZWxlY3RvciA9
IGVsbV93aW5fYWRkKHdpbmRvdy0+ZWxtX3dpbmRvdywgImNvbG9yIHNlbGVjdG9yIiwgRUxNX1dJ
Tl9ESUFMT0dfQkFTSUMpOworCisgICAgRXZhc19PYmplY3QgKnJlY3QsICpieCwgKmZyLCAqYnQs
ICpjb2xvcl9waWNrZXJfb2JqOworICAgIGludCByLCBnLCBiLCBhOworCisgICAgQ29sb3JfUGlj
a2VyX0RhdGEgKmNwX2RhdGEgPSAoQ29sb3JfUGlja2VyX0RhdGEgKiltYWxsb2Moc2l6ZW9mKENv
bG9yX1BpY2tlcl9EYXRhKSk7CisgICAgY3BfZGF0YS0+Y29sb3JQaWNrZXIgPSBjb2xvcl9QaWNr
ZXI7CisKKyAgICBlbG1fd2luX3RpdGxlX3NldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLCAiQ29s
b3Igc2VsZWN0b3IiKTsKKyAgICBlbG1fd2luX21vZGFsX3NldCh3aW5kb3ctPmNvbG9yX3NlbGVj
dG9yLCBFSU5BX1RSVUUpOworICAgIGVsbV93aW5fYXV0b2RlbF9zZXQod2luZG93LT5jb2xvcl9z
ZWxlY3RvciwgRUlOQV9UUlVFKTsKKyAgICBlbG1fcG9saWN5X3NldChFTE1fUE9MSUNZX1FVSVQs
IEVMTV9QT0xJQ1lfUVVJVF9MQVNUX1dJTkRPV19DTE9TRUQpOworCisgICAgYnggPSBlbG1fYm94
X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yKTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRf
d2VpZ2h0X3NldChieCwgRVZBU19ISU5UX0ZJTEwsIEVWQVNfSElOVF9GSUxMKTsKKyAgICBldmFz
X29iamVjdF9zaXplX2hpbnRfYWxpZ25fc2V0KGJ4LCBFVkFTX0hJTlRfRklMTCwgRVZBU19ISU5U
X0ZJTEwpOworICAgIGVsbV93aW5fcmVzaXplX29iamVjdF9hZGQod2luZG93LT5jb2xvcl9zZWxl
Y3RvciwgYngpOworICAgIGV2YXNfb2JqZWN0X3Nob3coYngpOworCisgICAgZnIgPSBlbG1fZnJh
bWVfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGlu
dF93ZWlnaHRfc2V0KGZyLCAxLjAsIDAuNSk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X2Fs
aWduX3NldChmciwgRVZBU19ISU5UX0ZJTEwsIEVWQVNfSElOVF9GSUxMKTsKKyAgICBlbG1fb2Jq
ZWN0X3RleHRfc2V0KGZyLCAiQ29sb3IgVmlldyIpOworICAgIGVsbV9ib3hfcGFja19lbmQoYngs
IGZyKTsKKyAgICBldmFzX29iamVjdF9zaG93KGZyKTsKKworICAgIHJlY3QgPSBldmFzX29iamVj
dF9yZWN0YW5nbGVfYWRkKGV2YXNfb2JqZWN0X2V2YXNfZ2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0
b3IpKTsKKyAgICBlbG1fb2JqZWN0X2NvbnRlbnRfc2V0KGZyLCByZWN0KTsKKyAgICBld2tfY29s
b3JfcGlja2VyX2NvbG9yX2dldChjb2xvcl9QaWNrZXIsICZyLCAmZywgJmIsICZhKTsKKyAgICBl
dmFzX29iamVjdF9jb2xvcl9zZXQocmVjdCwgciwgZywgYiwgYSk7CisgICAgZXZhc19vYmplY3Rf
c2hvdyhyZWN0KTsKKyAgICBjcF9kYXRhLT5yZWN0X2RhdGEgPSByZWN0OworCisgICAgZnIgPSBl
bG1fZnJhbWVfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpOworICAgIGV2YXNfb2JqZWN0X3Np
emVfaGludF93ZWlnaHRfc2V0KGZyLCAxLjAsIDEuNSk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9o
aW50X2FsaWduX3NldChmciwgRVZBU19ISU5UX0ZJTEwsIEVWQVNfSElOVF9GSUxMKTsKKyAgICBl
bG1fb2JqZWN0X3RleHRfc2V0KGZyLCAiQ29sb3IgU2VsZWN0b3IiKTsKKyAgICBlbG1fYm94X3Bh
Y2tfZW5kKGJ4LCBmcik7CisgICAgZXZhc19vYmplY3Rfc2hvdyhmcik7CisKKyAgICBjb2xvcl9w
aWNrZXJfb2JqID0gZWxtX2NvbG9yc2VsZWN0b3JfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3Ip
OworICAgIGVsbV9vYmplY3RfY29udGVudF9zZXQoZnIsIGNvbG9yX3BpY2tlcl9vYmopOworCisg
ICAgYnQgPSBlbG1fYnV0dG9uX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yKTsKKyAgICBlbG1f
b2JqZWN0X3RleHRfc2V0KGJ0LCAiT0siKTsKKyAgICBlbG1fYm94X3BhY2tfZW5kKGJ4LCBidCk7
CisgICAgZXZhc19vYmplY3Rfc2hvdyhidCk7CisKKyAgICBldmFzX29iamVjdF9zaG93KGNvbG9y
X3BpY2tlcl9vYmopOyAKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQoYnQsICJj
bGlja2VkIiwgb25fY29sb3JwaWNrZXJfb2tfY2xpY2tlZCwgY3BfZGF0YSk7CisgICAgZXZhc19v
YmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKGNvbG9yX3BpY2tlcl9vYmosICJjaGFuZ2VkIiwgb25f
Y29sb3JfY2hhbmdlZCwgY3BfZGF0YSk7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tf
YWRkKGNvbG9yX3BpY2tlcl9vYmosICJjb2xvcixpdGVtLHNlbGVjdGVkIiwgb25fY29sb3JwYWxl
dHRlX2NsaWNrZWQsIGNwX2RhdGEpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2Fk
ZChjb2xvcl9waWNrZXJfb2JqLCAiY29sb3IsaXRlbSxsb25ncHJlc3NlZCIsIG9uX2NvbG9ycGFs
ZXR0ZV9sb25ncHJlc3NlZCwgY3BfZGF0YSk7CisKKyAgICBldmFzX29iamVjdF9yZXNpemUod2lu
ZG93LT5jb2xvcl9zZWxlY3RvciwgNjUwLCA0MDApOworICAgIGV2YXNfb2JqZWN0X3Nob3cod2lu
ZG93LT5jb2xvcl9zZWxlY3Rvcik7CisKKyAgICByZXR1cm4gRUlOQV9UUlVFOworfQorCitzdGF0
aWMgdm9pZAogdXBkYXRlX3ZpZXdfZmF2aWNvbihCcm93c2VyX1dpbmRvdyAqd2luZG93LCBFdmFz
X09iamVjdCAqaWNvbikKIHsKICAgICAvKiBSZW1vdmUgcHJldmlvdXMgaWNvbiBmcm9tIFVSTCBi
YXIgKi8KQEAgLTE1MDMsNiArMTYyNiw4IEBAIHN0YXRpYyBCcm93c2VyX1dpbmRvdyAqd2luZG93
X2NyZWF0ZShFdmFzX09iamVjdCAqb3BlbmVyLCBjb25zdCBjaGFyICp1cmwsIGludCB3CiAKICAg
ICAvKiBDcmVhdGUgZXdrX3ZpZXcgKi8KICAgICBFd2tfVmlld19TbWFydF9DbGFzcyAqZXdrVmll
d0NsYXNzID0gbWluaUJyb3dzZXJWaWV3U21hcnRDbGFzcygpOworICAgIGV3a1ZpZXdDbGFzcy0+
aW5wdXRfcGlja2VyX2NvbG9yX3JlcXVlc3QgPSBvbl9jb2xvcnBpY2tlcl9yZXF1ZXN0OworICAg
IGV3a1ZpZXdDbGFzcy0+aW5wdXRfcGlja2VyX2NvbG9yX2Rpc21pc3MgPSBvbl9jb2xvcnBpY2tl
cl9kaXNtaXNzOwogICAgIGV3a1ZpZXdDbGFzcy0+cnVuX2phdmFzY3JpcHRfYWxlcnQgPSBvbl9q
YXZhc2NyaXB0X2FsZXJ0OwogICAgIGV3a1ZpZXdDbGFzcy0+cnVuX2phdmFzY3JpcHRfY29uZmly
bSA9IG9uX2phdmFzY3JpcHRfY29uZmlybTsKICAgICBld2tWaWV3Q2xhc3MtPnJ1bl9qYXZhc2Ny
aXB0X3Byb21wdCA9IG9uX2phdmFzY3JpcHRfcHJvbXB0Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>201680</attachid>
            <date>2013-05-13 22:50:44 -0700</date>
            <delta_ts>2013-05-19 23:54:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130514144940.patch</filename>
            <type>text/plain</type>
            <size>7563</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5MDE2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmM2NWRlYTIxYjM0NWE2MDAyYjg1ZGY5Y2I3OTNlMGY5
NWFkYjZmMC4uZGM2MGU2OWU4YzFhNDk0ZWM4MjZlMTY2MTk4MGM1ZWJiZjE3NTA2MSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2
IEBACisyMDEzLTA1LTA5ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXUltcGxlbWVudCBjb2xvciBwaWNrZXIgVUkgZm9yIEhUTUw1IGlucHV0IHR5
cGUgY29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFdoZW4gdXNlciBjbGlja3MgSFRNTDUgaW5wdXQgdHlwZSBjb2xvciwg
CisgICAgICAgIGNvbG9yIHBpY2tlciB3aW5kb3cgaXMgY3JlYXRlZCBvbiBicm93c2VyIG9iamVj
dCBieSB1c2luZyBlbG1fY29sb3JjaG9vc2VyX2FkZCgpLiAKKyAgICAgICAgSXQgY2FuIGxpc3Rl
biBhIHNpZ25hbCBkaXNtaXNzaW5nIGNvbG9ycGlja2VyIGJ5IGNhbGxpbmcgdGhlIGV3a19jb2xv
cl9waWNrZXJfY29sb3Jfc2V0KCkuCisgICAgICAgIFRoZSBldmFzX29iamV0X2NvbG9yX3NldCgp
IHNldHMgYSBjb2xvciB2YWx1ZSByZXR1cm5pbmcgdG8gYnJvd3Nlci4KKworICAgICAgICAqIE1p
bmlCcm93c2VyL2VmbC9tYWluLmM6CisgICAgICAgIChfQ29sb3JfUGlja2VyX0RhdGEpOiBUbyBk
ZWxpdmVyIHR3byBvYmplY3Qgb2YgZGlmZmVyZW50IHR5cGUuCisgICAgICAgIChfQnJvd3Nlcl9X
aW5kb3cpOgorICAgICAgICAob25fY2hhbmdlZF9jb2xvcik6IENoYW5nZSBjb2xvciBvZiByZWN0
YW5nbGUgdG8gc2hvdyBjb2xvciBzZWxlY3RlZCBieSB1c2VyLgorICAgICAgICAob25fY29sb3Jw
YWxldHRlX2NsaWNrZWQpOiBDaGFuZ2UgY29sb3Igb2YgcmVjdGFuZ2xlIHdpdGggY2xpY2tpbmcg
Y29sb3IgYm94IGJhc2ljYWxseSBvZmZlZCBieSBlbGVtZW50IEFQSS4gCisgICAgICAgIChvbl9j
b2xvcnBhbGV0dGVfbG9uZ3ByZXNzZWQpOiBDaGFuZ2UgdmFsdWUgb2YgY29sb3JwaWNrZXIgb2Jq
ZWN0IHdoZW4gY29sb3IgYmFycyBhcmUgY2xpY2tlZC4KKyAgICAgICAgKG9uX2NvbG9ycGlja2Vy
X29rX2NsaWNrZWQpOiBDYWxsIG9uX2NvbG9ycGlja2VyX2Rpc21pc3MgYW5kIHNldCB0aGUgY29s
b3IuCisgICAgICAgIChvbl9jb2xvcnBpY2tlcl9kaXNtaXNzKTogRGVsZXRlIGNvbG9ycGlja2Vy
IG9iamVjdC4KKyAgICAgICAgKG9uX2NvbG9ycGlja2VyX3JlcXVlc3QpOiBDcmVhdGUgY29sb3Jw
aWNrZXIgd2luZG93IG9iamVjdC4KKyAgICAgICAgKHdpbmRvd19jcmVhdGUpOiBDb25uZWN0aW5n
IHVwIHdpdGggVUlQcm9jZXNzL2VmbC9QYWdlQ2xpZW50RWZsLmNwcAorCiAyMDEzLTA0LTIzICBE
YXZpZCBHcm9nYW4gIDxkZ3JvZ2FuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2Vk
LiBSZW1vdmUgbXlzZWxmIGZyb20gd2F0Y2hsaXN0LgpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJy
b3dzZXIvZWZsL21haW4uYyBiL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWluLmMKaW5kZXggM2Iz
OTUxZjc0YTYzNDMyNjk2Mzk5YjhkNGE0ZWVhNzVhYzg3NDIzNS4uZDNhYTY4Y2EzNGQ1NWUyNGM5
NDEwMDFkOGMzN2QwNTI1NWJjMDk1ZCAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvZWZs
L21haW4uYworKysgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCkBAIC05MCw2ICs5MCwx
MSBAQCB0eXBlZGVmIHN0cnVjdCBfVG9vbHRpcF9JbmZvcm1hdGlvbiB7CiAgICAgRWluYV9Cb29s
IHNob3duOwogfSBUb29sdGlwX0luZm9ybWF0aW9uOwogCit0eXBlZGVmIHN0cnVjdCBfQ29sb3Jf
UGlja2VyX0RhdGEgeworICAgIEV3a19Db2xvcl9QaWNrZXIgKmNvbG9yX3BpY2tlcjsKKyAgICBF
dmFzX09iamVjdCAqcmVjdF9kYXRhOworfSBDb2xvcl9QaWNrZXJfRGF0YTsKKwogdHlwZWRlZiBz
dHJ1Y3QgX0Jyb3dzZXJfV2luZG93IHsKICAgICBFdmFzX09iamVjdCAqZWxtX3dpbmRvdzsKICAg
ICBFdmFzX09iamVjdCAqZXdrX3ZpZXc7CkBAIC0xMDksNiArMTE0LDcgQEAgdHlwZWRlZiBzdHJ1
Y3QgX0Jyb3dzZXJfV2luZG93IHsKICAgICBpbnQgY3VycmVudF96b29tX2xldmVsOyAKICAgICBU
b29sdGlwX0luZm9ybWF0aW9uIHRvb2x0aXA7CiAgICAgRXZhc19PYmplY3QgKmNvbnRleHRfcG9w
dXA7CisgICAgRXZhc19PYmplY3QgKmNvbG9yX3NlbGVjdG9yOwogfSBCcm93c2VyX1dpbmRvdzsK
IAogdHlwZWRlZiBzdHJ1Y3QgX0ZpbGVfU2VsZWN0b3JfRGF0YSB7CkBAIC01OTUsNiArNjAxLDEy
MyBAQCBvbl9kb3dubG9hZF9mYWlsZWQodm9pZCAqdXNlcl9kYXRhLCBFdmFzX09iamVjdCAqZXdr
X3ZpZXcsIHZvaWQgKmV2ZW50X2luZm8pCiB9CiAKIHN0YXRpYyB2b2lkCitvbl9jb2xvcl9jaGFu
Z2VkKHZvaWQgKmRhdGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7Cisg
ICAgaW50IHIsIGcsIGIsIGE7CisgICAgQ29sb3JfUGlja2VyX0RhdGEgKmNwX2RhdGEgPSAoQ29s
b3JfUGlja2VyX0RhdGEgKilkYXRhOworCisgICAgZWxtX2NvbG9yc2VsZWN0b3JfY29sb3JfZ2V0
KG9iaiwgJnIsICZnLCAmYiwgJmEpOworICAgIGV2YXNfb2JqZWN0X2NvbG9yX3NldChjcF9kYXRh
LT5yZWN0X2RhdGEsIHIsIGcsIGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JwYWxl
dHRlX2NsaWNrZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5m
bykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKyAgICBDb2xvcl9QaWNrZXJfRGF0YSAqY3BfZGF0
YSA9IChDb2xvcl9QaWNrZXJfRGF0YSAqKWRhdGE7CisgICAgRWxtX09iamVjdF9JdGVtICpjb2xv
cl9pdGVtID0gKEVsbV9PYmplY3RfSXRlbSAqKWV2ZW50X2luZm87CisKKyAgICBlbG1fY29sb3Jz
ZWxlY3Rvcl9wYWxldHRlX2l0ZW1fY29sb3JfZ2V0KGNvbG9yX2l0ZW0sICZyLCAmZywgJmIsICZh
KTsKKyAgICBldmFzX29iamVjdF9jb2xvcl9zZXQoY3BfZGF0YS0+cmVjdF9kYXRhLCByLCBnLCBi
LCBhKTsKK30KKworc3RhdGljIHZvaWQKK29uX2NvbG9ycGFsZXR0ZV9sb25ncHJlc3NlZCh2b2lk
ICpkYXRhLCBFdmFzX09iamVjdCAqb2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCBy
LCBnLCBiLCBhOworICAgIEVsbV9PYmplY3RfSXRlbSAqY29sb3JfaXRlbSA9IChFbG1fT2JqZWN0
X0l0ZW0gKilldmVudF9pbmZvOworICAgIENvbG9yX1BpY2tlcl9EYXRhICpjcF9kYXRhID0gKENv
bG9yX1BpY2tlcl9EYXRhICopZGF0YTsKKworICAgIGVsbV9jb2xvcnNlbGVjdG9yX3BhbGV0dGVf
aXRlbV9jb2xvcl9nZXQoY29sb3JfaXRlbSwgJnIsICZnLCAmYiwgJmEpOworICAgIGV2YXNfb2Jq
ZWN0X2NvbG9yX3NldChjcF9kYXRhLT5yZWN0X2RhdGEsIHIsIGcsIGIsIGEpOworfQorCitzdGF0
aWMgdm9pZAorb25fY29sb3JwaWNrZXJfb2tfY2xpY2tlZCh2b2lkICpkYXRhLCBFdmFzX09iamVj
dCAqb2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCByLCBnLCBiLCBhOworICAgIENv
bG9yX1BpY2tlcl9EYXRhICpjcF9kYXRhID0gKENvbG9yX1BpY2tlcl9EYXRhICopZGF0YTsKKyAg
ICAKKyAgICBldmFzX29iamVjdF9jb2xvcl9nZXQoY3BfZGF0YS0+cmVjdF9kYXRhLCAmciwgJmcs
ICZiLCAmYSk7CisgICAgZXdrX2NvbG9yX3BpY2tlcl9jb2xvcl9zZXQoY3BfZGF0YS0+Y29sb3Jf
cGlja2VyLCByLCBnLCBiLCBhKTsKKworICAgIGZyZWUoY3BfZGF0YSk7Cit9CisKK3N0YXRpYyBF
aW5hX0Jvb2wKK29uX2NvbG9ycGlja2VyX2Rpc21pc3MoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2Qp
Cit7CisgICAgQnJvd3Nlcl9XaW5kb3cgKndpbmRvdyA9IHdpbmRvd19maW5kX3dpdGhfZXdrX3Zp
ZXcoc2QtPnNlbGYpOworICAgIGV2YXNfb2JqZWN0X2RlbCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9y
KTsKKworICAgIHJldHVybiBFSU5BX1RSVUU7Cit9CisKK3N0YXRpYyBFaW5hX0Jvb2wKK29uX2Nv
bG9ycGlja2VyX3JlcXVlc3QoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QsIEV3a19Db2xvcl9QaWNr
ZXIqIGNvbG9yX3BpY2tlcikKK3sKKyAgICBCcm93c2VyX1dpbmRvdyAqd2luZG93ID0gd2luZG93
X2ZpbmRfd2l0aF9ld2tfdmlldyhzZC0+c2VsZik7CisgICAgd2luZG93LT5jb2xvcl9zZWxlY3Rv
ciA9IGVsbV93aW5fYWRkKHdpbmRvdy0+ZWxtX3dpbmRvdywgImNvbG9yIHNlbGVjdG9yIiwgRUxN
X1dJTl9ESUFMT0dfQkFTSUMpOworCisgICAgRXZhc19PYmplY3QgKnJlY3QsICpieCwgKmZyLCAq
YnQsICpjb2xvcl9waWNrZXJfb2JqOworICAgIGludCByLCBnLCBiLCBhOworCisgICAgQ29sb3Jf
UGlja2VyX0RhdGEgKmNwX2RhdGEgPSAoQ29sb3JfUGlja2VyX0RhdGEgKiltYWxsb2Moc2l6ZW9m
KENvbG9yX1BpY2tlcl9EYXRhKSk7CisgICAgY3BfZGF0YS0+Y29sb3JfcGlja2VyID0gY29sb3Jf
cGlja2VyOworCisgICAgZWxtX3dpbl90aXRsZV9zZXQod2luZG93LT5jb2xvcl9zZWxlY3Rvciwg
IkNvbG9yIHNlbGVjdG9yIik7CisgICAgZWxtX3dpbl9tb2RhbF9zZXQod2luZG93LT5jb2xvcl9z
ZWxlY3RvciwgRUlOQV9UUlVFKTsKKyAgICBlbG1fd2luX2F1dG9kZWxfc2V0KHdpbmRvdy0+Y29s
b3Jfc2VsZWN0b3IsIEVJTkFfVFJVRSk7CisgICAgZWxtX3BvbGljeV9zZXQoRUxNX1BPTElDWV9R
VUlULCBFTE1fUE9MSUNZX1FVSVRfTEFTVF9XSU5ET1dfQ0xPU0VEKTsKKworICAgIGJ4ID0gZWxt
X2JveF9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvcik7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9o
aW50X3dlaWdodF9zZXQoYngsIEVWQVNfSElOVF9GSUxMLCBFVkFTX0hJTlRfRklMTCk7CisgICAg
ZXZhc19vYmplY3Rfc2l6ZV9oaW50X2FsaWduX3NldChieCwgRVZBU19ISU5UX0ZJTEwsIEVWQVNf
SElOVF9GSUxMKTsKKyAgICBlbG1fd2luX3Jlc2l6ZV9vYmplY3RfYWRkKHdpbmRvdy0+Y29sb3Jf
c2VsZWN0b3IsIGJ4KTsKKyAgICBldmFzX29iamVjdF9zaG93KGJ4KTsKKworICAgIGZyID0gZWxt
X2ZyYW1lX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yKTsKKyAgICBldmFzX29iamVjdF9zaXpl
X2hpbnRfd2VpZ2h0X3NldChmciwgMS4wLCAwLjUpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGlu
dF9hbGlnbl9zZXQoZnIsIEVWQVNfSElOVF9GSUxMLCBFVkFTX0hJTlRfRklMTCk7CisgICAgZWxt
X29iamVjdF90ZXh0X3NldChmciwgIkNvbG9yIFZpZXciKTsKKyAgICBlbG1fYm94X3BhY2tfZW5k
KGJ4LCBmcik7CisgICAgZXZhc19vYmplY3Rfc2hvdyhmcik7CisKKyAgICByZWN0ID0gZXZhc19v
YmplY3RfcmVjdGFuZ2xlX2FkZChldmFzX29iamVjdF9ldmFzX2dldCh3aW5kb3ctPmNvbG9yX3Nl
bGVjdG9yKSk7CisgICAgZWxtX29iamVjdF9jb250ZW50X3NldChmciwgcmVjdCk7CisgICAgZXdr
X2NvbG9yX3BpY2tlcl9jb2xvcl9nZXQoY29sb3JfcGlja2VyLCAmciwgJmcsICZiLCAmYSk7Cisg
ICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KHJlY3QsIHIsIGcsIGIsIGEpOworICAgIGV2YXNfb2Jq
ZWN0X3Nob3cocmVjdCk7CisgICAgY3BfZGF0YS0+cmVjdF9kYXRhID0gcmVjdDsKKworICAgIGZy
ID0gZWxtX2ZyYW1lX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yKTsKKyAgICBldmFzX29iamVj
dF9zaXplX2hpbnRfd2VpZ2h0X3NldChmciwgMS4wLCAxLjUpOworICAgIGV2YXNfb2JqZWN0X3Np
emVfaGludF9hbGlnbl9zZXQoZnIsIEVWQVNfSElOVF9GSUxMLCBFVkFTX0hJTlRfRklMTCk7Cisg
ICAgZWxtX29iamVjdF90ZXh0X3NldChmciwgIkNvbG9yIFNlbGVjdG9yIik7CisgICAgZWxtX2Jv
eF9wYWNrX2VuZChieCwgZnIpOworICAgIGV2YXNfb2JqZWN0X3Nob3coZnIpOworCisgICAgY29s
b3JfcGlja2VyX29iaiA9IGVsbV9jb2xvcnNlbGVjdG9yX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVj
dG9yKTsKKyAgICBlbG1fb2JqZWN0X2NvbnRlbnRfc2V0KGZyLCBjb2xvcl9waWNrZXJfb2JqKTsK
KworICAgIGJ0ID0gZWxtX2J1dHRvbl9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvcik7CisgICAg
ZWxtX29iamVjdF90ZXh0X3NldChidCwgIk9LIik7CisgICAgZWxtX2JveF9wYWNrX2VuZChieCwg
YnQpOworICAgIGV2YXNfb2JqZWN0X3Nob3coYnQpOworCisgICAgZXZhc19vYmplY3Rfc2hvdyhj
b2xvcl9waWNrZXJfb2JqKTsgCisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKGJ0
LCAiY2xpY2tlZCIsIG9uX2NvbG9ycGlja2VyX29rX2NsaWNrZWQsIGNwX2RhdGEpOworICAgIGV2
YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZChjb2xvcl9waWNrZXJfb2JqLCAiY2hhbmdlZCIs
IG9uX2NvbG9yX2NoYW5nZWQsIGNwX2RhdGEpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxi
YWNrX2FkZChjb2xvcl9waWNrZXJfb2JqLCAiY29sb3IsaXRlbSxzZWxlY3RlZCIsIG9uX2NvbG9y
cGFsZXR0ZV9jbGlja2VkLCBjcF9kYXRhKTsKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFj
a19hZGQoY29sb3JfcGlja2VyX29iaiwgImNvbG9yLGl0ZW0sbG9uZ3ByZXNzZWQiLCBvbl9jb2xv
cnBhbGV0dGVfbG9uZ3ByZXNzZWQsIGNwX2RhdGEpOworCisgICAgZXZhc19vYmplY3RfcmVzaXpl
KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IsIDY1MCwgNDAwKTsKKyAgICBldmFzX29iamVjdF9zaG93
KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpOworCisgICAgcmV0dXJuIEVJTkFfVFJVRTsKK30KKwor
c3RhdGljIHZvaWQKIHVwZGF0ZV92aWV3X2Zhdmljb24oQnJvd3Nlcl9XaW5kb3cgKndpbmRvdywg
RXZhc19PYmplY3QgKmljb24pCiB7CiAgICAgLyogUmVtb3ZlIHByZXZpb3VzIGljb24gZnJvbSBV
UkwgYmFyICovCkBAIC0xNTAzLDYgKzE2MjYsOCBAQCBzdGF0aWMgQnJvd3Nlcl9XaW5kb3cgKndp
bmRvd19jcmVhdGUoRXZhc19PYmplY3QgKm9wZW5lciwgY29uc3QgY2hhciAqdXJsLCBpbnQgdwog
CiAgICAgLyogQ3JlYXRlIGV3a192aWV3ICovCiAgICAgRXdrX1ZpZXdfU21hcnRfQ2xhc3MgKmV3
a1ZpZXdDbGFzcyA9IG1pbmlCcm93c2VyVmlld1NtYXJ0Q2xhc3MoKTsKKyAgICBld2tWaWV3Q2xh
c3MtPmlucHV0X3BpY2tlcl9jb2xvcl9yZXF1ZXN0ID0gb25fY29sb3JwaWNrZXJfcmVxdWVzdDsK
KyAgICBld2tWaWV3Q2xhc3MtPmlucHV0X3BpY2tlcl9jb2xvcl9kaXNtaXNzID0gb25fY29sb3Jw
aWNrZXJfZGlzbWlzczsKICAgICBld2tWaWV3Q2xhc3MtPnJ1bl9qYXZhc2NyaXB0X2FsZXJ0ID0g
b25famF2YXNjcmlwdF9hbGVydDsKICAgICBld2tWaWV3Q2xhc3MtPnJ1bl9qYXZhc2NyaXB0X2Nv
bmZpcm0gPSBvbl9qYXZhc2NyaXB0X2NvbmZpcm07CiAgICAgZXdrVmlld0NsYXNzLT5ydW5famF2
YXNjcmlwdF9wcm9tcHQgPSBvbl9qYXZhc2NyaXB0X3Byb21wdDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202262</attachid>
            <date>2013-05-19 23:54:12 -0700</date>
            <delta_ts>2013-05-21 02:05:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130520155301.patch</filename>
            <type>text/plain</type>
            <size>7575</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5MDE2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmM2NWRlYTIxYjM0NWE2MDAyYjg1ZGY5Y2I3OTNlMGY5
NWFkYjZmMC4uZjM0NDdkNzRlNWFmMzVlNWYyNjk4NmEwN2M5NzkxNGZkZWZlMzFhMyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1
IEBACisyMDEzLTA1LTA5ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXUltcGxlbWVudCBjb2xvciBwaWNrZXIgVUkgZm9yIEhUTUw1IGlucHV0IHR5
cGUgY29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFdoZW4gdXNlciBjbGlja3MgSFRNTDUgaW5wdXQgdHlwZSBjb2xvciwg
CisgICAgICAgIGNvbG9yIHBpY2tlciB3aW5kb3cgaXMgY3JlYXRlZCBvbiBicm93c2VyIG9iamVj
dCBieSB1c2luZyBlbG1fY29sb3JjaG9vc2VyX2FkZCgpLiAKKyAgICAgICAgSXQgY2FuIGxpc3Rl
biBhIHNpZ25hbCBkaXNtaXNzaW5nIGNvbG9ycGlja2VyIGJ5IGNhbGxpbmcgdGhlIGV3a19jb2xv
cl9waWNrZXJfY29sb3Jfc2V0KCkuCisgICAgICAgIFRoZSBldmFzX29iamV0X2NvbG9yX3NldCgp
IHNldHMgYSBjb2xvciB2YWx1ZSByZXR1cm5pbmcgdG8gYnJvd3Nlci4KKworICAgICAgICAqIE1p
bmlCcm93c2VyL2VmbC9tYWluLmM6CisgICAgICAgIChfQnJvd3Nlcl9XaW5kb3cpOgorICAgICAg
ICAob25fY2hhbmdlZF9jb2xvcik6IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgdG8gc2hvdyBj
b2xvciBzZWxlY3RlZCBieSB1c2VyLgorICAgICAgICAob25fY29sb3JwYWxldHRlX2NsaWNrZWQp
OiBDaGFuZ2UgY29sb3Igb2YgcmVjdGFuZ2xlIHdpdGggY2xpY2tpbmcgY29sb3IgYm94IGJhc2lj
YWxseSBvZmZlZCBieSBlbGVtZW50IEFQSS4gCisgICAgICAgIChvbl9jb2xvcnBpY2tlcl9va19j
bGlja2VkKTogQ2FsbCBvbl9jb2xvcnBpY2tlcl9kaXNtaXNzIGFuZCBzZXQgdGhlIGNvbG9yLgor
ICAgICAgICAob25fY29sb3JwaWNrZXJfY2FuY2VsX2NsaWNrZWQpOiBHZXQgYSBwcmVleGlzdGlu
ZyBjb2xvciBhbmQgY2FsbCBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldCgpLgorICAgICAgICAo
b25fY29sb3JwaWNrZXJfZGlzbWlzcyk6IERlbGV0ZSBjb2xvcnBpY2tlciBvYmplY3QuCisgICAg
ICAgIChvbl9jb2xvcnBpY2tlcl9yZXF1ZXN0KTogQ3JlYXRlIGNvbG9ycGlja2VyIHdpbmRvdyBv
YmplY3QuCisgICAgICAgICh3aW5kb3dfY3JlYXRlKTogQ29ubmVjdGluZyB1cCB3aXRoIFVJUHJv
Y2Vzcy9lZmwvUGFnZUNsaWVudEVmbC5jcHAKKwogMjAxMy0wNC0yMyAgRGF2aWQgR3JvZ2FuICA8
ZGdyb2dhbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gUmVtb3ZlIG15c2Vs
ZiBmcm9tIHdhdGNobGlzdC4KZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWlu
LmMgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCmluZGV4IDNiMzk1MWY3NGE2MzQzMjY5
NjM5OWI4ZDRhNGVlYTc1YWM4NzQyMzUuLmM0NTI4YmRlMGU5YmM1YmU1MTM0ZThmZTliYTIwMjNh
YzU2YmZlNjYgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWluLmMKKysrIGIv
VG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4uYwpAQCAtMTA2LDYgKzEwNiwxMSBAQCB0eXBlZGVm
IHN0cnVjdCBfQnJvd3Nlcl9XaW5kb3cgewogICAgICAgICBFdmFzX09iamVjdCAqYmFja3dhcmRf
YnV0dG9uOwogICAgICAgICBFdmFzX09iamVjdCAqZm9yd2FyZF9idXR0b247CiAgICAgfSBzZWFy
Y2g7CisgICAgc3RydWN0IHsKKyAgICAgICAgRXdrX0NvbG9yX1BpY2tlciAqY29sb3JfcGlja2Vy
OworICAgICAgICBFdmFzX09iamVjdCAqY29sb3Jfc2VsZWN0b3I7CisgICAgICAgIEV2YXNfT2Jq
ZWN0ICpyZWN0X2RhdGE7CisgICAgfSBjb2xvcl9zZWxlY3RvcjsKICAgICBpbnQgY3VycmVudF96
b29tX2xldmVsOyAKICAgICBUb29sdGlwX0luZm9ybWF0aW9uIHRvb2x0aXA7CiAgICAgRXZhc19P
YmplY3QgKmNvbnRleHRfcG9wdXA7CkBAIC01OTUsNiArNjAwLDEyMCBAQCBvbl9kb3dubG9hZF9m
YWlsZWQodm9pZCAqdXNlcl9kYXRhLCBFdmFzX09iamVjdCAqZXdrX3ZpZXcsIHZvaWQgKmV2ZW50
X2luZm8pCiB9CiAKIHN0YXRpYyB2b2lkCitvbl9jb2xvcl9jaGFuZ2VkKHZvaWQgKmRhdGEsIEV2
YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIsIGE7
CisgICAgCisgICAgZWxtX2NvbG9yc2VsZWN0b3JfY29sb3JfZ2V0KG9iaiwgJnIsICZnLCAmYiwg
JmEpOworICAgIGV2YXNfb2JqZWN0X2NvbG9yX3NldChkYXRhLCByLCBnLCBiLCBhKTsKK30KKwor
c3RhdGljIHZvaWQKK29uX2NvbG9ycGFsZXR0ZV9jbGlja2VkKHZvaWQgKmRhdGEsIEV2YXNfT2Jq
ZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIsIGE7CisgICAg
RWxtX09iamVjdF9JdGVtICpjb2xvcl9pdGVtID0gKEVsbV9PYmplY3RfSXRlbSAqKWV2ZW50X2lu
Zm87CisKKyAgICBlbG1fY29sb3JzZWxlY3Rvcl9wYWxldHRlX2l0ZW1fY29sb3JfZ2V0KGNvbG9y
X2l0ZW0sICZyLCAmZywgJmIsICZhKTsKKyAgICBldmFzX29iamVjdF9jb2xvcl9zZXQoZGF0YSwg
ciwgZywgYiwgYSk7Cit9CisKK3N0YXRpYyB2b2lkCitvbl9jb2xvcnBpY2tlcl9va19jbGlja2Vk
KHZvaWQgKmRhdGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAg
aW50IHIsIGcsIGIsIGE7CisgICAgCisgICAgQnJvd3Nlcl9XaW5kb3cqIHdpbmRvdyA9IChCcm93
c2VyX1dpbmRvdyAqKWRhdGE7CisgICAgZXZhc19vYmplY3RfY29sb3JfZ2V0KHdpbmRvdy0+Y29s
b3Jfc2VsZWN0b3IucmVjdF9kYXRhLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXdrX2NvbG9yX3Bp
Y2tlcl9jb2xvcl9zZXQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5jb2xvcl9waWNrZXIsIHIsIGcs
IGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JwaWNrZXJfY2FuY2VsX2NsaWNrZWQo
dm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5mbykKK3sKKyAgICBp
bnQgciwgZywgYiwgYTsKKworICAgIEJyb3dzZXJfV2luZG93KiB3aW5kb3cgPSAoQnJvd3Nlcl9X
aW5kb3cgKilkYXRhOworICAgIGV3a19jb2xvcl9waWNrZXJfY29sb3JfZ2V0KHdpbmRvdy0+Y29s
b3Jfc2VsZWN0b3IuY29sb3JfcGlja2VyLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXdrX2NvbG9y
X3BpY2tlcl9jb2xvcl9zZXQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5jb2xvcl9waWNrZXIsIHIs
IGcsIGIsIGEpOworfQorCitzdGF0aWMgRWluYV9Cb29sCitvbl9jb2xvcnBpY2tlcl9kaXNtaXNz
KEV3a19WaWV3X1NtYXJ0X0RhdGEgKnNkKQoreworICAgIEJyb3dzZXJfV2luZG93ICp3aW5kb3cg
PSB3aW5kb3dfZmluZF93aXRoX2V3a192aWV3KHNkLT5zZWxmKTsKKyAgICBldmFzX29iamVjdF9k
ZWwod2luZG93LT5jb2xvcl9zZWxlY3Rvci5jb2xvcl9zZWxlY3Rvcik7CisKKyAgICByZXR1cm4g
RUlOQV9UUlVFOworfQorCitzdGF0aWMgRWluYV9Cb29sCitvbl9jb2xvcnBpY2tlcl9yZXF1ZXN0
KEV3a19WaWV3X1NtYXJ0X0RhdGEgKnNkLCBFd2tfQ29sb3JfUGlja2VyICpjb2xvcl9waWNrZXIp
Cit7CisgICAgQnJvd3Nlcl9XaW5kb3cgKndpbmRvdyA9IHdpbmRvd19maW5kX3dpdGhfZXdrX3Zp
ZXcoc2QtPnNlbGYpOworICAgIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuY29sb3Jfc2VsZWN0b3Ig
PSBlbG1fd2luX2FkZCh3aW5kb3ctPmVsbV93aW5kb3csICJjb2xvciBzZWxlY3RvciIsIEVMTV9X
SU5fQkFTSUMpOworICAgIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuY29sb3JfcGlja2VyID0gY29s
b3JfcGlja2VyOworCisgICAgRXZhc19PYmplY3QgKnJlY3QsICpib3gsICpyZWN0X2ZyYW1lLCAq
Y3BfZnJhbWUsICpva19idXR0b24sICpjYW5jZWxfYnV0dG9uLCAqY29sb3JfcGlja2VyX29iajsK
KyAgICBpbnQgciwgZywgYiwgYTsKKworICAgIGVsbV93aW5fdGl0bGVfc2V0KHdpbmRvdy0+Y29s
b3Jfc2VsZWN0b3IuY29sb3Jfc2VsZWN0b3IsICJDb2xvciBzZWxlY3RvciIpOworICAgIGVsbV93
aW5fbW9kYWxfc2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuY29sb3Jfc2VsZWN0b3IsIEVJTkFf
VFJVRSk7CisgICAgZWxtX3dpbl9hdXRvZGVsX3NldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmNv
bG9yX3NlbGVjdG9yLCBFSU5BX1RSVUUpOworCisgICAgYm94ID0gZWxtX2JveF9hZGQod2luZG93
LT5jb2xvcl9zZWxlY3Rvci5jb2xvcl9zZWxlY3Rvcik7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9o
aW50X3dlaWdodF9zZXQoYm94LCBFVkFTX0hJTlRfRVhQQU5ELCBFVkFTX0hJTlRfRVhQQU5EKTsK
KyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfYWxpZ25fc2V0KGJveCwgRVZBU19ISU5UX0VYUEFO
RCwgRVZBU19ISU5UX0VYUEFORCk7CisgICAgZWxtX3dpbl9yZXNpemVfb2JqZWN0X2FkZCh3aW5k
b3ctPmNvbG9yX3NlbGVjdG9yLmNvbG9yX3NlbGVjdG9yLCBib3gpOworICAgIGV2YXNfb2JqZWN0
X3Nob3coYm94KTsKKworICAgIHJlY3RfZnJhbWUgPSBlbG1fZnJhbWVfYWRkKHdpbmRvdy0+Y29s
b3Jfc2VsZWN0b3IuY29sb3Jfc2VsZWN0b3IpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF93
ZWlnaHRfc2V0KHJlY3RfZnJhbWUsIDEuMCwgMC41KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hp
bnRfYWxpZ25fc2V0KHJlY3RfZnJhbWUsIEVWQVNfSElOVF9GSUxMLCBFVkFTX0hJTlRfRklMTCk7
CisgICAgZWxtX29iamVjdF90ZXh0X3NldChyZWN0X2ZyYW1lLCAiQ29sb3IgVmlldyIpOworICAg
IGVsbV9ib3hfcGFja19lbmQoYm94LCByZWN0X2ZyYW1lKTsKKyAgICBldmFzX29iamVjdF9zaG93
KHJlY3RfZnJhbWUpOworCisgICAgcmVjdCA9IGV2YXNfb2JqZWN0X3JlY3RhbmdsZV9hZGQoZXZh
c19vYmplY3RfZXZhc19nZXQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5jb2xvcl9zZWxlY3Rvcikp
OworICAgIGVsbV9vYmplY3RfY29udGVudF9zZXQocmVjdF9mcmFtZSwgcmVjdCk7CisgICAgZXdr
X2NvbG9yX3BpY2tlcl9jb2xvcl9nZXQoY29sb3JfcGlja2VyLCAmciwgJmcsICZiLCAmYSk7Cisg
ICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KHJlY3QsIHIsIGcsIGIsIGEpOworICAgIGV2YXNfb2Jq
ZWN0X3Nob3cocmVjdCk7CisgICAgd2luZG93LT5jb2xvcl9zZWxlY3Rvci5yZWN0X2RhdGEgPSBy
ZWN0OworCisgICAgY3BfZnJhbWUgPSBlbG1fZnJhbWVfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0
b3IuY29sb3Jfc2VsZWN0b3IpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF93ZWlnaHRfc2V0
KGNwX2ZyYW1lLCAxLjAsIDEuNSk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X2FsaWduX3Nl
dChjcF9mcmFtZSwgRVZBU19ISU5UX0ZJTEwsIEVWQVNfSElOVF9GSUxMKTsKKyAgICBlbG1fb2Jq
ZWN0X3RleHRfc2V0KGNwX2ZyYW1lLCAiQ29sb3IgU2VsZWN0b3IiKTsKKyAgICBlbG1fYm94X3Bh
Y2tfZW5kKGJveCwgY3BfZnJhbWUpOworICAgIGV2YXNfb2JqZWN0X3Nob3coY3BfZnJhbWUpOwor
CisgICAgY29sb3JfcGlja2VyX29iaiA9IGVsbV9jb2xvcnNlbGVjdG9yX2FkZCh3aW5kb3ctPmNv
bG9yX3NlbGVjdG9yLmNvbG9yX3NlbGVjdG9yKTsKKyAgICBlbG1fb2JqZWN0X2NvbnRlbnRfc2V0
KGNwX2ZyYW1lLCBjb2xvcl9waWNrZXJfb2JqKTsKKworICAgIG9rX2J1dHRvbiA9IGVsbV9idXR0
b25fYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuY29sb3Jfc2VsZWN0b3IpOworICAgIGVsbV9v
YmplY3RfdGV4dF9zZXQob2tfYnV0dG9uLCAiT0siKTsKKyAgICBlbG1fYm94X3BhY2tfZW5kKGJv
eCwgb2tfYnV0dG9uKTsKKyAgICBldmFzX29iamVjdF9zaG93KG9rX2J1dHRvbik7CisKKyAgICBj
YW5jZWxfYnV0dG9uID0gZWxtX2J1dHRvbl9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5jb2xv
cl9zZWxlY3Rvcik7CisgICAgZWxtX29iamVjdF90ZXh0X3NldChjYW5jZWxfYnV0dG9uLCAiQ2Fu
Y2VsIik7CisgICAgZWxtX2JveF9wYWNrX2VuZChib3gsIGNhbmNlbF9idXR0b24pOworICAgIGV2
YXNfb2JqZWN0X3Nob3coY2FuY2VsX2J1dHRvbik7CisKKyAgICBldmFzX29iamVjdF9zaG93KGNv
bG9yX3BpY2tlcl9vYmopOyAKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQob2tf
YnV0dG9uLCAiY2xpY2tlZCIsIG9uX2NvbG9ycGlja2VyX29rX2NsaWNrZWQsIHdpbmRvdyk7Cisg
ICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKGNhbmNlbF9idXR0b24sICJjbGlja2Vk
Iiwgb25fY29sb3JwaWNrZXJfY2FuY2VsX2NsaWNrZWQsIHdpbmRvdyk7CisgICAgZXZhc19vYmpl
Y3Rfc21hcnRfY2FsbGJhY2tfYWRkKGNvbG9yX3BpY2tlcl9vYmosICJjaGFuZ2VkIiwgb25fY29s
b3JfY2hhbmdlZCwgcmVjdCk7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKGNv
bG9yX3BpY2tlcl9vYmosICJjb2xvcixpdGVtLHNlbGVjdGVkIiwgb25fY29sb3JwYWxldHRlX2Ns
aWNrZWQsIHJlY3QpOworCisgICAgZXZhc19vYmplY3RfcmVzaXplKHdpbmRvdy0+Y29sb3Jfc2Vs
ZWN0b3IuY29sb3Jfc2VsZWN0b3IsIDQwMCwgNTAwKTsKKyAgICBldmFzX29iamVjdF9zaG93KHdp
bmRvdy0+Y29sb3Jfc2VsZWN0b3IuY29sb3Jfc2VsZWN0b3IpOworCisgICAgcmV0dXJuIEVJTkFf
VFJVRTsKK30KKworc3RhdGljIHZvaWQKIHVwZGF0ZV92aWV3X2Zhdmljb24oQnJvd3Nlcl9XaW5k
b3cgKndpbmRvdywgRXZhc19PYmplY3QgKmljb24pCiB7CiAgICAgLyogUmVtb3ZlIHByZXZpb3Vz
IGljb24gZnJvbSBVUkwgYmFyICovCkBAIC0xNTAzLDYgKzE2MjIsOCBAQCBzdGF0aWMgQnJvd3Nl
cl9XaW5kb3cgKndpbmRvd19jcmVhdGUoRXZhc19PYmplY3QgKm9wZW5lciwgY29uc3QgY2hhciAq
dXJsLCBpbnQgdwogCiAgICAgLyogQ3JlYXRlIGV3a192aWV3ICovCiAgICAgRXdrX1ZpZXdfU21h
cnRfQ2xhc3MgKmV3a1ZpZXdDbGFzcyA9IG1pbmlCcm93c2VyVmlld1NtYXJ0Q2xhc3MoKTsKKyAg
ICBld2tWaWV3Q2xhc3MtPmlucHV0X3BpY2tlcl9jb2xvcl9yZXF1ZXN0ID0gb25fY29sb3JwaWNr
ZXJfcmVxdWVzdDsKKyAgICBld2tWaWV3Q2xhc3MtPmlucHV0X3BpY2tlcl9jb2xvcl9kaXNtaXNz
ID0gb25fY29sb3JwaWNrZXJfZGlzbWlzczsKICAgICBld2tWaWV3Q2xhc3MtPnJ1bl9qYXZhc2Ny
aXB0X2FsZXJ0ID0gb25famF2YXNjcmlwdF9hbGVydDsKICAgICBld2tWaWV3Q2xhc3MtPnJ1bl9q
YXZhc2NyaXB0X2NvbmZpcm0gPSBvbl9qYXZhc2NyaXB0X2NvbmZpcm07CiAgICAgZXdrVmlld0Ns
YXNzLT5ydW5famF2YXNjcmlwdF9wcm9tcHQgPSBvbl9qYXZhc2NyaXB0X3Byb21wdDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202375</attachid>
            <date>2013-05-20 20:54:13 -0700</date>
            <delta_ts>2013-05-21 18:50:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130521125302.patch</filename>
            <type>text/plain</type>
            <size>7795</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5MDE2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmM2NWRlYTIxYjM0NWE2MDAyYjg1ZGY5Y2I3OTNlMGY5
NWFkYjZmMC4uZjM0NDdkNzRlNWFmMzVlNWYyNjk4NmEwN2M5NzkxNGZkZWZlMzFhMyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1
IEBACisyMDEzLTA1LTA5ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXUltcGxlbWVudCBjb2xvciBwaWNrZXIgVUkgZm9yIEhUTUw1IGlucHV0IHR5
cGUgY29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFdoZW4gdXNlciBjbGlja3MgSFRNTDUgaW5wdXQgdHlwZSBjb2xvciwg
CisgICAgICAgIGNvbG9yIHBpY2tlciB3aW5kb3cgaXMgY3JlYXRlZCBvbiBicm93c2VyIG9iamVj
dCBieSB1c2luZyBlbG1fY29sb3JjaG9vc2VyX2FkZCgpLiAKKyAgICAgICAgSXQgY2FuIGxpc3Rl
biBhIHNpZ25hbCBkaXNtaXNzaW5nIGNvbG9ycGlja2VyIGJ5IGNhbGxpbmcgdGhlIGV3a19jb2xv
cl9waWNrZXJfY29sb3Jfc2V0KCkuCisgICAgICAgIFRoZSBldmFzX29iamV0X2NvbG9yX3NldCgp
IHNldHMgYSBjb2xvciB2YWx1ZSByZXR1cm5pbmcgdG8gYnJvd3Nlci4KKworICAgICAgICAqIE1p
bmlCcm93c2VyL2VmbC9tYWluLmM6CisgICAgICAgIChfQnJvd3Nlcl9XaW5kb3cpOgorICAgICAg
ICAob25fY2hhbmdlZF9jb2xvcik6IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgdG8gc2hvdyBj
b2xvciBzZWxlY3RlZCBieSB1c2VyLgorICAgICAgICAob25fY29sb3JwYWxldHRlX2NsaWNrZWQp
OiBDaGFuZ2UgY29sb3Igb2YgcmVjdGFuZ2xlIHdpdGggY2xpY2tpbmcgY29sb3IgYm94IGJhc2lj
YWxseSBvZmZlZCBieSBlbGVtZW50IEFQSS4gCisgICAgICAgIChvbl9jb2xvcnBpY2tlcl9va19j
bGlja2VkKTogQ2FsbCBvbl9jb2xvcnBpY2tlcl9kaXNtaXNzIGFuZCBzZXQgdGhlIGNvbG9yLgor
ICAgICAgICAob25fY29sb3JwaWNrZXJfY2FuY2VsX2NsaWNrZWQpOiBHZXQgYSBwcmVleGlzdGlu
ZyBjb2xvciBhbmQgY2FsbCBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldCgpLgorICAgICAgICAo
b25fY29sb3JwaWNrZXJfZGlzbWlzcyk6IERlbGV0ZSBjb2xvcnBpY2tlciBvYmplY3QuCisgICAg
ICAgIChvbl9jb2xvcnBpY2tlcl9yZXF1ZXN0KTogQ3JlYXRlIGNvbG9ycGlja2VyIHdpbmRvdyBv
YmplY3QuCisgICAgICAgICh3aW5kb3dfY3JlYXRlKTogQ29ubmVjdGluZyB1cCB3aXRoIFVJUHJv
Y2Vzcy9lZmwvUGFnZUNsaWVudEVmbC5jcHAKKwogMjAxMy0wNC0yMyAgRGF2aWQgR3JvZ2FuICA8
ZGdyb2dhbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gUmVtb3ZlIG15c2Vs
ZiBmcm9tIHdhdGNobGlzdC4KZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWlu
LmMgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCmluZGV4IDNiMzk1MWY3NGE2MzQzMjY5
NjM5OWI4ZDRhNGVlYTc1YWM4NzQyMzUuLjgxNmI2N2VlMjI3NzJmYjQwOTIxOThiNWUwNWJkNDY5
OWRiYzZmMTQgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWluLmMKKysrIGIv
VG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4uYwpAQCAtMTA2LDYgKzEwNiwxMSBAQCB0eXBlZGVm
IHN0cnVjdCBfQnJvd3Nlcl9XaW5kb3cgewogICAgICAgICBFdmFzX09iamVjdCAqYmFja3dhcmRf
YnV0dG9uOwogICAgICAgICBFdmFzX09iamVjdCAqZm9yd2FyZF9idXR0b247CiAgICAgfSBzZWFy
Y2g7CisgICAgc3RydWN0IHsKKyAgICAgICAgRXdrX0NvbG9yX1BpY2tlciAqZXdrX3BpY2tlcjsK
KyAgICAgICAgRXZhc19PYmplY3QgKmVsbV9zZWxlY3RvcjsKKyAgICAgICAgRXZhc19PYmplY3Qg
KnJlY3RfZGF0YTsKKyAgICB9IGNvbG9yX3NlbGVjdG9yOwogICAgIGludCBjdXJyZW50X3pvb21f
bGV2ZWw7IAogICAgIFRvb2x0aXBfSW5mb3JtYXRpb24gdG9vbHRpcDsKICAgICBFdmFzX09iamVj
dCAqY29udGV4dF9wb3B1cDsKQEAgLTU5NSw2ICs2MDAsMTI1IEBAIG9uX2Rvd25sb2FkX2ZhaWxl
ZCh2b2lkICp1c2VyX2RhdGEsIEV2YXNfT2JqZWN0ICpld2tfdmlldywgdm9pZCAqZXZlbnRfaW5m
bykKIH0KIAogc3RhdGljIHZvaWQKK29uX2NvbG9yX2NoYW5nZWQodm9pZCAqZGF0YSwgRXZhc19P
YmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5mbykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKwor
ICAgIGVsbV9jb2xvcnNlbGVjdG9yX2NvbG9yX2dldChvYmosICZyLCAmZywgJmIsICZhKTsKKyAg
ICBldmFzX29iamVjdF9jb2xvcl9zZXQoZGF0YSAsIHIsIGcsIGIsIGEpOworfQorCitzdGF0aWMg
dm9pZAorb25fY29sb3JfcGFsZXR0ZV9jbGlja2VkKHZvaWQgKmRhdGEsIEV2YXNfT2JqZWN0ICpv
YmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIsIGE7CisgICAgRWxtX09i
amVjdF9JdGVtICpjb2xvcl9pdGVtID0gKEVsbV9PYmplY3RfSXRlbSAqKWV2ZW50X2luZm87CisK
KyAgICBlbG1fY29sb3JzZWxlY3Rvcl9wYWxldHRlX2l0ZW1fY29sb3JfZ2V0KGNvbG9yX2l0ZW0s
ICZyLCAmZywgJmIsICZhKTsKKyAgICBldmFzX29iamVjdF9jb2xvcl9zZXQoZGF0YSwgciwgZywg
YiwgYSk7Cit9CisKK3N0YXRpYyB2b2lkCitvbl9jb2xvcnBpY2tlcl9va19jbGlja2VkKHZvaWQg
KmRhdGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIs
IGcsIGIsIGE7CisgICAgCisgICAgQnJvd3Nlcl9XaW5kb3cqIHdpbmRvdyA9IChCcm93c2VyX1dp
bmRvdyAqKWRhdGE7CisgICAgZXZhc19vYmplY3RfY29sb3JfZ2V0KHdpbmRvdy0+Y29sb3Jfc2Vs
ZWN0b3IucmVjdF9kYXRhLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXdrX2NvbG9yX3BpY2tlcl9j
b2xvcl9zZXQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5ld2tfcGlja2VyLCByLCBnLCBiLCBhKTsK
K30KKworc3RhdGljIHZvaWQKK29uX2NvbG9ycGlja2VyX2NhbmNlbF9jbGlja2VkKHZvaWQgKmRh
dGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcs
IGIsIGE7CisKKyAgICBCcm93c2VyX1dpbmRvdyogd2luZG93ID0gKEJyb3dzZXJfV2luZG93ICop
ZGF0YTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX2dldCh3aW5kb3ctPmNvbG9yX3NlbGVj
dG9yLmV3a19waWNrZXIsICZyLCAmZywgJmIsICZhKTsKKyAgICBld2tfY29sb3JfcGlja2VyX2Nv
bG9yX3NldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmV3a19waWNrZXIsIHIsIGcsIGIsIGEpOwor
fQorCitzdGF0aWMgRWluYV9Cb29sCitvbl9jb2xvcnBpY2tlcl9kaXNtaXNzKEV3a19WaWV3X1Nt
YXJ0X0RhdGEgKnNkKQoreworICAgIEJyb3dzZXJfV2luZG93ICp3aW5kb3cgPSB3aW5kb3dfZmlu
ZF93aXRoX2V3a192aWV3KHNkLT5zZWxmKTsKKyAgICBldmFzX29iamVjdF9kZWwod2luZG93LT5j
b2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IpOworCisgICAgcmV0dXJuIEVJTkFfVFJVRTsKK30K
Kworc3RhdGljIEVpbmFfQm9vbAorb25fY29sb3JwaWNrZXJfcmVxdWVzdChFd2tfVmlld19TbWFy
dF9EYXRhICpzZCwgRXdrX0NvbG9yX1BpY2tlciAqY29sb3JfcGlja2VyKQoreworICAgIEJyb3dz
ZXJfV2luZG93ICp3aW5kb3cgPSB3aW5kb3dfZmluZF93aXRoX2V3a192aWV3KHNkLT5zZWxmKTsK
KyAgICB3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3RvciA9IGVsbV93aW5fYWRkKHdp
bmRvdy0+ZWxtX3dpbmRvdywgImNvbG9yIHNlbGVjdG9yIiwgRUxNX1dJTl9CQVNJQyk7CisgICAg
d2luZG93LT5jb2xvcl9zZWxlY3Rvci5ld2tfcGlja2VyID0gY29sb3JfcGlja2VyOworCisgICAg
RXZhc19PYmplY3QgKnJlY3QsICpib3gsICpidXR0b25fYm94LCAqcmVjdF9mcmFtZSwgKmNwX2Zy
YW1lLCAqb2tfYnV0dG9uLCAqY2FuY2VsX2J1dHRvbiwgKmNvbG9yX3BpY2tlcl9vYmo7CisgICAg
aW50IHIsIGcsIGIsIGE7CisKKyAgICBlbG1fd2luX3RpdGxlX3NldCh3aW5kb3ctPmNvbG9yX3Nl
bGVjdG9yLmVsbV9zZWxlY3RvciwgIkNvbG9yIHNlbGVjdG9yIik7CisgICAgZWxtX3dpbl9tb2Rh
bF9zZXQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IsIEVJTkFfVFJVRSk7CisK
KyAgICBib3ggPSBlbG1fYm94X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rv
cik7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X3dlaWdodF9zZXQoYm94LCBFVkFTX0hJTlRf
RVhQQU5ELCAwLjkpOworICAgIGVsbV93aW5fcmVzaXplX29iamVjdF9hZGQod2luZG93LT5jb2xv
cl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IsIGJveCk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhib3gp
OworCisgICAgcmVjdF9mcmFtZSA9IGVsbV9mcmFtZV9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rv
ci5lbG1fc2VsZWN0b3IpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF93ZWlnaHRfc2V0KHJl
Y3RfZnJhbWUsIDEuMCwgMC41KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfYWxpZ25fc2V0
KHJlY3RfZnJhbWUsIEVWQVNfSElOVF9GSUxMLCBFVkFTX0hJTlRfRklMTCk7CisgICAgZWxtX29i
amVjdF90ZXh0X3NldChyZWN0X2ZyYW1lLCAiQ29sb3IgVmlldyIpOworICAgIGVsbV9ib3hfcGFj
a19lbmQoYm94LCByZWN0X2ZyYW1lKTsKKyAgICBldmFzX29iamVjdF9zaG93KHJlY3RfZnJhbWUp
OworCisgICAgcmVjdCA9IGV2YXNfb2JqZWN0X3JlY3RhbmdsZV9hZGQoZXZhc19vYmplY3RfZXZh
c19nZXQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IpKTsKKyAgICBlbG1fb2Jq
ZWN0X2NvbnRlbnRfc2V0KHJlY3RfZnJhbWUsIHJlY3QpOworICAgIGV3a19jb2xvcl9waWNrZXJf
Y29sb3JfZ2V0KGNvbG9yX3BpY2tlciwgJnIsICZnLCAmYiwgJmEpOworICAgIGV2YXNfb2JqZWN0
X2NvbG9yX3NldChyZWN0LCByLCBnLCBiLCBhKTsKKyAgICBldmFzX29iamVjdF9zaG93KHJlY3Qp
OworICAgIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IucmVjdF9kYXRhID0gcmVjdDsKKworICAgIGNw
X2ZyYW1lID0gZWxtX2ZyYW1lX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rv
cik7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X3dlaWdodF9zZXQoY3BfZnJhbWUsIDEuMCwg
MS41KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfYWxpZ25fc2V0KGNwX2ZyYW1lLCBFVkFT
X0hJTlRfRklMTCwgRVZBU19ISU5UX0ZJTEwpOworICAgIGVsbV9vYmplY3RfdGV4dF9zZXQoY3Bf
ZnJhbWUsICJDb2xvciBTZWxlY3RvciIpOworICAgIGVsbV9ib3hfcGFja19lbmQoYm94LCBjcF9m
cmFtZSk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhjcF9mcmFtZSk7CisKKyAgICBjb2xvcl9waWNr
ZXJfb2JqID0gZWxtX2NvbG9yc2VsZWN0b3JfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxt
X3NlbGVjdG9yKTsKKyAgICBlbG1fb2JqZWN0X2NvbnRlbnRfc2V0KGNwX2ZyYW1lLCBjb2xvcl9w
aWNrZXJfb2JqKTsKKworICAgIGJ1dHRvbl9ib3ggPSBlbG1fYm94X2FkZCh3aW5kb3ctPmNvbG9y
X3NlbGVjdG9yLmVsbV9zZWxlY3Rvcik7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X3dlaWdo
dF9zZXQoYnV0dG9uX2JveCwgRVZBU19ISU5UX0VYUEFORCwgMC4xKTsKKyAgICBlbG1fYm94X2hv
cml6b250YWxfc2V0KGJ1dHRvbl9ib3gsIEVJTkFfVFJVRSk7CisgICAgZWxtX2JveF9wYWNrX2Vu
ZChib3gsIGJ1dHRvbl9ib3gpOworICAgIGV2YXNfb2JqZWN0X3Nob3coYnV0dG9uX2JveCk7CisK
KyAgICBva19idXR0b24gPSBlbG1fYnV0dG9uX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVs
bV9zZWxlY3Rvcik7CisgICAgZWxtX29iamVjdF90ZXh0X3NldChva19idXR0b24sICJPSyIpOwor
ICAgIGVsbV9ib3hfcGFja19lbmQoYnV0dG9uX2JveCwgb2tfYnV0dG9uKTsKKyAgICBldmFzX29i
amVjdF9zaG93KG9rX2J1dHRvbik7CisKKyAgICBjYW5jZWxfYnV0dG9uID0gZWxtX2J1dHRvbl9h
ZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IpOworICAgIGVsbV9vYmplY3Rf
dGV4dF9zZXQoY2FuY2VsX2J1dHRvbiwgIkNhbmNlbCIpOworICAgIGVsbV9ib3hfcGFja19lbmQo
YnV0dG9uX2JveCwgY2FuY2VsX2J1dHRvbik7CisgICAgZXZhc19vYmplY3Rfc2hvdyhjYW5jZWxf
YnV0dG9uKTsKKworICAgIGV2YXNfb2JqZWN0X3Nob3coY29sb3JfcGlja2VyX29iaik7IAorICAg
IGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZChva19idXR0b24sICJjbGlja2VkIiwgb25f
Y29sb3JwaWNrZXJfb2tfY2xpY2tlZCwgd2luZG93KTsKKyAgICBldmFzX29iamVjdF9zbWFydF9j
YWxsYmFja19hZGQoY2FuY2VsX2J1dHRvbiwgImNsaWNrZWQiLCBvbl9jb2xvcnBpY2tlcl9jYW5j
ZWxfY2xpY2tlZCwgd2luZG93KTsKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQo
d2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IsICJkZWxldGUscmVxdWVzdCIsIG9u
X2NvbG9ycGlja2VyX2NhbmNlbF9jbGlja2VkLCB3aW5kb3cpOworICAgIGV2YXNfb2JqZWN0X3Nt
YXJ0X2NhbGxiYWNrX2FkZChjb2xvcl9waWNrZXJfb2JqLCAiY2hhbmdlZCIsIG9uX2NvbG9yX2No
YW5nZWQsIHJlY3QpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZChjb2xvcl9w
aWNrZXJfb2JqLCAiY29sb3IsaXRlbSxzZWxlY3RlZCIsIG9uX2NvbG9yX3BhbGV0dGVfY2xpY2tl
ZCwgcmVjdCk7CisKKyAgICBldmFzX29iamVjdF9yZXNpemUod2luZG93LT5jb2xvcl9zZWxlY3Rv
ci5lbG1fc2VsZWN0b3IsIDQwMCwgNTAwKTsKKyAgICBldmFzX29iamVjdF9zaG93KHdpbmRvdy0+
Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yKTsKKworICAgIHJldHVybiBFSU5BX1RSVUU7Cit9
CisKK3N0YXRpYyB2b2lkCiB1cGRhdGVfdmlld19mYXZpY29uKEJyb3dzZXJfV2luZG93ICp3aW5k
b3csIEV2YXNfT2JqZWN0ICppY29uKQogewogICAgIC8qIFJlbW92ZSBwcmV2aW91cyBpY29uIGZy
b20gVVJMIGJhciAqLwpAQCAtMTUwMyw2ICsxNjI3LDggQEAgc3RhdGljIEJyb3dzZXJfV2luZG93
ICp3aW5kb3dfY3JlYXRlKEV2YXNfT2JqZWN0ICpvcGVuZXIsIGNvbnN0IGNoYXIgKnVybCwgaW50
IHcKIAogICAgIC8qIENyZWF0ZSBld2tfdmlldyAqLwogICAgIEV3a19WaWV3X1NtYXJ0X0NsYXNz
ICpld2tWaWV3Q2xhc3MgPSBtaW5pQnJvd3NlclZpZXdTbWFydENsYXNzKCk7CisgICAgZXdrVmll
d0NsYXNzLT5pbnB1dF9waWNrZXJfY29sb3JfcmVxdWVzdCA9IG9uX2NvbG9ycGlja2VyX3JlcXVl
c3Q7CisgICAgZXdrVmlld0NsYXNzLT5pbnB1dF9waWNrZXJfY29sb3JfZGlzbWlzcyA9IG9uX2Nv
bG9ycGlja2VyX2Rpc21pc3M7CiAgICAgZXdrVmlld0NsYXNzLT5ydW5famF2YXNjcmlwdF9hbGVy
dCA9IG9uX2phdmFzY3JpcHRfYWxlcnQ7CiAgICAgZXdrVmlld0NsYXNzLT5ydW5famF2YXNjcmlw
dF9jb25maXJtID0gb25famF2YXNjcmlwdF9jb25maXJtOwogICAgIGV3a1ZpZXdDbGFzcy0+cnVu
X2phdmFzY3JpcHRfcHJvbXB0ID0gb25famF2YXNjcmlwdF9wcm9tcHQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="0"
              isprivate="0"
          >
            <attachid>202376</attachid>
            <date>2013-05-20 21:20:12 -0700</date>
            <delta_ts>2013-05-20 21:20:12 -0700</delta_ts>
            <desc>color picker screen shot.</desc>
            <filename>color_picker_screenshot.png</filename>
            <type>image/png</type>
            <size>76071</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">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
uufuQfr+99fTL37x1rIo+bp16+m1r32KPvvZ6yPCqFLGsihgFRYiMWHs6empQnisyoaAIWAIGAJJ
EYCTArZy8ZJ+9atfTXfccUfS4s9ZOrUZBIGbTftBeENDwugI4wATxg1lSRihkg7V0nPWUFV+48SE
scpxsuobAoaAIWAIJESgXAhjpuKCkM02MUsC21yUC4QREsY97JVc7oQRKmnsppJO0ptKkyYfYTRj
gdLgbrkaAoaAIWAIGAJlg8CEre5YNm1RqQUxwlipLWflNgQMAUNgDhH40pe+RO95z3vone98J33u
c5/jMCn9EnWiq6uLPXGb2QPWeeP+x3/8R9bAzPfddx+96lWvora2Ntnx/d57741qpQGdH3roITrv
vPPE1k1VunouhEDPaTDo973vfdHpm2++mU499VRqbGyktWvX0v/9v/83EXp33303XXHFFdTa2kqd
nZ107bXX0i233BKFgslUBxzLt+W7Tuv34IMPptV92iFokjgB5Cu0na9qBIwwVnXzW+UNAUPAEJge
AhdeeCF99atfpa985StCEv/6r/9aMtqxY4f83rp1q/x+61vfSnv27KEFCxYIqdQNhOmGG26gD33o
Q/Tyyy/L/sEPfpDe8Y53EM6Faw1/7WtfY9u7X6SRyUzESY9pbL9/+Zd/kdvdeeedBIL7b//2bxzO
pZd++tOf0o9+9CP6z//8z5wxAEEW//AP/5D+5m/+hg4cOEAgb6gDSCM2rQPK/dJLL0V1+J3f+R05
l21Lcp3WJVPdNd9LL72ULrvssuk1oF1lCEwDAQiqbTcMrA9YH7A+YH0gUR9gG8bJL37xi5Pf+c53
JlnaNnn//fdPLlq0aHLnzp2TR44cmXz7298+edNNNzHncduXv/zlyfe+973Rb3y56qqrJln6mHYM
P1gSOHn11VdPMumTc5ifNm/eHP0OL8C5+IZjeq2ew702btyYlpQJ3iSTrYz5akKWLE7eeuutadch
H70H8v3+978/JQ+tQ7ysWq6k1+E+mzZtylrGiy++ePKVr3zlFAz0AK+sMnn06NHJLVu3Td70/56e
vPba7yPIcFns69Y9N/mhD313sq+vb3JwcHByZGRkkm0us9bFTpQegeeee27y5d3PTO48+Gi0v7jn
kclHH39Qn0Uji0aYrQ9YH7A+YH0geR8AYWQp4iSrftMIphLGn/zkJ0L6dLvkkksmWVqXNuOxineS
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
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202488</attachid>
            <date>2013-05-21 18:50:55 -0700</date>
            <delta_ts>2013-05-23 17:01:13 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130522104944.patch</filename>
            <type>text/plain</type>
            <size>8009</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5MDE2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmM2NWRlYTIxYjM0NWE2MDAyYjg1ZGY5Y2I3OTNlMGY5
NWFkYjZmMC4uZjM0NDdkNzRlNWFmMzVlNWYyNjk4NmEwN2M5NzkxNGZkZWZlMzFhMyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1
IEBACisyMDEzLTA1LTA5ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXUltcGxlbWVudCBjb2xvciBwaWNrZXIgVUkgZm9yIEhUTUw1IGlucHV0IHR5
cGUgY29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFdoZW4gdXNlciBjbGlja3MgSFRNTDUgaW5wdXQgdHlwZSBjb2xvciwg
CisgICAgICAgIGNvbG9yIHBpY2tlciB3aW5kb3cgaXMgY3JlYXRlZCBvbiBicm93c2VyIG9iamVj
dCBieSB1c2luZyBlbG1fY29sb3JjaG9vc2VyX2FkZCgpLiAKKyAgICAgICAgSXQgY2FuIGxpc3Rl
biBhIHNpZ25hbCBkaXNtaXNzaW5nIGNvbG9ycGlja2VyIGJ5IGNhbGxpbmcgdGhlIGV3a19jb2xv
cl9waWNrZXJfY29sb3Jfc2V0KCkuCisgICAgICAgIFRoZSBldmFzX29iamV0X2NvbG9yX3NldCgp
IHNldHMgYSBjb2xvciB2YWx1ZSByZXR1cm5pbmcgdG8gYnJvd3Nlci4KKworICAgICAgICAqIE1p
bmlCcm93c2VyL2VmbC9tYWluLmM6CisgICAgICAgIChfQnJvd3Nlcl9XaW5kb3cpOgorICAgICAg
ICAob25fY2hhbmdlZF9jb2xvcik6IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgdG8gc2hvdyBj
b2xvciBzZWxlY3RlZCBieSB1c2VyLgorICAgICAgICAob25fY29sb3JwYWxldHRlX2NsaWNrZWQp
OiBDaGFuZ2UgY29sb3Igb2YgcmVjdGFuZ2xlIHdpdGggY2xpY2tpbmcgY29sb3IgYm94IGJhc2lj
YWxseSBvZmZlZCBieSBlbGVtZW50IEFQSS4gCisgICAgICAgIChvbl9jb2xvcnBpY2tlcl9va19j
bGlja2VkKTogQ2FsbCBvbl9jb2xvcnBpY2tlcl9kaXNtaXNzIGFuZCBzZXQgdGhlIGNvbG9yLgor
ICAgICAgICAob25fY29sb3JwaWNrZXJfY2FuY2VsX2NsaWNrZWQpOiBHZXQgYSBwcmVleGlzdGlu
ZyBjb2xvciBhbmQgY2FsbCBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldCgpLgorICAgICAgICAo
b25fY29sb3JwaWNrZXJfZGlzbWlzcyk6IERlbGV0ZSBjb2xvcnBpY2tlciBvYmplY3QuCisgICAg
ICAgIChvbl9jb2xvcnBpY2tlcl9yZXF1ZXN0KTogQ3JlYXRlIGNvbG9ycGlja2VyIHdpbmRvdyBv
YmplY3QuCisgICAgICAgICh3aW5kb3dfY3JlYXRlKTogQ29ubmVjdGluZyB1cCB3aXRoIFVJUHJv
Y2Vzcy9lZmwvUGFnZUNsaWVudEVmbC5jcHAKKwogMjAxMy0wNC0yMyAgRGF2aWQgR3JvZ2FuICA8
ZGdyb2dhbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gUmVtb3ZlIG15c2Vs
ZiBmcm9tIHdhdGNobGlzdC4KZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWlu
LmMgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCmluZGV4IDNiMzk1MWY3NGE2MzQzMjY5
NjM5OWI4ZDRhNGVlYTc1YWM4NzQyMzUuLjMwNDU0MmZkYTFjNmFhNTNiNThlMjE4N2FlYTA2YzMx
NzJjOThlODcgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWluLmMKKysrIGIv
VG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4uYwpAQCAtMTA2LDYgKzEwNiwxMCBAQCB0eXBlZGVm
IHN0cnVjdCBfQnJvd3Nlcl9XaW5kb3cgewogICAgICAgICBFdmFzX09iamVjdCAqYmFja3dhcmRf
YnV0dG9uOwogICAgICAgICBFdmFzX09iamVjdCAqZm9yd2FyZF9idXR0b247CiAgICAgfSBzZWFy
Y2g7CisgICAgc3RydWN0IHsKKyAgICAgICAgRXdrX0NvbG9yX1BpY2tlciAqZXdrX3BpY2tlcjsK
KyAgICAgICAgRXZhc19PYmplY3QgKmVsbV9zZWxlY3RvcjsKKyAgICB9IGNvbG9yX3NlbGVjdG9y
OwogICAgIGludCBjdXJyZW50X3pvb21fbGV2ZWw7IAogICAgIFRvb2x0aXBfSW5mb3JtYXRpb24g
dG9vbHRpcDsKICAgICBFdmFzX09iamVjdCAqY29udGV4dF9wb3B1cDsKQEAgLTU5NSw2ICs1OTks
MTMwIEBAIG9uX2Rvd25sb2FkX2ZhaWxlZCh2b2lkICp1c2VyX2RhdGEsIEV2YXNfT2JqZWN0ICpl
d2tfdmlldywgdm9pZCAqZXZlbnRfaW5mbykKIH0KIAogc3RhdGljIHZvaWQKK29uX2NvbG9yX2No
YW5nZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5mbykKK3sK
KyAgICBpbnQgciwgZywgYiwgYTsKKyAgICBCcm93c2VyX1dpbmRvdyAqd2luZG93ID0gKEJyb3dz
ZXJfV2luZG93ICopZGF0YTsKKyAgICAKKyAgICBlbG1fY29sb3JzZWxlY3Rvcl9jb2xvcl9nZXQo
b2JqLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KHdpbmRvdy0+
Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGljIHZv
aWQKK29uX2NvbG9yX3BhbGV0dGVfY2xpY2tlZCh2b2lkICpkYXRhLCBFdmFzX09iamVjdCAqb2Jq
LCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCByLCBnLCBiLCBhOworICAgIEJyb3dzZXJf
V2luZG93ICp3aW5kb3cgPSAoQnJvd3Nlcl9XaW5kb3cgKilkYXRhOworICAgIEVsbV9PYmplY3Rf
SXRlbSAqY29sb3JfaXRlbSA9IChFbG1fT2JqZWN0X0l0ZW0gKilldmVudF9pbmZvOworCisgICAg
ZWxtX2NvbG9yc2VsZWN0b3JfcGFsZXR0ZV9pdGVtX2NvbG9yX2dldChjb2xvcl9pdGVtLCAmciwg
JmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KHdpbmRvdy0+Y29sb3Jfc2Vs
ZWN0b3IuZWxtX3NlbGVjdG9yLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGljIHZvaWQKK29uX2Nv
bG9yX3BpY2tlcl9va19jbGlja2VkKHZvaWQgKmRhdGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQg
KmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIsIGE7CisgICAgQnJvd3Nlcl9XaW5kb3cg
KndpbmRvdyA9IChCcm93c2VyX1dpbmRvdyAqKWRhdGE7CisKKyAgICBldmFzX29iamVjdF9jb2xv
cl9nZXQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IsICZyLCAmZywgJmIsICZh
KTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9y
LmV3a19waWNrZXIsIHIsIGcsIGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JfcGlj
a2VyX2NhbmNlbF9jbGlja2VkKHZvaWQgKmRhdGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2
ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIsIGE7CisKKyAgICBCcm93c2VyX1dpbmRvdyAq
d2luZG93ID0gKEJyb3dzZXJfV2luZG93ICopZGF0YTsKKworICAgIGV3a19jb2xvcl9waWNrZXJf
Y29sb3JfZ2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZXdrX3BpY2tlciwgJnIsICZnLCAmYiwg
JmEpOworICAgIGV3a19jb2xvcl9waWNrZXJfY29sb3Jfc2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0
b3IuZXdrX3BpY2tlciwgciwgZywgYiwgYSk7Cit9CisKK3N0YXRpYyBFaW5hX0Jvb2wKK29uX2Nv
bG9yX3BpY2tlcl9kaXNtaXNzKEV3a19WaWV3X1NtYXJ0X0RhdGEgKnNkKQoreworICAgIEJyb3dz
ZXJfV2luZG93ICp3aW5kb3cgPSB3aW5kb3dfZmluZF93aXRoX2V3a192aWV3KHNkLT5zZWxmKTsK
KyAgICBldmFzX29iamVjdF9kZWwod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Ip
OworCisgICAgcmV0dXJuIEVJTkFfVFJVRTsKK30KKworc3RhdGljIEVpbmFfQm9vbAorb25fY29s
b3JfcGlja2VyX3JlcXVlc3QoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QsIEV3a19Db2xvcl9QaWNr
ZXIgKmNvbG9yX3BpY2tlcikKK3sKKyAgICBCcm93c2VyX1dpbmRvdyAqd2luZG93ID0gd2luZG93
X2ZpbmRfd2l0aF9ld2tfdmlldyhzZC0+c2VsZik7CisgICAgd2luZG93LT5jb2xvcl9zZWxlY3Rv
ci5lbG1fc2VsZWN0b3IgPSBlbG1fd2luX2FkZCh3aW5kb3ctPmVsbV93aW5kb3csICJjb2xvciBz
ZWxlY3RvciIsIEVMTV9XSU5fQkFTSUMpOworICAgIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZXdr
X3BpY2tlciA9IGNvbG9yX3BpY2tlcjsKKworICAgIEV2YXNfT2JqZWN0ICpyZWN0LCAqYm94LCAq
YnV0dG9uX2JveCwgKnJlY3RfZnJhbWUsICpjcF9mcmFtZSwgKm9rX2J1dHRvbiwgKmNhbmNlbF9i
dXR0b24sICpjb2xvcl9waWNrZXJfb2JqOworICAgIGludCByLCBnLCBiLCBhOworCisgICAgZWxt
X3dpbl90aXRsZV9zZXQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IsICJDb2xv
ciBzZWxlY3RvciIpOworICAgIGVsbV93aW5fbW9kYWxfc2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0
b3IuZWxtX3NlbGVjdG9yLCBFSU5BX1RSVUUpOworCisgICAgLyogU2hvdyBjb2xvciB2aWV3ICov
CisgICAgYm94ID0gZWxtX2JveF9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0
b3IpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF93ZWlnaHRfc2V0KGJveCwgRVZBU19ISU5U
X0VYUEFORCwgMC45KTsKKyAgICBlbG1fd2luX3Jlc2l6ZV9vYmplY3RfYWRkKHdpbmRvdy0+Y29s
b3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yLCBib3gpOworICAgIGV2YXNfb2JqZWN0X3Nob3coYm94
KTsKKworICAgIHJlY3RfZnJhbWUgPSBlbG1fZnJhbWVfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0
b3IuZWxtX3NlbGVjdG9yKTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfd2VpZ2h0X3NldChy
ZWN0X2ZyYW1lLCAxLjAsIDAuNSk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X2FsaWduX3Nl
dChyZWN0X2ZyYW1lLCBFVkFTX0hJTlRfRklMTCwgRVZBU19ISU5UX0ZJTEwpOworICAgIGVsbV9v
YmplY3RfdGV4dF9zZXQocmVjdF9mcmFtZSwgIkNvbG9yIFZpZXciKTsKKyAgICBlbG1fYm94X3Bh
Y2tfZW5kKGJveCwgcmVjdF9mcmFtZSk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhyZWN0X2ZyYW1l
KTsKKworICAgIHJlY3QgPSBldmFzX29iamVjdF9yZWN0YW5nbGVfYWRkKGV2YXNfb2JqZWN0X2V2
YXNfZ2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yKSk7CisgICAgZWxtX29i
amVjdF9jb250ZW50X3NldChyZWN0X2ZyYW1lLCByZWN0KTsKKyAgICBld2tfY29sb3JfcGlja2Vy
X2NvbG9yX2dldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmV3a19waWNrZXIsICZyLCAmZywgJmIs
ICZhKTsKKyAgICBldmFzX29iamVjdF9jb2xvcl9zZXQocmVjdCwgciwgZywgYiwgYSk7CisgICAg
ZXZhc19vYmplY3Rfc2hvdyhyZWN0KTsKKworICAgIC8qIFNob3cgY29sb3IgcGlja2VyICovCisg
ICAgY3BfZnJhbWUgPSBlbG1fZnJhbWVfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3Nl
bGVjdG9yKTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfd2VpZ2h0X3NldChjcF9mcmFtZSwg
MS4wLCAxLjUpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF9hbGlnbl9zZXQoY3BfZnJhbWUs
IEVWQVNfSElOVF9GSUxMLCBFVkFTX0hJTlRfRklMTCk7CisgICAgZWxtX29iamVjdF90ZXh0X3Nl
dChjcF9mcmFtZSwgIkNvbG9yIFNlbGVjdG9yIik7CisgICAgZWxtX2JveF9wYWNrX2VuZChib3gs
IGNwX2ZyYW1lKTsKKyAgICBldmFzX29iamVjdF9zaG93KGNwX2ZyYW1lKTsKKworICAgIGNvbG9y
X3BpY2tlcl9vYmogPSBlbG1fY29sb3JzZWxlY3Rvcl9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rv
ci5lbG1fc2VsZWN0b3IpOworICAgIGVsbV9vYmplY3RfY29udGVudF9zZXQoY3BfZnJhbWUsIGNv
bG9yX3BpY2tlcl9vYmopOworICAgIGV2YXNfb2JqZWN0X3Nob3coY29sb3JfcGlja2VyX29iaik7
IAorCisgICAgLyogT2ssQ2FuY2VsIEJ1dHRvbnMgKi8KKyAgICBidXR0b25fYm94ID0gZWxtX2Jv
eF9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IpOworICAgIGV2YXNfb2Jq
ZWN0X3NpemVfaGludF93ZWlnaHRfc2V0KGJ1dHRvbl9ib3gsIEVWQVNfSElOVF9FWFBBTkQsIDAu
MSk7CisgICAgZWxtX2JveF9ob3Jpem9udGFsX3NldChidXR0b25fYm94LCBFSU5BX1RSVUUpOwor
ICAgIGVsbV9ib3hfcGFja19lbmQoYm94LCBidXR0b25fYm94KTsKKyAgICBldmFzX29iamVjdF9z
aG93KGJ1dHRvbl9ib3gpOworCisgICAgb2tfYnV0dG9uID0gZWxtX2J1dHRvbl9hZGQod2luZG93
LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IpOworICAgIGVsbV9vYmplY3RfdGV4dF9zZXQo
b2tfYnV0dG9uLCAiT0siKTsKKyAgICBlbG1fYm94X3BhY2tfZW5kKGJ1dHRvbl9ib3gsIG9rX2J1
dHRvbik7CisgICAgZXZhc19vYmplY3Rfc2hvdyhva19idXR0b24pOworCisgICAgY2FuY2VsX2J1
dHRvbiA9IGVsbV9idXR0b25fYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9y
KTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KGNhbmNlbF9idXR0b24sICJDYW5jZWwiKTsKKyAg
ICBlbG1fYm94X3BhY2tfZW5kKGJ1dHRvbl9ib3gsIGNhbmNlbF9idXR0b24pOworICAgIGV2YXNf
b2JqZWN0X3Nob3coY2FuY2VsX2J1dHRvbik7CisKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxs
YmFja19hZGQob2tfYnV0dG9uLCAiY2xpY2tlZCIsIG9uX2NvbG9yX3BpY2tlcl9va19jbGlja2Vk
LCB3aW5kb3cpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZChjYW5jZWxfYnV0
dG9uLCAiY2xpY2tlZCIsIG9uX2NvbG9yX3BpY2tlcl9jYW5jZWxfY2xpY2tlZCwgd2luZG93KTsK
KyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rv
ci5lbG1fc2VsZWN0b3IsICJkZWxldGUscmVxdWVzdCIsIG9uX2NvbG9yX3BpY2tlcl9jYW5jZWxf
Y2xpY2tlZCwgd2luZG93KTsKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQoY29s
b3JfcGlja2VyX29iaiwgImNoYW5nZWQiLCBvbl9jb2xvcl9jaGFuZ2VkLCB3aW5kb3cpOworICAg
IGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZChjb2xvcl9waWNrZXJfb2JqLCAiY29sb3Is
aXRlbSxzZWxlY3RlZCIsIG9uX2NvbG9yX3BhbGV0dGVfY2xpY2tlZCwgd2luZG93KTsKKworICAg
IGV2YXNfb2JqZWN0X3Jlc2l6ZSh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvciwg
NDAwLCA1MDApOworICAgIGV2YXNfb2JqZWN0X3Nob3cod2luZG93LT5jb2xvcl9zZWxlY3Rvci5l
bG1fc2VsZWN0b3IpOworCisgICAgcmV0dXJuIEVJTkFfVFJVRTsKK30KKworc3RhdGljIHZvaWQK
IHVwZGF0ZV92aWV3X2Zhdmljb24oQnJvd3Nlcl9XaW5kb3cgKndpbmRvdywgRXZhc19PYmplY3Qg
Kmljb24pCiB7CiAgICAgLyogUmVtb3ZlIHByZXZpb3VzIGljb24gZnJvbSBVUkwgYmFyICovCkBA
IC0xNTAzLDYgKzE2MzEsOCBAQCBzdGF0aWMgQnJvd3Nlcl9XaW5kb3cgKndpbmRvd19jcmVhdGUo
RXZhc19PYmplY3QgKm9wZW5lciwgY29uc3QgY2hhciAqdXJsLCBpbnQgdwogCiAgICAgLyogQ3Jl
YXRlIGV3a192aWV3ICovCiAgICAgRXdrX1ZpZXdfU21hcnRfQ2xhc3MgKmV3a1ZpZXdDbGFzcyA9
IG1pbmlCcm93c2VyVmlld1NtYXJ0Q2xhc3MoKTsKKyAgICBld2tWaWV3Q2xhc3MtPmlucHV0X3Bp
Y2tlcl9jb2xvcl9yZXF1ZXN0ID0gb25fY29sb3JfcGlja2VyX3JlcXVlc3Q7CisgICAgZXdrVmll
d0NsYXNzLT5pbnB1dF9waWNrZXJfY29sb3JfZGlzbWlzcyA9IG9uX2NvbG9yX3BpY2tlcl9kaXNt
aXNzOwogICAgIGV3a1ZpZXdDbGFzcy0+cnVuX2phdmFzY3JpcHRfYWxlcnQgPSBvbl9qYXZhc2Ny
aXB0X2FsZXJ0OwogICAgIGV3a1ZpZXdDbGFzcy0+cnVuX2phdmFzY3JpcHRfY29uZmlybSA9IG9u
X2phdmFzY3JpcHRfY29uZmlybTsKICAgICBld2tWaWV3Q2xhc3MtPnJ1bl9qYXZhc2NyaXB0X3By
b21wdCA9IG9uX2phdmFzY3JpcHRfcHJvbXB0Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202753</attachid>
            <date>2013-05-23 17:01:26 -0700</date>
            <delta_ts>2013-05-23 20:56:52 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130524090013.patch</filename>
            <type>text/plain</type>
            <size>8128</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5MDE2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmM2NWRlYTIxYjM0NWE2MDAyYjg1ZGY5Y2I3OTNlMGY5
NWFkYjZmMC4uZjM0NDdkNzRlNWFmMzVlNWYyNjk4NmEwN2M5NzkxNGZkZWZlMzFhMyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1
IEBACisyMDEzLTA1LTA5ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXUltcGxlbWVudCBjb2xvciBwaWNrZXIgVUkgZm9yIEhUTUw1IGlucHV0IHR5
cGUgY29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFdoZW4gdXNlciBjbGlja3MgSFRNTDUgaW5wdXQgdHlwZSBjb2xvciwg
CisgICAgICAgIGNvbG9yIHBpY2tlciB3aW5kb3cgaXMgY3JlYXRlZCBvbiBicm93c2VyIG9iamVj
dCBieSB1c2luZyBlbG1fY29sb3JjaG9vc2VyX2FkZCgpLiAKKyAgICAgICAgSXQgY2FuIGxpc3Rl
biBhIHNpZ25hbCBkaXNtaXNzaW5nIGNvbG9ycGlja2VyIGJ5IGNhbGxpbmcgdGhlIGV3a19jb2xv
cl9waWNrZXJfY29sb3Jfc2V0KCkuCisgICAgICAgIFRoZSBldmFzX29iamV0X2NvbG9yX3NldCgp
IHNldHMgYSBjb2xvciB2YWx1ZSByZXR1cm5pbmcgdG8gYnJvd3Nlci4KKworICAgICAgICAqIE1p
bmlCcm93c2VyL2VmbC9tYWluLmM6CisgICAgICAgIChfQnJvd3Nlcl9XaW5kb3cpOgorICAgICAg
ICAob25fY2hhbmdlZF9jb2xvcik6IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgdG8gc2hvdyBj
b2xvciBzZWxlY3RlZCBieSB1c2VyLgorICAgICAgICAob25fY29sb3JwYWxldHRlX2NsaWNrZWQp
OiBDaGFuZ2UgY29sb3Igb2YgcmVjdGFuZ2xlIHdpdGggY2xpY2tpbmcgY29sb3IgYm94IGJhc2lj
YWxseSBvZmZlZCBieSBlbGVtZW50IEFQSS4gCisgICAgICAgIChvbl9jb2xvcnBpY2tlcl9va19j
bGlja2VkKTogQ2FsbCBvbl9jb2xvcnBpY2tlcl9kaXNtaXNzIGFuZCBzZXQgdGhlIGNvbG9yLgor
ICAgICAgICAob25fY29sb3JwaWNrZXJfY2FuY2VsX2NsaWNrZWQpOiBHZXQgYSBwcmVleGlzdGlu
ZyBjb2xvciBhbmQgY2FsbCBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldCgpLgorICAgICAgICAo
b25fY29sb3JwaWNrZXJfZGlzbWlzcyk6IERlbGV0ZSBjb2xvcnBpY2tlciBvYmplY3QuCisgICAg
ICAgIChvbl9jb2xvcnBpY2tlcl9yZXF1ZXN0KTogQ3JlYXRlIGNvbG9ycGlja2VyIHdpbmRvdyBv
YmplY3QuCisgICAgICAgICh3aW5kb3dfY3JlYXRlKTogQ29ubmVjdGluZyB1cCB3aXRoIFVJUHJv
Y2Vzcy9lZmwvUGFnZUNsaWVudEVmbC5jcHAKKwogMjAxMy0wNC0yMyAgRGF2aWQgR3JvZ2FuICA8
ZGdyb2dhbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gUmVtb3ZlIG15c2Vs
ZiBmcm9tIHdhdGNobGlzdC4KZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWlu
LmMgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCmluZGV4IDNiMzk1MWY3NGE2MzQzMjY5
NjM5OWI4ZDRhNGVlYTc1YWM4NzQyMzUuLjAwZjBmMTA4MzMwOGMyMzM4NjRhYzVjZDFlOWU3Yjk4
ODViNzk3YTUgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWluLmMKKysrIGIv
VG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4uYwpAQCAtOTAsNiArOTAsMTIgQEAgdHlwZWRlZiBz
dHJ1Y3QgX1Rvb2x0aXBfSW5mb3JtYXRpb24gewogICAgIEVpbmFfQm9vbCBzaG93bjsKIH0gVG9v
bHRpcF9JbmZvcm1hdGlvbjsKIAordHlwZWRlZiBzdHJ1Y3QgX0NvbG9yX1NlbGVjdG9yIHsKKyAg
ICBFd2tfQ29sb3JfUGlja2VyICpld2tfcGlja2VyOworICAgIEV2YXNfT2JqZWN0ICplbG1fc2Vs
ZWN0b3I7CisgICAgRXZhc19PYmplY3QgKmVsbV9zZWxlY3Rvcl93aW5kb3c7Cit9IENvbG9yX1Nl
bGVjdG9yOworCiB0eXBlZGVmIHN0cnVjdCBfQnJvd3Nlcl9XaW5kb3cgewogICAgIEV2YXNfT2Jq
ZWN0ICplbG1fd2luZG93OwogICAgIEV2YXNfT2JqZWN0ICpld2tfdmlldzsKQEAgLTEwOCw2ICsx
MTQsNyBAQCB0eXBlZGVmIHN0cnVjdCBfQnJvd3Nlcl9XaW5kb3cgewogICAgIH0gc2VhcmNoOwog
ICAgIGludCBjdXJyZW50X3pvb21fbGV2ZWw7IAogICAgIFRvb2x0aXBfSW5mb3JtYXRpb24gdG9v
bHRpcDsKKyAgICBDb2xvcl9TZWxlY3RvciBjb2xvcl9zZWxlY3RvcjsKICAgICBFdmFzX09iamVj
dCAqY29udGV4dF9wb3B1cDsKIH0gQnJvd3Nlcl9XaW5kb3c7CiAKQEAgLTU5NSw2ICs2MDIsMTI2
IEBAIG9uX2Rvd25sb2FkX2ZhaWxlZCh2b2lkICp1c2VyX2RhdGEsIEV2YXNfT2JqZWN0ICpld2tf
dmlldywgdm9pZCAqZXZlbnRfaW5mbykKIH0KIAogc3RhdGljIHZvaWQKK29uX2NvbG9yX2NoYW5n
ZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5mbykKK3sKKyAg
ICBpbnQgciwgZywgYiwgYTsKKyAgICAKKyAgICBlbG1fY29sb3JzZWxlY3Rvcl9jb2xvcl9nZXQo
b2JqLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KGRhdGEsIHIs
IGcsIGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JfaXRlbV9zZWxlY3RlZCh2b2lk
ICpkYXRhLCBFdmFzX09iamVjdCAqb2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCBy
LCBnLCBiLCBhOworICAgIEVsbV9PYmplY3RfSXRlbSAqY29sb3JfaXRlbSA9IChFbG1fT2JqZWN0
X0l0ZW0gKilldmVudF9pbmZvOworCisgICAgZWxtX2NvbG9yc2VsZWN0b3JfcGFsZXR0ZV9pdGVt
X2NvbG9yX2dldChjb2xvcl9pdGVtLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3Rf
Y29sb3Jfc2V0KGRhdGEsIHIsIGcsIGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3Jf
cGlja2VyX29rX2NsaWNrZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZl
bnRfaW5mbykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKyAgICBDb2xvcl9TZWxlY3RvciAqY29s
b3Jfc2VsZWN0b3IgPSAoQ29sb3JfU2VsZWN0b3IgKilkYXRhOworCisgICAgZWxtX2NvbG9yc2Vs
ZWN0b3JfY29sb3JfZ2V0KGNvbG9yX3NlbGVjdG9yLT5lbG1fc2VsZWN0b3IsICZyLCAmZywgJmIs
ICZhKTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldChjb2xvcl9zZWxlY3Rvci0+ZXdr
X3BpY2tlciwgciwgZywgYiwgYSk7Cit9CisKK3N0YXRpYyB2b2lkCitvbl9jb2xvcl9waWNrZXJf
Y2FuY2VsX2NsaWNrZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRf
aW5mbykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKworICAgIGV3a19jb2xvcl9waWNrZXJfY29s
b3JfZ2V0KGRhdGEsICZyLCAmZywgJmIsICZhKTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9y
X3NldChkYXRhLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGljIEVpbmFfQm9vbAorb25fY29sb3Jf
cGlja2VyX2Rpc21pc3MoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QpCit7CisgICAgQnJvd3Nlcl9X
aW5kb3cgKndpbmRvdyA9IHdpbmRvd19maW5kX3dpdGhfZXdrX3ZpZXcoc2QtPnNlbGYpOworCisg
ICAgZXZhc19vYmplY3RfZGVsKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dp
bmRvdyk7CisKKyAgICByZXR1cm4gRUlOQV9UUlVFOworfQorCitzdGF0aWMgRWluYV9Cb29sCitv
bl9jb2xvcl9waWNrZXJfcmVxdWVzdChFd2tfVmlld19TbWFydF9EYXRhICpzZCwgRXdrX0NvbG9y
X1BpY2tlciAqY29sb3JfcGlja2VyKQoreworICAgIGludCByLCBnLCBiLCBhOworICAgIEV2YXNf
T2JqZWN0ICpyZWN0LCAqYm94LCAqYnV0dG9uX2JveCwgKnJlY3RfZnJhbWUsICpjc19mcmFtZSwg
Km9rX2J1dHRvbiwgKmNhbmNlbF9idXR0b247CisKKyAgICBCcm93c2VyX1dpbmRvdyAqd2luZG93
ID0gd2luZG93X2ZpbmRfd2l0aF9ld2tfdmlldyhzZC0+c2VsZik7CisgICAgd2luZG93LT5jb2xv
cl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93ID0gZWxtX3dpbl9hZGQod2luZG93LT5lbG1f
d2luZG93LCAiY29sb3Igc2VsZWN0b3IiLCBFTE1fV0lOX0JBU0lDKTsKKyAgICB3aW5kb3ctPmNv
bG9yX3NlbGVjdG9yLmV3a19waWNrZXIgPSBjb2xvcl9waWNrZXI7CisKKyAgICBlbG1fd2luX3Rp
dGxlX3NldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3csICJDb2xv
ciBzZWxlY3RvciIpOworCisgICAgLyogU2hvdyBjb2xvciB2aWV3ICovCisgICAgYm94ID0gZWxt
X2JveF9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KTsKKyAg
ICBldmFzX29iamVjdF9zaXplX2hpbnRfd2VpZ2h0X3NldChib3gsIEVWQVNfSElOVF9FWFBBTkQs
IDAuOSk7CisgICAgZWxtX3dpbl9yZXNpemVfb2JqZWN0X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVj
dG9yLmVsbV9zZWxlY3Rvcl93aW5kb3csIGJveCk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhib3gp
OworCisgICAgcmVjdF9mcmFtZSA9IGVsbV9mcmFtZV9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rv
ci5lbG1fc2VsZWN0b3Jfd2luZG93KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfd2VpZ2h0
X3NldChyZWN0X2ZyYW1lLCAxLjAsIDAuNSk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X2Fs
aWduX3NldChyZWN0X2ZyYW1lLCBFVkFTX0hJTlRfRklMTCwgRVZBU19ISU5UX0ZJTEwpOworICAg
IGVsbV9vYmplY3RfdGV4dF9zZXQocmVjdF9mcmFtZSwgIkNvbG9yIFZpZXciKTsKKyAgICBlbG1f
Ym94X3BhY2tfZW5kKGJveCwgcmVjdF9mcmFtZSk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhyZWN0
X2ZyYW1lKTsKKworICAgIHJlY3QgPSBldmFzX29iamVjdF9yZWN0YW5nbGVfYWRkKGV2YXNfb2Jq
ZWN0X2V2YXNfZ2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdykp
OworICAgIGVsbV9vYmplY3RfY29udGVudF9zZXQocmVjdF9mcmFtZSwgcmVjdCk7CisgICAgZXdr
X2NvbG9yX3BpY2tlcl9jb2xvcl9nZXQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5ld2tfcGlja2Vy
LCAmciwgJmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KHJlY3QsIHIsIGcs
IGIsIGEpOworICAgIGV2YXNfb2JqZWN0X3Nob3cocmVjdCk7CisKKyAgICAvKiBTaG93IGNvbG9y
IHNlbGVjdG9yICovCisgICAgY3NfZnJhbWUgPSBlbG1fZnJhbWVfYWRkKHdpbmRvdy0+Y29sb3Jf
c2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50
X3dlaWdodF9zZXQoY3NfZnJhbWUsIDEuMCwgMS41KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hp
bnRfYWxpZ25fc2V0KGNzX2ZyYW1lLCBFVkFTX0hJTlRfRklMTCwgRVZBU19ISU5UX0ZJTEwpOwor
ICAgIGVsbV9vYmplY3RfdGV4dF9zZXQoY3NfZnJhbWUsICJDb2xvciBTZWxlY3RvciIpOworICAg
IGVsbV9ib3hfcGFja19lbmQoYm94LCBjc19mcmFtZSk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhj
c19mcmFtZSk7CisKKyAgICB3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3RvciA9IGVs
bV9jb2xvcnNlbGVjdG9yX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93
aW5kb3cpOworICAgIGVsbV9vYmplY3RfY29udGVudF9zZXQoY3NfZnJhbWUsIHdpbmRvdy0+Y29s
b3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yKTsKKyAgICBldmFzX29iamVjdF9zaG93KHdpbmRvdy0+
Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yKTsgCisKKyAgICAvKiBPayxDYW5jZWwgQnV0dG9u
cyAqLworICAgIGJ1dHRvbl9ib3ggPSBlbG1fYm94X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9y
LmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF93ZWlnaHRf
c2V0KGJ1dHRvbl9ib3gsIEVWQVNfSElOVF9FWFBBTkQsIDAuMSk7CisgICAgZWxtX2JveF9ob3Jp
em9udGFsX3NldChidXR0b25fYm94LCBFSU5BX1RSVUUpOworICAgIGVsbV9ib3hfcGFja19lbmQo
Ym94LCBidXR0b25fYm94KTsKKyAgICBldmFzX29iamVjdF9zaG93KGJ1dHRvbl9ib3gpOworCisg
ICAgb2tfYnV0dG9uID0gZWxtX2J1dHRvbl9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1f
c2VsZWN0b3Jfd2luZG93KTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KG9rX2J1dHRvbiwgIk9L
Iik7CisgICAgZWxtX2JveF9wYWNrX2VuZChidXR0b25fYm94LCBva19idXR0b24pOworICAgIGV2
YXNfb2JqZWN0X3Nob3cob2tfYnV0dG9uKTsKKworICAgIGNhbmNlbF9idXR0b24gPSBlbG1fYnV0
dG9uX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAg
IGVsbV9vYmplY3RfdGV4dF9zZXQoY2FuY2VsX2J1dHRvbiwgIkNhbmNlbCIpOworICAgIGVsbV9i
b3hfcGFja19lbmQoYnV0dG9uX2JveCwgY2FuY2VsX2J1dHRvbik7CisgICAgZXZhc19vYmplY3Rf
c2hvdyhjYW5jZWxfYnV0dG9uKTsKKworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2Fk
ZChva19idXR0b24sICJjbGlja2VkIiwgb25fY29sb3JfcGlja2VyX29rX2NsaWNrZWQsICYod2lu
ZG93LT5jb2xvcl9zZWxlY3RvcikpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2Fk
ZChjYW5jZWxfYnV0dG9uLCAiY2xpY2tlZCIsIG9uX2NvbG9yX3BpY2tlcl9jYW5jZWxfY2xpY2tl
ZCwgd2luZG93LT5jb2xvcl9zZWxlY3Rvci5ld2tfcGlja2VyKTsKKyAgICBldmFzX29iamVjdF9z
bWFydF9jYWxsYmFja19hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2lu
ZG93LCAiZGVsZXRlLHJlcXVlc3QiLCBvbl9jb2xvcl9waWNrZXJfY2FuY2VsX2NsaWNrZWQsIHdp
bmRvdy0+Y29sb3Jfc2VsZWN0b3IuZXdrX3BpY2tlcik7CisgICAgZXZhc19vYmplY3Rfc21hcnRf
Y2FsbGJhY2tfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yLCAiY2hhbmdl
ZCIsIG9uX2NvbG9yX2NoYW5nZWQsIHJlY3QpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxi
YWNrX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3RvciwgImNvbG9yLGl0ZW0s
c2VsZWN0ZWQiLCBvbl9jb2xvcl9pdGVtX3NlbGVjdGVkLCByZWN0KTsKKworICAgIGV2YXNfb2Jq
ZWN0X3Jlc2l6ZSh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3csIDM1
MCwgNTAwKTsKKyAgICBldmFzX29iamVjdF9zaG93KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxt
X3NlbGVjdG9yX3dpbmRvdyk7CisKKyAgICByZXR1cm4gRUlOQV9UUlVFOworfQorCitzdGF0aWMg
dm9pZAogdXBkYXRlX3ZpZXdfZmF2aWNvbihCcm93c2VyX1dpbmRvdyAqd2luZG93LCBFdmFzX09i
amVjdCAqaWNvbikKIHsKICAgICAvKiBSZW1vdmUgcHJldmlvdXMgaWNvbiBmcm9tIFVSTCBiYXIg
Ki8KQEAgLTE1MDMsNiArMTYzMCw4IEBAIHN0YXRpYyBCcm93c2VyX1dpbmRvdyAqd2luZG93X2Ny
ZWF0ZShFdmFzX09iamVjdCAqb3BlbmVyLCBjb25zdCBjaGFyICp1cmwsIGludCB3CiAKICAgICAv
KiBDcmVhdGUgZXdrX3ZpZXcgKi8KICAgICBFd2tfVmlld19TbWFydF9DbGFzcyAqZXdrVmlld0Ns
YXNzID0gbWluaUJyb3dzZXJWaWV3U21hcnRDbGFzcygpOworICAgIGV3a1ZpZXdDbGFzcy0+aW5w
dXRfcGlja2VyX2NvbG9yX3JlcXVlc3QgPSBvbl9jb2xvcl9waWNrZXJfcmVxdWVzdDsKKyAgICBl
d2tWaWV3Q2xhc3MtPmlucHV0X3BpY2tlcl9jb2xvcl9kaXNtaXNzID0gb25fY29sb3JfcGlja2Vy
X2Rpc21pc3M7CiAgICAgZXdrVmlld0NsYXNzLT5ydW5famF2YXNjcmlwdF9hbGVydCA9IG9uX2ph
dmFzY3JpcHRfYWxlcnQ7CiAgICAgZXdrVmlld0NsYXNzLT5ydW5famF2YXNjcmlwdF9jb25maXJt
ID0gb25famF2YXNjcmlwdF9jb25maXJtOwogICAgIGV3a1ZpZXdDbGFzcy0+cnVuX2phdmFzY3Jp
cHRfcHJvbXB0ID0gb25famF2YXNjcmlwdF9wcm9tcHQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202759</attachid>
            <date>2013-05-23 20:57:00 -0700</date>
            <delta_ts>2013-05-26 17:31:21 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130524125549.patch</filename>
            <type>text/plain</type>
            <size>8150</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5MDE2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmM2NWRlYTIxYjM0NWE2MDAyYjg1ZGY5Y2I3OTNlMGY5
NWFkYjZmMC4uZjM0NDdkNzRlNWFmMzVlNWYyNjk4NmEwN2M5NzkxNGZkZWZlMzFhMyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1
IEBACisyMDEzLTA1LTA5ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXUltcGxlbWVudCBjb2xvciBwaWNrZXIgVUkgZm9yIEhUTUw1IGlucHV0IHR5
cGUgY29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgIFdoZW4gdXNlciBjbGlja3MgSFRNTDUgaW5wdXQgdHlwZSBjb2xvciwg
CisgICAgICAgIGNvbG9yIHBpY2tlciB3aW5kb3cgaXMgY3JlYXRlZCBvbiBicm93c2VyIG9iamVj
dCBieSB1c2luZyBlbG1fY29sb3JjaG9vc2VyX2FkZCgpLiAKKyAgICAgICAgSXQgY2FuIGxpc3Rl
biBhIHNpZ25hbCBkaXNtaXNzaW5nIGNvbG9ycGlja2VyIGJ5IGNhbGxpbmcgdGhlIGV3a19jb2xv
cl9waWNrZXJfY29sb3Jfc2V0KCkuCisgICAgICAgIFRoZSBldmFzX29iamV0X2NvbG9yX3NldCgp
IHNldHMgYSBjb2xvciB2YWx1ZSByZXR1cm5pbmcgdG8gYnJvd3Nlci4KKworICAgICAgICAqIE1p
bmlCcm93c2VyL2VmbC9tYWluLmM6CisgICAgICAgIChfQnJvd3Nlcl9XaW5kb3cpOgorICAgICAg
ICAob25fY2hhbmdlZF9jb2xvcik6IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgdG8gc2hvdyBj
b2xvciBzZWxlY3RlZCBieSB1c2VyLgorICAgICAgICAob25fY29sb3JwYWxldHRlX2NsaWNrZWQp
OiBDaGFuZ2UgY29sb3Igb2YgcmVjdGFuZ2xlIHdpdGggY2xpY2tpbmcgY29sb3IgYm94IGJhc2lj
YWxseSBvZmZlZCBieSBlbGVtZW50IEFQSS4gCisgICAgICAgIChvbl9jb2xvcnBpY2tlcl9va19j
bGlja2VkKTogQ2FsbCBvbl9jb2xvcnBpY2tlcl9kaXNtaXNzIGFuZCBzZXQgdGhlIGNvbG9yLgor
ICAgICAgICAob25fY29sb3JwaWNrZXJfY2FuY2VsX2NsaWNrZWQpOiBHZXQgYSBwcmVleGlzdGlu
ZyBjb2xvciBhbmQgY2FsbCBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldCgpLgorICAgICAgICAo
b25fY29sb3JwaWNrZXJfZGlzbWlzcyk6IERlbGV0ZSBjb2xvcnBpY2tlciBvYmplY3QuCisgICAg
ICAgIChvbl9jb2xvcnBpY2tlcl9yZXF1ZXN0KTogQ3JlYXRlIGNvbG9ycGlja2VyIHdpbmRvdyBv
YmplY3QuCisgICAgICAgICh3aW5kb3dfY3JlYXRlKTogQ29ubmVjdGluZyB1cCB3aXRoIFVJUHJv
Y2Vzcy9lZmwvUGFnZUNsaWVudEVmbC5jcHAKKwogMjAxMy0wNC0yMyAgRGF2aWQgR3JvZ2FuICA8
ZGdyb2dhbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgVW5yZXZpZXdlZC4gUmVtb3ZlIG15c2Vs
ZiBmcm9tIHdhdGNobGlzdC4KZGlmZiAtLWdpdCBhL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWlu
LmMgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCmluZGV4IDNiMzk1MWY3NGE2MzQzMjY5
NjM5OWI4ZDRhNGVlYTc1YWM4NzQyMzUuLjBiMDkyNGM2YjBjOTY2Nzk5MGM1MTJjZGYxYTc1OTk0
MmEzOTRiMzIgMTAwNjQ0Ci0tLSBhL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWluLmMKKysrIGIv
VG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4uYwpAQCAtOTAsNiArOTAsMTIgQEAgdHlwZWRlZiBz
dHJ1Y3QgX1Rvb2x0aXBfSW5mb3JtYXRpb24gewogICAgIEVpbmFfQm9vbCBzaG93bjsKIH0gVG9v
bHRpcF9JbmZvcm1hdGlvbjsKIAordHlwZWRlZiBzdHJ1Y3QgX0NvbG9yX1NlbGVjdG9yIHsKKyAg
ICBFd2tfQ29sb3JfUGlja2VyICpld2tfcGlja2VyOworICAgIEV2YXNfT2JqZWN0ICplbG1fc2Vs
ZWN0b3I7CisgICAgRXZhc19PYmplY3QgKmVsbV9zZWxlY3Rvcl93aW5kb3c7Cit9IENvbG9yX1Nl
bGVjdG9yOworCiB0eXBlZGVmIHN0cnVjdCBfQnJvd3Nlcl9XaW5kb3cgewogICAgIEV2YXNfT2Jq
ZWN0ICplbG1fd2luZG93OwogICAgIEV2YXNfT2JqZWN0ICpld2tfdmlldzsKQEAgLTEwOCw2ICsx
MTQsNyBAQCB0eXBlZGVmIHN0cnVjdCBfQnJvd3Nlcl9XaW5kb3cgewogICAgIH0gc2VhcmNoOwog
ICAgIGludCBjdXJyZW50X3pvb21fbGV2ZWw7IAogICAgIFRvb2x0aXBfSW5mb3JtYXRpb24gdG9v
bHRpcDsKKyAgICBDb2xvcl9TZWxlY3RvciBjb2xvcl9zZWxlY3RvcjsKICAgICBFdmFzX09iamVj
dCAqY29udGV4dF9wb3B1cDsKIH0gQnJvd3Nlcl9XaW5kb3c7CiAKQEAgLTU5NSw2ICs2MDIsMTI2
IEBAIG9uX2Rvd25sb2FkX2ZhaWxlZCh2b2lkICp1c2VyX2RhdGEsIEV2YXNfT2JqZWN0ICpld2tf
dmlldywgdm9pZCAqZXZlbnRfaW5mbykKIH0KIAogc3RhdGljIHZvaWQKK29uX2NvbG9yX2NoYW5n
ZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5mbykKK3sKKyAg
ICBpbnQgciwgZywgYiwgYTsKKyAgICAKKyAgICBlbG1fY29sb3JzZWxlY3Rvcl9jb2xvcl9nZXQo
b2JqLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KGRhdGEsIHIs
IGcsIGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JfaXRlbV9zZWxlY3RlZCh2b2lk
ICpkYXRhLCBFdmFzX09iamVjdCAqb2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCBy
LCBnLCBiLCBhOworICAgIEVsbV9PYmplY3RfSXRlbSAqY29sb3JfaXRlbSA9IChFbG1fT2JqZWN0
X0l0ZW0gKilldmVudF9pbmZvOworCisgICAgZWxtX2NvbG9yc2VsZWN0b3JfcGFsZXR0ZV9pdGVt
X2NvbG9yX2dldChjb2xvcl9pdGVtLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3Rf
Y29sb3Jfc2V0KGRhdGEsIHIsIGcsIGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3Jf
cGlja2VyX29rX2NsaWNrZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZl
bnRfaW5mbykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKyAgICBDb2xvcl9TZWxlY3RvciAqY29s
b3Jfc2VsZWN0b3IgPSAoQ29sb3JfU2VsZWN0b3IgKilkYXRhOworCisgICAgZWxtX2NvbG9yc2Vs
ZWN0b3JfY29sb3JfZ2V0KGNvbG9yX3NlbGVjdG9yLT5lbG1fc2VsZWN0b3IsICZyLCAmZywgJmIs
ICZhKTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldChjb2xvcl9zZWxlY3Rvci0+ZXdr
X3BpY2tlciwgciwgZywgYiwgYSk7Cit9CisKK3N0YXRpYyB2b2lkCitvbl9jb2xvcl9waWNrZXJf
Y2FuY2VsX2NsaWNrZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRf
aW5mbykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKworICAgIGV3a19jb2xvcl9waWNrZXJfY29s
b3JfZ2V0KGRhdGEsICZyLCAmZywgJmIsICZhKTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9y
X3NldChkYXRhLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGljIEVpbmFfQm9vbAorb25fY29sb3Jf
cGlja2VyX2Rpc21pc3MoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QpCit7CisgICAgQnJvd3Nlcl9X
aW5kb3cgKndpbmRvdyA9IHdpbmRvd19maW5kX3dpdGhfZXdrX3ZpZXcoc2QtPnNlbGYpOworCisg
ICAgZXZhc19vYmplY3RfZGVsKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dp
bmRvdyk7CisKKyAgICByZXR1cm4gRUlOQV9UUlVFOworfQorCitzdGF0aWMgRWluYV9Cb29sCitv
bl9jb2xvcl9waWNrZXJfcmVxdWVzdChFd2tfVmlld19TbWFydF9EYXRhICpzZCwgRXdrX0NvbG9y
X1BpY2tlciAqY29sb3JfcGlja2VyKQoreworICAgIGludCByLCBnLCBiLCBhOworICAgIEV2YXNf
T2JqZWN0ICpyZWN0LCAqYm94LCAqYnV0dG9uX2JveCwgKnJlY3RfZnJhbWUsICpjc19mcmFtZSwg
Km9rX2J1dHRvbiwgKmNhbmNlbF9idXR0b247CisKKyAgICBCcm93c2VyX1dpbmRvdyAqd2luZG93
ID0gd2luZG93X2ZpbmRfd2l0aF9ld2tfdmlldyhzZC0+c2VsZik7CisgICAgd2luZG93LT5jb2xv
cl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93ID0gZWxtX3dpbl9hZGQod2luZG93LT5lbG1f
d2luZG93LCAiY29sb3Igc2VsZWN0b3IiLCBFTE1fV0lOX0JBU0lDKTsKKyAgICB3aW5kb3ctPmNv
bG9yX3NlbGVjdG9yLmV3a19waWNrZXIgPSBjb2xvcl9waWNrZXI7CisKKyAgICBlbG1fd2luX3Rp
dGxlX3NldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3csICJDb2xv
ciBzZWxlY3RvciIpOworCisgICAgLyogU2hvdyBjb2xvciB2aWV3ICovCisgICAgYm94ID0gZWxt
X2JveF9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KTsKKyAg
ICBldmFzX29iamVjdF9zaXplX2hpbnRfd2VpZ2h0X3NldChib3gsIEVWQVNfSElOVF9FWFBBTkQs
IEVWQVNfSElOVF9FWFBBTkQpOworICAgIGVsbV93aW5fcmVzaXplX29iamVjdF9hZGQod2luZG93
LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93LCBib3gpOworICAgIGV2YXNfb2Jq
ZWN0X3Nob3coYm94KTsKKworICAgIHJlY3RfZnJhbWUgPSBlbG1fZnJhbWVfYWRkKHdpbmRvdy0+
Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZXZhc19vYmplY3Rfc2l6
ZV9oaW50X3dlaWdodF9zZXQocmVjdF9mcmFtZSwgRVZBU19ISU5UX0VYUEFORCwgMC4zKTsKKyAg
ICBldmFzX29iamVjdF9zaXplX2hpbnRfYWxpZ25fc2V0KHJlY3RfZnJhbWUsIEVWQVNfSElOVF9G
SUxMLCBFVkFTX0hJTlRfRklMTCk7CisgICAgZWxtX29iamVjdF90ZXh0X3NldChyZWN0X2ZyYW1l
LCAiQ29sb3IgVmlldyIpOworICAgIGVsbV9ib3hfcGFja19lbmQoYm94LCByZWN0X2ZyYW1lKTsK
KyAgICBldmFzX29iamVjdF9zaG93KHJlY3RfZnJhbWUpOworCisgICAgcmVjdCA9IGV2YXNfb2Jq
ZWN0X3JlY3RhbmdsZV9hZGQoZXZhc19vYmplY3RfZXZhc19nZXQod2luZG93LT5jb2xvcl9zZWxl
Y3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KSk7CisgICAgZWxtX29iamVjdF9jb250ZW50X3NldChy
ZWN0X2ZyYW1lLCByZWN0KTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX2dldCh3aW5kb3ct
PmNvbG9yX3NlbGVjdG9yLmV3a19waWNrZXIsICZyLCAmZywgJmIsICZhKTsKKyAgICBldmFzX29i
amVjdF9jb2xvcl9zZXQocmVjdCwgciwgZywgYiwgYSk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhy
ZWN0KTsKKworICAgIC8qIFNob3cgY29sb3Igc2VsZWN0b3IgKi8KKyAgICBjc19mcmFtZSA9IGVs
bV9mcmFtZV9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KTsK
KyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfd2VpZ2h0X3NldChjc19mcmFtZSwgRVZBU19ISU5U
X0VYUEFORCwgMC43KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfYWxpZ25fc2V0KGNzX2Zy
YW1lLCBFVkFTX0hJTlRfRklMTCwgRVZBU19ISU5UX0ZJTEwpOworICAgIGVsbV9vYmplY3RfdGV4
dF9zZXQoY3NfZnJhbWUsICJDb2xvciBTZWxlY3RvciIpOworICAgIGVsbV9ib3hfcGFja19lbmQo
Ym94LCBjc19mcmFtZSk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhjc19mcmFtZSk7CisKKyAgICB3
aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3RvciA9IGVsbV9jb2xvcnNlbGVjdG9yX2Fk
ZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGVsbV9v
YmplY3RfY29udGVudF9zZXQoY3NfZnJhbWUsIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3Nl
bGVjdG9yKTsKKyAgICBldmFzX29iamVjdF9zaG93KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxt
X3NlbGVjdG9yKTsgCisKKyAgICAvKiBPayxDYW5jZWwgQnV0dG9ucyAqLworICAgIGJ1dHRvbl9i
b3ggPSBlbG1fYm94X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5k
b3cpOworICAgIGVsbV9ib3hfaG9yaXpvbnRhbF9zZXQoYnV0dG9uX2JveCwgRUlOQV9UUlVFKTsK
KyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfbWluX3NldChidXR0b25fYm94LCAyMDAsIDUwKTsK
KyAgICBlbG1fYm94X3BhY2tfZW5kKGJveCwgYnV0dG9uX2JveCk7CisgICAgZXZhc19vYmplY3Rf
c2hvdyhidXR0b25fYm94KTsKKworICAgIG9rX2J1dHRvbiA9IGVsbV9idXR0b25fYWRkKHdpbmRv
dy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZWxtX29iamVjdF90
ZXh0X3NldChva19idXR0b24sICJPSyIpOworICAgIGVsbV9ib3hfcGFja19lbmQoYnV0dG9uX2Jv
eCwgb2tfYnV0dG9uKTsKKyAgICBldmFzX29iamVjdF9zaG93KG9rX2J1dHRvbik7CisKKyAgICBj
YW5jZWxfYnV0dG9uID0gZWxtX2J1dHRvbl9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1f
c2VsZWN0b3Jfd2luZG93KTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KGNhbmNlbF9idXR0b24s
ICJDYW5jZWwiKTsKKyAgICBlbG1fYm94X3BhY2tfZW5kKGJ1dHRvbl9ib3gsIGNhbmNlbF9idXR0
b24pOworICAgIGV2YXNfb2JqZWN0X3Nob3coY2FuY2VsX2J1dHRvbik7CisKKyAgICBldmFzX29i
amVjdF9zbWFydF9jYWxsYmFja19hZGQob2tfYnV0dG9uLCAiY2xpY2tlZCIsIG9uX2NvbG9yX3Bp
Y2tlcl9va19jbGlja2VkLCAmKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpKTsKKyAgICBldmFzX29i
amVjdF9zbWFydF9jYWxsYmFja19hZGQoY2FuY2VsX2J1dHRvbiwgImNsaWNrZWQiLCBvbl9jb2xv
cl9waWNrZXJfY2FuY2VsX2NsaWNrZWQsIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZXdrX3BpY2tl
cik7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKHdpbmRvdy0+Y29sb3Jfc2Vs
ZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdywgImRlbGV0ZSxyZXF1ZXN0Iiwgb25fY29sb3JfcGlj
a2VyX2NhbmNlbF9jbGlja2VkLCB3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmV3a19waWNrZXIpOwor
ICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9y
LmVsbV9zZWxlY3RvciwgImNoYW5nZWQiLCBvbl9jb2xvcl9jaGFuZ2VkLCByZWN0KTsKKyAgICBl
dmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1f
c2VsZWN0b3IsICJjb2xvcixpdGVtLHNlbGVjdGVkIiwgb25fY29sb3JfaXRlbV9zZWxlY3RlZCwg
cmVjdCk7CisKKyAgICBldmFzX29iamVjdF9yZXNpemUod2luZG93LT5jb2xvcl9zZWxlY3Rvci5l
bG1fc2VsZWN0b3Jfd2luZG93LCAzNTAsIDUwMCk7CisgICAgZXZhc19vYmplY3Rfc2hvdyh3aW5k
b3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworCisgICAgcmV0dXJuIEVJ
TkFfVFJVRTsKK30KKworc3RhdGljIHZvaWQKIHVwZGF0ZV92aWV3X2Zhdmljb24oQnJvd3Nlcl9X
aW5kb3cgKndpbmRvdywgRXZhc19PYmplY3QgKmljb24pCiB7CiAgICAgLyogUmVtb3ZlIHByZXZp
b3VzIGljb24gZnJvbSBVUkwgYmFyICovCkBAIC0xNTAzLDYgKzE2MzAsOCBAQCBzdGF0aWMgQnJv
d3Nlcl9XaW5kb3cgKndpbmRvd19jcmVhdGUoRXZhc19PYmplY3QgKm9wZW5lciwgY29uc3QgY2hh
ciAqdXJsLCBpbnQgdwogCiAgICAgLyogQ3JlYXRlIGV3a192aWV3ICovCiAgICAgRXdrX1ZpZXdf
U21hcnRfQ2xhc3MgKmV3a1ZpZXdDbGFzcyA9IG1pbmlCcm93c2VyVmlld1NtYXJ0Q2xhc3MoKTsK
KyAgICBld2tWaWV3Q2xhc3MtPmlucHV0X3BpY2tlcl9jb2xvcl9yZXF1ZXN0ID0gb25fY29sb3Jf
cGlja2VyX3JlcXVlc3Q7CisgICAgZXdrVmlld0NsYXNzLT5pbnB1dF9waWNrZXJfY29sb3JfZGlz
bWlzcyA9IG9uX2NvbG9yX3BpY2tlcl9kaXNtaXNzOwogICAgIGV3a1ZpZXdDbGFzcy0+cnVuX2ph
dmFzY3JpcHRfYWxlcnQgPSBvbl9qYXZhc2NyaXB0X2FsZXJ0OwogICAgIGV3a1ZpZXdDbGFzcy0+
cnVuX2phdmFzY3JpcHRfY29uZmlybSA9IG9uX2phdmFzY3JpcHRfY29uZmlybTsKICAgICBld2tW
aWV3Q2xhc3MtPnJ1bl9qYXZhc2NyaXB0X3Byb21wdCA9IG9uX2phdmFzY3JpcHRfcHJvbXB0Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>202938</attachid>
            <date>2013-05-26 17:31:27 -0700</date>
            <delta_ts>2013-06-02 23:59:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130527093015.patch</filename>
            <type>text/plain</type>
            <size>8277</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUwNzI1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggNzJkOGMyN2ViNDI3MGVjOTcyM2E1OGJlZDgzMThlZjVi
YWIzNTMwYy4uNzZiMjdlYWIxOTA4ZjM2NTAwNzM1ZDUyOTQ0MzcxMTZmMjIyODIwMyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2
IEBACisyMDEzLTA1LTI2ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXSBJbXBsZW1lbnQgY29sb3JwaWNrZXIgZm9yIEhUTUw1IGlucHV0IHR5cGUg
Y29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFdoZW4gdXNlciBjbGlja3MgSFRNTDUgaW5wdXQgdHlwZSBjb2xvciwKKyAg
ICAgICAgY29sb3IgcGlja2VyIHdpbmRvdyBpcyBjcmVhdGVkIG9uIGJyb3dzZXIgb2JqZWN0IGJ5
IHVzaW5nIGVsbV9jb2xvcmNob29zZXJfYWRkKCkuCisgICAgICAgIEl0IGNhbiBsaXN0ZW4gYSBz
aWduYWwgZGlzbWlzc2luZyBjb2xvcnBpY2tlciBieSBjYWxsaW5nIHRoZSBld2tfY29sb3JfcGlj
a2VyX2NvbG9yX3NldCgpLgorICAgICAgICBUaGUgZXZhc19vYmplY3RfY29sb3Jfc2V0KCkgc2V0
cyBhIGNvbG9yIHZhbHVlIHJldHVybmluZyB0byBicm93c2VyLgorCisgICAgICAgICogTWluaUJy
b3dzZXIvZWZsL21haW4uYzoKKyAgICAgICAgKF9Db2xvcl9TZWxlY3Rvcik6CisgICAgICAgIChf
QnJvd3Nlcl9XaW5kb3cpOgorICAgICAgICAob25fY29sb3JfY2hhbmdlZCk6IENoYW5nZSBjb2xv
ciBvZiByZWN0YW5nbGUgdG8gc2hvdyBjb2xvciBzZWxlY3RlZCBieSB1c2VyLgorICAgICAgICAo
b25fY29sb3JfaXRlbV9zZWxlY3RlZCk6IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgd2l0aCBj
bGlja2luZyBjb2xvciBib3hlcyBiYXNpY2FsbHkgb2ZmZXJlZCBieSBlbGVtZW50IEFQSS4KKyAg
ICAgICAgKG9uX2NvbG9yX3BpY2tlcl9va19jbGlja2VkKTogQ2FsbCBvbl9jb2xvcnBpY2tlcl9k
aXNtaXNzIGFuZCBzZXQgdGhlIGNvbG9yLgorICAgICAgICAob25fY29sb3JfcGlja2VyX2NhbmNl
bF9jbGlja2VkKTogR2V0IGEgcHJlZXhpc3RpbmcgY29sb3IgYW5kIGNhbGwgZXdrX2NvbG9yX3Bp
Y2tlcl9jb2xvcl9zZXQoKS4KKyAgICAgICAgKG9uX2NvbG9yX3BpY2tlcl9kaXNtaXNzKTogRGVs
ZXRlIGNvbG9waWNrZXIgb2JqZWN0LgorICAgICAgICAob25fY29sb3JfcGlja2VyX3JlcXVlc3Qp
OiBDcmVhdGUgY29sb3JwaWNrZXIgd2luZG93IG9iamVjdC4KKyAgICAgICAgKHdpbmRvd19jcmVh
dGUpOiBDb25uZWN0aW5nIHVwIHdpdGggVUlQcm9jZXNzL2VsbS9QYWdlQ2xpZW50RWZsLmNwcAor
CiAyMDEzLTA1LTI2ICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAgICAgICAg
IFdLUiBhbmQgd2Via2l0Ym90IGJ1aWxkIGZpeGVzLgpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJy
b3dzZXIvZWZsL21haW4uYyBiL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWluLmMKaW5kZXggN2U5
ZmFkZTRmYjUzZWUzMTIyMTk1MzZiMmU0OGQ3MzllZTBlYjc1Yi4uNTBlZTZjNzRmMjE1MWRiODU0
OWQzODU2MjdlYzZlMWQ1NTkzNGYxMiAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvZWZs
L21haW4uYworKysgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCkBAIC05MSw2ICs5MSwx
MiBAQCB0eXBlZGVmIHN0cnVjdCBfVG9vbHRpcF9JbmZvcm1hdGlvbiB7CiAgICAgRWluYV9Cb29s
IHNob3duOwogfSBUb29sdGlwX0luZm9ybWF0aW9uOwogCit0eXBlZGVmIHN0cnVjdCBfQ29sb3Jf
U2VsZWN0b3IgeworICAgIEV3a19Db2xvcl9QaWNrZXIgKmV3a19waWNrZXI7CisgICAgRXZhc19P
YmplY3QgKmVsbV9zZWxlY3RvcjsKKyAgICBFdmFzX09iamVjdCAqZWxtX3NlbGVjdG9yX3dpbmRv
dzsKK30gQ29sb3JfU2VsZWN0b3I7CisKIHR5cGVkZWYgc3RydWN0IF9Ccm93c2VyX1dpbmRvdyB7
CiAgICAgRXZhc19PYmplY3QgKmVsbV93aW5kb3c7CiAgICAgRXZhc19PYmplY3QgKmV3a192aWV3
OwpAQCAtMTA5LDYgKzExNSw3IEBAIHR5cGVkZWYgc3RydWN0IF9Ccm93c2VyX1dpbmRvdyB7CiAg
ICAgfSBzZWFyY2g7CiAgICAgaW50IGN1cnJlbnRfem9vbV9sZXZlbDsgCiAgICAgVG9vbHRpcF9J
bmZvcm1hdGlvbiB0b29sdGlwOworICAgIENvbG9yX1NlbGVjdG9yIGNvbG9yX3NlbGVjdG9yOwog
ICAgIHN0cnVjdCB7CiAgICAgICAgIEV2YXNfT2JqZWN0ICplbG1fbWVudTsKICAgICAgICAgRXdr
X0NvbnRleHRfTWVudSAqZXdrX21lbnU7CkBAIC02MTksNiArNjI2LDEyNyBAQCBvbl9kb3dubG9h
ZF9mYWlsZWQodm9pZCAqdXNlcl9kYXRhLCBFdmFzX09iamVjdCAqZXdrX3ZpZXcsIHZvaWQgKmV2
ZW50X2luZm8pCiB9CiAKIHN0YXRpYyB2b2lkCitvbl9jb2xvcl9jaGFuZ2VkKHZvaWQgKmRhdGEs
IEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIs
IGE7CisKKyAgICBlbG1fY29sb3JzZWxlY3Rvcl9jb2xvcl9nZXQob2JqLCAmciwgJmcsICZiLCAm
YSk7CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KGRhdGEsIHIsIGcsIGIsIGEpOworfQorCitz
dGF0aWMgdm9pZAorb25fY29sb3JfaXRlbV9zZWxlY3RlZCh2b2lkICpkYXRhLCBFdmFzX09iamVj
dCAqb2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCByLCBnLCBiLCBhOworICAgIEVs
bV9PYmplY3RfSXRlbSAqY29sb3JfaXRlbSA9IChFbG1fT2JqZWN0X0l0ZW0gKilldmVudF9pbmZv
OworCisgICAgZWxtX2NvbG9yc2VsZWN0b3JfcGFsZXR0ZV9pdGVtX2NvbG9yX2dldChjb2xvcl9p
dGVtLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KGRhdGEsIHIs
IGcsIGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JfcGlja2VyX29rX2NsaWNrZWQo
dm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5mbykKK3sKKyAgICBp
bnQgciwgZywgYiwgYTsKKyAgICBDb2xvcl9TZWxlY3RvciAqY29sb3Jfc2VsZWN0b3IgPSAoQ29s
b3JfU2VsZWN0b3IgKilkYXRhOworICAgIAorICAgIGVsbV9jb2xvcnNlbGVjdG9yX2NvbG9yX2dl
dChjb2xvcl9zZWxlY3Rvci0+ZWxtX3NlbGVjdG9yLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXdr
X2NvbG9yX3BpY2tlcl9jb2xvcl9zZXQoY29sb3Jfc2VsZWN0b3ItPmV3a19waWNrZXIsIHIsIGcs
IGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JfcGlja2VyX2NhbmNlbF9jbGlja2Vk
KHZvaWQgKmRhdGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAg
aW50IHIsIGcsIGIsIGE7CisKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX2dldChkYXRhLCAm
ciwgJmcsICZiLCAmYSk7CisgICAgZXdrX2NvbG9yX3BpY2tlcl9jb2xvcl9zZXQoZGF0YSwgciwg
ZywgYiwgYSk7Cit9CisKK3N0YXRpYyBFaW5hX0Jvb2wKK29uX2NvbG9yX3BpY2tlcl9kaXNtaXNz
KEV3a19WaWV3X1NtYXJ0X0RhdGEgKnNkKQoreworICAgIEJyb3dzZXJfV2luZG93ICp3aW5kb3cg
PSB3aW5kb3dfZmluZF93aXRoX2V3a192aWV3KHNkLT5zZWxmKTsKKworICAgIGV2YXNfb2JqZWN0
X2RlbCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworCisgICAg
cmV0dXJuIEVJTkFfVFJVRTsKK30KKworc3RhdGljIEVpbmFfQm9vbAorb25fY29sb3JfcGlja2Vy
X3JlcXVlc3QoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QsIEV3a19Db2xvcl9QaWNrZXIgKmNvbG9y
X3BpY2tlcikKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKyAgICBFdmFzX09iamVjdCAqcmVjdCwg
KmJveCwgKmJ1dHRvbl9ib3gsICpyZWN0X2ZyYW1lLCAqY3NfZnJhbWUsICpva19idXR0b24sICpj
YW5jZWxfYnV0dG9uOworCisgICAgQnJvd3Nlcl9XaW5kb3cgKndpbmRvdyA9IHdpbmRvd19maW5k
X3dpdGhfZXdrX3ZpZXcoc2QtPnNlbGYpOworICAgIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxt
X3NlbGVjdG9yX3dpbmRvdyA9IGVsbV93aW5fYWRkKHdpbmRvdy0+ZWxtX3dpbmRvdywgImNvbG9y
IHNlbGVjdG9yIiwgRUxNX1dJTl9CQVNJQyk7CisgICAgd2luZG93LT5jb2xvcl9zZWxlY3Rvci5l
d2tfcGlja2VyID0gY29sb3JfcGlja2VyOworCisgICAgZWxtX3dpbl90aXRsZV9zZXQod2luZG93
LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93LCAiQ29sb3Igc2VsZWN0b3IiKTsK
KworICAgIC8qIFNob3cgY29sb3IgdmlldyAqLworICAgIGJveCA9IGVsbV9ib3hfYWRkKHdpbmRv
dy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZXZhc19vYmplY3Rf
c2l6ZV9oaW50X3dlaWdodF9zZXQoYm94LCBFVkFTX0hJTlRfRVhQQU5ELCBFVkFTX0hJTlRfRVhQ
QU5EKTsKKyAgICBlbG1fd2luX3Jlc2l6ZV9vYmplY3RfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0
b3IuZWxtX3NlbGVjdG9yX3dpbmRvdywgYm94KTsKKyAgICBldmFzX29iamVjdF9zaG93KGJveCk7
CisKKyAgICByZWN0X2ZyYW1lID0gZWxtX2ZyYW1lX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9y
LmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF93ZWlnaHRf
c2V0KHJlY3RfZnJhbWUsIEVWQVNfSElOVF9FWFBBTkQgLCAwLjMpOworICAgIGV2YXNfb2JqZWN0
X3NpemVfaGludF9hbGlnbl9zZXQocmVjdF9mcmFtZSwgRVZBU19ISU5UX0ZJTEwsIEVWQVNfSElO
VF9GSUxMKTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KHJlY3RfZnJhbWUsICJDb2xvciBWaWV3
Iik7CisgICAgZWxtX2JveF9wYWNrX2VuZChib3gsIHJlY3RfZnJhbWUpOworICAgIGV2YXNfb2Jq
ZWN0X3Nob3cocmVjdF9mcmFtZSk7CisKKyAgICByZWN0ID0gZXZhc19vYmplY3RfcmVjdGFuZ2xl
X2FkZChldmFzX29iamVjdF9ldmFzX2dldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxl
Y3Rvcl93aW5kb3cpKTsKKyAgICBlbG1fb2JqZWN0X2NvbnRlbnRfc2V0KHJlY3RfZnJhbWUsIHJl
Y3QpOworICAgIGV3a19jb2xvcl9waWNrZXJfY29sb3JfZ2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0
b3IuZXdrX3BpY2tlciwgJnIsICZnLCAmYiwgJmEpOworICAgIGV2YXNfb2JqZWN0X2NvbG9yX3Nl
dChyZWN0LCByLCBnLCBiLCBhKTsKKyAgICBldmFzX29iamVjdF9zaG93KHJlY3QpOworCisgICAg
LyogU2hvdyBjb2xvciBzZWxlY3RvciAqLworICAgIGNzX2ZyYW1lID0gZWxtX2ZyYW1lX2FkZCh3
aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGV2YXNfb2Jq
ZWN0X3NpemVfaGludF93ZWlnaHRfc2V0KGNzX2ZyYW1lLCBFVkFTX0hJTlRfRVhQQU5ELCAwLjcp
OworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF9hbGlnbl9zZXQoY3NfZnJhbWUsIEVWQVNfSElO
VF9GSUxMLCBFVkFTX0hJTlRfRklMTCk7CisgICAgZWxtX29iamVjdF90ZXh0X3NldChjc19mcmFt
ZSwgIkNvbG9yIFNlbGVjdG9yIik7CisgICAgZWxtX2JveF9wYWNrX2VuZChib3gsIGNzX2ZyYW1l
KTsKKyAgICBldmFzX29iamVjdF9zaG93KGNzX2ZyYW1lKTsKKworICAgIHdpbmRvdy0+Y29sb3Jf
c2VsZWN0b3IuZWxtX3NlbGVjdG9yID0gZWxtX2NvbG9yc2VsZWN0b3JfYWRkKHdpbmRvdy0+Y29s
b3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZWxtX29iamVjdF9jb250ZW50
X3NldChjc19mcmFtZSwgd2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IpOworICAg
IGVsbV9jb2xvcnNlbGVjdG9yX2NvbG9yX3NldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9z
ZWxlY3RvciwgciwgZywgYiwgYSk7CisgICAgZXZhc19vYmplY3Rfc2hvdyh3aW5kb3ctPmNvbG9y
X3NlbGVjdG9yLmVsbV9zZWxlY3Rvcik7CisKKyAgICAvKiBPSywgQ2FuY2VsIEJ1dHRvbnMgKi8K
KyAgICBidXR0b25fYm94ID0gZWxtX2JveF9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1f
c2VsZWN0b3Jfd2luZG93KTsKKyAgICBlbG1fYm94X2hvcml6b250YWxfc2V0KGJ1dHRvbl9ib3gs
IEVJTkFfVFJVRSk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X21pbl9zZXQoYnV0dG9uX2Jv
eCwgMjAwLCA1MCk7CisgICAgZWxtX2JveF9wYWNrX2VuZChib3gsIGJ1dHRvbl9ib3gpOworICAg
IGV2YXNfb2JqZWN0X3Nob3coYnV0dG9uX2JveCk7CisKKyAgICBva19idXR0b24gPSBlbG1fYnV0
dG9uX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAg
IGVsbV9vYmplY3RfdGV4dF9zZXQob2tfYnV0dG9uLCAiT0siKTsKKyAgICBlbG1fYm94X3BhY2tf
ZW5kKGJ1dHRvbl9ib3gsIG9rX2J1dHRvbik7CisgICAgZXZhc19vYmplY3Rfc2hvdyhva19idXR0
b24pOworCisgICAgY2FuY2VsX2J1dHRvbiA9IGVsbV9idXR0b25fYWRkKHdpbmRvdy0+Y29sb3Jf
c2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZWxtX29iamVjdF90ZXh0X3NldChj
YW5jZWxfYnV0dG9uLCAiQ2FuY2VsIik7CisgICAgZWxtX2JveF9wYWNrX2VuZChidXR0b25fYm94
LCBjYW5jZWxfYnV0dG9uKTsKKyAgICBldmFzX29iamVjdF9zaG93KGNhbmNlbF9idXR0b24pOwor
CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0
b3IuZWxtX3NlbGVjdG9yLCAiY2hhbmdlZCIsIG9uX2NvbG9yX2NoYW5nZWQsIHJlY3QpOworICAg
IGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVs
bV9zZWxlY3RvciwgImNvbG9yLGl0ZW0sc2VsZWN0ZWQiLCBvbl9jb2xvcl9pdGVtX3NlbGVjdGVk
LCByZWN0KTsKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQob2tfYnV0dG9uLCAi
Y2xpY2tlZCIsIG9uX2NvbG9yX3BpY2tlcl9va19jbGlja2VkLCAmKHdpbmRvdy0+Y29sb3Jfc2Vs
ZWN0b3IpKTsKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQoY2FuY2VsX2J1dHRv
biwgImNsaWNrZWQiLCBvbl9jb2xvcl9waWNrZXJfY2FuY2VsX2NsaWNrZWQsIHdpbmRvdy0+Y29s
b3Jfc2VsZWN0b3IuZXdrX3BpY2tlcik7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tf
YWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdywgImRlbGV0ZSxy
ZXF1ZXN0Iiwgb25fY29sb3JfcGlja2VyX2NhbmNlbF9jbGlja2VkLCB3aW5kb3ctPmNvbG9yX3Nl
bGVjdG9yLmV3a19waWNrZXIpOworCisgICAgZXZhc19vYmplY3RfcmVzaXplKHdpbmRvdy0+Y29s
b3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdywgMzUwLCA1MDApOworICAgIGV2YXNfb2Jq
ZWN0X3Nob3cod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KTsKKwor
ICAgIHJldHVybiBFSU5BX1RSVUU7Cit9CisKK3N0YXRpYyB2b2lkCiB1cGRhdGVfdmlld19mYXZp
Y29uKEJyb3dzZXJfV2luZG93ICp3aW5kb3csIEV2YXNfT2JqZWN0ICppY29uKQogewogICAgIC8q
IFJlbW92ZSBwcmV2aW91cyBpY29uIGZyb20gVVJMIGJhciAqLwpAQCAtMTU0Miw2ICsxNjcwLDgg
QEAgc3RhdGljIEJyb3dzZXJfV2luZG93ICp3aW5kb3dfY3JlYXRlKEV2YXNfT2JqZWN0ICpvcGVu
ZXIsIGNvbnN0IGNoYXIgKnVybCwgaW50IHcKIAogICAgIC8qIENyZWF0ZSBld2tfdmlldyAqLwog
ICAgIEV3a19WaWV3X1NtYXJ0X0NsYXNzICpld2tWaWV3Q2xhc3MgPSBtaW5pQnJvd3NlclZpZXdT
bWFydENsYXNzKCk7CisgICAgZXdrVmlld0NsYXNzLT5pbnB1dF9waWNrZXJfY29sb3JfcmVxdWVz
dCA9IG9uX2NvbG9yX3BpY2tlcl9yZXF1ZXN0OworICAgIGV3a1ZpZXdDbGFzcy0+aW5wdXRfcGlj
a2VyX2NvbG9yX2Rpc21pc3MgPSBvbl9jb2xvcl9waWNrZXJfZGlzbWlzczsKICAgICBld2tWaWV3
Q2xhc3MtPnJ1bl9qYXZhc2NyaXB0X2FsZXJ0ID0gb25famF2YXNjcmlwdF9hbGVydDsKICAgICBl
d2tWaWV3Q2xhc3MtPnJ1bl9qYXZhc2NyaXB0X2NvbmZpcm0gPSBvbl9qYXZhc2NyaXB0X2NvbmZp
cm07CiAgICAgZXdrVmlld0NsYXNzLT5ydW5famF2YXNjcmlwdF9wcm9tcHQgPSBvbl9qYXZhc2Ny
aXB0X3Byb21wdDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203556</attachid>
            <date>2013-06-03 00:00:04 -0700</date>
            <delta_ts>2013-06-03 17:19:36 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130603155836.patch</filename>
            <type>text/plain</type>
            <size>9004</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5MDE1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmM2NWRlYTIxYjM0NWE2MDAyYjg1ZGY5Y2I3OTNlMGY5
NWFkYjZmMC4uMjE0MDEzYjFmY2EzYWE4NTljMTNiNjYxMDVjNjk2Mjc1ZmYwYzA1YiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3
IEBACisyMDEzLTA2LTAyICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXSBJbXBsZW1lbnQgY29sb3JwaWNrZXIgZm9yIEhUTUw1IGlucHV0IHR5cGUg
Y29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFdoZW4gdXNlciBjbGlja3MgSFRNTDUgaW5wdXQgdHlwZSBjb2xvciwKKyAg
ICAgICAgY29sb3IgcGlja2VyIHdpbmRvdyBpcyBjcmVhdGVkIG9uIGJyb3dzZXIgb2JqZWN0IGJ5
IHVzaW5nIGVsbV9jb2xvcmNob29zZXJfYWRkKCkuCisgICAgICAgIEl0IGNhbiBsaXN0ZW4gYSBz
aWduYWwgZGlzbWlzc2luZyBjb2xvcnBpY2tlciBieSBjYWxsaW5nIHRoZSBld2tfY29sb3JfcGlj
a2VyX2NvbG9yX3NldCgpLgorICAgICAgICBUaGUgZXZhc19vYmplY3RfY29sb3Jfc2V0KCkgc2V0
cyBhIGNvbG9yIHZhbHVlIHJldHVybmluZyB0byBicm93c2VyLgorCisgICAgICAgICogTWluaUJy
b3dzZXIvZWZsL21haW4uYzoKKyAgICAgICAgKF9Db2xvcl9TZWxlY3Rvcik6CisgICAgICAgIChf
QnJvd3Nlcl9XaW5kb3cpOgorICAgICAgICAod2luZG93X2ZyZWUpOiBXaGVuIFdlIGRlbGV0ZSBw
YXJlbnQgd2luZG93LCBkZWxldGluZyB0aGUgY29sb3JwaWNrZXIgb2JqZWN0LgorICAgICAgICAo
b25fY29sb3JfY2hhbmdlZCk6IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgdG8gc2hvdyBjb2xv
ciBzZWxldGVkIGJ5IHVzZXIuCisgICAgICAgIChvbl9jb2xvcl9pdGVtX3NlbGVjdGVkKTogQ2hh
bmdlIGNvbG9yIG9mIHJlY3RhbmdsZSB3aXRoIGNsaWNraW5nIGNvbG9yIGJveGVzIGJhc2ljYWxs
eSBvZmZlcmVkIGJ5IGVsZW1lbnQgQVBJLgorICAgICAgICAob25fY29sb3JfcGlja2VyX29rX2Ns
aWNrZWQpOiBDYWxsIG9uX2NvbG9ycGlja2VyX2Rpc21pc3MgYW5kIHNldCB0aGUgY29sb3IuCisg
ICAgICAgIChvbl9jb2xvcl9waWNrZXJfY2FuY2VsX2NsaWNrZWQpOiBHZXQgYSBwcmVleGlzdGlu
ZyBjb2xvciBhbmQgY2FsbCBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldCgpLgorICAgICAgICAo
b25fY29sb3JfcGlja2VyX2Rpc21pc3MpOiBEZWxldGUgY29sb3JwaWNrZXIgb2JqZWN0LgorICAg
ICAgICAob25fY29sb3JfcGlja2VyX3JlcXVlc3QpOiBDcmVhdGUgY29sb3JwaWNrZXIgd2luZG93
IG9iamVjdC4KKyAgICAgICAgKHdpbmRvd19jcmVhdGUpOgorCiAyMDEzLTA0LTIzICBEYXZpZCBH
cm9nYW4gIDxkZ3JvZ2FuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLiBSZW1v
dmUgbXlzZWxmIGZyb20gd2F0Y2hsaXN0LgpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIv
ZWZsL21haW4uYyBiL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWluLmMKaW5kZXggM2IzOTUxZjc0
YTYzNDMyNjk2Mzk5YjhkNGE0ZWVhNzVhYzg3NDIzNS4uYmZlMzljNWQxZWE0M2ZiYTlmYjZjYmIx
MDNjZTQ0M2E3NWZjMjg3ZCAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4u
YworKysgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCkBAIC05MCw2ICs5MCwxMiBAQCB0
eXBlZGVmIHN0cnVjdCBfVG9vbHRpcF9JbmZvcm1hdGlvbiB7CiAgICAgRWluYV9Cb29sIHNob3du
OwogfSBUb29sdGlwX0luZm9ybWF0aW9uOwogCit0eXBlZGVmIHN0cnVjdCBfQ29sb3JfU2VsZWN0
b3IgeworICAgIEV3a19Db2xvcl9QaWNrZXIgKmV3a19waWNrZXI7CisgICAgRXZhc19PYmplY3Qg
KmVsbV9zZWxlY3RvcjsKKyAgICBFdmFzX09iamVjdCAqZWxtX3NlbGVjdG9yX3dpbmRvdzsKK30g
Q29sb3JfU2VsZWN0b3I7CisKIHR5cGVkZWYgc3RydWN0IF9Ccm93c2VyX1dpbmRvdyB7CiAgICAg
RXZhc19PYmplY3QgKmVsbV93aW5kb3c7CiAgICAgRXZhc19PYmplY3QgKmV3a192aWV3OwpAQCAt
MTA4LDYgKzExNCw3IEBAIHR5cGVkZWYgc3RydWN0IF9Ccm93c2VyX1dpbmRvdyB7CiAgICAgfSBz
ZWFyY2g7CiAgICAgaW50IGN1cnJlbnRfem9vbV9sZXZlbDsgCiAgICAgVG9vbHRpcF9JbmZvcm1h
dGlvbiB0b29sdGlwOworICAgIENvbG9yX1NlbGVjdG9yIGNvbG9yX3NlbGVjdG9yOwogICAgIEV2
YXNfT2JqZWN0ICpjb250ZXh0X3BvcHVwOwogfSBCcm93c2VyX1dpbmRvdzsKIApAQCAtMjY1LDYg
KzI3Miw5IEBAIHN0YXRpYyB2b2lkIHdpbmRvd19mcmVlKEJyb3dzZXJfV2luZG93ICp3aW5kb3cp
CiAgICAgLyogVGhlIGVsbV93aW4gd2lsbCB0YWtlIGNhcmUgb2YgZnJlZWluZyBpdHMgY2hpbGRy
ZW4gKi8KICAgICBldmFzX29iamVjdF9kZWwod2luZG93LT5lbG1fd2luZG93KTsKIAorICAgIGlm
ICh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpCisgICAgICAgIGV2
YXNfb2JqZWN0X2RlbCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cp
OworCiAgICAgaWYgKHdpbmRvdy0+dG9vbHRpcC5zaG93X3RpbWVyKQogICAgICAgICBlY29yZV90
aW1lcl9kZWwod2luZG93LT50b29sdGlwLnNob3dfdGltZXIpOwogCkBAIC01OTUsNiArNjA1LDEz
MiBAQCBvbl9kb3dubG9hZF9mYWlsZWQodm9pZCAqdXNlcl9kYXRhLCBFdmFzX09iamVjdCAqZXdr
X3ZpZXcsIHZvaWQgKmV2ZW50X2luZm8pCiB9CiAKIHN0YXRpYyB2b2lkCitvbl9jb2xvcl9jaGFu
Z2VkKHZvaWQgKmRhdGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7Cisg
ICAgaW50IHIsIGcsIGIsIGE7CisKKyAgICBlbG1fY29sb3JzZWxlY3Rvcl9jb2xvcl9nZXQob2Jq
LCAmciwgJmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KGRhdGEsIHIsIGcs
IGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JfaXRlbV9zZWxlY3RlZCh2b2lkICpk
YXRhLCBFdmFzX09iamVjdCAqb2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCByLCBn
LCBiLCBhOworICAgIEVsbV9PYmplY3RfSXRlbSAqY29sb3JfaXRlbSA9IChFbG1fT2JqZWN0X0l0
ZW0gKilldmVudF9pbmZvOworCisgICAgZWxtX2NvbG9yc2VsZWN0b3JfcGFsZXR0ZV9pdGVtX2Nv
bG9yX2dldChjb2xvcl9pdGVtLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3RfY29s
b3Jfc2V0KGRhdGEsIHIsIGcsIGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JfcGlj
a2VyX29rX2NsaWNrZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRf
aW5mbykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKyAgICBDb2xvcl9TZWxlY3RvciAqY29sb3Jf
c2VsZWN0b3IgPSAoQ29sb3JfU2VsZWN0b3IgKilkYXRhOworCisgICAgZWxtX2NvbG9yc2VsZWN0
b3JfY29sb3JfZ2V0KGNvbG9yX3NlbGVjdG9yLT5lbG1fc2VsZWN0b3IsICZyLCAmZywgJmIsICZh
KTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldChjb2xvcl9zZWxlY3Rvci0+ZXdrX3Bp
Y2tlciwgciwgZywgYiwgYSk7Cit9CisKK3N0YXRpYyB2b2lkCitvbl9jb2xvcl9waWNrZXJfY2Fu
Y2VsX2NsaWNrZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5m
bykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKworICAgIGV3a19jb2xvcl9waWNrZXJfY29sb3Jf
Z2V0KGRhdGEsICZyLCAmZywgJmIsICZhKTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX3Nl
dChkYXRhLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGljIEVpbmFfQm9vbAorb25fY29sb3JfcGlj
a2VyX2Rpc21pc3MoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QpCit7CisgICAgQnJvd3Nlcl9XaW5k
b3cgKndpbmRvdyA9IHdpbmRvd19maW5kX3dpdGhfZXdrX3ZpZXcoc2QtPnNlbGYpOworCisgICAg
ZXZhc19vYmplY3RfZGVsKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRv
dyk7CisKKyAgICByZXR1cm4gRUlOQV9UUlVFOworfQorCitzdGF0aWMgRWluYV9Cb29sCitvbl9j
b2xvcl9waWNrZXJfcmVxdWVzdChFd2tfVmlld19TbWFydF9EYXRhICpzZCwgRXdrX0NvbG9yX1Bp
Y2tlciAqY29sb3JfcGlja2VyKQoreworICAgIGludCByLCBnLCBiLCBhOworICAgIEV2YXNfT2Jq
ZWN0ICpiYWNrZ3JvdW5kLCAqcmVjdCwgKmJveCwgKmJ1dHRvbl9ib3gsICpyZWN0X2ZyYW1lLCAq
Y3NfZnJhbWUsICpva19idXR0b24sICpjYW5jZWxfYnV0dG9uOworCisgICAgQnJvd3Nlcl9XaW5k
b3cgKndpbmRvdyA9IHdpbmRvd19maW5kX3dpdGhfZXdrX3ZpZXcoc2QtPnNlbGYpOworICAgIHdp
bmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyA9IGVsbV93aW5fYWRkKHdp
bmRvdy0+ZWxtX3dpbmRvdywgImNvbG9yIHNlbGVjdG9yIiwgRUxNX1dJTl9CQVNJQyk7CisgICAg
d2luZG93LT5jb2xvcl9zZWxlY3Rvci5ld2tfcGlja2VyID0gY29sb3JfcGlja2VyOworCisgICAg
ZWxtX3dpbl90aXRsZV9zZXQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2lu
ZG93LCAiQ29sb3Igc2VsZWN0b3IiKTsKKworICAgIC8qIFNob3cgY29sb3IgdmlldyAqLworICAg
IGJhY2tncm91bmQgPSBlbG1fYmdfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVj
dG9yX3dpbmRvdyk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X3dlaWdodF9zZXQoYmFja2dy
b3VuZCwgRVZBU19ISU5UX0VYUEFORCwgRVZBU19ISU5UX0VYUEFORCk7CisgICAgZWxtX2JnX2Nv
bG9yX3NldChiYWNrZ3JvdW5kLCAyNTUsIDI1NSwgMjU1KTsKKyAgICBlbG1fd2luX3Jlc2l6ZV9v
YmplY3RfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdywgYmFj
a2dyb3VuZCk7CisKKyAgICBib3ggPSBlbG1fYm94X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9y
LmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF93ZWlnaHRf
c2V0KGJveCwgRVZBU19ISU5UX0VYUEFORCwgRVZBU19ISU5UX0VYUEFORCk7CisgICAgZWxtX3dp
bl9yZXNpemVfb2JqZWN0X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93
aW5kb3csIGJveCk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhib3gpOworCisgICAgcmVjdF9mcmFt
ZSA9IGVsbV9mcmFtZV9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2lu
ZG93KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfd2VpZ2h0X3NldChyZWN0X2ZyYW1lLCBF
VkFTX0hJTlRfRVhQQU5ELCAwLjMpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF9hbGlnbl9z
ZXQocmVjdF9mcmFtZSwgRVZBU19ISU5UX0ZJTEwsIEVWQVNfSElOVF9GSUxMKTsKKyAgICBlbG1f
b2JqZWN0X3RleHRfc2V0KHJlY3RfZnJhbWUsICJDb2xvciBWaWV3Iik7CisgICAgZWxtX2JveF9w
YWNrX2VuZChib3gsIHJlY3RfZnJhbWUpOworICAgIGV2YXNfb2JqZWN0X3Nob3cocmVjdF9mcmFt
ZSk7CisKKyAgICByZWN0ID0gZXZhc19vYmplY3RfcmVjdGFuZ2xlX2FkZChldmFzX29iamVjdF9l
dmFzX2dldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpKTsKKyAg
ICBlbG1fb2JqZWN0X2NvbnRlbnRfc2V0KHJlY3RfZnJhbWUsIHJlY3QpOworICAgIGV3a19jb2xv
cl9waWNrZXJfY29sb3JfZ2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZXdrX3BpY2tlciwgJnIs
ICZnLCAmYiwgJmEpOworICAgIGV2YXNfb2JqZWN0X2NvbG9yX3NldChyZWN0LCByLCBnLCBiLCBh
KTsKKyAgICBldmFzX29iamVjdF9zaG93KHJlY3QpOworCisgICAgLyogU2hvdyBjb2xvciBzZWxl
Y3RvciAqLworICAgIGNzX2ZyYW1lID0gZWxtX2ZyYW1lX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVj
dG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF93ZWln
aHRfc2V0KGNzX2ZyYW1lLCBFVkFTX0hJTlRfRVhQQU5ELCAwLjcpOworICAgIGV2YXNfb2JqZWN0
X3NpemVfaGludF9hbGlnbl9zZXQoY3NfZnJhbWUsIEVWQVNfSElOVF9GSUxMLCBFVkFTX0hJTlRf
RklMTCk7CisgICAgZWxtX29iamVjdF90ZXh0X3NldChjc19mcmFtZSwgIkNvbG9yIFNlbGVjdG9y
Iik7CisgICAgZWxtX2JveF9wYWNrX2VuZChib3gsIGNzX2ZyYW1lKTsKKyAgICBldmFzX29iamVj
dF9zaG93KGNzX2ZyYW1lKTsKKworICAgIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVj
dG9yID0gZWxtX2NvbG9yc2VsZWN0b3JfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3Nl
bGVjdG9yX3dpbmRvdyk7CisgICAgZWxtX29iamVjdF9jb250ZW50X3NldChjc19mcmFtZSwgd2lu
ZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IpOworICAgIGV2YXNfb2JqZWN0X3Nob3co
d2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IpOyAKKworICAgIC8qIE9rLENhbmNl
bCBCdXR0b25zICovCisgICAgYnV0dG9uX2JveCA9IGVsbV9ib3hfYWRkKHdpbmRvdy0+Y29sb3Jf
c2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZWxtX2JveF9ob3Jpem9udGFsX3Nl
dChidXR0b25fYm94LCBFSU5BX1RSVUUpOworICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF9taW5f
c2V0KGJ1dHRvbl9ib3gsIDIwMCwgNTApOworICAgIGVsbV9ib3hfcGFja19lbmQoYm94LCBidXR0
b25fYm94KTsKKyAgICBldmFzX29iamVjdF9zaG93KGJ1dHRvbl9ib3gpOworCisgICAgb2tfYnV0
dG9uID0gZWxtX2J1dHRvbl9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jf
d2luZG93KTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KG9rX2J1dHRvbiwgIk9LIik7CisgICAg
ZWxtX2JveF9wYWNrX2VuZChidXR0b25fYm94LCBva19idXR0b24pOworICAgIGV2YXNfb2JqZWN0
X3Nob3cob2tfYnV0dG9uKTsKKworICAgIGNhbmNlbF9idXR0b24gPSBlbG1fYnV0dG9uX2FkZCh3
aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGVsbV9vYmpl
Y3RfdGV4dF9zZXQoY2FuY2VsX2J1dHRvbiwgIkNhbmNlbCIpOworICAgIGVsbV9ib3hfcGFja19l
bmQoYnV0dG9uX2JveCwgY2FuY2VsX2J1dHRvbik7CisgICAgZXZhc19vYmplY3Rfc2hvdyhjYW5j
ZWxfYnV0dG9uKTsKKworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZChva19idXR0
b24sICJjbGlja2VkIiwgb25fY29sb3JfcGlja2VyX29rX2NsaWNrZWQsICYod2luZG93LT5jb2xv
cl9zZWxlY3RvcikpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZChjYW5jZWxf
YnV0dG9uLCAiY2xpY2tlZCIsIG9uX2NvbG9yX3BpY2tlcl9jYW5jZWxfY2xpY2tlZCwgd2luZG93
LT5jb2xvcl9zZWxlY3Rvci5ld2tfcGlja2VyKTsKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxs
YmFja19hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93LCAiZGVs
ZXRlLHJlcXVlc3QiLCBvbl9jb2xvcl9waWNrZXJfY2FuY2VsX2NsaWNrZWQsIHdpbmRvdy0+Y29s
b3Jfc2VsZWN0b3IuZXdrX3BpY2tlcik7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tf
YWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yLCAiY2hhbmdlZCIsIG9uX2Nv
bG9yX2NoYW5nZWQsIHJlY3QpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZCh3
aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3RvciwgImNvbG9yLGl0ZW0sc2VsZWN0ZWQi
LCBvbl9jb2xvcl9pdGVtX3NlbGVjdGVkLCByZWN0KTsKKworICAgIGVsbV93aW5fY2VudGVyKHdp
bmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdywgRUlOQV9UUlVFLCBFSU5B
X1RSVUUpOworICAgIGV2YXNfb2JqZWN0X3Jlc2l6ZSh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVs
bV9zZWxlY3Rvcl93aW5kb3csIDM1MCwgNTAwKTsKKyAgICBldmFzX29iamVjdF9zaG93KHdpbmRv
dy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisKKyAgICByZXR1cm4gRUlO
QV9UUlVFOworfQorCitzdGF0aWMgdm9pZAogdXBkYXRlX3ZpZXdfZmF2aWNvbihCcm93c2VyX1dp
bmRvdyAqd2luZG93LCBFdmFzX09iamVjdCAqaWNvbikKIHsKICAgICAvKiBSZW1vdmUgcHJldmlv
dXMgaWNvbiBmcm9tIFVSTCBiYXIgKi8KQEAgLTE1MDMsNiArMTYzOSw4IEBAIHN0YXRpYyBCcm93
c2VyX1dpbmRvdyAqd2luZG93X2NyZWF0ZShFdmFzX09iamVjdCAqb3BlbmVyLCBjb25zdCBjaGFy
ICp1cmwsIGludCB3CiAKICAgICAvKiBDcmVhdGUgZXdrX3ZpZXcgKi8KICAgICBFd2tfVmlld19T
bWFydF9DbGFzcyAqZXdrVmlld0NsYXNzID0gbWluaUJyb3dzZXJWaWV3U21hcnRDbGFzcygpOwor
ICAgIGV3a1ZpZXdDbGFzcy0+aW5wdXRfcGlja2VyX2NvbG9yX3JlcXVlc3QgPSBvbl9jb2xvcl9w
aWNrZXJfcmVxdWVzdDsKKyAgICBld2tWaWV3Q2xhc3MtPmlucHV0X3BpY2tlcl9jb2xvcl9kaXNt
aXNzID0gb25fY29sb3JfcGlja2VyX2Rpc21pc3M7CiAgICAgZXdrVmlld0NsYXNzLT5ydW5famF2
YXNjcmlwdF9hbGVydCA9IG9uX2phdmFzY3JpcHRfYWxlcnQ7CiAgICAgZXdrVmlld0NsYXNzLT5y
dW5famF2YXNjcmlwdF9jb25maXJtID0gb25famF2YXNjcmlwdF9jb25maXJtOwogICAgIGV3a1Zp
ZXdDbGFzcy0+cnVuX2phdmFzY3JpcHRfcHJvbXB0ID0gb25famF2YXNjcmlwdF9wcm9tcHQ7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203634</attachid>
            <date>2013-06-03 17:19:46 -0700</date>
            <delta_ts>2013-06-04 03:01:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130604091817.patch</filename>
            <type>text/plain</type>
            <size>8759</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQ5MDE1CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggMmM2NWRlYTIxYjM0NWE2MDAyYjg1ZGY5Y2I3OTNlMGY5
NWFkYjZmMC4uMjE0MDEzYjFmY2EzYWE4NTljMTNiNjYxMDVjNjk2Mjc1ZmYwYzA1YiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3
IEBACisyMDEzLTA2LTAyICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXSBJbXBsZW1lbnQgY29sb3JwaWNrZXIgZm9yIEhUTUw1IGlucHV0IHR5cGUg
Y29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFdoZW4gdXNlciBjbGlja3MgSFRNTDUgaW5wdXQgdHlwZSBjb2xvciwKKyAg
ICAgICAgY29sb3IgcGlja2VyIHdpbmRvdyBpcyBjcmVhdGVkIG9uIGJyb3dzZXIgb2JqZWN0IGJ5
IHVzaW5nIGVsbV9jb2xvcmNob29zZXJfYWRkKCkuCisgICAgICAgIEl0IGNhbiBsaXN0ZW4gYSBz
aWduYWwgZGlzbWlzc2luZyBjb2xvcnBpY2tlciBieSBjYWxsaW5nIHRoZSBld2tfY29sb3JfcGlj
a2VyX2NvbG9yX3NldCgpLgorICAgICAgICBUaGUgZXZhc19vYmplY3RfY29sb3Jfc2V0KCkgc2V0
cyBhIGNvbG9yIHZhbHVlIHJldHVybmluZyB0byBicm93c2VyLgorCisgICAgICAgICogTWluaUJy
b3dzZXIvZWZsL21haW4uYzoKKyAgICAgICAgKF9Db2xvcl9TZWxlY3Rvcik6CisgICAgICAgIChf
QnJvd3Nlcl9XaW5kb3cpOgorICAgICAgICAod2luZG93X2ZyZWUpOiBXaGVuIFdlIGRlbGV0ZSBw
YXJlbnQgd2luZG93LCBkZWxldGluZyB0aGUgY29sb3JwaWNrZXIgb2JqZWN0LgorICAgICAgICAo
b25fY29sb3JfY2hhbmdlZCk6IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgdG8gc2hvdyBjb2xv
ciBzZWxldGVkIGJ5IHVzZXIuCisgICAgICAgIChvbl9jb2xvcl9pdGVtX3NlbGVjdGVkKTogQ2hh
bmdlIGNvbG9yIG9mIHJlY3RhbmdsZSB3aXRoIGNsaWNraW5nIGNvbG9yIGJveGVzIGJhc2ljYWxs
eSBvZmZlcmVkIGJ5IGVsZW1lbnQgQVBJLgorICAgICAgICAob25fY29sb3JfcGlja2VyX29rX2Ns
aWNrZWQpOiBDYWxsIG9uX2NvbG9ycGlja2VyX2Rpc21pc3MgYW5kIHNldCB0aGUgY29sb3IuCisg
ICAgICAgIChvbl9jb2xvcl9waWNrZXJfY2FuY2VsX2NsaWNrZWQpOiBHZXQgYSBwcmVleGlzdGlu
ZyBjb2xvciBhbmQgY2FsbCBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldCgpLgorICAgICAgICAo
b25fY29sb3JfcGlja2VyX2Rpc21pc3MpOiBEZWxldGUgY29sb3JwaWNrZXIgb2JqZWN0LgorICAg
ICAgICAob25fY29sb3JfcGlja2VyX3JlcXVlc3QpOiBDcmVhdGUgY29sb3JwaWNrZXIgd2luZG93
IG9iamVjdC4KKyAgICAgICAgKHdpbmRvd19jcmVhdGUpOgorCiAyMDEzLTA0LTIzICBEYXZpZCBH
cm9nYW4gIDxkZ3JvZ2FuQGNocm9taXVtLm9yZz4KIAogICAgICAgICBVbnJldmlld2VkLiBSZW1v
dmUgbXlzZWxmIGZyb20gd2F0Y2hsaXN0LgpkaWZmIC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIv
ZWZsL21haW4uYyBiL1Rvb2xzL01pbmlCcm93c2VyL2VmbC9tYWluLmMKaW5kZXggM2IzOTUxZjc0
YTYzNDMyNjk2Mzk5YjhkNGE0ZWVhNzVhYzg3NDIzNS4uODc4MWI3ZjAwZTRiMGIyMzMyNzJhYjJk
OWRhMDZlMmRiYTlmMmNmZSAxMDA2NDQKLS0tIGEvVG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4u
YworKysgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCkBAIC05MCw2ICs5MCwxMiBAQCB0
eXBlZGVmIHN0cnVjdCBfVG9vbHRpcF9JbmZvcm1hdGlvbiB7CiAgICAgRWluYV9Cb29sIHNob3du
OwogfSBUb29sdGlwX0luZm9ybWF0aW9uOwogCit0eXBlZGVmIHN0cnVjdCBfQ29sb3JfU2VsZWN0
b3IgeworICAgIEV3a19Db2xvcl9QaWNrZXIgKmV3a19waWNrZXI7CisgICAgRXZhc19PYmplY3Qg
KmVsbV9zZWxlY3RvcjsKKyAgICBFdmFzX09iamVjdCAqZWxtX3NlbGVjdG9yX3dpbmRvdzsKK30g
Q29sb3JfU2VsZWN0b3I7CisKIHR5cGVkZWYgc3RydWN0IF9Ccm93c2VyX1dpbmRvdyB7CiAgICAg
RXZhc19PYmplY3QgKmVsbV93aW5kb3c7CiAgICAgRXZhc19PYmplY3QgKmV3a192aWV3OwpAQCAt
MTA4LDYgKzExNCw3IEBAIHR5cGVkZWYgc3RydWN0IF9Ccm93c2VyX1dpbmRvdyB7CiAgICAgfSBz
ZWFyY2g7CiAgICAgaW50IGN1cnJlbnRfem9vbV9sZXZlbDsgCiAgICAgVG9vbHRpcF9JbmZvcm1h
dGlvbiB0b29sdGlwOworICAgIENvbG9yX1NlbGVjdG9yIGNvbG9yX3NlbGVjdG9yOwogICAgIEV2
YXNfT2JqZWN0ICpjb250ZXh0X3BvcHVwOwogfSBCcm93c2VyX1dpbmRvdzsKIApAQCAtMjY1LDYg
KzI3Miw5IEBAIHN0YXRpYyB2b2lkIHdpbmRvd19mcmVlKEJyb3dzZXJfV2luZG93ICp3aW5kb3cp
CiAgICAgLyogVGhlIGVsbV93aW4gd2lsbCB0YWtlIGNhcmUgb2YgZnJlZWluZyBpdHMgY2hpbGRy
ZW4gKi8KICAgICBldmFzX29iamVjdF9kZWwod2luZG93LT5lbG1fd2luZG93KTsKIAorICAgIGlm
ICh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpCisgICAgICAgIGV2
YXNfb2JqZWN0X2RlbCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cp
OworCiAgICAgaWYgKHdpbmRvdy0+dG9vbHRpcC5zaG93X3RpbWVyKQogICAgICAgICBlY29yZV90
aW1lcl9kZWwod2luZG93LT50b29sdGlwLnNob3dfdGltZXIpOwogCkBAIC01OTUsNiArNjA1LDEy
OCBAQCBvbl9kb3dubG9hZF9mYWlsZWQodm9pZCAqdXNlcl9kYXRhLCBFdmFzX09iamVjdCAqZXdr
X3ZpZXcsIHZvaWQgKmV2ZW50X2luZm8pCiB9CiAKIHN0YXRpYyB2b2lkCitvbl9jb2xvcl9jaGFu
Z2VkKHZvaWQgKmRhdGEsIEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7Cisg
ICAgaW50IHIsIGcsIGIsIGE7CisKKyAgICBlbG1fY29sb3JzZWxlY3Rvcl9jb2xvcl9nZXQob2Jq
LCAmciwgJmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KGRhdGEsIHIsIGcs
IGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JfaXRlbV9zZWxlY3RlZCh2b2lkICpk
YXRhLCBFdmFzX09iamVjdCAqb2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCByLCBn
LCBiLCBhOworICAgIEVsbV9PYmplY3RfSXRlbSAqY29sb3JfaXRlbSA9IChFbG1fT2JqZWN0X0l0
ZW0gKilldmVudF9pbmZvOworCisgICAgZWxtX2NvbG9yc2VsZWN0b3JfcGFsZXR0ZV9pdGVtX2Nv
bG9yX2dldChjb2xvcl9pdGVtLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3RfY29s
b3Jfc2V0KGRhdGEsIHIsIGcsIGIsIGEpOworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JfcGlj
a2VyX29rX2NsaWNrZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRf
aW5mbykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKyAgICBDb2xvcl9TZWxlY3RvciAqY29sb3Jf
c2VsZWN0b3IgPSAoQ29sb3JfU2VsZWN0b3IgKilkYXRhOworCisgICAgZWxtX2NvbG9yc2VsZWN0
b3JfY29sb3JfZ2V0KGNvbG9yX3NlbGVjdG9yLT5lbG1fc2VsZWN0b3IsICZyLCAmZywgJmIsICZh
KTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldChjb2xvcl9zZWxlY3Rvci0+ZXdrX3Bp
Y2tlciwgciwgZywgYiwgYSk7Cit9CisKK3N0YXRpYyB2b2lkCitvbl9jb2xvcl9waWNrZXJfY2Fu
Y2VsX2NsaWNrZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5m
bykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKworICAgIGV3a19jb2xvcl9waWNrZXJfY29sb3Jf
Z2V0KGRhdGEsICZyLCAmZywgJmIsICZhKTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX3Nl
dChkYXRhLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGljIEVpbmFfQm9vbAorb25fY29sb3JfcGlj
a2VyX2Rpc21pc3MoRXdrX1ZpZXdfU21hcnRfRGF0YSAqc2QpCit7CisgICAgQnJvd3Nlcl9XaW5k
b3cgKndpbmRvdyA9IHdpbmRvd19maW5kX3dpdGhfZXdrX3ZpZXcoc2QtPnNlbGYpOworCisgICAg
ZXZhc19vYmplY3RfZGVsKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRv
dyk7CisgICAgd2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93ID0gTlVM
TDsKKworICAgIHJldHVybiBFSU5BX1RSVUU7Cit9CisKK3N0YXRpYyBFaW5hX0Jvb2wKK29uX2Nv
bG9yX3BpY2tlcl9yZXF1ZXN0KEV3a19WaWV3X1NtYXJ0X0RhdGEgKnNkLCBFd2tfQ29sb3JfUGlj
a2VyICpjb2xvcl9waWNrZXIpCit7CisgICAgaW50IHIsIGcsIGIsIGE7CisgICAgRXZhc19PYmpl
Y3QgKmJhY2tncm91bmQsICpyZWN0LCAqYm94LCAqYnV0dG9uX2JveCwgKnJlY3RfZnJhbWUsICpj
c19mcmFtZSwgKm9rX2J1dHRvbiwgKmNhbmNlbF9idXR0b247CisKKyAgICBCcm93c2VyX1dpbmRv
dyAqd2luZG93ID0gd2luZG93X2ZpbmRfd2l0aF9ld2tfdmlldyhzZC0+c2VsZik7CisgICAgd2lu
ZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93ID0gZWxtX3dpbl9hZGQod2lu
ZG93LT5lbG1fd2luZG93LCAiY29sb3Igc2VsZWN0b3IiLCBFTE1fV0lOX0JBU0lDKTsKKyAgICB3
aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmV3a19waWNrZXIgPSBjb2xvcl9waWNrZXI7CisKKyAgICBl
bG1fd2luX3RpdGxlX3NldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5k
b3csICJDb2xvciBzZWxlY3RvciIpOworCisgICAgLyogU2hvdyBjb2xvciB2aWV3ICovCisgICAg
Ym94ID0gZWxtX2JveF9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2lu
ZG93KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfd2VpZ2h0X3NldChib3gsIEVWQVNfSElO
VF9FWFBBTkQsIEVWQVNfSElOVF9FWFBBTkQpOworICAgIGVsbV93aW5fcmVzaXplX29iamVjdF9h
ZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93LCBib3gpOworICAg
IGV2YXNfb2JqZWN0X3Nob3coYm94KTsKKworICAgIHJlY3RfZnJhbWUgPSBlbG1fZnJhbWVfYWRk
KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZXZhc19v
YmplY3Rfc2l6ZV9oaW50X3dlaWdodF9zZXQocmVjdF9mcmFtZSwgRVZBU19ISU5UX0VYUEFORCwg
MC4zKTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfYWxpZ25fc2V0KHJlY3RfZnJhbWUsIEVW
QVNfSElOVF9GSUxMLCBFVkFTX0hJTlRfRklMTCk7CisgICAgZWxtX29iamVjdF90ZXh0X3NldChy
ZWN0X2ZyYW1lLCAiQ29sb3IgVmlldyIpOworICAgIGVsbV9ib3hfcGFja19lbmQoYm94LCByZWN0
X2ZyYW1lKTsKKyAgICBldmFzX29iamVjdF9zaG93KHJlY3RfZnJhbWUpOworCisgICAgcmVjdCA9
IGV2YXNfb2JqZWN0X3JlY3RhbmdsZV9hZGQoZXZhc19vYmplY3RfZXZhc19nZXQod2luZG93LT5j
b2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KSk7CisgICAgZWxtX29iamVjdF9jb250
ZW50X3NldChyZWN0X2ZyYW1lLCByZWN0KTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX2dl
dCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmV3a19waWNrZXIsICZyLCAmZywgJmIsICZhKTsKKyAg
ICBldmFzX29iamVjdF9jb2xvcl9zZXQocmVjdCwgciwgZywgYiwgYSk7CisgICAgZXZhc19vYmpl
Y3Rfc2hvdyhyZWN0KTsKKworICAgIC8qIFNob3cgY29sb3Igc2VsZWN0b3IgKi8KKyAgICBjc19m
cmFtZSA9IGVsbV9mcmFtZV9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jf
d2luZG93KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfd2VpZ2h0X3NldChjc19mcmFtZSwg
RVZBU19ISU5UX0VYUEFORCwgMC43KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfYWxpZ25f
c2V0KGNzX2ZyYW1lLCBFVkFTX0hJTlRfRklMTCwgRVZBU19ISU5UX0ZJTEwpOworICAgIGVsbV9v
YmplY3RfdGV4dF9zZXQoY3NfZnJhbWUsICJDb2xvciBTZWxlY3RvciIpOworICAgIGVsbV9ib3hf
cGFja19lbmQoYm94LCBjc19mcmFtZSk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhjc19mcmFtZSk7
CisKKyAgICB3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3RvciA9IGVsbV9jb2xvcnNl
bGVjdG9yX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOwor
ICAgIGVsbV9vYmplY3RfY29udGVudF9zZXQoY3NfZnJhbWUsIHdpbmRvdy0+Y29sb3Jfc2VsZWN0
b3IuZWxtX3NlbGVjdG9yKTsKKyAgICBldmFzX29iamVjdF9zaG93KHdpbmRvdy0+Y29sb3Jfc2Vs
ZWN0b3IuZWxtX3NlbGVjdG9yKTsgCisKKyAgICAvKiBPayxDYW5jZWwgQnV0dG9ucyAqLworICAg
IGJ1dHRvbl9ib3ggPSBlbG1fYm94X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxl
Y3Rvcl93aW5kb3cpOworICAgIGVsbV9ib3hfaG9yaXpvbnRhbF9zZXQoYnV0dG9uX2JveCwgRUlO
QV9UUlVFKTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfbWluX3NldChidXR0b25fYm94LCAy
MDAsIDUwKTsKKyAgICBlbG1fYm94X3BhY2tfZW5kKGJveCwgYnV0dG9uX2JveCk7CisgICAgZXZh
c19vYmplY3Rfc2hvdyhidXR0b25fYm94KTsKKworICAgIG9rX2J1dHRvbiA9IGVsbV9idXR0b25f
YWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZWxt
X29iamVjdF90ZXh0X3NldChva19idXR0b24sICJPSyIpOworICAgIGVsbV9ib3hfcGFja19lbmQo
YnV0dG9uX2JveCwgb2tfYnV0dG9uKTsKKyAgICBldmFzX29iamVjdF9zaG93KG9rX2J1dHRvbik7
CisKKyAgICBjYW5jZWxfYnV0dG9uID0gZWxtX2J1dHRvbl9hZGQod2luZG93LT5jb2xvcl9zZWxl
Y3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KGNhbmNl
bF9idXR0b24sICJDYW5jZWwiKTsKKyAgICBlbG1fYm94X3BhY2tfZW5kKGJ1dHRvbl9ib3gsIGNh
bmNlbF9idXR0b24pOworICAgIGV2YXNfb2JqZWN0X3Nob3coY2FuY2VsX2J1dHRvbik7CisKKyAg
ICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQob2tfYnV0dG9uLCAiY2xpY2tlZCIsIG9u
X2NvbG9yX3BpY2tlcl9va19jbGlja2VkLCAmKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpKTsKKyAg
ICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQoY2FuY2VsX2J1dHRvbiwgImNsaWNrZWQi
LCBvbl9jb2xvcl9waWNrZXJfY2FuY2VsX2NsaWNrZWQsIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3Iu
ZXdrX3BpY2tlcik7CisgICAgZXZhc19vYmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKHdpbmRvdy0+
Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdywgImRlbGV0ZSxyZXF1ZXN0Iiwgb25f
Y29sb3JfcGlja2VyX2NhbmNlbF9jbGlja2VkLCB3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmV3a19w
aWNrZXIpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxiYWNrX2FkZCh3aW5kb3ctPmNvbG9y
X3NlbGVjdG9yLmVsbV9zZWxlY3RvciwgImNoYW5nZWQiLCBvbl9jb2xvcl9jaGFuZ2VkLCByZWN0
KTsKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxsYmFja19hZGQod2luZG93LT5jb2xvcl9zZWxl
Y3Rvci5lbG1fc2VsZWN0b3IsICJjb2xvcixpdGVtLHNlbGVjdGVkIiwgb25fY29sb3JfaXRlbV9z
ZWxlY3RlZCwgcmVjdCk7CisKKyAgICBlbG1fd2luX2NlbnRlcih3aW5kb3ctPmNvbG9yX3NlbGVj
dG9yLmVsbV9zZWxlY3Rvcl93aW5kb3csIEVJTkFfVFJVRSwgRUlOQV9UUlVFKTsKKyAgICBldmFz
X29iamVjdF9yZXNpemUod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93
LCAzNTAsIDUwMCk7CisgICAgZXZhc19vYmplY3Rfc2hvdyh3aW5kb3ctPmNvbG9yX3NlbGVjdG9y
LmVsbV9zZWxlY3Rvcl93aW5kb3cpOworCisgICAgcmV0dXJuIEVJTkFfVFJVRTsKK30KKworc3Rh
dGljIHZvaWQKIHVwZGF0ZV92aWV3X2Zhdmljb24oQnJvd3Nlcl9XaW5kb3cgKndpbmRvdywgRXZh
c19PYmplY3QgKmljb24pCiB7CiAgICAgLyogUmVtb3ZlIHByZXZpb3VzIGljb24gZnJvbSBVUkwg
YmFyICovCkBAIC0xNTAzLDYgKzE2MzUsOCBAQCBzdGF0aWMgQnJvd3Nlcl9XaW5kb3cgKndpbmRv
d19jcmVhdGUoRXZhc19PYmplY3QgKm9wZW5lciwgY29uc3QgY2hhciAqdXJsLCBpbnQgdwogCiAg
ICAgLyogQ3JlYXRlIGV3a192aWV3ICovCiAgICAgRXdrX1ZpZXdfU21hcnRfQ2xhc3MgKmV3a1Zp
ZXdDbGFzcyA9IG1pbmlCcm93c2VyVmlld1NtYXJ0Q2xhc3MoKTsKKyAgICBld2tWaWV3Q2xhc3Mt
PmlucHV0X3BpY2tlcl9jb2xvcl9yZXF1ZXN0ID0gb25fY29sb3JfcGlja2VyX3JlcXVlc3Q7Cisg
ICAgZXdrVmlld0NsYXNzLT5pbnB1dF9waWNrZXJfY29sb3JfZGlzbWlzcyA9IG9uX2NvbG9yX3Bp
Y2tlcl9kaXNtaXNzOwogICAgIGV3a1ZpZXdDbGFzcy0+cnVuX2phdmFzY3JpcHRfYWxlcnQgPSBv
bl9qYXZhc2NyaXB0X2FsZXJ0OwogICAgIGV3a1ZpZXdDbGFzcy0+cnVuX2phdmFzY3JpcHRfY29u
ZmlybSA9IG9uX2phdmFzY3JpcHRfY29uZmlybTsKICAgICBld2tWaWV3Q2xhc3MtPnJ1bl9qYXZh
c2NyaXB0X3Byb21wdCA9IG9uX2phdmFzY3JpcHRfcHJvbXB0Owo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203669</attachid>
            <date>2013-06-04 03:01:50 -0700</date>
            <delta_ts>2013-06-06 17:13:04 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130604190021.patch</filename>
            <type>text/plain</type>
            <size>8660</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxMTU2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggYzg2NDdjYWFiNjU3YjVkOTg5MGM2NmQwMTY2Zjk1NjQ3
OGE2MDExMC4uMDI4ODE5ZDZkYzNmMmZjZDk5YTk4MDI1MjVkYzdhZDBlYThjN2ViMyAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1
IEBACisyMDEzLTA2LTA0ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXSBJbXBsZW1lbnQgY29sb3JwaWNrZXIgZm9yIEhUTUw1IGlucHV0IHR5cGUg
Y29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFdoZW4gdXNlciBjbGlja3MgSFRNTDUgaW5wdXQgdHlwZSBjb2xvciwKKyAg
ICAgICAgY29sb3Igc2VsZWN0b3Igd2luZG93IGlzIGNyZWF0ZWQgb24gYnJvd3NlciBvYmplY3Qg
YnkgdXNpbmcgZWxtX2NvbG9yY2hvb3Nlcl9hZGQoKS4KKyAgICAgICAgSXQgY2FuIGxpc3RlbiBh
IHNpZ25hbCBkaXNtaXNzaW5nIGNvbG9ycGlja2VyIGJ5IGNhbGxpbmcgdGhlIGV3a19jb2xvcl9w
aWNrZXJfY29sb3Jfc2V0KCkuCisgICAgICAgIFRoZSBldmFzX29iamVjdF9jb2xvcl9zZXQoKSBz
ZXRzIGEgY29sb3IgdmFsdWUgcmV0dXJuaW5nIHRvIGJyb3dzZXIuCisKKyAgICAgICAgKiBNaW5p
QnJvd3Nlci9lZmwvbWFpbi5jOgorICAgICAgICAod2luZG93X2ZyZWUpOiBXaGVuIFdlIGRlbGV0
ZSBwYXJlbnQgd2luZG93LCBkZWxldGluZyB0aGllIGNvbG9ycGlja2VyIG9iamVjdC4KKyAgICAg
ICAgKG9uX2NvbG9yX2NoYW5nZWQpOiBDaGFuZ2UgY29sb3Igb2YgcmVjdGFuZ2xlIHRvIHNob3cg
Y29sb3Igc2VsZWN0ZWQgYnkgdXNlci4KKyAgICAgICAgKG9uX2NvbG9yX2l0ZW1fc2VsZWN0ZWQp
OiBDaGFuZ2UgY29sb3Igb2YgcmVjdGFuZ2xlIHdpdGggY2xpY2tpbmcgY29sb3IgYm94ZXMgYmFz
aWNhbGx5IG9mZmVyZWQgYnkgZWxlbW5ldCBBUEkuCisgICAgICAgIChvbl9jb2xvcl9waWNrZXJf
b2tfY2xpY2tlZCk6IENhbGwgb25fY29sb3JwaWNrZXJfZGlzbWlzcyBhbmQgc2V0IHRoZSBjb2xv
ci4KKyAgICAgICAgKG9uX2NvbG9yX3BpY2tlcl9jYW5jZWxfY2xpY2tlZCk6IEdldCBhIHByZWV4
aXN0aW5nIGNvbG9yIGFuZCBjYWxsIGV3a19jb2xvcl9waWNrZXJfY29sb3Jfc2V0KCkuCisgICAg
ICAgIChvbl9jb2xvcl9waWNrZXJfZGlzbWlzcyk6IERlbGV0ZSBjb2xvcnBpY2tlciBvYmplY3Qu
CisgICAgICAgIChvbl9jb2xvcl9waWNrZXJfcmVxdWVzdCk6IENyZWF0ZSBjb2xvcnBpY2tlciB3
aW5kb3cgb2JqZWN0LgorICAgICAgICAod2luZG93X2NyZWF0ZSk6CisKIDIwMTMtMDYtMDMgIFNp
bW9uIFBlbmEgIDxzaW1vbi5wZW5hQHNhbXN1bmcuY29tPgogCiAgICAgICAgIHZhbGlkYXRlLWNv
bW1pdHRlci1saXN0cyBzY3JpcHQgaXMgbm93IG91dGRhdGVkIGFuZCBkb2VzIG5vdCB3b3JrCmRp
ZmYgLS1naXQgYS9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jIGIvVG9vbHMvTWluaUJyb3dz
ZXIvZWZsL21haW4uYwppbmRleCA3ZTlmYWRlNGZiNTNlZTMxMjIxOTUzNmIyZTQ4ZDczOWVlMGVi
NzViLi42YTBjZTZkMzYwMmQ0YzBlYTNjMmY0ZmQyYWExYzBmM2Y0OTEyZGRiIDEwMDY0NAotLS0g
YS9Ub29scy9NaW5pQnJvd3Nlci9lZmwvbWFpbi5jCisrKyBiL1Rvb2xzL01pbmlCcm93c2VyL2Vm
bC9tYWluLmMKQEAgLTkxLDYgKzkxLDEyIEBAIHR5cGVkZWYgc3RydWN0IF9Ub29sdGlwX0luZm9y
bWF0aW9uIHsKICAgICBFaW5hX0Jvb2wgc2hvd247CiB9IFRvb2x0aXBfSW5mb3JtYXRpb247CiAK
K3R5cGVkZWYgc3RydWN0IF9Db2xvcl9TZWxlY3RvciB7CisgICAgRXdrX0NvbG9yX1BpY2tlciAq
ZXdrX3BpY2tlcjsKKyAgICBFdmFzX09iamVjdCAqZWxtX3NlbGVjdG9yOworICAgIEV2YXNfT2Jq
ZWN0ICplbG1fc2VsZWN0b3Jfd2luZG93OworfSBDb2xvcl9TZWxlY3RvcjsKKwogdHlwZWRlZiBz
dHJ1Y3QgX0Jyb3dzZXJfV2luZG93IHsKICAgICBFdmFzX09iamVjdCAqZWxtX3dpbmRvdzsKICAg
ICBFdmFzX09iamVjdCAqZXdrX3ZpZXc7CkBAIC0xMDksNiArMTE1LDcgQEAgdHlwZWRlZiBzdHJ1
Y3QgX0Jyb3dzZXJfV2luZG93IHsKICAgICB9IHNlYXJjaDsKICAgICBpbnQgY3VycmVudF96b29t
X2xldmVsOyAKICAgICBUb29sdGlwX0luZm9ybWF0aW9uIHRvb2x0aXA7CisgICAgQ29sb3JfU2Vs
ZWN0b3IgY29sb3Jfc2VsZWN0b3I7CiAgICAgc3RydWN0IHsKICAgICAgICAgRXZhc19PYmplY3Qg
KmVsbV9tZW51OwogICAgICAgICBFd2tfQ29udGV4dF9NZW51ICpld2tfbWVudTsKQEAgLTI5Miw2
ICsyOTksOSBAQCBzdGF0aWMgdm9pZCB3aW5kb3dfZnJlZShCcm93c2VyX1dpbmRvdyAqd2luZG93
KQogICAgIGlmICh3aW5kb3ctPnRvb2x0aXAuc2hvd190aW1lcikKICAgICAgICAgZWNvcmVfdGlt
ZXJfZGVsKHdpbmRvdy0+dG9vbHRpcC5zaG93X3RpbWVyKTsKIAorICAgIGlmICh3aW5kb3ctPmNv
bG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpCisgICAgICAgIGV2YXNfb2JqZWN0X2Rl
bCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworCiAgICAgZnJl
ZSh3aW5kb3cpOwogfQogCkBAIC02MTksNiArNjI5LDEyOCBAQCBvbl9kb3dubG9hZF9mYWlsZWQo
dm9pZCAqdXNlcl9kYXRhLCBFdmFzX09iamVjdCAqZXdrX3ZpZXcsIHZvaWQgKmV2ZW50X2luZm8p
CiB9CiAKIHN0YXRpYyB2b2lkCitvbl9jb2xvcl9jaGFuZ2VkKHZvaWQgKmRhdGEsIEV2YXNfT2Jq
ZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIsIGE7CisKKyAg
ICBlbG1fY29sb3JzZWxlY3Rvcl9jb2xvcl9nZXQob2JqLCAmciwgJmcsICZiLCAmYSk7CisgICAg
ZXZhc19vYmplY3RfY29sb3Jfc2V0KGRhdGEsIHIsIGcsIGIsIGEpOworfQorCitzdGF0aWMgdm9p
ZAorb25fY29sb3JfaXRlbV9zZWxlY3RlZCh2b2lkICpkYXRhLCBFdmFzX09iamVjdCAqb2JqLCB2
b2lkICpldmVudF9pbmZvKQoreworICAgIGludCByLCBnLCBiLCBhOworICAgIEVsbV9PYmplY3Rf
SXRlbSAqY29sb3JfaXRlbSA9IChFbG1fT2JqZWN0X0l0ZW0gKilldmVudF9pbmZvOworCisgICAg
ZWxtX2NvbG9yc2VsZWN0b3JfcGFsZXR0ZV9pdGVtX2NvbG9yX2dldChjb2xvcl9pdGVtLCAmciwg
JmcsICZiLCAmYSk7CisgICAgZXZhc19vYmplY3RfY29sb3Jfc2V0KGRhdGEsIHIsIGcsIGIsIGEp
OworfQorCitzdGF0aWMgdm9pZAorb25fY29sb3JfcGlja2VyX29rX2NsaWNrZWQodm9pZCAqZGF0
YSwgRXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5mbykKK3sKKyAgICBpbnQgciwgZywg
YiwgYTsKKyAgICBDb2xvcl9TZWxlY3RvciAqY29sb3Jfc2VsZWN0b3IgPSAoQ29sb3JfU2VsZWN0
b3IgKilkYXRhOworCisgICAgZWxtX2NvbG9yc2VsZWN0b3JfY29sb3JfZ2V0KGNvbG9yX3NlbGVj
dG9yLT5lbG1fc2VsZWN0b3IsICZyLCAmZywgJmIsICZhKTsKKyAgICBld2tfY29sb3JfcGlja2Vy
X2NvbG9yX3NldChjb2xvcl9zZWxlY3Rvci0+ZXdrX3BpY2tlciwgciwgZywgYiwgYSk7Cit9CisK
K3N0YXRpYyB2b2lkCitvbl9jb2xvcl9waWNrZXJfY2FuY2VsX2NsaWNrZWQodm9pZCAqZGF0YSwg
RXZhc19PYmplY3QgKm9iaiwgdm9pZCAqZXZlbnRfaW5mbykKK3sKKyAgICBpbnQgciwgZywgYiwg
YTsKKworICAgIGV3a19jb2xvcl9waWNrZXJfY29sb3JfZ2V0KGRhdGEsICZyLCAmZywgJmIsICZh
KTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldChkYXRhLCByLCBnLCBiLCBhKTsKK30K
Kworc3RhdGljIEVpbmFfQm9vbAorb25fY29sb3JfcGlja2VyX2Rpc21pc3MoRXdrX1ZpZXdfU21h
cnRfRGF0YSAqc2QpCit7CisgICAgQnJvd3Nlcl9XaW5kb3cgKndpbmRvdyA9IHdpbmRvd19maW5k
X3dpdGhfZXdrX3ZpZXcoc2QtPnNlbGYpOworCisgICAgZXZhc19vYmplY3RfZGVsKHdpbmRvdy0+
Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgd2luZG93LT5jb2xvcl9z
ZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93ID0gTlVMTDsKKworICAgIHJldHVybiBFSU5BX1RS
VUU7Cit9CisKK3N0YXRpYyBFaW5hX0Jvb2wKK29uX2NvbG9yX3BpY2tlcl9yZXF1ZXN0KEV3a19W
aWV3X1NtYXJ0X0RhdGEgKnNkLCBFd2tfQ29sb3JfUGlja2VyICpjb2xvcl9waWNrZXIpCit7Cisg
ICAgaW50IHIsIGcsIGIsIGE7CisgICAgRXZhc19PYmplY3QgKmJhY2tncm91bmQsICpyZWN0LCAq
Ym94LCAqYnV0dG9uX2JveCwgKnJlY3RfZnJhbWUsICpjc19mcmFtZSwgKm9rX2J1dHRvbiwgKmNh
bmNlbF9idXR0b247CisKKyAgICBCcm93c2VyX1dpbmRvdyAqd2luZG93ID0gd2luZG93X2ZpbmRf
d2l0aF9ld2tfdmlldyhzZC0+c2VsZik7CisgICAgd2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1f
c2VsZWN0b3Jfd2luZG93ID0gZWxtX3dpbl9hZGQod2luZG93LT5lbG1fd2luZG93LCAiY29sb3Ig
c2VsZWN0b3IiLCBFTE1fV0lOX0JBU0lDKTsKKyAgICB3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmV3
a19waWNrZXIgPSBjb2xvcl9waWNrZXI7CisKKyAgICBlbG1fd2luX3RpdGxlX3NldCh3aW5kb3ct
PmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3csICJDb2xvciBzZWxlY3RvciIpOwor
CisgICAgLyogU2hvdyBjb2xvciB2aWV3ICovCisgICAgYm94ID0gZWxtX2JveF9hZGQod2luZG93
LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KTsKKyAgICBldmFzX29iamVjdF9z
aXplX2hpbnRfd2VpZ2h0X3NldChib3gsIEVWQVNfSElOVF9FWFBBTkQsIEVWQVNfSElOVF9FWFBB
TkQpOworICAgIGVsbV93aW5fcmVzaXplX29iamVjdF9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rv
ci5lbG1fc2VsZWN0b3Jfd2luZG93LCBib3gpOworICAgIGV2YXNfb2JqZWN0X3Nob3coYm94KTsK
KworICAgIHJlY3RfZnJhbWUgPSBlbG1fZnJhbWVfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3Iu
ZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZXZhc19vYmplY3Rfc2l6ZV9oaW50X3dlaWdodF9z
ZXQocmVjdF9mcmFtZSwgRVZBU19ISU5UX0VYUEFORCwgMC4zKTsKKyAgICBldmFzX29iamVjdF9z
aXplX2hpbnRfYWxpZ25fc2V0KHJlY3RfZnJhbWUsIEVWQVNfSElOVF9GSUxMLCBFVkFTX0hJTlRf
RklMTCk7CisgICAgZWxtX29iamVjdF90ZXh0X3NldChyZWN0X2ZyYW1lLCAiQ29sb3IgVmlldyIp
OworICAgIGVsbV9ib3hfcGFja19lbmQoYm94LCByZWN0X2ZyYW1lKTsKKyAgICBldmFzX29iamVj
dF9zaG93KHJlY3RfZnJhbWUpOworCisgICAgcmVjdCA9IGV2YXNfb2JqZWN0X3JlY3RhbmdsZV9h
ZGQoZXZhc19vYmplY3RfZXZhc19nZXQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0
b3Jfd2luZG93KSk7CisgICAgZWxtX29iamVjdF9jb250ZW50X3NldChyZWN0X2ZyYW1lLCByZWN0
KTsKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX2dldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9y
LmV3a19waWNrZXIsICZyLCAmZywgJmIsICZhKTsKKyAgICBldmFzX29iamVjdF9jb2xvcl9zZXQo
cmVjdCwgciwgZywgYiwgYSk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhyZWN0KTsKKworICAgIC8q
IFNob3cgY29sb3Igc2VsZWN0b3IgKi8KKyAgICBjc19mcmFtZSA9IGVsbV9mcmFtZV9hZGQod2lu
ZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KTsKKyAgICBldmFzX29iamVj
dF9zaXplX2hpbnRfd2VpZ2h0X3NldChjc19mcmFtZSwgRVZBU19ISU5UX0VYUEFORCwgMC43KTsK
KyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfYWxpZ25fc2V0KGNzX2ZyYW1lLCBFVkFTX0hJTlRf
RklMTCwgRVZBU19ISU5UX0ZJTEwpOworICAgIGVsbV9vYmplY3RfdGV4dF9zZXQoY3NfZnJhbWUs
ICJDb2xvciBTZWxlY3RvciIpOworICAgIGVsbV9ib3hfcGFja19lbmQoYm94LCBjc19mcmFtZSk7
CisgICAgZXZhc19vYmplY3Rfc2hvdyhjc19mcmFtZSk7CisKKyAgICB3aW5kb3ctPmNvbG9yX3Nl
bGVjdG9yLmVsbV9zZWxlY3RvciA9IGVsbV9jb2xvcnNlbGVjdG9yX2FkZCh3aW5kb3ctPmNvbG9y
X3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGVsbV9vYmplY3RfY29udGVudF9z
ZXQoY3NfZnJhbWUsIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yKTsKKyAgICBl
dmFzX29iamVjdF9zaG93KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yKTsKKwor
ICAgIC8qIE9LLCBDYW5jZWwgQnV0dG9ucyAqLworICAgIGJ1dHRvbl9ib3ggPSBlbG1fYm94X2Fk
ZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGVsbV9i
b3hfaG9yaXpvbnRhbF9zZXQoYnV0dG9uX2JveCwgRUlOQV9UUlVFKTsKKyAgICBldmFzX29iamVj
dF9zaXplX2hpbnRfbWluX3NldChidXR0b25fYm94LCAyMDAsIDUwKTsKKyAgICBlbG1fYm94X3Bh
Y2tfZW5kKGJveCwgYnV0dG9uX2JveCk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhidXR0b25fYm94
KTsKKworICAgIG9rX2J1dHRvbiA9IGVsbV9idXR0b25fYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0
b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZWxtX29iamVjdF90ZXh0X3NldChva19idXR0
b24sICJPSyIpOworICAgIGVsbV9ib3hfcGFja19lbmQoYnV0dG9uX2JveCwgb2tfYnV0dG9uKTsK
KyAgICBldmFzX29iamVjdF9zaG93KG9rX2J1dHRvbik7CisKKyAgICBjYW5jZWxfYnV0dG9uID0g
ZWxtX2J1dHRvbl9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93
KTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KGNhbmNlbF9idXR0b24sICJDYW5jZWwiKTsKKyAg
ICBlbG1fYm94X3BhY2tfZW5kKGJ1dHRvbl9ib3gsIGNhbmNlbF9idXR0b24pOworICAgIGV2YXNf
b2JqZWN0X3Nob3coY2FuY2VsX2J1dHRvbik7CisKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxs
YmFja19hZGQob2tfYnV0dG9uLCAiY2xpY2tlZCIsIG9uX2NvbG9yX3BpY2tlcl9va19jbGlja2Vk
LCAmKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IpKTsKKyAgICBldmFzX29iamVjdF9zbWFydF9jYWxs
YmFja19hZGQoY2FuY2VsX2J1dHRvbiwgImNsaWNrZWQiLCBvbl9jb2xvcl9waWNrZXJfY2FuY2Vs
X2NsaWNrZWQsIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZXdrX3BpY2tlcik7CisgICAgZXZhc19v
YmplY3Rfc21hcnRfY2FsbGJhY2tfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVj
dG9yX3dpbmRvdywgImRlbGV0ZSxyZXF1ZXN0Iiwgb25fY29sb3JfcGlja2VyX2NhbmNlbF9jbGlj
a2VkLCB3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmV3a19waWNrZXIpOworICAgIGV2YXNfb2JqZWN0
X3NtYXJ0X2NhbGxiYWNrX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvciwg
ImNoYW5nZWQiLCBvbl9jb2xvcl9jaGFuZ2VkLCByZWN0KTsKKyAgICBldmFzX29iamVjdF9zbWFy
dF9jYWxsYmFja19hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IsICJjb2xv
cixpdGVtLHNlbGVjdGVkIiwgb25fY29sb3JfaXRlbV9zZWxlY3RlZCwgcmVjdCk7CisKKyAgICBl
bG1fd2luX2NlbnRlcih3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cs
IEVJTkFfVFJVRSwgRUlOQV9UUlVFKTsKKyAgICBldmFzX29iamVjdF9yZXNpemUod2luZG93LT5j
b2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93LCAzNTAsIDUwMCk7CisgICAgZXZhc19v
YmplY3Rfc2hvdyh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOwor
CisgICAgcmV0dXJuIEVJTkFfVFJVRTsKK30KKworc3RhdGljIHZvaWQKIHVwZGF0ZV92aWV3X2Zh
dmljb24oQnJvd3Nlcl9XaW5kb3cgKndpbmRvdywgRXZhc19PYmplY3QgKmljb24pCiB7CiAgICAg
LyogUmVtb3ZlIHByZXZpb3VzIGljb24gZnJvbSBVUkwgYmFyICovCkBAIC0xNTU1LDYgKzE2ODcs
OCBAQCBzdGF0aWMgQnJvd3Nlcl9XaW5kb3cgKndpbmRvd19jcmVhdGUoRXZhc19PYmplY3QgKm9w
ZW5lciwgY29uc3QgY2hhciAqdXJsLCBpbnQgdwogICAgIGV3a1ZpZXdDbGFzcy0+cG9wdXBfbWVu
dV9oaWRlID0gb25fcG9wdXBfbWVudV9oaWRlOwogICAgIGV3a1ZpZXdDbGFzcy0+Y29udGV4dF9t
ZW51X3Nob3cgPSBvbl9jb250ZXh0X21lbnVfc2hvdzsKICAgICBld2tWaWV3Q2xhc3MtPmNvbnRl
eHRfbWVudV9oaWRlID0gb25fY29udGV4dF9tZW51X2hpZGU7CisgICAgZXdrVmlld0NsYXNzLT5p
bnB1dF9waWNrZXJfY29sb3JfcmVxdWVzdCA9IG9uX2NvbG9yX3BpY2tlcl9yZXF1ZXN0OworICAg
IGV3a1ZpZXdDbGFzcy0+aW5wdXRfcGlja2VyX2NvbG9yX2Rpc21pc3MgPSBvbl9jb2xvcl9waWNr
ZXJfZGlzbWlzczsKIAogICAgIEV2YXMgKmV2YXMgPSBldmFzX29iamVjdF9ldmFzX2dldCh3aW5k
b3ctPmVsbV93aW5kb3cpOwogICAgIGlmIChsZWdhY3lfYmVoYXZpb3JfZW5hYmxlZCkgewo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203979</attachid>
            <date>2013-06-06 17:13:15 -0700</date>
            <delta_ts>2013-06-06 18:01:02 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130607091141.patch</filename>
            <type>text/plain</type>
            <size>8944</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxMjk2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZDRiMmRmMGFiZDg0OGI1NWYyMDllOTY4NzIxZjkxYzA5
NzljMWVlYS4uMjQzMWJjM2NjZDk2ODkzZTdlNTU2N2MxMmZjMmE0YzIxYzU2NjQ2MSAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1
IEBACisyMDEzLTA2LTA2ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXSBJbXBsZW1lbnQgY29sb3JwaWNrZXIgZm9yIEhUTUw1IGlucHV0IHR5cGUg
Y29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFdoZW4gdXNlciBjbGlja3MgSFRNTDUgaW5wdXQgdHlwZSBjb2xvciwKKyAg
ICAgICAgY29sb3Igc2VsZWN0b3Igd2luZG93IGlzIGNyZWF0ZWQgb24gYnJvd3NlciBvYmplY3Qg
YnkgdXNpbmcgZWxtX2NvbG9yY2hvb3Nlcl9hZGQoKS4KKyAgICAgICAgSXQgY2FuIGxpc3RlbiBh
IHNpZ25hbCBkaXNtaXNzaW5nIGNvbG9ycGlja2VyIGJ5IGNhbGxpbmcgdGhlIGV3a19jb2xvcl9w
aWNrZXJfY29sb3Jfc2V0KCkuCisgICAgICAgIFRoZSBldmFzX29iamVjdF9jb2xvcl9zZXQoKSBz
ZXRzIGEgY29sb3IgdmFsdWUgcmV0dXJuaW5nIHRvIGJyb3dzZXIuCisKKyAgICAgICAgKiBNaW5p
QnJvd3Nlci9lZmwvbWFpbi5jOgorICAgICAgICAod2luZG93X2ZyZWUpOiBXaGVuIHdlIGRlbGV0
ZSBwYXJlbnQgd2luZG93LCBkZWxldGluZyB0aGUgY29sb3JwaWNrZXIgb2JqZWN0LgorICAgICAg
ICAob25fY29sb3JfY2hhbmdlZCk6IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgdG8gc2hvdyBj
b2xvciBzZWxlY3RlZCBieSB1c2VyLgorICAgICAgICAob25fY29sb3JfaXRlbV9zZWxlY3RlZCk6
IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgd2l0aCBjbGlja2luZyBjb2xvciBib3hlcyBiYXNp
Y2FsbHkgb2ZmZXJlZCBieSBlbGVtZW50IEFQSS4KKyAgICAgICAgKG9uX2NvbG9yX3BpY2tlcl9v
a19jbGlja2VkKTogQ2FsbCBvbl9jb2xvcnBpY2tlcl9kaXNtaXNzKCkgYW5kIHNldCB0aGUgY29s
b3IuCisgICAgICAgIChvbl9jb2xvcl9waWNrZXJfY2FuY2VsX2NsaWNrZWQpOiBHZXQgYSBwcmVl
eGlzdGluZyBjb2xvciBhbmQgY2FsbCBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldCgpLgorICAg
ICAgICAob25fY29sb3JfcGlja2VyX2Rpc21pc3MpOiBEZWxldGUgY29sb3JwaWNrZXIgb2JqZWN0
LgorICAgICAgICAob25fY29sb3JfcGlja2VyX3JlcXVlc3QpOiBDcmVhdGUgY29sb3JwaWNrZXIg
d2luZG93IG9iamVjdC4KKyAgICAgICAgKHdpbmRvd19jcmVhdGUpOgorCiAyMDEzLTA2LTA2ICBT
aW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBhIG1l
bnUgaXRlbSB0byBNaW5pQnJvd3NlciB0byB0b2dnbGUgVHJhbnNwYXJlbnQgd2luZG93cwpkaWZm
IC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4uYyBiL1Rvb2xzL01pbmlCcm93c2Vy
L2VmbC9tYWluLmMKaW5kZXggZDFlYzJlNjljODljOWM3YTM0MDJlYmQ5OWZiODBkMTFlM2FjZDgz
MC4uMzMyNmJlODg3MDU4NDgxYTIwZDY4MWRmMjQ3MjFjZmE3YmI4Y2Y2ZCAxMDA2NDQKLS0tIGEv
VG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4uYworKysgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwv
bWFpbi5jCkBAIC05MSw2ICs5MSwxMiBAQCB0eXBlZGVmIHN0cnVjdCBfVG9vbHRpcF9JbmZvcm1h
dGlvbiB7CiAgICAgRWluYV9Cb29sIHNob3duOwogfSBUb29sdGlwX0luZm9ybWF0aW9uOwogCit0
eXBlZGVmIHN0cnVjdCBfQ29sb3JfU2VsZWN0b3IgeworICAgIEV3a19Db2xvcl9QaWNrZXIgKmV3
a19waWNrZXI7CisgICAgRXZhc19PYmplY3QgKmVsbV9zZWxlY3RvcjsKKyAgICBFdmFzX09iamVj
dCAqZWxtX3NlbGVjdG9yX3dpbmRvdzsKK30gQ29sb3JfU2VsZWN0b3I7CisKIHR5cGVkZWYgc3Ry
dWN0IF9Ccm93c2VyX1dpbmRvdyB7CiAgICAgRXZhc19PYmplY3QgKmVsbV93aW5kb3c7CiAgICAg
RXZhc19PYmplY3QgKmV3a192aWV3OwpAQCAtMTA5LDYgKzExNSw3IEBAIHR5cGVkZWYgc3RydWN0
IF9Ccm93c2VyX1dpbmRvdyB7CiAgICAgfSBzZWFyY2g7CiAgICAgaW50IGN1cnJlbnRfem9vbV9s
ZXZlbDsgCiAgICAgVG9vbHRpcF9JbmZvcm1hdGlvbiB0b29sdGlwOworICAgIENvbG9yX1NlbGVj
dG9yIGNvbG9yX3NlbGVjdG9yOwogICAgIHN0cnVjdCB7CiAgICAgICAgIEV2YXNfT2JqZWN0ICpl
bG1fbWVudTsKICAgICAgICAgRXdrX0NvbnRleHRfTWVudSAqZXdrX21lbnU7CkBAIC0yOTIsNiAr
Mjk5LDkgQEAgc3RhdGljIHZvaWQgd2luZG93X2ZyZWUoQnJvd3Nlcl9XaW5kb3cgKndpbmRvdykK
ICAgICBpZiAod2luZG93LT50b29sdGlwLnNob3dfdGltZXIpCiAgICAgICAgIGVjb3JlX3RpbWVy
X2RlbCh3aW5kb3ctPnRvb2x0aXAuc2hvd190aW1lcik7CiAKKyAgICBpZiAod2luZG93LT5jb2xv
cl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KQorICAgICAgICBldmFzX29iamVjdF9kZWwo
d2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KTsKKwogICAgIGZyZWUo
d2luZG93KTsKIH0KIApAQCAtNjI1LDYgKzYzNSwxMzMgQEAgb25fZG93bmxvYWRfZmFpbGVkKHZv
aWQgKnVzZXJfZGF0YSwgRXZhc19PYmplY3QgKmV3a192aWV3LCB2b2lkICpldmVudF9pbmZvKQog
fQogCiBzdGF0aWMgdm9pZAorb25fY29sb3JfY2hhbmdlZCh2b2lkICpkYXRhLCBFdmFzX09iamVj
dCAqb2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCByLCBnLCBiLCBhOworCisgICAg
ZWxtX2NvbG9yc2VsZWN0b3JfY29sb3JfZ2V0KG9iaiwgJnIsICZnLCAmYiwgJmEpOworICAgIGV2
YXNfb2JqZWN0X2NvbG9yX3NldChkYXRhLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGljIHZvaWQK
K29uX2NvbG9yX2l0ZW1fc2VsZWN0ZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9p
ZCAqZXZlbnRfaW5mbykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKyAgICBFbG1fT2JqZWN0X0l0
ZW0gKmNvbG9yX2l0ZW0gPSAoRWxtX09iamVjdF9JdGVtICopZXZlbnRfaW5mbzsKKworICAgIGVs
bV9jb2xvcnNlbGVjdG9yX3BhbGV0dGVfaXRlbV9jb2xvcl9nZXQoY29sb3JfaXRlbSwgJnIsICZn
LCAmYiwgJmEpOworICAgIGV2YXNfb2JqZWN0X2NvbG9yX3NldChkYXRhLCByLCBnLCBiLCBhKTsK
K30KKworc3RhdGljIHZvaWQKK29uX2NvbG9yX3BpY2tlcl9va19jbGlja2VkKHZvaWQgKmRhdGEs
IEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIs
IGE7CisgICAgQ29sb3JfU2VsZWN0b3IgKmNvbG9yX3NlbGVjdG9yID0gKENvbG9yX1NlbGVjdG9y
ICopZGF0YTsKKworICAgIGVsbV9jb2xvcnNlbGVjdG9yX2NvbG9yX2dldChjb2xvcl9zZWxlY3Rv
ci0+ZWxtX3NlbGVjdG9yLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXdrX2NvbG9yX3BpY2tlcl9j
b2xvcl9zZXQoY29sb3Jfc2VsZWN0b3ItPmV3a19waWNrZXIsIHIsIGcsIGIsIGEpOworfQorCitz
dGF0aWMgdm9pZAorb25fY29sb3JfcGlja2VyX2NhbmNlbF9jbGlja2VkKHZvaWQgKmRhdGEsIEV2
YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIsIGE7
CisKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX2dldChkYXRhLCAmciwgJmcsICZiLCAmYSk7
CisgICAgZXdrX2NvbG9yX3BpY2tlcl9jb2xvcl9zZXQoZGF0YSwgciwgZywgYiwgYSk7Cit9CisK
K3N0YXRpYyBFaW5hX0Jvb2wKK29uX2NvbG9yX3BpY2tlcl9kaXNtaXNzKEV3a19WaWV3X1NtYXJ0
X0RhdGEgKnNkKQoreworICAgIEJyb3dzZXJfV2luZG93ICp3aW5kb3cgPSB3aW5kb3dfZmluZF93
aXRoX2V3a192aWV3KHNkLT5zZWxmKTsKKworICAgIGV2YXNfb2JqZWN0X2RlbCh3aW5kb3ctPmNv
bG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIHdpbmRvdy0+Y29sb3Jfc2Vs
ZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyA9IE5VTEw7CisKKyAgICByZXR1cm4gRUlOQV9UUlVF
OworfQorCitzdGF0aWMgRWluYV9Cb29sCitvbl9jb2xvcl9waWNrZXJfcmVxdWVzdChFd2tfVmll
d19TbWFydF9EYXRhICpzZCwgRXdrX0NvbG9yX1BpY2tlciAqY29sb3JfcGlja2VyKQoreworICAg
IGludCByLCBnLCBiLCBhOworICAgIEV2YXNfT2JqZWN0ICpiYWNrZ3JvdW5kLCAqcmVjdCwgKmJv
eCwgKmJ1dHRvbl9ib3gsICpyZWN0X2ZyYW1lLCAqY3NfZnJhbWUsICpva19idXR0b24sICpjYW5j
ZWxfYnV0dG9uOworCisgICAgQnJvd3Nlcl9XaW5kb3cgKndpbmRvdyA9IHdpbmRvd19maW5kX3dp
dGhfZXdrX3ZpZXcoc2QtPnNlbGYpOworICAgIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3Nl
bGVjdG9yX3dpbmRvdyA9IGVsbV93aW5fYWRkKHdpbmRvdy0+ZWxtX3dpbmRvdywgImNvbG9yIHNl
bGVjdG9yIiwgRUxNX1dJTl9CQVNJQyk7CisgICAgd2luZG93LT5jb2xvcl9zZWxlY3Rvci5ld2tf
cGlja2VyID0gY29sb3JfcGlja2VyOworCisgICAgZWxtX3dpbl90aXRsZV9zZXQod2luZG93LT5j
b2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93LCAiQ29sb3Igc2VsZWN0b3IiKTsKKwor
ICAgIC8qIFNob3cgY29sb3IgdmlldyAqLworICAgIGJhY2tncm91bmQgPSBlbG1fYmdfYWRkKHdp
bmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZXZhc19vYmpl
Y3Rfc2l6ZV9oaW50X3dlaWdodF9zZXQoYmFja2dyb3VuZCwgRVZBU19ISU5UX0VYUEFORCwgRVZB
U19ISU5UX0VYUEFORCk7CisgICAgZWxtX3dpbl9yZXNpemVfb2JqZWN0X2FkZCh3aW5kb3ctPmNv
bG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3csIGJhY2tncm91bmQpOworICAgIGV2YXNf
b2JqZWN0X3Nob3coYmFja2dyb3VuZCk7CisKKyAgICBib3ggPSBlbG1fYm94X2FkZCh3aW5kb3ct
PmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGV2YXNfb2JqZWN0X3Np
emVfaGludF93ZWlnaHRfc2V0KGJveCwgRVZBU19ISU5UX0VYUEFORCwgRVZBU19ISU5UX0VYUEFO
RCk7CisgICAgZWxtX3dpbl9yZXNpemVfb2JqZWN0X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9y
LmVsbV9zZWxlY3Rvcl93aW5kb3csIGJveCk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhib3gpOwor
CisgICAgcmVjdF9mcmFtZSA9IGVsbV9mcmFtZV9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5l
bG1fc2VsZWN0b3Jfd2luZG93KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfd2VpZ2h0X3Nl
dChyZWN0X2ZyYW1lLCBFVkFTX0hJTlRfRVhQQU5ELCAwLjMpOworICAgIGV2YXNfb2JqZWN0X3Np
emVfaGludF9hbGlnbl9zZXQocmVjdF9mcmFtZSwgRVZBU19ISU5UX0ZJTEwsIEVWQVNfSElOVF9G
SUxMKTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KHJlY3RfZnJhbWUsICJDb2xvciBWaWV3Iik7
CisgICAgZWxtX2JveF9wYWNrX2VuZChib3gsIHJlY3RfZnJhbWUpOworICAgIGV2YXNfb2JqZWN0
X3Nob3cocmVjdF9mcmFtZSk7CisKKyAgICByZWN0ID0gZXZhc19vYmplY3RfcmVjdGFuZ2xlX2Fk
ZChldmFzX29iamVjdF9ldmFzX2dldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rv
cl93aW5kb3cpKTsKKyAgICBlbG1fb2JqZWN0X2NvbnRlbnRfc2V0KHJlY3RfZnJhbWUsIHJlY3Qp
OworICAgIGV3a19jb2xvcl9waWNrZXJfY29sb3JfZ2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3Iu
ZXdrX3BpY2tlciwgJnIsICZnLCAmYiwgJmEpOworICAgIGV2YXNfb2JqZWN0X2NvbG9yX3NldChy
ZWN0LCByLCBnLCBiLCBhKTsKKyAgICBldmFzX29iamVjdF9zaG93KHJlY3QpOworCisgICAgLyog
U2hvdyBjb2xvciBzZWxlY3RvciAqLworICAgIGNzX2ZyYW1lID0gZWxtX2ZyYW1lX2FkZCh3aW5k
b3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGV2YXNfb2JqZWN0
X3NpemVfaGludF93ZWlnaHRfc2V0KGNzX2ZyYW1lLCBFVkFTX0hJTlRfRVhQQU5ELCAwLjcpOwor
ICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF9hbGlnbl9zZXQoY3NfZnJhbWUsIEVWQVNfSElOVF9G
SUxMLCBFVkFTX0hJTlRfRklMTCk7CisgICAgZWxtX29iamVjdF90ZXh0X3NldChjc19mcmFtZSwg
IkNvbG9yIFNlbGVjdG9yIik7CisgICAgZWxtX2JveF9wYWNrX2VuZChib3gsIGNzX2ZyYW1lKTsK
KyAgICBldmFzX29iamVjdF9zaG93KGNzX2ZyYW1lKTsKKworICAgIHdpbmRvdy0+Y29sb3Jfc2Vs
ZWN0b3IuZWxtX3NlbGVjdG9yID0gZWxtX2NvbG9yc2VsZWN0b3JfYWRkKHdpbmRvdy0+Y29sb3Jf
c2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZWxtX29iamVjdF9jb250ZW50X3Nl
dChjc19mcmFtZSwgd2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IpOworICAgIGV2
YXNfb2JqZWN0X3Nob3cod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IpOworCisg
ICAgLyogT0ssIENhbmNlbCBCdXR0b25zICovCisgICAgYnV0dG9uX2JveCA9IGVsbV9ib3hfYWRk
KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZWxtX2Jv
eF9ob3Jpem9udGFsX3NldChidXR0b25fYm94LCBFSU5BX1RSVUUpOworICAgIGV2YXNfb2JqZWN0
X3NpemVfaGludF9taW5fc2V0KGJ1dHRvbl9ib3gsIDIwMCwgNTApOworICAgIGVsbV9ib3hfcGFj
a19lbmQoYm94LCBidXR0b25fYm94KTsKKyAgICBldmFzX29iamVjdF9zaG93KGJ1dHRvbl9ib3gp
OworCisgICAgb2tfYnV0dG9uID0gZWxtX2J1dHRvbl9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rv
ci5lbG1fc2VsZWN0b3Jfd2luZG93KTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KG9rX2J1dHRv
biwgIk9LIik7CisgICAgZWxtX2JveF9wYWNrX2VuZChidXR0b25fYm94LCBva19idXR0b24pOwor
ICAgIGV2YXNfb2JqZWN0X3Nob3cob2tfYnV0dG9uKTsKKworICAgIGNhbmNlbF9idXR0b24gPSBl
bG1fYnV0dG9uX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cp
OworICAgIGVsbV9vYmplY3RfdGV4dF9zZXQoY2FuY2VsX2J1dHRvbiwgIkNhbmNlbCIpOworICAg
IGVsbV9ib3hfcGFja19lbmQoYnV0dG9uX2JveCwgY2FuY2VsX2J1dHRvbik7CisgICAgZXZhc19v
YmplY3Rfc2hvdyhjYW5jZWxfYnV0dG9uKTsKKworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxi
YWNrX2FkZChva19idXR0b24sICJjbGlja2VkIiwgb25fY29sb3JfcGlja2VyX29rX2NsaWNrZWQs
ICYod2luZG93LT5jb2xvcl9zZWxlY3RvcikpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxi
YWNrX2FkZChjYW5jZWxfYnV0dG9uLCAiY2xpY2tlZCIsIG9uX2NvbG9yX3BpY2tlcl9jYW5jZWxf
Y2xpY2tlZCwgd2luZG93LT5jb2xvcl9zZWxlY3Rvci5ld2tfcGlja2VyKTsKKyAgICBldmFzX29i
amVjdF9zbWFydF9jYWxsYmFja19hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0
b3Jfd2luZG93LCAiZGVsZXRlLHJlcXVlc3QiLCBvbl9jb2xvcl9waWNrZXJfY2FuY2VsX2NsaWNr
ZWQsIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZXdrX3BpY2tlcik7CisgICAgZXZhc19vYmplY3Rf
c21hcnRfY2FsbGJhY2tfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yLCAi
Y2hhbmdlZCIsIG9uX2NvbG9yX2NoYW5nZWQsIHJlY3QpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0
X2NhbGxiYWNrX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3RvciwgImNvbG9y
LGl0ZW0sc2VsZWN0ZWQiLCBvbl9jb2xvcl9pdGVtX3NlbGVjdGVkLCByZWN0KTsKKworICAgIGVs
bV93aW5fY2VudGVyKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdywg
RUlOQV9UUlVFLCBFSU5BX1RSVUUpOworICAgIGV2YXNfb2JqZWN0X3Jlc2l6ZSh3aW5kb3ctPmNv
bG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3csIDM1MCwgNTAwKTsKKyAgICBldmFzX29i
amVjdF9zaG93KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisK
KyAgICByZXR1cm4gRUlOQV9UUlVFOworfQorCitzdGF0aWMgdm9pZAogdXBkYXRlX3ZpZXdfZmF2
aWNvbihCcm93c2VyX1dpbmRvdyAqd2luZG93LCBFdmFzX09iamVjdCAqaWNvbikKIHsKICAgICAv
KiBSZW1vdmUgcHJldmlvdXMgaWNvbiBmcm9tIFVSTCBiYXIgKi8KQEAgLTE1NjEsNiArMTY5OCw4
IEBAIHN0YXRpYyBCcm93c2VyX1dpbmRvdyAqd2luZG93X2NyZWF0ZShFdmFzX09iamVjdCAqb3Bl
bmVyLCBjb25zdCBjaGFyICp1cmwsIGludCB3CiAgICAgZXdrVmlld0NsYXNzLT5wb3B1cF9tZW51
X2hpZGUgPSBvbl9wb3B1cF9tZW51X2hpZGU7CiAgICAgZXdrVmlld0NsYXNzLT5jb250ZXh0X21l
bnVfc2hvdyA9IG9uX2NvbnRleHRfbWVudV9zaG93OwogICAgIGV3a1ZpZXdDbGFzcy0+Y29udGV4
dF9tZW51X2hpZGUgPSBvbl9jb250ZXh0X21lbnVfaGlkZTsKKyAgICBld2tWaWV3Q2xhc3MtPmlu
cHV0X3BpY2tlcl9jb2xvcl9yZXF1ZXN0ID0gb25fY29sb3JfcGlja2VyX3JlcXVlc3Q7CisgICAg
ZXdrVmlld0NsYXNzLT5pbnB1dF9waWNrZXJfY29sb3JfZGlzbWlzcyA9IG9uX2NvbG9yX3BpY2tl
cl9kaXNtaXNzOwogCiAgICAgRXZhcyAqZXZhcyA9IGV2YXNfb2JqZWN0X2V2YXNfZ2V0KHdpbmRv
dy0+ZWxtX3dpbmRvdyk7CiAgICAgaWYgKGxlZ2FjeV9iZWhhdmlvcl9lbmFibGVkKSB7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203985</attachid>
            <date>2013-06-06 18:01:14 -0700</date>
            <delta_ts>2013-06-07 00:51:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-115890-20130607095940.patch</filename>
            <type>text/plain</type>
            <size>8944</size>
            <attacher name="Jungsik Tae">davidtlay88</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxMjk2CmRpZmYgLS1naXQgYS9Ub29scy9DaGFuZ2VMb2cg
Yi9Ub29scy9DaGFuZ2VMb2cKaW5kZXggZDRiMmRmMGFiZDg0OGI1NWYyMDllOTY4NzIxZjkxYzA5
NzljMWVlYS4uZTNiYTIxNjRhMWZmYjQ5NjBkZDQ5MDE2YmVhNjVjMzBhMDA5MjZjNiAxMDA2NDQK
LS0tIGEvVG9vbHMvQ2hhbmdlTG9nCisrKyBiL1Rvb2xzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1
IEBACisyMDEzLTA2LTA2ICBKdW5nc2lrIFRhZSAgPGRhdmlkdGxheTg4QGdtYWlsLmNvbT4KKwor
ICAgICAgICBbRUZMXSBJbXBsZW1lbnQgY29sb3JwaWNrZXIgZm9yIEhUTUw1IGlucHV0IHR5cGUg
Y29sb3Igb24gTWluaWJyb3dzZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTExNTg5MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgIFdoZW4gdXNlciBjbGlja3MgSFRNTDUgaW5wdXQgdHlwZSBjb2xvciwKKyAg
ICAgICAgY29sb3Igc2VsZWN0b3Igd2luZG93IGlzIGNyZWF0ZWQgb24gYnJvd3NlciBvYmplY3Qg
YnkgdXNpbmcgZWxtX2NvbG9yY2hvb3Nlcl9hZGQoKS4KKyAgICAgICAgSXQgY2FuIGxpc3RlbiBh
IHNpZ25hbCBkaXNtaXNzaW5nIGNvbG9ycGlja2VyIGJ5IGNhbGxpbmcgdGhlIGV3a19jb2xvcl9w
aWNrZXJfY29sb3Jfc2V0KCkuCisgICAgICAgIFRoZSBldmFzX29iamVjdF9jb2xvcl9zZXQoKSBz
ZXRzIGEgY29sb3IgdmFsdWUgcmV0dXJuaW5nIHRvIGJyb3dzZXIuCisKKyAgICAgICAgKiBNaW5p
QnJvd3Nlci9lZmwvbWFpbi5jOgorICAgICAgICAod2luZG93X2ZyZWUpOiBXaGVuIHdlIGRlbGV0
ZSBwYXJlbnQgd2luZG93LCBkZWxldGluZyB0aGUgY29sb3JwaWNrZXIgb2JqZWN0LgorICAgICAg
ICAob25fY29sb3JfY2hhbmdlZCk6IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgdG8gc2hvdyBj
b2xvciBzZWxlY3RlZCBieSB1c2VyLgorICAgICAgICAob25fY29sb3JfaXRlbV9zZWxlY3RlZCk6
IENoYW5nZSBjb2xvciBvZiByZWN0YW5nbGUgd2hlbiBjbGlja2VkIGNvbG9yIHBhbGV0dGVzIG9m
ZmVyZWQgYnkgZWxtX2NvbG9yX2Nob29zZXIoKS4KKyAgICAgICAgKG9uX2NvbG9yX3BpY2tlcl9v
a19jbGlja2VkKTogQ2FsbCBvbl9jb2xvcnBpY2tlcl9kaXNtaXNzKCkgYW5kIHNldCB0aGUgY29s
b3IuCisgICAgICAgIChvbl9jb2xvcl9waWNrZXJfY2FuY2VsX2NsaWNrZWQpOiBHZXQgYSBwcmVl
eGlzdGluZyBjb2xvciBhbmQgY2FsbCBld2tfY29sb3JfcGlja2VyX2NvbG9yX3NldCgpLgorICAg
ICAgICAob25fY29sb3JfcGlja2VyX2Rpc21pc3MpOiBEZWxldGUgY29sb3JwaWNrZXIgb2JqZWN0
LgorICAgICAgICAob25fY29sb3JfcGlja2VyX3JlcXVlc3QpOiBDcmVhdGUgY29sb3JwaWNrZXIg
d2luZG93IG9iamVjdC4KKyAgICAgICAgKHdpbmRvd19jcmVhdGUpOgorCiAyMDEzLTA2LTA2ICBT
aW1vbiBGcmFzZXIgIDxzaW1vbi5mcmFzZXJAYXBwbGUuY29tPgogCiAgICAgICAgIEFkZCBhIG1l
bnUgaXRlbSB0byBNaW5pQnJvd3NlciB0byB0b2dnbGUgVHJhbnNwYXJlbnQgd2luZG93cwpkaWZm
IC0tZ2l0IGEvVG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4uYyBiL1Rvb2xzL01pbmlCcm93c2Vy
L2VmbC9tYWluLmMKaW5kZXggZDFlYzJlNjljODljOWM3YTM0MDJlYmQ5OWZiODBkMTFlM2FjZDgz
MC4uMzMyNmJlODg3MDU4NDgxYTIwZDY4MWRmMjQ3MjFjZmE3YmI4Y2Y2ZCAxMDA2NDQKLS0tIGEv
VG9vbHMvTWluaUJyb3dzZXIvZWZsL21haW4uYworKysgYi9Ub29scy9NaW5pQnJvd3Nlci9lZmwv
bWFpbi5jCkBAIC05MSw2ICs5MSwxMiBAQCB0eXBlZGVmIHN0cnVjdCBfVG9vbHRpcF9JbmZvcm1h
dGlvbiB7CiAgICAgRWluYV9Cb29sIHNob3duOwogfSBUb29sdGlwX0luZm9ybWF0aW9uOwogCit0
eXBlZGVmIHN0cnVjdCBfQ29sb3JfU2VsZWN0b3IgeworICAgIEV3a19Db2xvcl9QaWNrZXIgKmV3
a19waWNrZXI7CisgICAgRXZhc19PYmplY3QgKmVsbV9zZWxlY3RvcjsKKyAgICBFdmFzX09iamVj
dCAqZWxtX3NlbGVjdG9yX3dpbmRvdzsKK30gQ29sb3JfU2VsZWN0b3I7CisKIHR5cGVkZWYgc3Ry
dWN0IF9Ccm93c2VyX1dpbmRvdyB7CiAgICAgRXZhc19PYmplY3QgKmVsbV93aW5kb3c7CiAgICAg
RXZhc19PYmplY3QgKmV3a192aWV3OwpAQCAtMTA5LDYgKzExNSw3IEBAIHR5cGVkZWYgc3RydWN0
IF9Ccm93c2VyX1dpbmRvdyB7CiAgICAgfSBzZWFyY2g7CiAgICAgaW50IGN1cnJlbnRfem9vbV9s
ZXZlbDsgCiAgICAgVG9vbHRpcF9JbmZvcm1hdGlvbiB0b29sdGlwOworICAgIENvbG9yX1NlbGVj
dG9yIGNvbG9yX3NlbGVjdG9yOwogICAgIHN0cnVjdCB7CiAgICAgICAgIEV2YXNfT2JqZWN0ICpl
bG1fbWVudTsKICAgICAgICAgRXdrX0NvbnRleHRfTWVudSAqZXdrX21lbnU7CkBAIC0yOTIsNiAr
Mjk5LDkgQEAgc3RhdGljIHZvaWQgd2luZG93X2ZyZWUoQnJvd3Nlcl9XaW5kb3cgKndpbmRvdykK
ICAgICBpZiAod2luZG93LT50b29sdGlwLnNob3dfdGltZXIpCiAgICAgICAgIGVjb3JlX3RpbWVy
X2RlbCh3aW5kb3ctPnRvb2x0aXAuc2hvd190aW1lcik7CiAKKyAgICBpZiAod2luZG93LT5jb2xv
cl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KQorICAgICAgICBldmFzX29iamVjdF9kZWwo
d2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93KTsKKwogICAgIGZyZWUo
d2luZG93KTsKIH0KIApAQCAtNjI1LDYgKzYzNSwxMzMgQEAgb25fZG93bmxvYWRfZmFpbGVkKHZv
aWQgKnVzZXJfZGF0YSwgRXZhc19PYmplY3QgKmV3a192aWV3LCB2b2lkICpldmVudF9pbmZvKQog
fQogCiBzdGF0aWMgdm9pZAorb25fY29sb3JfY2hhbmdlZCh2b2lkICpkYXRhLCBFdmFzX09iamVj
dCAqb2JqLCB2b2lkICpldmVudF9pbmZvKQoreworICAgIGludCByLCBnLCBiLCBhOworCisgICAg
ZWxtX2NvbG9yc2VsZWN0b3JfY29sb3JfZ2V0KG9iaiwgJnIsICZnLCAmYiwgJmEpOworICAgIGV2
YXNfb2JqZWN0X2NvbG9yX3NldChkYXRhLCByLCBnLCBiLCBhKTsKK30KKworc3RhdGljIHZvaWQK
K29uX2NvbG9yX2l0ZW1fc2VsZWN0ZWQodm9pZCAqZGF0YSwgRXZhc19PYmplY3QgKm9iaiwgdm9p
ZCAqZXZlbnRfaW5mbykKK3sKKyAgICBpbnQgciwgZywgYiwgYTsKKyAgICBFbG1fT2JqZWN0X0l0
ZW0gKmNvbG9yX2l0ZW0gPSAoRWxtX09iamVjdF9JdGVtICopZXZlbnRfaW5mbzsKKworICAgIGVs
bV9jb2xvcnNlbGVjdG9yX3BhbGV0dGVfaXRlbV9jb2xvcl9nZXQoY29sb3JfaXRlbSwgJnIsICZn
LCAmYiwgJmEpOworICAgIGV2YXNfb2JqZWN0X2NvbG9yX3NldChkYXRhLCByLCBnLCBiLCBhKTsK
K30KKworc3RhdGljIHZvaWQKK29uX2NvbG9yX3BpY2tlcl9va19jbGlja2VkKHZvaWQgKmRhdGEs
IEV2YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIs
IGE7CisgICAgQ29sb3JfU2VsZWN0b3IgKmNvbG9yX3NlbGVjdG9yID0gKENvbG9yX1NlbGVjdG9y
ICopZGF0YTsKKworICAgIGVsbV9jb2xvcnNlbGVjdG9yX2NvbG9yX2dldChjb2xvcl9zZWxlY3Rv
ci0+ZWxtX3NlbGVjdG9yLCAmciwgJmcsICZiLCAmYSk7CisgICAgZXdrX2NvbG9yX3BpY2tlcl9j
b2xvcl9zZXQoY29sb3Jfc2VsZWN0b3ItPmV3a19waWNrZXIsIHIsIGcsIGIsIGEpOworfQorCitz
dGF0aWMgdm9pZAorb25fY29sb3JfcGlja2VyX2NhbmNlbF9jbGlja2VkKHZvaWQgKmRhdGEsIEV2
YXNfT2JqZWN0ICpvYmosIHZvaWQgKmV2ZW50X2luZm8pCit7CisgICAgaW50IHIsIGcsIGIsIGE7
CisKKyAgICBld2tfY29sb3JfcGlja2VyX2NvbG9yX2dldChkYXRhLCAmciwgJmcsICZiLCAmYSk7
CisgICAgZXdrX2NvbG9yX3BpY2tlcl9jb2xvcl9zZXQoZGF0YSwgciwgZywgYiwgYSk7Cit9CisK
K3N0YXRpYyBFaW5hX0Jvb2wKK29uX2NvbG9yX3BpY2tlcl9kaXNtaXNzKEV3a19WaWV3X1NtYXJ0
X0RhdGEgKnNkKQoreworICAgIEJyb3dzZXJfV2luZG93ICp3aW5kb3cgPSB3aW5kb3dfZmluZF93
aXRoX2V3a192aWV3KHNkLT5zZWxmKTsKKworICAgIGV2YXNfb2JqZWN0X2RlbCh3aW5kb3ctPmNv
bG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIHdpbmRvdy0+Y29sb3Jfc2Vs
ZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyA9IE5VTEw7CisKKyAgICByZXR1cm4gRUlOQV9UUlVF
OworfQorCitzdGF0aWMgRWluYV9Cb29sCitvbl9jb2xvcl9waWNrZXJfcmVxdWVzdChFd2tfVmll
d19TbWFydF9EYXRhICpzZCwgRXdrX0NvbG9yX1BpY2tlciAqY29sb3JfcGlja2VyKQoreworICAg
IGludCByLCBnLCBiLCBhOworICAgIEV2YXNfT2JqZWN0ICpiYWNrZ3JvdW5kLCAqcmVjdCwgKmJv
eCwgKmJ1dHRvbl9ib3gsICpyZWN0X2ZyYW1lLCAqY3NfZnJhbWUsICpva19idXR0b24sICpjYW5j
ZWxfYnV0dG9uOworCisgICAgQnJvd3Nlcl9XaW5kb3cgKndpbmRvdyA9IHdpbmRvd19maW5kX3dp
dGhfZXdrX3ZpZXcoc2QtPnNlbGYpOworICAgIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3Nl
bGVjdG9yX3dpbmRvdyA9IGVsbV93aW5fYWRkKHdpbmRvdy0+ZWxtX3dpbmRvdywgImNvbG9yIHNl
bGVjdG9yIiwgRUxNX1dJTl9CQVNJQyk7CisgICAgd2luZG93LT5jb2xvcl9zZWxlY3Rvci5ld2tf
cGlja2VyID0gY29sb3JfcGlja2VyOworCisgICAgZWxtX3dpbl90aXRsZV9zZXQod2luZG93LT5j
b2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3Jfd2luZG93LCAiQ29sb3Igc2VsZWN0b3IiKTsKKwor
ICAgIC8qIFNob3cgY29sb3IgdmlldyAqLworICAgIGJhY2tncm91bmQgPSBlbG1fYmdfYWRkKHdp
bmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZXZhc19vYmpl
Y3Rfc2l6ZV9oaW50X3dlaWdodF9zZXQoYmFja2dyb3VuZCwgRVZBU19ISU5UX0VYUEFORCwgRVZB
U19ISU5UX0VYUEFORCk7CisgICAgZWxtX3dpbl9yZXNpemVfb2JqZWN0X2FkZCh3aW5kb3ctPmNv
bG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3csIGJhY2tncm91bmQpOworICAgIGV2YXNf
b2JqZWN0X3Nob3coYmFja2dyb3VuZCk7CisKKyAgICBib3ggPSBlbG1fYm94X2FkZCh3aW5kb3ct
PmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGV2YXNfb2JqZWN0X3Np
emVfaGludF93ZWlnaHRfc2V0KGJveCwgRVZBU19ISU5UX0VYUEFORCwgRVZBU19ISU5UX0VYUEFO
RCk7CisgICAgZWxtX3dpbl9yZXNpemVfb2JqZWN0X2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9y
LmVsbV9zZWxlY3Rvcl93aW5kb3csIGJveCk7CisgICAgZXZhc19vYmplY3Rfc2hvdyhib3gpOwor
CisgICAgcmVjdF9mcmFtZSA9IGVsbV9mcmFtZV9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5l
bG1fc2VsZWN0b3Jfd2luZG93KTsKKyAgICBldmFzX29iamVjdF9zaXplX2hpbnRfd2VpZ2h0X3Nl
dChyZWN0X2ZyYW1lLCBFVkFTX0hJTlRfRVhQQU5ELCAwLjMpOworICAgIGV2YXNfb2JqZWN0X3Np
emVfaGludF9hbGlnbl9zZXQocmVjdF9mcmFtZSwgRVZBU19ISU5UX0ZJTEwsIEVWQVNfSElOVF9G
SUxMKTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KHJlY3RfZnJhbWUsICJDb2xvciBWaWV3Iik7
CisgICAgZWxtX2JveF9wYWNrX2VuZChib3gsIHJlY3RfZnJhbWUpOworICAgIGV2YXNfb2JqZWN0
X3Nob3cocmVjdF9mcmFtZSk7CisKKyAgICByZWN0ID0gZXZhc19vYmplY3RfcmVjdGFuZ2xlX2Fk
ZChldmFzX29iamVjdF9ldmFzX2dldCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rv
cl93aW5kb3cpKTsKKyAgICBlbG1fb2JqZWN0X2NvbnRlbnRfc2V0KHJlY3RfZnJhbWUsIHJlY3Qp
OworICAgIGV3a19jb2xvcl9waWNrZXJfY29sb3JfZ2V0KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3Iu
ZXdrX3BpY2tlciwgJnIsICZnLCAmYiwgJmEpOworICAgIGV2YXNfb2JqZWN0X2NvbG9yX3NldChy
ZWN0LCByLCBnLCBiLCBhKTsKKyAgICBldmFzX29iamVjdF9zaG93KHJlY3QpOworCisgICAgLyog
U2hvdyBjb2xvciBzZWxlY3RvciAqLworICAgIGNzX2ZyYW1lID0gZWxtX2ZyYW1lX2FkZCh3aW5k
b3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cpOworICAgIGV2YXNfb2JqZWN0
X3NpemVfaGludF93ZWlnaHRfc2V0KGNzX2ZyYW1lLCBFVkFTX0hJTlRfRVhQQU5ELCAwLjcpOwor
ICAgIGV2YXNfb2JqZWN0X3NpemVfaGludF9hbGlnbl9zZXQoY3NfZnJhbWUsIEVWQVNfSElOVF9G
SUxMLCBFVkFTX0hJTlRfRklMTCk7CisgICAgZWxtX29iamVjdF90ZXh0X3NldChjc19mcmFtZSwg
IkNvbG9yIFNlbGVjdG9yIik7CisgICAgZWxtX2JveF9wYWNrX2VuZChib3gsIGNzX2ZyYW1lKTsK
KyAgICBldmFzX29iamVjdF9zaG93KGNzX2ZyYW1lKTsKKworICAgIHdpbmRvdy0+Y29sb3Jfc2Vs
ZWN0b3IuZWxtX3NlbGVjdG9yID0gZWxtX2NvbG9yc2VsZWN0b3JfYWRkKHdpbmRvdy0+Y29sb3Jf
c2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZWxtX29iamVjdF9jb250ZW50X3Nl
dChjc19mcmFtZSwgd2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IpOworICAgIGV2
YXNfb2JqZWN0X3Nob3cod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0b3IpOworCisg
ICAgLyogT0ssIENhbmNlbCBCdXR0b25zICovCisgICAgYnV0dG9uX2JveCA9IGVsbV9ib3hfYWRk
KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisgICAgZWxtX2Jv
eF9ob3Jpem9udGFsX3NldChidXR0b25fYm94LCBFSU5BX1RSVUUpOworICAgIGV2YXNfb2JqZWN0
X3NpemVfaGludF9taW5fc2V0KGJ1dHRvbl9ib3gsIDIwMCwgNTApOworICAgIGVsbV9ib3hfcGFj
a19lbmQoYm94LCBidXR0b25fYm94KTsKKyAgICBldmFzX29iamVjdF9zaG93KGJ1dHRvbl9ib3gp
OworCisgICAgb2tfYnV0dG9uID0gZWxtX2J1dHRvbl9hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rv
ci5lbG1fc2VsZWN0b3Jfd2luZG93KTsKKyAgICBlbG1fb2JqZWN0X3RleHRfc2V0KG9rX2J1dHRv
biwgIk9LIik7CisgICAgZWxtX2JveF9wYWNrX2VuZChidXR0b25fYm94LCBva19idXR0b24pOwor
ICAgIGV2YXNfb2JqZWN0X3Nob3cob2tfYnV0dG9uKTsKKworICAgIGNhbmNlbF9idXR0b24gPSBl
bG1fYnV0dG9uX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3cp
OworICAgIGVsbV9vYmplY3RfdGV4dF9zZXQoY2FuY2VsX2J1dHRvbiwgIkNhbmNlbCIpOworICAg
IGVsbV9ib3hfcGFja19lbmQoYnV0dG9uX2JveCwgY2FuY2VsX2J1dHRvbik7CisgICAgZXZhc19v
YmplY3Rfc2hvdyhjYW5jZWxfYnV0dG9uKTsKKworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxi
YWNrX2FkZChva19idXR0b24sICJjbGlja2VkIiwgb25fY29sb3JfcGlja2VyX29rX2NsaWNrZWQs
ICYod2luZG93LT5jb2xvcl9zZWxlY3RvcikpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0X2NhbGxi
YWNrX2FkZChjYW5jZWxfYnV0dG9uLCAiY2xpY2tlZCIsIG9uX2NvbG9yX3BpY2tlcl9jYW5jZWxf
Y2xpY2tlZCwgd2luZG93LT5jb2xvcl9zZWxlY3Rvci5ld2tfcGlja2VyKTsKKyAgICBldmFzX29i
amVjdF9zbWFydF9jYWxsYmFja19hZGQod2luZG93LT5jb2xvcl9zZWxlY3Rvci5lbG1fc2VsZWN0
b3Jfd2luZG93LCAiZGVsZXRlLHJlcXVlc3QiLCBvbl9jb2xvcl9waWNrZXJfY2FuY2VsX2NsaWNr
ZWQsIHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZXdrX3BpY2tlcik7CisgICAgZXZhc19vYmplY3Rf
c21hcnRfY2FsbGJhY2tfYWRkKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yLCAi
Y2hhbmdlZCIsIG9uX2NvbG9yX2NoYW5nZWQsIHJlY3QpOworICAgIGV2YXNfb2JqZWN0X3NtYXJ0
X2NhbGxiYWNrX2FkZCh3aW5kb3ctPmNvbG9yX3NlbGVjdG9yLmVsbV9zZWxlY3RvciwgImNvbG9y
LGl0ZW0sc2VsZWN0ZWQiLCBvbl9jb2xvcl9pdGVtX3NlbGVjdGVkLCByZWN0KTsKKworICAgIGVs
bV93aW5fY2VudGVyKHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdywg
RUlOQV9UUlVFLCBFSU5BX1RSVUUpOworICAgIGV2YXNfb2JqZWN0X3Jlc2l6ZSh3aW5kb3ctPmNv
bG9yX3NlbGVjdG9yLmVsbV9zZWxlY3Rvcl93aW5kb3csIDM1MCwgNTAwKTsKKyAgICBldmFzX29i
amVjdF9zaG93KHdpbmRvdy0+Y29sb3Jfc2VsZWN0b3IuZWxtX3NlbGVjdG9yX3dpbmRvdyk7CisK
KyAgICByZXR1cm4gRUlOQV9UUlVFOworfQorCitzdGF0aWMgdm9pZAogdXBkYXRlX3ZpZXdfZmF2
aWNvbihCcm93c2VyX1dpbmRvdyAqd2luZG93LCBFdmFzX09iamVjdCAqaWNvbikKIHsKICAgICAv
KiBSZW1vdmUgcHJldmlvdXMgaWNvbiBmcm9tIFVSTCBiYXIgKi8KQEAgLTE1NjEsNiArMTY5OCw4
IEBAIHN0YXRpYyBCcm93c2VyX1dpbmRvdyAqd2luZG93X2NyZWF0ZShFdmFzX09iamVjdCAqb3Bl
bmVyLCBjb25zdCBjaGFyICp1cmwsIGludCB3CiAgICAgZXdrVmlld0NsYXNzLT5wb3B1cF9tZW51
X2hpZGUgPSBvbl9wb3B1cF9tZW51X2hpZGU7CiAgICAgZXdrVmlld0NsYXNzLT5jb250ZXh0X21l
bnVfc2hvdyA9IG9uX2NvbnRleHRfbWVudV9zaG93OwogICAgIGV3a1ZpZXdDbGFzcy0+Y29udGV4
dF9tZW51X2hpZGUgPSBvbl9jb250ZXh0X21lbnVfaGlkZTsKKyAgICBld2tWaWV3Q2xhc3MtPmlu
cHV0X3BpY2tlcl9jb2xvcl9yZXF1ZXN0ID0gb25fY29sb3JfcGlja2VyX3JlcXVlc3Q7CisgICAg
ZXdrVmlld0NsYXNzLT5pbnB1dF9waWNrZXJfY29sb3JfZGlzbWlzcyA9IG9uX2NvbG9yX3BpY2tl
cl9kaXNtaXNzOwogCiAgICAgRXZhcyAqZXZhcyA9IGV2YXNfb2JqZWN0X2V2YXNfZ2V0KHdpbmRv
dy0+ZWxtX3dpbmRvdyk7CiAgICAgaWYgKGxlZ2FjeV9iZWhhdmlvcl9lbmFibGVkKSB7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>