<?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>77319</bug_id>
          
          <creation_ts>2012-01-29 23:50:04 -0800</creation_ts>
          <short_desc>[EFL] Set content hint information for ewk_view_single.</short_desc>
          <delta_ts>2012-01-31 19:38:48 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit EFL</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="KwangHyuk">hyuki.kim</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>gyuyoung.kim</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>rakuco</cc>
    
    <cc>ryuan.choi</cc>
    
    <cc>t.morawski</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>544901</commentid>
    <comment_count>0</comment_count>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-29 23:50:04 -0800</bug_when>
    <thetext>The content hint information corresponding to opengl_x11 engine is set for the image object which ewk_view_single owns when evas is based on opengl_x11 engine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544902</commentid>
    <comment_count>1</comment_count>
      <attachid>124499</attachid>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-29 23:54:24 -0800</bug_when>
    <thetext>Created attachment 124499
Patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544905</commentid>
    <comment_count>2</comment_count>
      <attachid>124499</attachid>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-01-29 23:58:22 -0800</bug_when>
    <thetext>Comment on attachment 124499
Patch.

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

Patch itself looks good to me.

&gt; Source/WebKit/efl/ewk/ewk_view_single.cpp:64
&gt; +    const std::string engine(ecore_evas_engine_name_get(ecoreEvas));
&gt; +    if (!engine.compare(&quot;opengl_x11&quot;))

How do you think about using WebCore::String ?Why do</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544907</commentid>
    <comment_count>3</comment_count>
      <attachid>124499</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-01-30 00:03:33 -0800</bug_when>
    <thetext>Comment on attachment 124499
Patch.

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

&gt; Source/WebKit/efl/ewk/ewk_view_single.cpp:60
&gt;      Evas_Object* bs = evas_object_image_add(smartData-&gt;base.evas);

I think it is better to change use full name instead of abbreviation for *bs*.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544912</commentid>
    <comment_count>4</comment_count>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-30 00:15:43 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 124499 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=124499&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/efl/ewk/ewk_view_single.cpp:60
&gt; &gt;      Evas_Object* bs = evas_object_image_add(smartData-&gt;base.evas);
&gt; 
&gt; I think it is better to change use full name instead of abbreviation for *bs*.

Yepp, I noticed it, but https://bugs.webkit.org/show_bug.cgi?id=76378 already did it. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544917</commentid>
    <comment_count>5</comment_count>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-30 00:34:14 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 124499 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=124499&amp;action=review
&gt; 
&gt; Patch itself looks good to me.
&gt; 
&gt; &gt; Source/WebKit/efl/ewk/ewk_view_single.cpp:64
&gt; &gt; +    const std::string engine(ecore_evas_engine_name_get(ecoreEvas));
&gt; &gt; +    if (!engine.compare(&quot;opengl_x11&quot;))
&gt; 
&gt; How do you think about using WebCore::String ?Why do

Do you mean WTF::String ?

In fact, I couldn&apos;t find any restriction for data type on port specific module. :)
So, I would like to know the policy related with it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544965</commentid>
    <comment_count>6</comment_count>
      <attachid>124515</attachid>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-30 02:31:44 -0800</bug_when>
    <thetext>Created attachment 124515
Patch updated.

Replace std::string with WTF::String.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544966</commentid>
    <comment_count>7</comment_count>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-30 02:33:15 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 124499 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=124499&amp;action=review
&gt; 
&gt; Patch itself looks good to me.
&gt; 
&gt; &gt; Source/WebKit/efl/ewk/ewk_view_single.cpp:64
&gt; &gt; +    const std::string engine(ecore_evas_engine_name_get(ecoreEvas));
&gt; &gt; +    if (!engine.compare(&quot;opengl_x11&quot;))
&gt; 
&gt; How do you think about using WebCore::String ?Why do

I agree that using WTF::String is more readable than std::string. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544969</commentid>
    <comment_count>8</comment_count>
      <attachid>124515</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-01-30 02:38:36 -0800</bug_when>
    <thetext>Comment on attachment 124515
Patch updated.

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

&gt; Source/WebKit/efl/ewk/ewk_view_single.cpp:63
&gt; +    if (engine == &quot;opengl_x11&quot;)

If engine name may become upper case, why don&apos;t you compare both via equalIgnoringCase() ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>544977</commentid>
    <comment_count>9</comment_count>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-30 02:54:00 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 124515 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=124515&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/efl/ewk/ewk_view_single.cpp:63
&gt; &gt; +    if (engine == &quot;opengl_x11&quot;)
&gt; 
&gt; If engine name may become upper case, why don&apos;t you compare both via equalIgnoringCase() ?

Good point.
In fact I referred the efl code in /ecore_evas/ecore_evas.c.
And then I could know that efl is just using lower case letters. :)

static const struct ecore_evas_engine _engines[] = {
  /* unix */
#ifdef BUILD_ECORE_EVAS_SOFTWARE_X11
  {&quot;software_x11&quot;, _ecore_evas_constructor_software_x11},
#endif
#ifdef BUILD_ECORE_EVAS_OPENGL_X11
  {&quot;opengl_x11&quot;, _ecore_evas_constructor_opengl_x11},
#endif
#ifdef BUILD_ECORE_EVAS_SOFTWARE_8_X11
  {&quot;software_8_x11&quot;, _ecore_evas_constructor_software_8_x11},
#endif
#ifdef BUILD_ECORE_EVAS_SOFTWARE_16_X11
  {&quot;software_16_x11&quot;, _ecore_evas_constructor_software_16_x11},
#endif
#ifdef BUILD_ECORE_EVAS_DIRECTFB
  {&quot;directfb&quot;, _ecore_evas_constructor_directfb},
#endif
#ifdef BUILD_ECORE_EVAS_FB
  {&quot;fb&quot;, _ecore_evas_constructor_fb},
#endif</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545047</commentid>
    <comment_count>10</comment_count>
      <attachid>124515</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-01-30 05:36:51 -0800</bug_when>
    <thetext>Comment on attachment 124515
Patch updated.

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

&gt; Source/WebKit/efl/ChangeLog:28
&gt; +2012-01-29  KwangHyuk Kim  &lt;hyuki.kim@samsung.com&gt;
&gt; +
&gt; +        [EFL] Set content hint information for ewk_view_single.
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=77319
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        The content hint information corresponding to opengl_x11 engine is set
&gt; +        for the image object which ewk_view_single owns when evas is based on
&gt; +        opengl_x11 engine.
&gt; +
&gt; +        * ewk/ewk_view_single.cpp:
&gt; +        (_ewk_view_single_smart_backing_store_add):
&gt; +

Duplicate ChangeLog.

&gt;&gt;&gt; Source/WebKit/efl/ewk/ewk_view_single.cpp:63
&gt;&gt;&gt; +    const WTF::String engine(ecore_evas_engine_name_get(ecoreEvas));
&gt;&gt;&gt; +    if (engine == &quot;opengl_x11&quot;)
&gt;&gt; 
&gt;&gt; If engine name may become upper case, why don&apos;t you compare both via equalIgnoringCase() ?
&gt; 
&gt; Good point.
&gt; In fact I referred the efl code in /ecore_evas/ecore_evas.c.
&gt; And then I could know that efl is just using lower case letters. :)
&gt; 
&gt; static const struct ecore_evas_engine _engines[] = {
&gt;   /* unix */
&gt; #ifdef BUILD_ECORE_EVAS_SOFTWARE_X11
&gt;   {&quot;software_x11&quot;, _ecore_evas_constructor_software_x11},
&gt; #endif
&gt; #ifdef BUILD_ECORE_EVAS_OPENGL_X11
&gt;   {&quot;opengl_x11&quot;, _ecore_evas_constructor_opengl_x11},
&gt; #endif
&gt; #ifdef BUILD_ECORE_EVAS_SOFTWARE_8_X11
&gt;   {&quot;software_8_x11&quot;, _ecore_evas_constructor_software_8_x11},
&gt; #endif
&gt; #ifdef BUILD_ECORE_EVAS_SOFTWARE_16_X11
&gt;   {&quot;software_16_x11&quot;, _ecore_evas_constructor_software_16_x11},
&gt; #endif
&gt; #ifdef BUILD_ECORE_EVAS_DIRECTFB
&gt;   {&quot;directfb&quot;, _ecore_evas_constructor_directfb},
&gt; #endif
&gt; #ifdef BUILD_ECORE_EVAS_FB
&gt;   {&quot;fb&quot;, _ecore_evas_constructor_fb},
&gt; #endif

I don&apos;t see the need for the const char* -&gt; WTF::String conversions at all.

const Ecore_Evas* ecoreEvas = ecore_evas_ecore_evas_get(smartData-&gt;base.evas);
const char* engine = ecore_evas_engine_name_get(ecoreEvas);
if (!strncmp(engine, &quot;opengl_x11&quot;, strlen(&quot;opengl_x11&quot;)))
    evas_object_image_content_hint_set(...);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545053</commentid>
    <comment_count>11</comment_count>
    <who name="Tomasz Morawski">t.morawski</who>
    <bug_when>2012-01-30 05:51:22 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 124515 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=124515&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/efl/ChangeLog:28
&gt; &gt; +2012-01-29  KwangHyuk Kim  &lt;hyuki.kim@samsung.com&gt;
&gt; &gt; +
&gt; &gt; +        [EFL] Set content hint information for ewk_view_single.
&gt; &gt; +        https://bugs.webkit.org/show_bug.cgi?id=77319
&gt; &gt; +
&gt; &gt; +        Reviewed by NOBODY (OOPS!).
&gt; &gt; +
&gt; &gt; +        The content hint information corresponding to opengl_x11 engine is set
&gt; &gt; +        for the image object which ewk_view_single owns when evas is based on
&gt; &gt; +        opengl_x11 engine.
&gt; &gt; +
&gt; &gt; +        * ewk/ewk_view_single.cpp:
&gt; &gt; +        (_ewk_view_single_smart_backing_store_add):
&gt; &gt; +
&gt; 
&gt; Duplicate ChangeLog.
&gt; 
&gt; &gt;&gt;&gt; Source/WebKit/efl/ewk/ewk_view_single.cpp:63
&gt; &gt;&gt;&gt; +    const WTF::String engine(ecore_evas_engine_name_get(ecoreEvas));
&gt; &gt;&gt;&gt; +    if (engine == &quot;opengl_x11&quot;)
&gt; &gt;&gt; 
&gt; &gt;&gt; If engine name may become upper case, why don&apos;t you compare both via equalIgnoringCase() ?
&gt; &gt; 
&gt; &gt; Good point.
&gt; &gt; In fact I referred the efl code in /ecore_evas/ecore_evas.c.
&gt; &gt; And then I could know that efl is just using lower case letters. :)
&gt; &gt; 
&gt; &gt; static const struct ecore_evas_engine _engines[] = {
&gt; &gt;   /* unix */
&gt; &gt; #ifdef BUILD_ECORE_EVAS_SOFTWARE_X11
&gt; &gt;   {&quot;software_x11&quot;, _ecore_evas_constructor_software_x11},
&gt; &gt; #endif
&gt; &gt; #ifdef BUILD_ECORE_EVAS_OPENGL_X11
&gt; &gt;   {&quot;opengl_x11&quot;, _ecore_evas_constructor_opengl_x11},
&gt; &gt; #endif
&gt; &gt; #ifdef BUILD_ECORE_EVAS_SOFTWARE_8_X11
&gt; &gt;   {&quot;software_8_x11&quot;, _ecore_evas_constructor_software_8_x11},
&gt; &gt; #endif
&gt; &gt; #ifdef BUILD_ECORE_EVAS_SOFTWARE_16_X11
&gt; &gt;   {&quot;software_16_x11&quot;, _ecore_evas_constructor_software_16_x11},
&gt; &gt; #endif
&gt; &gt; #ifdef BUILD_ECORE_EVAS_DIRECTFB
&gt; &gt;   {&quot;directfb&quot;, _ecore_evas_constructor_directfb},
&gt; &gt; #endif
&gt; &gt; #ifdef BUILD_ECORE_EVAS_FB
&gt; &gt;   {&quot;fb&quot;, _ecore_evas_constructor_fb},
&gt; &gt; #endif
&gt; 
&gt; I don&apos;t see the need for the const char* -&gt; WTF::String conversions at all.
&gt; 
&gt; const Ecore_Evas* ecoreEvas = ecore_evas_ecore_evas_get(smartData-&gt;base.evas);
&gt; const char* engine = ecore_evas_engine_name_get(ecoreEvas);
&gt; if (!strncmp(engine, &quot;opengl_x11&quot;, strlen(&quot;opengl_x11&quot;)))
&gt;     evas_object_image_content_hint_set(...);
Yes, I almost agree with you. This is extremely useless conversion here. I think we should decide whether to use WTF::String, when to use or not use at all inside ewk. I think that it could be a good point to start discussion about it, we need a rule for that to avoid some situation in the future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545055</commentid>
    <comment_count>12</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-01-30 05:58:12 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; I think that it could be a good point to start discussion about it, we need a rule for that to avoid some situation in the future.

Do we really need so many rules? Working out all cases and writing everything down takes more time than using some common sense ;) In this case, for example, one wants to compare a const char* with another const char*. There shouldn&apos;t be any doubt that creating WTF::Strings here just for that is pointless.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545070</commentid>
    <comment_count>13</comment_count>
    <who name="Tomasz Morawski">t.morawski</who>
    <bug_when>2012-01-30 06:41:53 -0800</bug_when>
    <thetext>(In reply to comment #12)
&gt; (In reply to comment #11)
&gt; &gt; I think that it could be a good point to start discussion about it, we need a rule for that to avoid some situation in the future.
&gt; 
&gt; Do we really need so many rules? Working out all cases and writing everything down takes more time than using some common sense ;) In this case, for example, one wants to compare a const char* with another const char*. There shouldn&apos;t be any doubt that creating WTF::Strings here just for that is pointless.

There is not need to consider a lot of cases. There is only one that is need to be finaly solve. How much c++ we could use inside ewk? :) 

Yes... I realy don&apos;t know why it is not allowed to use classes or even structures that have constructor/destructor inside cpp files for private object inside ewk. Is it allowed to use WebKit&apos;s containers inside cpp files inside ewk? If not why? Currently we have a situation that we use: smart pointers, new/delete operators, WTF::String, WebKit&apos;s classes or own classes inside WebKitSupport etc. EFL WebKit port is very mixed in languages that uses.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545084</commentid>
    <comment_count>14</comment_count>
      <attachid>124546</attachid>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-30 07:20:41 -0800</bug_when>
    <thetext>Created attachment 124546
Patch updated according to Kubo&apos;s comment.

Fix duplicated ChangeLog and just use strncmp for the engine name comparison.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545085</commentid>
    <comment_count>15</comment_count>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-30 07:22:27 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; (From update of attachment 124515 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=124515&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/efl/ChangeLog:28
&gt; &gt; +2012-01-29  KwangHyuk Kim  &lt;hyuki.kim@samsung.com&gt;
&gt; &gt; +
&gt; &gt; +        [EFL] Set content hint information for ewk_view_single.
&gt; &gt; +        https://bugs.webkit.org/show_bug.cgi?id=77319
&gt; &gt; +
&gt; &gt; +        Reviewed by NOBODY (OOPS!).
&gt; &gt; +
&gt; &gt; +        The content hint information corresponding to opengl_x11 engine is set
&gt; &gt; +        for the image object which ewk_view_single owns when evas is based on
&gt; &gt; +        opengl_x11 engine.
&gt; &gt; +
&gt; &gt; +        * ewk/ewk_view_single.cpp:
&gt; &gt; +        (_ewk_view_single_smart_backing_store_add):
&gt; &gt; +
&gt; 
&gt; Duplicate ChangeLog.

Thx,fixed. :)

&gt; 
&gt; &gt;&gt;&gt; Source/WebKit/efl/ewk/ewk_view_single.cpp:63
&gt; &gt;&gt;&gt; +    const WTF::String engine(ecore_evas_engine_name_get(ecoreEvas));
&gt; &gt;&gt;&gt; +    if (engine == &quot;opengl_x11&quot;)
&gt; &gt;&gt; 
&gt; &gt;&gt; If engine name may become upper case, why don&apos;t you compare both via equalIgnoringCase() ?
&gt; &gt; 
&gt; &gt; Good point.
&gt; &gt; In fact I referred the efl code in /ecore_evas/ecore_evas.c.
&gt; &gt; And then I could know that efl is just using lower case letters. :)
&gt; &gt; 
&gt; &gt; static const struct ecore_evas_engine _engines[] = {
&gt; &gt;   /* unix */
&gt; &gt; #ifdef BUILD_ECORE_EVAS_SOFTWARE_X11
&gt; &gt;   {&quot;software_x11&quot;, _ecore_evas_constructor_software_x11},
&gt; &gt; #endif
&gt; &gt; #ifdef BUILD_ECORE_EVAS_OPENGL_X11
&gt; &gt;   {&quot;opengl_x11&quot;, _ecore_evas_constructor_opengl_x11},
&gt; &gt; #endif
&gt; &gt; #ifdef BUILD_ECORE_EVAS_SOFTWARE_8_X11
&gt; &gt;   {&quot;software_8_x11&quot;, _ecore_evas_constructor_software_8_x11},
&gt; &gt; #endif
&gt; &gt; #ifdef BUILD_ECORE_EVAS_SOFTWARE_16_X11
&gt; &gt;   {&quot;software_16_x11&quot;, _ecore_evas_constructor_software_16_x11},
&gt; &gt; #endif
&gt; &gt; #ifdef BUILD_ECORE_EVAS_DIRECTFB
&gt; &gt;   {&quot;directfb&quot;, _ecore_evas_constructor_directfb},
&gt; &gt; #endif
&gt; &gt; #ifdef BUILD_ECORE_EVAS_FB
&gt; &gt;   {&quot;fb&quot;, _ecore_evas_constructor_fb},
&gt; &gt; #endif
&gt; 
&gt; I don&apos;t see the need for the const char* -&gt; WTF::String conversions at all.
&gt; 
&gt; const Ecore_Evas* ecoreEvas = ecore_evas_ecore_evas_get(smartData-&gt;base.evas);
&gt; const char* engine = ecore_evas_engine_name_get(ecoreEvas);
&gt; if (!strncmp(engine, &quot;opengl_x11&quot;, strlen(&quot;opengl_x11&quot;)))
&gt;     evas_object_image_content_hint_set(...);

I agree with you. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545089</commentid>
    <comment_count>16</comment_count>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-30 07:29:15 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; (In reply to comment #12)
&gt; &gt; (In reply to comment #11)
&gt; &gt; &gt; I think that it could be a good point to start discussion about it, we need a rule for that to avoid some situation in the future.
&gt; &gt; 
&gt; &gt; Do we really need so many rules? Working out all cases and writing everything down takes more time than using some common sense ;) In this case, for example, one wants to compare a const char* with another const char*. There shouldn&apos;t be any doubt that creating WTF::Strings here just for that is pointless.
&gt; 
&gt; There is not need to consider a lot of cases. There is only one that is need to be finaly solve. How much c++ we could use inside ewk? :) 
&gt; 
&gt; Yes... I realy don&apos;t know why it is not allowed to use classes or even structures that have constructor/destructor inside cpp files for private object inside ewk. Is it allowed to use WebKit&apos;s containers inside cpp files inside ewk? If not why? Currently we have a situation that we use: smart pointers, new/delete operators, WTF::String, WebKit&apos;s classes or own classes inside WebKitSupport etc. EFL WebKit port is very mixed in languages that uses.

In fact, the reason why I choose std::string or WTF::String was to make it as c++ style.
So, I partially agree with your idea too. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545091</commentid>
    <comment_count>17</comment_count>
      <attachid>124546</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-01-30 07:32:20 -0800</bug_when>
    <thetext>Comment on attachment 124546
Patch updated according to Kubo&apos;s comment.

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

&gt; Source/WebKit/efl/ewk/ewk_view_single.cpp:62
&gt; +    Ecore_Evas* ecoreEvas = ecore_evas_ecore_evas_get(smartData-&gt;base.evas);

I&apos;d make this variable const as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545093</commentid>
    <comment_count>18</comment_count>
      <attachid>124549</attachid>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-30 07:39:53 -0800</bug_when>
    <thetext>Created attachment 124549
Patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545094</commentid>
    <comment_count>19</comment_count>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-30 07:40:55 -0800</bug_when>
    <thetext>(In reply to comment #17)
&gt; (From update of attachment 124546 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=124546&amp;action=review
&gt; 
&gt; &gt; Source/WebKit/efl/ewk/ewk_view_single.cpp:62
&gt; &gt; +    Ecore_Evas* ecoreEvas = ecore_evas_ecore_evas_get(smartData-&gt;base.evas);
&gt; 
&gt; I&apos;d make this variable const as well.

Done. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545097</commentid>
    <comment_count>20</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-01-30 07:50:20 -0800</bug_when>
    <thetext>(In reply to comment #13)
&gt; There is not need to consider a lot of cases. There is only one that is need to be finaly solve. How much c++ we could use inside ewk? :) 

This question is orthogonal to the const char*/WTF::String issue we were discussing ;)

&gt; Yes... I realy don&apos;t know why it is not allowed to use classes or even structures that have constructor/destructor inside cpp files for private object inside ewk. Is it allowed to use WebKit&apos;s containers inside cpp files inside ewk? If not why? Currently we have a situation that we use: smart pointers, new/delete operators, WTF::String, WebKit&apos;s classes or own classes inside WebKitSupport etc. EFL WebKit port is very mixed in languages that uses.

I had never heard of certain idioms or features being &quot;forbidden&quot; in the port. It just happened that it was rewritten and upstreamed with the API somewhat based on the GTK+ port (which was the only other port providing a C API and which relied heavily on C dependencies), and it doesn&apos;t (or at least didn&apos;t) use some C++ features. I&apos;m all open to suggestions (which are probably more suited in the mailing list, anyway).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545098</commentid>
    <comment_count>21</comment_count>
      <attachid>124549</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-01-30 07:50:43 -0800</bug_when>
    <thetext>Comment on attachment 124549
Patch.

LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>545107</commentid>
    <comment_count>22</comment_count>
    <who name="Tomasz Morawski">t.morawski</who>
    <bug_when>2012-01-30 08:11:09 -0800</bug_when>
    <thetext>(In reply to comment #20)
&gt; (In reply to comment #13)
&gt; &gt; There is not need to consider a lot of cases. There is only one that is need to be finaly solve. How much c++ we could use inside ewk? :) 
&gt; 
&gt; This question is orthogonal to the const char*/WTF::String issue we were discussing ;)
&gt; 
&gt; &gt; Yes... I realy don&apos;t know why it is not allowed to use classes or even structures that have constructor/destructor inside cpp files for private object inside ewk. Is it allowed to use WebKit&apos;s containers inside cpp files inside ewk? If not why? Currently we have a situation that we use: smart pointers, new/delete operators, WTF::String, WebKit&apos;s classes or own classes inside WebKitSupport etc. EFL WebKit port is very mixed in languages that uses.
&gt; 
&gt; I had never heard of certain idioms or features being &quot;forbidden&quot; in the port. It just happened that it was rewritten and upstreamed with the API somewhat based on the GTK+ port (which was the only other port providing a C API and which relied heavily on C dependencies), and it doesn&apos;t (or at least didn&apos;t) use some C++ features. I&apos;m all open to suggestions (which are probably more suited in the mailing list, anyway).

Thanks for your replay. I will try to write few on mailing list in the future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546679</commentid>
    <comment_count>23</comment_count>
      <attachid>124859</attachid>
    <who name="KwangHyuk">hyuki.kim</who>
    <bug_when>2012-01-31 17:28:39 -0800</bug_when>
    <thetext>Created attachment 124859
Patch rebased.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546683</commentid>
    <comment_count>24</comment_count>
    <who name="Ryuan Choi">ryuan.choi</who>
    <bug_when>2012-01-31 17:34:11 -0800</bug_when>
    <thetext>(In reply to comment #23)
&gt; Created an attachment (id=124859) [details]
&gt; Patch rebased.

LGTM.

For me, const char* is reasonable enough.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546745</commentid>
    <comment_count>25</comment_count>
      <attachid>124859</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-31 19:38:42 -0800</bug_when>
    <thetext>Comment on attachment 124859
Patch rebased.

Clearing flags on attachment: 124859

Committed r106424: &lt;http://trac.webkit.org/changeset/106424&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546746</commentid>
    <comment_count>26</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-31 19:38:48 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124499</attachid>
            <date>2012-01-29 23:54:24 -0800</date>
            <delta_ts>2012-01-30 02:31:44 -0800</delta_ts>
            <desc>Patch.</desc>
            <filename>0130_content_hint.patch</filename>
            <type>text/plain</type>
            <size>1975</size>
            <attacher name="KwangHyuk">hyuki.kim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
ZWZsL0NoYW5nZUxvZwppbmRleCA4OGQzYWU5Li43OGYzOWZhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMTItMDEtMjkgIEt3YW5nSHl1ayBLaW0gIDxoeXVraS5raW1Ac2Ft
c3VuZy5jb20+CisKKyAgICAgICAgW0VGTF0gU2V0IGNvbnRlbnQgaGludCBpbmZvcm1hdGlvbiBm
b3IgZXdrX3ZpZXdfc2luZ2xlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzczMTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBUaGUgY29udGVudCBoaW50IGluZm9ybWF0aW9uIGNvcnJlc3BvbmRpbmcgdG8g
b3BlbmdsX3gxMSBlbmdpbmUgaXMgc2V0CisgICAgICAgIGZvciB0aGUgaW1hZ2Ugb2JqZWN0IHdo
aWNoIGV3a192aWV3X3NpbmdsZSBvd25zIHdoZW4gZXZhcyBpcyBiYXNlZCBvbgorICAgICAgICBv
cGVuZ2xfeDExIGVuZ2luZS4KKworICAgICAgICAqIGV3ay9ld2tfdmlld19zaW5nbGUuY3BwOgor
ICAgICAgICAoX2V3a192aWV3X3NpbmdsZV9zbWFydF9iYWNraW5nX3N0b3JlX2FkZCk6CisKIDIw
MTItMDEtMjYgIFRvbWFzeiBNb3Jhd3NraSAgPHQubW9yYXdza2lAc2Ftc3VuZy5jb20+CiAKICAg
ICAgICAgW0VGTF0gQWRkZWQgbWlzc2luZyBORVRTQ0FQRV9QTFVHSU5fQVBJIG1hY3JvLgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3X3NpbmdsZS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdfc2luZ2xlLmNwcAppbmRleCBlZDcyNjMzLi4zMjI0
ZWYwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdfc2luZ2xlLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdfc2luZ2xlLmNwcApAQCAtMjUs
OSArMjUsMTAgQEAKICNpbmNsdWRlICJld2tfbG9nZ2luZy5oIgogI2luY2x1ZGUgImV3a19wcml2
YXRlLmgiCiAKKyNpbmNsdWRlIDxFY29yZV9FdmFzLmg+CiAjaW5jbHVkZSA8RXZhcy5oPgogI2lu
Y2x1ZGUgPGVpbmFfc2FmZXR5X2NoZWNrcy5oPgotI2luY2x1ZGUgPHN0cmluZy5oPgorI2luY2x1
ZGUgPHN0cmluZz4KIAogc3RhdGljIEV3a19WaWV3X1NtYXJ0X0NsYXNzIF9wYXJlbnRfc2MgPSBF
V0tfVklFV19TTUFSVF9DTEFTU19JTklUX05VTEw7CiAKQEAgLTU3LDYgKzU4LDEyIEBAIHN0YXRp
YyB2b2lkIF9ld2tfdmlld19zaW5nbGVfc21hcnRfYWRkKEV2YXNfT2JqZWN0KiBld2tWaWV3KQog
c3RhdGljIEV2YXNfT2JqZWN0KiBfZXdrX3ZpZXdfc2luZ2xlX3NtYXJ0X2JhY2tpbmdfc3RvcmVf
YWRkKEV3a19WaWV3X1NtYXJ0X0RhdGEqIHNtYXJ0RGF0YSkKIHsKICAgICBFdmFzX09iamVjdCog
YnMgPSBldmFzX29iamVjdF9pbWFnZV9hZGQoc21hcnREYXRhLT5iYXNlLmV2YXMpOworICAgIEVJ
TkFfU0FGRVRZX09OX05VTExfUkVUVVJOX1ZBTChicywgMCk7CisgICAgRWNvcmVfRXZhcyogZWNv
cmVFdmFzID0gZWNvcmVfZXZhc19lY29yZV9ldmFzX2dldChzbWFydERhdGEtPmJhc2UuZXZhcyk7
CisgICAgY29uc3Qgc3RkOjpzdHJpbmcgZW5naW5lKGVjb3JlX2V2YXNfZW5naW5lX25hbWVfZ2V0
KGVjb3JlRXZhcykpOworICAgIGlmICghZW5naW5lLmNvbXBhcmUoIm9wZW5nbF94MTEiKSkKKyAg
ICAgICAgZXZhc19vYmplY3RfaW1hZ2VfY29udGVudF9oaW50X3NldChicywgRVZBU19JTUFHRV9D
T05URU5UX0hJTlRfRFlOQU1JQyk7CisKICAgICBldmFzX29iamVjdF9pbWFnZV9hbHBoYV9zZXQo
YnMsIGZhbHNlKTsKICAgICBldmFzX29iamVjdF9pbWFnZV9zbW9vdGhfc2NhbGVfc2V0KGJzLCBz
bWFydERhdGEtPnpvb21fd2Vha19zbW9vdGhfc2NhbGUpOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124515</attachid>
            <date>2012-01-30 02:31:44 -0800</date>
            <delta_ts>2012-01-30 07:20:41 -0800</delta_ts>
            <desc>Patch updated.</desc>
            <filename>0130_content_hint_2.patch</filename>
            <type>text/plain</type>
            <size>2443</size>
            <attacher name="KwangHyuk">hyuki.kim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
ZWZsL0NoYW5nZUxvZwppbmRleCA4OGQzYWU5Li5iYzljNjExIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMzEgQEAKKzIwMTItMDEtMzAgIEt3YW5nSHl1ayBLaW0gIDxoeXVraS5raW1Ac2Ft
c3VuZy5jb20+CisKKyAgICAgICAgW0VGTF0gU2V0IGNvbnRlbnQgaGludCBpbmZvcm1hdGlvbiBm
b3IgZXdrX3ZpZXdfc2luZ2xlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzczMTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBUaGUgY29udGVudCBoaW50IGluZm9ybWF0aW9uIGNvcnJlc3BvbmRpbmcgdG8g
b3BlbmdsX3gxMSBlbmdpbmUgaXMgc2V0CisgICAgICAgIGZvciB0aGUgaW1hZ2Ugb2JqZWN0IHdo
aWNoIGV3a192aWV3X3NpbmdsZSBvd25zIHdoZW4gZXZhcyBpcyBiYXNlZCBvbgorICAgICAgICBv
cGVuZ2xfeDExIGVuZ2luZS4KKworICAgICAgICAqIGV3ay9ld2tfdmlld19zaW5nbGUuY3BwOgor
ICAgICAgICAoX2V3a192aWV3X3NpbmdsZV9zbWFydF9iYWNraW5nX3N0b3JlX2FkZCk6CisKKzIw
MTItMDEtMjkgIEt3YW5nSHl1ayBLaW0gIDxoeXVraS5raW1Ac2Ftc3VuZy5jb20+CisKKyAgICAg
ICAgW0VGTF0gU2V0IGNvbnRlbnQgaGludCBpbmZvcm1hdGlvbiBmb3IgZXdrX3ZpZXdfc2luZ2xl
LgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NzczMTkK
KworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgY29u
dGVudCBoaW50IGluZm9ybWF0aW9uIGNvcnJlc3BvbmRpbmcgdG8gb3BlbmdsX3gxMSBlbmdpbmUg
aXMgc2V0CisgICAgICAgIGZvciB0aGUgaW1hZ2Ugb2JqZWN0IHdoaWNoIGV3a192aWV3X3Npbmds
ZSBvd25zIHdoZW4gZXZhcyBpcyBiYXNlZCBvbgorICAgICAgICBvcGVuZ2xfeDExIGVuZ2luZS4K
KworICAgICAgICAqIGV3ay9ld2tfdmlld19zaW5nbGUuY3BwOgorICAgICAgICAoX2V3a192aWV3
X3NpbmdsZV9zbWFydF9iYWNraW5nX3N0b3JlX2FkZCk6CisKIDIwMTItMDEtMjYgIFRvbWFzeiBN
b3Jhd3NraSAgPHQubW9yYXdza2lAc2Ftc3VuZy5jb20+CiAKICAgICAgICAgW0VGTF0gQWRkZWQg
bWlzc2luZyBORVRTQ0FQRV9QTFVHSU5fQVBJIG1hY3JvLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9lZmwvZXdrL2V3a192aWV3X3NpbmdsZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2sv
ZXdrX3ZpZXdfc2luZ2xlLmNwcAppbmRleCBlZDcyNjMzLi5iYTE1YWU5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdfc2luZ2xlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L2VmbC9ld2svZXdrX3ZpZXdfc2luZ2xlLmNwcApAQCAtMjUsOSArMjUsOSBAQAogI2luY2x1
ZGUgImV3a19sb2dnaW5nLmgiCiAjaW5jbHVkZSAiZXdrX3ByaXZhdGUuaCIKIAorI2luY2x1ZGUg
PEVjb3JlX0V2YXMuaD4KICNpbmNsdWRlIDxFdmFzLmg+CiAjaW5jbHVkZSA8ZWluYV9zYWZldHlf
Y2hlY2tzLmg+Ci0jaW5jbHVkZSA8c3RyaW5nLmg+CiAKIHN0YXRpYyBFd2tfVmlld19TbWFydF9D
bGFzcyBfcGFyZW50X3NjID0gRVdLX1ZJRVdfU01BUlRfQ0xBU1NfSU5JVF9OVUxMOwogCkBAIC01
Nyw2ICs1NywxMiBAQCBzdGF0aWMgdm9pZCBfZXdrX3ZpZXdfc2luZ2xlX3NtYXJ0X2FkZChFdmFz
X09iamVjdCogZXdrVmlldykKIHN0YXRpYyBFdmFzX09iamVjdCogX2V3a192aWV3X3NpbmdsZV9z
bWFydF9iYWNraW5nX3N0b3JlX2FkZChFd2tfVmlld19TbWFydF9EYXRhKiBzbWFydERhdGEpCiB7
CiAgICAgRXZhc19PYmplY3QqIGJzID0gZXZhc19vYmplY3RfaW1hZ2VfYWRkKHNtYXJ0RGF0YS0+
YmFzZS5ldmFzKTsKKyAgICBFSU5BX1NBRkVUWV9PTl9OVUxMX1JFVFVSTl9WQUwoYnMsIDApOwor
ICAgIEVjb3JlX0V2YXMqIGVjb3JlRXZhcyA9IGVjb3JlX2V2YXNfZWNvcmVfZXZhc19nZXQoc21h
cnREYXRhLT5iYXNlLmV2YXMpOworICAgIGNvbnN0IFdURjo6U3RyaW5nIGVuZ2luZShlY29yZV9l
dmFzX2VuZ2luZV9uYW1lX2dldChlY29yZUV2YXMpKTsKKyAgICBpZiAoZW5naW5lID09ICJvcGVu
Z2xfeDExIikKKyAgICAgICAgZXZhc19vYmplY3RfaW1hZ2VfY29udGVudF9oaW50X3NldChicywg
RVZBU19JTUFHRV9DT05URU5UX0hJTlRfRFlOQU1JQyk7CisKICAgICBldmFzX29iamVjdF9pbWFn
ZV9hbHBoYV9zZXQoYnMsIGZhbHNlKTsKICAgICBldmFzX29iamVjdF9pbWFnZV9zbW9vdGhfc2Nh
bGVfc2V0KGJzLCBzbWFydERhdGEtPnpvb21fd2Vha19zbW9vdGhfc2NhbGUpOwogCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124546</attachid>
            <date>2012-01-30 07:20:41 -0800</date>
            <delta_ts>2012-01-30 07:39:53 -0800</delta_ts>
            <desc>Patch updated according to Kubo&apos;s comment.</desc>
            <filename>0130_hint_set_3.patch</filename>
            <type>text/plain</type>
            <size>1934</size>
            <attacher name="KwangHyuk">hyuki.kim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
ZWZsL0NoYW5nZUxvZwppbmRleCA4OGQzYWU5Li5mODkyMjFmIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTkgQEAKKzIwMTItMDEtMzAgIEt3YW5nSHl1ayBLaW0gIDxoeXVraS5raW1Ac2Ft
c3VuZy5jb20+CisKKyAgICAgICAgW0VGTF0gU2V0IGNvbnRlbnQgaGludCBpbmZvcm1hdGlvbiBm
b3IgZXdrX3ZpZXdfc2luZ2xlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzczMTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBUaGUgY29udGVudCBoaW50IGluZm9ybWF0aW9uIGNvcnJlc3BvbmRpbmcgdG8g
b3BlbmdsX3gxMSBlbmdpbmUgaXMgc2V0CisgICAgICAgIGZvciB0aGUgaW1hZ2Ugb2JqZWN0IHdo
aWNoIGV3a192aWV3X3NpbmdsZSBvd25zIHdoZW4gZXZhcyBpcyBiYXNlZCBvbgorICAgICAgICBv
cGVuZ2xfeDExIGVuZ2luZS4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICAqIGV3ay9ld2tfdmlld19zaW5nbGUuY3BwOgorICAgICAgICAoX2V3a192aWV3
X3NpbmdsZV9zbWFydF9iYWNraW5nX3N0b3JlX2FkZCk6CisKIDIwMTItMDEtMjYgIFRvbWFzeiBN
b3Jhd3NraSAgPHQubW9yYXdza2lAc2Ftc3VuZy5jb20+CiAKICAgICAgICAgW0VGTF0gQWRkZWQg
bWlzc2luZyBORVRTQ0FQRV9QTFVHSU5fQVBJIG1hY3JvLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9lZmwvZXdrL2V3a192aWV3X3NpbmdsZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2sv
ZXdrX3ZpZXdfc2luZ2xlLmNwcAppbmRleCBlZDcyNjMzLi4xY2NhZTdiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdfc2luZ2xlLmNwcAorKysgYi9Tb3VyY2UvV2Vi
S2l0L2VmbC9ld2svZXdrX3ZpZXdfc2luZ2xlLmNwcApAQCAtMjUsNiArMjUsNyBAQAogI2luY2x1
ZGUgImV3a19sb2dnaW5nLmgiCiAjaW5jbHVkZSAiZXdrX3ByaXZhdGUuaCIKIAorI2luY2x1ZGUg
PEVjb3JlX0V2YXMuaD4KICNpbmNsdWRlIDxFdmFzLmg+CiAjaW5jbHVkZSA8ZWluYV9zYWZldHlf
Y2hlY2tzLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CkBAIC01Nyw2ICs1OCwxMiBAQCBzdGF0aWMg
dm9pZCBfZXdrX3ZpZXdfc2luZ2xlX3NtYXJ0X2FkZChFdmFzX09iamVjdCogZXdrVmlldykKIHN0
YXRpYyBFdmFzX09iamVjdCogX2V3a192aWV3X3NpbmdsZV9zbWFydF9iYWNraW5nX3N0b3JlX2Fk
ZChFd2tfVmlld19TbWFydF9EYXRhKiBzbWFydERhdGEpCiB7CiAgICAgRXZhc19PYmplY3QqIGJz
ID0gZXZhc19vYmplY3RfaW1hZ2VfYWRkKHNtYXJ0RGF0YS0+YmFzZS5ldmFzKTsKKyAgICBFSU5B
X1NBRkVUWV9PTl9OVUxMX1JFVFVSTl9WQUwoYnMsIDApOworICAgIEVjb3JlX0V2YXMqIGVjb3Jl
RXZhcyA9IGVjb3JlX2V2YXNfZWNvcmVfZXZhc19nZXQoc21hcnREYXRhLT5iYXNlLmV2YXMpOwor
ICAgIGNvbnN0IGNoYXIqIGVuZ2luZSA9IGVjb3JlX2V2YXNfZW5naW5lX25hbWVfZ2V0KGVjb3Jl
RXZhcyk7CisgICAgaWYgKCFzdHJuY21wKGVuZ2luZSwgIm9wZW5nbF94MTEiLCBzdHJsZW4oIm9w
ZW5nbF94MTEiKSkpCisgICAgICAgIGV2YXNfb2JqZWN0X2ltYWdlX2NvbnRlbnRfaGludF9zZXQo
YnMsIEVWQVNfSU1BR0VfQ09OVEVOVF9ISU5UX0RZTkFNSUMpOworCiAgICAgZXZhc19vYmplY3Rf
aW1hZ2VfYWxwaGFfc2V0KGJzLCBmYWxzZSk7CiAgICAgZXZhc19vYmplY3RfaW1hZ2Vfc21vb3Ro
X3NjYWxlX3NldChicywgc21hcnREYXRhLT56b29tX3dlYWtfc21vb3RoX3NjYWxlKTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124549</attachid>
            <date>2012-01-30 07:39:53 -0800</date>
            <delta_ts>2012-01-31 17:28:39 -0800</delta_ts>
            <desc>Patch.</desc>
            <filename>0130_hint_set_4.patch</filename>
            <type>text/plain</type>
            <size>1901</size>
            <attacher name="KwangHyuk">hyuki.kim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
ZWZsL0NoYW5nZUxvZwppbmRleCA4OGQzYWU5Li44OWY5NzE1IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMTItMDEtMzAgIEt3YW5nSHl1ayBLaW0gIDxoeXVraS5raW1Ac2Ft
c3VuZy5jb20+CisKKyAgICAgICAgW0VGTF0gU2V0IGNvbnRlbnQgaGludCBpbmZvcm1hdGlvbiBm
b3IgZXdrX3ZpZXdfc2luZ2xlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzczMTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBUaGUgY29udGVudCBoaW50IGluZm9ybWF0aW9uIGNvcnJlc3BvbmRpbmcgdG8g
b3BlbmdsX3gxMSBlbmdpbmUgaXMgc2V0CisgICAgICAgIGZvciB0aGUgaW1hZ2Ugb2JqZWN0IHdo
aWNoIGV3a192aWV3X3NpbmdsZSBvd25zIHdoZW4gZXZhcyBpcyBiYXNlZCBvbgorICAgICAgICBv
cGVuZ2xfeDExIGVuZ2luZS4KKworICAgICAgICAqIGV3ay9ld2tfdmlld19zaW5nbGUuY3BwOgor
ICAgICAgICAoX2V3a192aWV3X3NpbmdsZV9zbWFydF9iYWNraW5nX3N0b3JlX2FkZCk6CisKIDIw
MTItMDEtMjYgIFRvbWFzeiBNb3Jhd3NraSAgPHQubW9yYXdza2lAc2Ftc3VuZy5jb20+CiAKICAg
ICAgICAgW0VGTF0gQWRkZWQgbWlzc2luZyBORVRTQ0FQRV9QTFVHSU5fQVBJIG1hY3JvLgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3X3NpbmdsZS5jcHAgYi9Tb3Vy
Y2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdfc2luZ2xlLmNwcAppbmRleCBlZDcyNjMzLi43YjNh
NmRiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdfc2luZ2xlLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3ZpZXdfc2luZ2xlLmNwcApAQCAtMjUs
NiArMjUsNyBAQAogI2luY2x1ZGUgImV3a19sb2dnaW5nLmgiCiAjaW5jbHVkZSAiZXdrX3ByaXZh
dGUuaCIKIAorI2luY2x1ZGUgPEVjb3JlX0V2YXMuaD4KICNpbmNsdWRlIDxFdmFzLmg+CiAjaW5j
bHVkZSA8ZWluYV9zYWZldHlfY2hlY2tzLmg+CiAjaW5jbHVkZSA8c3RyaW5nLmg+CkBAIC01Nyw2
ICs1OCwxMiBAQCBzdGF0aWMgdm9pZCBfZXdrX3ZpZXdfc2luZ2xlX3NtYXJ0X2FkZChFdmFzX09i
amVjdCogZXdrVmlldykKIHN0YXRpYyBFdmFzX09iamVjdCogX2V3a192aWV3X3NpbmdsZV9zbWFy
dF9iYWNraW5nX3N0b3JlX2FkZChFd2tfVmlld19TbWFydF9EYXRhKiBzbWFydERhdGEpCiB7CiAg
ICAgRXZhc19PYmplY3QqIGJzID0gZXZhc19vYmplY3RfaW1hZ2VfYWRkKHNtYXJ0RGF0YS0+YmFz
ZS5ldmFzKTsKKyAgICBFSU5BX1NBRkVUWV9PTl9OVUxMX1JFVFVSTl9WQUwoYnMsIDApOworICAg
IGNvbnN0IEVjb3JlX0V2YXMqIGVjb3JlRXZhcyA9IGVjb3JlX2V2YXNfZWNvcmVfZXZhc19nZXQo
c21hcnREYXRhLT5iYXNlLmV2YXMpOworICAgIGNvbnN0IGNoYXIqIGVuZ2luZSA9IGVjb3JlX2V2
YXNfZW5naW5lX25hbWVfZ2V0KGVjb3JlRXZhcyk7CisgICAgaWYgKCFzdHJuY21wKGVuZ2luZSwg
Im9wZW5nbF94MTEiLCBzdHJsZW4oIm9wZW5nbF94MTEiKSkpCisgICAgICAgIGV2YXNfb2JqZWN0
X2ltYWdlX2NvbnRlbnRfaGludF9zZXQoYnMsIEVWQVNfSU1BR0VfQ09OVEVOVF9ISU5UX0RZTkFN
SUMpOworCiAgICAgZXZhc19vYmplY3RfaW1hZ2VfYWxwaGFfc2V0KGJzLCBmYWxzZSk7CiAgICAg
ZXZhc19vYmplY3RfaW1hZ2Vfc21vb3RoX3NjYWxlX3NldChicywgc21hcnREYXRhLT56b29tX3dl
YWtfc21vb3RoX3NjYWxlKTsKIAo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>124859</attachid>
            <date>2012-01-31 17:28:39 -0800</date>
            <delta_ts>2012-01-31 19:38:42 -0800</delta_ts>
            <desc>Patch rebased.</desc>
            <filename>0201_hint_set.patch</filename>
            <type>text/plain</type>
            <size>1896</size>
            <attacher name="KwangHyuk">hyuki.kim</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
ZWZsL0NoYW5nZUxvZwppbmRleCBiNzViMTYwLi5hZWMxYTVhIDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMTItMDEtMzEgIEt3YW5nSHl1ayBLaW0gIDxoeXVraS5raW1Ac2Ft
c3VuZy5jb20+CisKKyAgICAgICAgW0VGTF0gU2V0IGNvbnRlbnQgaGludCBpbmZvcm1hdGlvbiBm
b3IgZXdrX3ZpZXdfc2luZ2xlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9NzczMTkKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBUaGUgY29udGVudCBoaW50IGluZm9ybWF0aW9uIGNvcnJlc3BvbmRpbmcgdG8g
b3BlbmdsX3gxMSBlbmdpbmUgaXMgc2V0CisgICAgICAgIGZvciB0aGUgaW1hZ2Ugb2JqZWN0IHdo
aWNoIGV3a192aWV3X3NpbmdsZSBvd25zIHdoZW4gZXZhcyBpcyBiYXNlZCBvbgorICAgICAgICBv
cGVuZ2xfeDExIGVuZ2luZS4KKworICAgICAgICAqIGV3ay9ld2tfdmlld19zaW5nbGUuY3BwOgor
ICAgICAgICAoX2V3a192aWV3X3NpbmdsZV9zbWFydF9iYWNraW5nX3N0b3JlX2FkZCk6CisKIDIw
MTItMDEtMzAgIEV1bnNvbCBQYXJrICA8ZXVuc29sNDcucGFya0BzYW1zdW5nLmNvbT4KIAogICAg
ICAgICBbRUZMXSBEZWZpbmUgdGhlIG5hbWVzIG9mIHZpZXcgc21hcnQgY2xhc3MKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlld19zaW5nbGUuY3BwIGIvU291cmNlL1dl
YktpdC9lZmwvZXdrL2V3a192aWV3X3NpbmdsZS5jcHAKaW5kZXggZTVlOGVlZi4uNTI2NTI0YiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3X3NpbmdsZS5jcHAKKysr
IGIvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a192aWV3X3NpbmdsZS5jcHAKQEAgLTI1LDYgKzI1
LDcgQEAKICNpbmNsdWRlICJld2tfbG9nZ2luZy5oIgogI2luY2x1ZGUgImV3a19wcml2YXRlLmgi
CiAKKyNpbmNsdWRlIDxFY29yZV9FdmFzLmg+CiAjaW5jbHVkZSA8RXZhcy5oPgogI2luY2x1ZGUg
PGVpbmFfc2FmZXR5X2NoZWNrcy5oPgogI2luY2x1ZGUgPHN0cmluZy5oPgpAQCAtNTcsNiArNTgs
MTIgQEAgc3RhdGljIHZvaWQgX2V3a192aWV3X3NpbmdsZV9zbWFydF9hZGQoRXZhc19PYmplY3Qq
IGV3a1ZpZXcpCiBzdGF0aWMgRXZhc19PYmplY3QqIF9ld2tfdmlld19zaW5nbGVfc21hcnRfYmFj
a2luZ19zdG9yZV9hZGQoRXdrX1ZpZXdfU21hcnRfRGF0YSogc21hcnREYXRhKQogewogICAgIEV2
YXNfT2JqZWN0KiBicyA9IGV2YXNfb2JqZWN0X2ltYWdlX2FkZChzbWFydERhdGEtPmJhc2UuZXZh
cyk7CisgICAgRUlOQV9TQUZFVFlfT05fTlVMTF9SRVRVUk5fVkFMKGJzLCAwKTsKKyAgICBjb25z
dCBFY29yZV9FdmFzKiBlY29yZUV2YXMgPSBlY29yZV9ldmFzX2Vjb3JlX2V2YXNfZ2V0KHNtYXJ0
RGF0YS0+YmFzZS5ldmFzKTsKKyAgICBjb25zdCBjaGFyKiBlbmdpbmUgPSBlY29yZV9ldmFzX2Vu
Z2luZV9uYW1lX2dldChlY29yZUV2YXMpOworICAgIGlmICghc3RybmNtcChlbmdpbmUsICJvcGVu
Z2xfeDExIiwgc3RybGVuKCJvcGVuZ2xfeDExIikpKQorICAgICAgICBldmFzX29iamVjdF9pbWFn
ZV9jb250ZW50X2hpbnRfc2V0KGJzLCBFVkFTX0lNQUdFX0NPTlRFTlRfSElOVF9EWU5BTUlDKTsK
KwogICAgIGV2YXNfb2JqZWN0X2ltYWdlX2FscGhhX3NldChicywgZmFsc2UpOwogICAgIGV2YXNf
b2JqZWN0X2ltYWdlX3Ntb290aF9zY2FsZV9zZXQoYnMsIHNtYXJ0RGF0YS0+em9vbV93ZWFrX3Nt
b290aF9zY2FsZSk7CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>