<?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>72017</bug_id>
          
          <creation_ts>2011-11-10 05:36:04 -0800</creation_ts>
          <short_desc>[EFL] Replace alloca to C++ new placement</short_desc>
          <delta_ts>2012-01-05 07:47:23 -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>PC</rep_platform>
          <op_sys>Linux</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="Grzegorz Czajkowski">g.czajkowski</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>gyuyoung.kim</cc>
    
    <cc>leandro</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>499816</commentid>
    <comment_count>0</comment_count>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2011-11-10 05:36:04 -0800</bug_when>
    <thetext>Adds NULL checks before access to pointer which is initialized by alloca.

Adds NULL check to ewk_window_features_new_from_core after creating a new instance of WebCore&apos;s WindowFeatures.
It prevents unexpected result while calling ewk_window_features_unref if WindowFeatures is NULL.

Adds NULL check to ewk_cookies_get_all which returns list of cookies.
Cookie won&apos;t be added If malloc returns NULL.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>499818</commentid>
    <comment_count>1</comment_count>
      <attachid>114478</attachid>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2011-11-10 05:38:25 -0800</bug_when>
    <thetext>Created attachment 114478
proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>500645</commentid>
    <comment_count>2</comment_count>
      <attachid>114478</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2011-11-11 03:54:57 -0800</bug_when>
    <thetext>Comment on attachment 114478
proposed patch

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

&gt; Source/WebCore/platform/efl/ScrollbarEfl.cpp:160
&gt; +    Edje_Message_Float_Set* message = static_cast&lt;Edje_Message_Float_Set*&gt;
&gt; +        (alloca(sizeof(Edje_Message_Float_Set) + sizeof(float)));

I&apos;m not a big fan of alloca myself, as it is not very portable. Now that you&apos;re on this part of the code, it&apos;d be good to replace it with new+delete or a smart pointer.

&gt; Source/WebKit/efl/ewk/ewk_cookies.cpp:104
&gt; +        } else
&gt; +            CRITICAL(&quot;Could not allocate Ewk_Cookie.&quot;);

Has this happened in your daily usage? I&apos;m asking because every once in a while patches checking for memory allocations are sent and most of the time they are rejected for the same reason (there&apos;s not much point in checking for every allocation failure across WebKit/WebCore).

&gt; Source/WebKit/efl/ewk/ewk_window_features.cpp:126
&gt; +    if (!window_features-&gt;core) {
&gt; +        CRITICAL(&quot;Could not allocate WebCore::WindowFeatures.&quot;);
&gt; +        return 0;
&gt; +    }

Ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>501899</commentid>
    <comment_count>3</comment_count>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2011-11-14 07:35:18 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 114478 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=114478&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/efl/ScrollbarEfl.cpp:160
&gt; &gt; +    Edje_Message_Float_Set* message = static_cast&lt;Edje_Message_Float_Set*&gt;
&gt; &gt; +        (alloca(sizeof(Edje_Message_Float_Set) + sizeof(float)));
&gt; 
&gt; I&apos;m not a big fan of alloca myself, as it is not very portable. Now that you&apos;re on this part of the code, it&apos;d be good to replace it with new+delete or a smart pointer.

Yes, you&apos;re right. As I know all new/delete and malloc/free calls will be replaced in one patch so it would be better to use new+delete here instead of alloca.

&gt; 
&gt; &gt; Source/WebKit/efl/ewk/ewk_cookies.cpp:104
&gt; &gt; +        } else
&gt; &gt; +            CRITICAL(&quot;Could not allocate Ewk_Cookie.&quot;);
&gt; 
&gt; Has this happened in your daily usage? I&apos;m asking because every once in a while patches checking for memory allocations are sent and most of the time they are rejected for the same reason (there&apos;s not much point in checking for every allocation failure across WebKit/WebCore).

No, it hasn&apos;t. But generally WebKit-EFL checks the most of allocation failure. And some patches have already been landed, for example
https://bugs.webkit.org/show_bug.cgi?id=64932
https://bugs.webkit.org/show_bug.cgi?id=65853</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512725</commentid>
    <comment_count>4</comment_count>
      <attachid>117406</attachid>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2011-12-01 06:36:12 -0800</bug_when>
    <thetext>Created attachment 117406
updated patch

Replaced alloca to new/delete in compliance with WebKit coding style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512731</commentid>
    <comment_count>5</comment_count>
      <attachid>117408</attachid>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2011-12-01 06:45:51 -0800</bug_when>
    <thetext>Created attachment 117408
updated patch

In the previous patch only pointer was freed but whole table should be deleted.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512732</commentid>
    <comment_count>6</comment_count>
      <attachid>117409</attachid>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2011-12-01 06:47:00 -0800</bug_when>
    <thetext>Created attachment 117409
updated patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513718</commentid>
    <comment_count>7</comment_count>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2011-12-02 06:20:53 -0800</bug_when>
    <thetext>Hi Kubo,
I uploaded a new patch - alloca was changed to new/delete.
Could you review this patch again?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>513771</commentid>
    <comment_count>8</comment_count>
      <attachid>117409</attachid>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2011-12-02 08:14:35 -0800</bug_when>
    <thetext>Comment on attachment 117409
updated patch

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

I still think it is not needed to check for all these conditions. Speaking of other bug reports, https://bugs.webkit.org/show_bug.cgi?id=65408#c12 still makes a lot of sense (even though the patch ended up being committed).

&gt; Source/WebCore/platform/efl/ScrollbarEfl.cpp:162
&gt; +    Edje_Message_Float_Set* message = 0;
&gt; +    char* mem = 0;
&gt; +    if (mem = new char[sizeof(Edje_Message_Float_Set) + sizeof(double)])
&gt; +        message = new(mem) Edje_Message_Float_Set;

This ended up looking quite ugly due to Edje&apos;s brain-dead way of manipulating this data structure. My suggestion is to just use
  Edje_Message_Float_Set* message = static_cast&lt;Edje_Message_Float_Set*&gt;(malloc(sizeof(Edje_Message_Float_set) + sizeof(double)));
  if (!message) {
    // yadda yadda
  }
and then free() message after sending it.

If a reviewer prefers the use of placement new here, I suggest the following:
  char* mem = new char[sizeof(Edje_Message_Float_Set) * sizeof(double)];
  Edje_Message_Float_Set* message = new(mem) Edje_Message_Float_Set;
in this case, I don&apos;t even think it makes sense to check if the allocation fails, as new never returns NULL.

&gt; Source/WebKit/efl/ewk/ewk_cookies.cpp:104
&gt; +        } else
&gt; +            CRITICAL(&quot;Could not allocate Ewk_Cookie.&quot;);

I still wonder if this is really needed. Assuming the hypothetical case in which malloc fails in the middle of the loop, you nonetheless continue trying to allocate other Ewk_Cookies to add them to the list and then return. I don&apos;t think this helps the caller all that much.

&gt; Source/WebKit/efl/ewk/ewk_window_features.cpp:126
&gt; +    if (!window_features-&gt;core) {
&gt; +        CRITICAL(&quot;Could not allocate WebCore::WindowFeatures.&quot;);
&gt; +        return 0;
&gt; +    }

new never returns NULL.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>515912</commentid>
    <comment_count>9</comment_count>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2011-12-06 07:50:00 -0800</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 117409 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=117409&amp;action=review
&gt; 
&gt; I still think it is not needed to check for all these conditions. Speaking of other bug reports, https://bugs.webkit.org/show_bug.cgi?id=65408#c12 still makes a lot of sense (even though the patch ended up being committed).
&gt; 
&gt; &gt; Source/WebCore/platform/efl/ScrollbarEfl.cpp:162
&gt; &gt; +    Edje_Message_Float_Set* message = 0;
&gt; &gt; +    char* mem = 0;
&gt; &gt; +    if (mem = new char[sizeof(Edje_Message_Float_Set) + sizeof(double)])
&gt; &gt; +        message = new(mem) Edje_Message_Float_Set;
&gt; 
&gt; This ended up looking quite ugly due to Edje&apos;s brain-dead way of manipulating this data structure. My suggestion is to just use
&gt;   Edje_Message_Float_Set* message = static_cast&lt;Edje_Message_Float_Set*&gt;(malloc(sizeof(Edje_Message_Float_set) + sizeof(double)));
&gt;   if (!message) {
&gt;     // yadda yadda
&gt;   }
&gt; and then free() message after sending it.
&gt; 
&gt; If a reviewer prefers the use of placement new here, I suggest the following:
&gt;   char* mem = new char[sizeof(Edje_Message_Float_Set) * sizeof(double)];
&gt;   Edje_Message_Float_Set* message = new(mem) Edje_Message_Float_Set;
&gt; in this case, I don&apos;t even think it makes sense to check if the allocation fails, as new never returns NULL

Ok, I will skip NULL checks for pointers initialized by new. 

&gt; 
&gt; &gt; Source/WebKit/efl/ewk/ewk_cookies.cpp:104
&gt; &gt; +        } else
&gt; &gt; +            CRITICAL(&quot;Could not allocate Ewk_Cookie.&quot;);
&gt; 
&gt; I still wonder if this is really needed. Assuming the hypothetical case in which malloc fails in the middle of the loop, you nonetheless continue trying to allocate other Ewk_Cookies to add them to the list and then return. I don&apos;t think this helps the caller all that much.


Do you prefer to stop loop in case of malloc failure and destroy (by free()) allocated memory? A similar solution in used in ewk_frame_source_get().

&gt; 
&gt; &gt; Source/WebKit/efl/ewk/ewk_window_features.cpp:126
&gt; &gt; +    if (!window_features-&gt;core) {
&gt; &gt; +        CRITICAL(&quot;Could not allocate WebCore::WindowFeatures.&quot;);
&gt; &gt; +        return 0;
&gt; &gt; +    }
&gt; 
&gt; new never returns NULL.

Ok, thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>515919</commentid>
    <comment_count>10</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2011-12-06 08:02:50 -0800</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; &gt; Source/WebKit/efl/ewk/ewk_cookies.cpp:104
&gt; &gt; &gt; +        } else
&gt; &gt; &gt; +            CRITICAL(&quot;Could not allocate Ewk_Cookie.&quot;);
&gt; &gt; 
&gt; &gt; I still wonder if this is really needed. Assuming the hypothetical case in which malloc fails in the middle of the loop, you nonetheless continue trying to allocate other Ewk_Cookies to add them to the list and then return. I don&apos;t think this helps the caller all that much.
&gt; 
&gt; Do you prefer to stop loop in case of malloc failure and destroy (by free()) allocated memory?

Well, I&apos;m generally against the idea of checking all those allocations :) You will end up doing a lot more work for a hypothetical situation in which you are already pretty much screwed up.

&gt; A similar solution in used in ewk_frame_source_get().

Sorry, I couldn&apos;t find similar code in that function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>528760</commentid>
    <comment_count>11</comment_count>
      <attachid>120943</attachid>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2012-01-03 07:14:35 -0800</bug_when>
    <thetext>Created attachment 120943
proposed patch

As a conclusion of above discussion NULL checking isn&apos;t needed in these cases.
I only replaced calling alloca to C++ new placement for three reasons:
1. alloca it is not very portable.
2. NULL checking isn&apos;t required as new never returns NULL,
3. in compliance with WebKit coding style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>529556</commentid>
    <comment_count>12</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-01-04 09:14:38 -0800</bug_when>
    <thetext>Should be OK, albeit ugly :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>530050</commentid>
    <comment_count>13</comment_count>
      <attachid>121226</attachid>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2012-01-05 00:05:52 -0800</bug_when>
    <thetext>Created attachment 121226
updated patch

Buffer is created on stack so we don&apos;t need to delete it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>530053</commentid>
    <comment_count>14</comment_count>
      <attachid>121226</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2012-01-05 00:10:44 -0800</bug_when>
    <thetext>Comment on attachment 121226
updated patch

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

r=me

&gt; Source/WebCore/platform/efl/ScrollbarEfl.cpp:164
&gt; -    Edje_Message_Float_Set* message = static_cast&lt;Edje_Message_Float_Set*&gt;
&gt; -        (alloca(sizeof(Edje_Message_Float_Set) + sizeof(float)));
&gt; +    char buffer[sizeof(Edje_Message_Float_Set) + sizeof(double)];
&gt; +    Edje_Message_Float_Set* message = reinterpret_cast&lt;Edje_Message_Float_Set*&gt;(buffer);

Please note in the ChangeLog why you are changing from float to double.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>530078</commentid>
    <comment_count>15</comment_count>
      <attachid>121235</attachid>
    <who name="Grzegorz Czajkowski">g.czajkowski</who>
    <bug_when>2012-01-05 01:03:05 -0800</bug_when>
    <thetext>Created attachment 121235
updated patch

Added reason of changing float to double to ChangeLog.
Patch for landing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>530279</commentid>
    <comment_count>16</comment_count>
      <attachid>121235</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-05 07:47:17 -0800</bug_when>
    <thetext>Comment on attachment 121235
updated patch

Clearing flags on attachment: 121235

Committed r104163: &lt;http://trac.webkit.org/changeset/104163&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>530280</commentid>
    <comment_count>17</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-05 07:47:23 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>114478</attachid>
            <date>2011-11-10 05:38:25 -0800</date>
            <delta_ts>2011-12-01 06:36:12 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>null_check_after_memory_allocation.patch</filename>
            <type>text/plain</type>
            <size>5119</size>
            <attacher name="Grzegorz Czajkowski">g.czajkowski</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjNjUxMmMyLi5kMzY0ODgyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUg
QEAKKzIwMTEtMTEtMTAgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3Vu
Zy5jb20+CisKKyAgICAgICAgW0VGTF0gQWRkIE5VTEwgY2hlY2tzIGFmdGVyIG1lbW9yeSBhbGxv
Y2F0aW9uLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NzIwMTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGRzIE5VTEwgY2hlY2tzIGJlZm9yZSBhY2Nlc3MgdG8gcG9pbnRlciB3aGljaCBpcyBpbml0aWFs
aXplZCBieSBhbGxvY2EuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvU2Nyb2xsYmFyRWZsLmNw
cDoKKyAgICAgICAgKFNjcm9sbGJhckVmbDo6dXBkYXRlVGh1bWJQb3NpdGlvbkFuZFByb3BvcnRp
b24pOgorCiAyMDExLTExLTEwICBOaWtvbGFzIFppbW1lcm1hbm4gIDxuemltbWVybWFubkByaW0u
Y29tPgogCiAgICAgICAgIERlcGxveSBTVkdMZW5ndGhDb250ZXh0IGluIG1vcmUgcGxhY2VzCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9lZmwvU2Nyb2xsYmFyRWZsLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9TY3JvbGxiYXJFZmwuY3BwCmluZGV4IGNlMTIz
MGEuLjM3OGEwNzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9TY3Jv
bGxiYXJFZmwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9TY3JvbGxiYXJF
ZmwuY3BwCkBAIC0xNTYsMTIgKzE1NiwxNiBAQCB2b2lkIFNjcm9sbGJhckVmbDo6dXBkYXRlVGh1
bWJQb3NpdGlvbkFuZFByb3BvcnRpb24oKQogICAgICAgICAmJiBtX2xhc3RWaXNpYmxlU2l6ZSA9
PSB2U2l6ZSkKICAgICAgICAgcmV0dXJuOwogCisgICAgRWRqZV9NZXNzYWdlX0Zsb2F0X1NldCog
bWVzc2FnZSA9IHN0YXRpY19jYXN0PEVkamVfTWVzc2FnZV9GbG9hdF9TZXQqPgorICAgICAgICAo
YWxsb2NhKHNpemVvZihFZGplX01lc3NhZ2VfRmxvYXRfU2V0KSArIHNpemVvZihmbG9hdCkpKTsK
KyAgICBpZiAoIW1lc3NhZ2UpIHsKKyAgICAgICAgRUlOQV9MT0dfRVJSKCJDb3VsZCBub3QgYWxs
b2NhdGUgRWRqZV9NZXNzYWdlX0Zsb2F0X1NldC4iKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0K
KwogICAgIG1fbGFzdFBvcyA9IHBvczsKICAgICBtX2xhc3RUb3RhbFNpemUgPSB0U2l6ZTsKICAg
ICBtX2xhc3RWaXNpYmxlU2l6ZSA9IHZTaXplOwotCi0gICAgRWRqZV9NZXNzYWdlX0Zsb2F0X1Nl
dCogbWVzc2FnZSA9IHN0YXRpY19jYXN0PEVkamVfTWVzc2FnZV9GbG9hdF9TZXQqPgotICAgICAg
ICAoYWxsb2NhKHNpemVvZihFZGplX01lc3NhZ2VfRmxvYXRfU2V0KSArIHNpemVvZihmbG9hdCkp
KTsKICAgICBtZXNzYWdlLT5jb3VudCA9IDI7CiAKICAgICBpZiAodFNpemUgLSB2U2l6ZSA+IDAp
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0
L2VmbC9DaGFuZ2VMb2cKaW5kZXggOTMyMTY2OS4uOTZkNGMyZCAxMDA3NTUKLS0tIGEvU291cmNl
L1dlYktpdC9lZmwvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDIwIEBACisyMDExLTExLTEwICBHcnplZ29yeiBDemFqa293c2tpICA8Zy5jemFq
a293c2tpQHNhbXN1bmcuY29tPgorCisgICAgICAgIFtFRkxdIEFkZCBOVUxMIGNoZWNrcyBhZnRl
ciBtZW1vcnkgYWxsb2NhdGlvbi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTcyMDE3CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgQWRkcyBOVUxMIGNoZWNrIHRvIGV3a193aW5kb3dfZmVhdHVyZXNfbmV3X2Zy
b21fY29yZSBhZnRlciBjcmVhdGluZyBhIG5ldyBpbnN0YW5jZSBvZiBXZWJDb3JlJ3MgV2luZG93
RmVhdHVyZXMuCisgICAgICAgIEl0IHByZXZlbnRzIHVuZXhwZWN0ZWQgcmVzdWx0IHdoaWxlIGNh
bGxpbmcgZXdrX3dpbmRvd19mZWF0dXJlc191bnJlZiBpZiBXaW5kb3dGZWF0dXJlcyBpcyBOVUxM
LgorICAgICAgICBBZGRzIE5VTEwgY2hlY2sgdG8gZXdrX2Nvb2tpZXNfZ2V0X2FsbCB3aGljaCBy
ZXR1cm5zIGxpc3Qgb2YgY29va2llcy4KKyAgICAgICAgQ29va2llIHdvbid0IGJlIGFkZGVkIElm
IG1hbGxvYyByZXR1cm5zIE5VTEwuCisKKyAgICAgICAgKiBld2svZXdrX2Nvb2tpZXMuY3BwOgor
ICAgICAgICAoZXdrX2Nvb2tpZXNfZ2V0X2FsbCk6CisgICAgICAgICogZXdrL2V3a193aW5kb3df
ZmVhdHVyZXMuY3BwOgorICAgICAgICAoZXdrX3dpbmRvd19mZWF0dXJlc19uZXdfZnJvbV9jb3Jl
KToKKwogMjAxMS0xMS0wOSAgUmFwaGFlbCBLdWJvIGRhIENvc3RhICA8a3Vib0Bwcm9mdXNpb24u
bW9iaT4KIAogICAgICAgICBbRUZMXSBSZW1vdmUgdW5uZWNlc3NhcnkgY2FzdHMgd2hlbiBjcmVh
dGluZyB0aGUgV2ViQ29yZVN1cHBvcnQgb2JqZWN0cyBpbiBld2tfdmlldy4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfY29va2llcy5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Vm
bC9ld2svZXdrX2Nvb2tpZXMuY3BwCmluZGV4IGVlZDVlOTcuLmViMzhhYmUgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfY29va2llcy5jcHAKKysrIGIvU291cmNlL1dlYktp
dC9lZmwvZXdrL2V3a19jb29raWVzLmNwcApAQCAtMjYsNiArMjYsNyBAQAogI2VuZGlmCiAjaW5j
bHVkZSAiRVdlYktpdC5oIgogI2luY2x1ZGUgIlJlc291cmNlSGFuZGxlLmgiCisjaW5jbHVkZSAi
ZXdrX2xvZ2dpbmcuaCIKIAogI2luY2x1ZGUgPEVpbmEuaD4KICNpbmNsdWRlIDxlaW5hX3NhZmV0
eV9jaGVja3MuaD4KQEAgLTkwLDE1ICs5MSwxNyBAQCBFaW5hX0xpc3QqIGV3a19jb29raWVzX2dl
dF9hbGwodm9pZCkKICAgICBsaXN0ID0gc291cF9jb29raWVfamFyX2FsbF9jb29raWVzKGNvb2tp
ZUphcik7CiAgICAgZm9yIChwID0gbGlzdDsgcDsgcCA9IHAtPm5leHQpIHsKICAgICAgICAgU291
cENvb2tpZSogY29va2llID0gc3RhdGljX2Nhc3Q8U291cENvb2tpZSo+KHAtPmRhdGEpOwotICAg
ICAgICBFd2tfQ29va2llKiBld2tDb29raWUgPSBzdGF0aWNfY2FzdDxFd2tfQ29va2llKj4obWFs
bG9jKHNpemVvZigqZXdrQ29va2llKSkpOwotICAgICAgICBld2tDb29raWUtPm5hbWUgPSBzdHJk
dXAoY29va2llLT5uYW1lKTsKLSAgICAgICAgZXdrQ29va2llLT52YWx1ZSA9IHN0cmR1cChjb29r
aWUtPnZhbHVlKTsKLSAgICAgICAgZXdrQ29va2llLT5kb21haW4gPSBzdHJkdXAoY29va2llLT5k
b21haW4pOwotICAgICAgICBld2tDb29raWUtPnBhdGggPSBzdHJkdXAoY29va2llLT5wYXRoKTsK
LSAgICAgICAgZXdrQ29va2llLT5leHBpcmVzID0gc291cF9kYXRlX3RvX3RpbWVfdChjb29raWUt
PmV4cGlyZXMpOwotICAgICAgICBld2tDb29raWUtPnNlY3VyZSA9IHN0YXRpY19jYXN0PEVpbmFf
Qm9vbD4oY29va2llLT5zZWN1cmUpOwotICAgICAgICBld2tDb29raWUtPmh0dHBfb25seSA9IHN0
YXRpY19jYXN0PEVpbmFfQm9vbD4oY29va2llLT5odHRwX29ubHkpOwotICAgICAgICByZXN1bHQg
PSBlaW5hX2xpc3RfYXBwZW5kKHJlc3VsdCwgZXdrQ29va2llKTsKKyAgICAgICAgaWYgKEV3a19D
b29raWUqIGV3a0Nvb2tpZSA9IHN0YXRpY19jYXN0PEV3a19Db29raWUqPihtYWxsb2Moc2l6ZW9m
KCpld2tDb29raWUpKSkpIHsKKyAgICAgICAgICAgIGV3a0Nvb2tpZS0+bmFtZSA9IHN0cmR1cChj
b29raWUtPm5hbWUpOworICAgICAgICAgICAgZXdrQ29va2llLT52YWx1ZSA9IHN0cmR1cChjb29r
aWUtPnZhbHVlKTsKKyAgICAgICAgICAgIGV3a0Nvb2tpZS0+ZG9tYWluID0gc3RyZHVwKGNvb2tp
ZS0+ZG9tYWluKTsKKyAgICAgICAgICAgIGV3a0Nvb2tpZS0+cGF0aCA9IHN0cmR1cChjb29raWUt
PnBhdGgpOworICAgICAgICAgICAgZXdrQ29va2llLT5leHBpcmVzID0gc291cF9kYXRlX3RvX3Rp
bWVfdChjb29raWUtPmV4cGlyZXMpOworICAgICAgICAgICAgZXdrQ29va2llLT5zZWN1cmUgPSBz
dGF0aWNfY2FzdDxFaW5hX0Jvb2w+KGNvb2tpZS0+c2VjdXJlKTsKKyAgICAgICAgICAgIGV3a0Nv
b2tpZS0+aHR0cF9vbmx5ID0gc3RhdGljX2Nhc3Q8RWluYV9Cb29sPihjb29raWUtPmh0dHBfb25s
eSk7CisgICAgICAgICAgICByZXN1bHQgPSBlaW5hX2xpc3RfYXBwZW5kKHJlc3VsdCwgZXdrQ29v
a2llKTsKKyAgICAgICAgfSBlbHNlCisgICAgICAgICAgICBDUklUSUNBTCgiQ291bGQgbm90IGFs
bG9jYXRlIEV3a19Db29raWUuIik7CiAgICAgfQogCiAgICAgc291cF9jb29raWVzX2ZyZWUobGlz
dCk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3dpbmRvd19mZWF0dXJl
cy5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3dpbmRvd19mZWF0dXJlcy5jcHAKaW5k
ZXggMDljZjI3Yi4uYTg1YjFkMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3
a193aW5kb3dfZmVhdHVyZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfd2lu
ZG93X2ZlYXR1cmVzLmNwcApAQCAtMTIwLDYgKzEyMCwxMSBAQCBFd2tfV2luZG93X0ZlYXR1cmVz
KiBld2tfd2luZG93X2ZlYXR1cmVzX25ld19mcm9tX2NvcmUoY29uc3QgV2ViQ29yZTo6V2luZG93
RmVhdAogICAgIGVsc2UKICAgICAgICAgd2luZG93X2ZlYXR1cmVzLT5jb3JlID0gbmV3IFdlYkNv
cmU6OldpbmRvd0ZlYXR1cmVzKCk7CiAKKyAgICBpZiAoIXdpbmRvd19mZWF0dXJlcy0+Y29yZSkg
eworICAgICAgICBDUklUSUNBTCgiQ291bGQgbm90IGFsbG9jYXRlIFdlYkNvcmU6OldpbmRvd0Zl
YXR1cmVzLiIpOworICAgICAgICByZXR1cm4gMDsKKyAgICB9CisKICAgICB3aW5kb3dfZmVhdHVy
ZXMtPl9fcmVmID0gMTsKIAogICAgIHJldHVybiB3aW5kb3dfZmVhdHVyZXM7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>117406</attachid>
            <date>2011-12-01 06:36:12 -0800</date>
            <delta_ts>2011-12-01 06:45:51 -0800</delta_ts>
            <desc>updated patch</desc>
            <filename>null_check_after_memory_allocation.patch</filename>
            <type>text/plain</type>
            <size>5469</size>
            <attacher name="Grzegorz Czajkowski">g.czajkowski</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3Mzc0OWY2Li4zMjI1YTE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYg
QEAKKzIwMTEtMTEtMzAgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3Vu
Zy5jb20+CisKKyAgICAgICAgW0VGTF0gQWRkIE5VTEwgY2hlY2tzIGFmdGVyIG1lbW9yeSBhbGxv
Y2F0aW9uLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NzIwMTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGRzIE5VTEwgY2hlY2sgYmVmb3JlIGFjY2VzcyB0byBwb2ludGVyIHdoaWNoIGlzIGluaXRpYWxp
emVkLgorICAgICAgICBBZGRpdGlvbmFseSByZXBsYWNlIGNhbGxpbmcgYWxsb2NhIHRvIEMrKyBu
ZXcvZGVsZXRlIGluIGNvbXBsaWFuY2Ugd2l0aCBXZWJLaXQgc3R5bGUuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9lZmwvU2Nyb2xsYmFyRWZsLmNwcDoKKyAgICAgICAgKFNjcm9sbGJhckVmbDo6dXBk
YXRlVGh1bWJQb3NpdGlvbkFuZFByb3BvcnRpb24pOgorCiAyMDExLTExLTI0ICBQaGlsaXBwZSBO
b3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBGaXggQVNTRVJUcyBhZGRl
ZCBpbiByMTAxMDgyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1Nj
cm9sbGJhckVmbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9lZmwvU2Nyb2xsYmFyRWZs
LmNwcAppbmRleCBjZTEyMzBhLi4wY2ZiZGY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9lZmwvU2Nyb2xsYmFyRWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9lZmwvU2Nyb2xsYmFyRWZsLmNwcApAQCAtMTU2LDEyICsxNTYsMTggQEAgdm9pZCBTY3JvbGxi
YXJFZmw6OnVwZGF0ZVRodW1iUG9zaXRpb25BbmRQcm9wb3J0aW9uKCkKICAgICAgICAgJiYgbV9s
YXN0VmlzaWJsZVNpemUgPT0gdlNpemUpCiAgICAgICAgIHJldHVybjsKIAorICAgIEVkamVfTWVz
c2FnZV9GbG9hdF9TZXQqIG1lc3NhZ2UgPSAwOworICAgIGNoYXIqIG1lbSA9IDA7CisgICAgaWYg
KG1lbSA9IG5ldyBjaGFyW3NpemVvZihFZGplX01lc3NhZ2VfRmxvYXRfU2V0KSArIHNpemVvZihk
b3VibGUpXSkKKyAgICAgICAgbWVzc2FnZSA9IG5ldyhtZW0pIEVkamVfTWVzc2FnZV9GbG9hdF9T
ZXQ7CisgICAgZWxzZSB7CisgICAgICAgIEVJTkFfTE9HX0VSUigiQ291bGQgbm90IGFsbG9jYXRl
IEVkamVfTWVzc2FnZV9GbG9hdF9TZXQuIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAg
ICBtX2xhc3RQb3MgPSBwb3M7CiAgICAgbV9sYXN0VG90YWxTaXplID0gdFNpemU7CiAgICAgbV9s
YXN0VmlzaWJsZVNpemUgPSB2U2l6ZTsKLQotICAgIEVkamVfTWVzc2FnZV9GbG9hdF9TZXQqIG1l
c3NhZ2UgPSBzdGF0aWNfY2FzdDxFZGplX01lc3NhZ2VfRmxvYXRfU2V0Kj4KLSAgICAgICAgKGFs
bG9jYShzaXplb2YoRWRqZV9NZXNzYWdlX0Zsb2F0X1NldCkgKyBzaXplb2YoZmxvYXQpKSk7CiAg
ICAgbWVzc2FnZS0+Y291bnQgPSAyOwogCiAgICAgaWYgKHRTaXplIC0gdlNpemUgPiAwKQpAQCAt
MTc1LDYgKzE4MSw3IEBAIHZvaWQgU2Nyb2xsYmFyRWZsOjp1cGRhdGVUaHVtYlBvc2l0aW9uQW5k
UHJvcG9ydGlvbigpCiAgICAgICAgIG1lc3NhZ2UtPnZhbFsxXSA9IDAuMDsKIAogICAgIGVkamVf
b2JqZWN0X21lc3NhZ2Vfc2VuZChwbGF0Zm9ybVdpZGdldCgpLCBFREpFX01FU1NBR0VfRkxPQVRf
U0VULCAwLCBtZXNzYWdlKTsKKyAgICBkZWxldGUgbWVtOwogfQogCiB2b2lkIFNjcm9sbGJhckVm
bDo6c2V0RnJhbWVSZWN0KGNvbnN0IEludFJlY3QmIHJlY3QpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0L2VmbC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKaW5kZXgg
NGVmMjA3Mi4uY2MxOGE4OCAxMDA3NTUKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9n
CisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEx
LTExLTMwICBHcnplZ29yeiBDemFqa293c2tpICA8Zy5jemFqa293c2tpQHNhbXN1bmcuY29tPgor
CisgICAgICAgIFtFRkxdIEFkZCBOVUxMIGNoZWNrcyBhZnRlciBtZW1vcnkgYWxsb2NhdGlvbi4K
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyMDE3CisK
KyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkcyBOVUxM
IGNoZWNrIHRvIGV3a193aW5kb3dfZmVhdHVyZXNfbmV3X2Zyb21fY29yZSBhZnRlciBjcmVhdGlu
ZyBhIG5ldyBpbnN0YW5jZSBvZiBXZWJDb3JlJ3MgV2luZG93RmVhdHVyZXMuCisgICAgICAgIEl0
IHByZXZlbnRzIHVuZXhwZWN0ZWQgcmVzdWx0IHdoaWxlIGNhbGxpbmcgZXdrX3dpbmRvd19mZWF0
dXJlc191bnJlZiBpZiBXaW5kb3dGZWF0dXJlcyBpcyBOVUxMLgorICAgICAgICBBZGRzIE5VTEwg
Y2hlY2sgdG8gZXdrX2Nvb2tpZXNfZ2V0X2FsbCB3aGljaCByZXR1cm5zIGxpc3Qgb2YgY29va2ll
cy4KKyAgICAgICAgQ29va2llIHdvbid0IGJlIGFkZGVkIElmIG1hbGxvYyByZXR1cm5zIE5VTEwu
CisKKyAgICAgICAgKiBld2svZXdrX2Nvb2tpZXMuY3BwOgorICAgICAgICAoZXdrX2Nvb2tpZXNf
Z2V0X2FsbCk6CisgICAgICAgICogZXdrL2V3a193aW5kb3dfZmVhdHVyZXMuY3BwOgorICAgICAg
ICAoZXdrX3dpbmRvd19mZWF0dXJlc19uZXdfZnJvbV9jb3JlKToKKwogMjAxMS0xMS0yMiAgUGF2
ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGdvb2dsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3BlY3Rv
cjogcmVtb3ZlIEluc3BlY3Rvcjo6YnJpbmdUb0Zyb250IGZyb20gdGhlIHByb3RvY29sLgpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19jb29raWVzLmNwcCBiL1NvdXJjZS9X
ZWJLaXQvZWZsL2V3ay9ld2tfY29va2llcy5jcHAKaW5kZXggZWVkNWU5Ny4uZWIzOGFiZSAxMDA2
NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19jb29raWVzLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViS2l0L2VmbC9ld2svZXdrX2Nvb2tpZXMuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAjZW5k
aWYKICNpbmNsdWRlICJFV2ViS2l0LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGUuaCIKKyNp
bmNsdWRlICJld2tfbG9nZ2luZy5oIgogCiAjaW5jbHVkZSA8RWluYS5oPgogI2luY2x1ZGUgPGVp
bmFfc2FmZXR5X2NoZWNrcy5oPgpAQCAtOTAsMTUgKzkxLDE3IEBAIEVpbmFfTGlzdCogZXdrX2Nv
b2tpZXNfZ2V0X2FsbCh2b2lkKQogICAgIGxpc3QgPSBzb3VwX2Nvb2tpZV9qYXJfYWxsX2Nvb2tp
ZXMoY29va2llSmFyKTsKICAgICBmb3IgKHAgPSBsaXN0OyBwOyBwID0gcC0+bmV4dCkgewogICAg
ICAgICBTb3VwQ29va2llKiBjb29raWUgPSBzdGF0aWNfY2FzdDxTb3VwQ29va2llKj4ocC0+ZGF0
YSk7Ci0gICAgICAgIEV3a19Db29raWUqIGV3a0Nvb2tpZSA9IHN0YXRpY19jYXN0PEV3a19Db29r
aWUqPihtYWxsb2Moc2l6ZW9mKCpld2tDb29raWUpKSk7Ci0gICAgICAgIGV3a0Nvb2tpZS0+bmFt
ZSA9IHN0cmR1cChjb29raWUtPm5hbWUpOwotICAgICAgICBld2tDb29raWUtPnZhbHVlID0gc3Ry
ZHVwKGNvb2tpZS0+dmFsdWUpOwotICAgICAgICBld2tDb29raWUtPmRvbWFpbiA9IHN0cmR1cChj
b29raWUtPmRvbWFpbik7Ci0gICAgICAgIGV3a0Nvb2tpZS0+cGF0aCA9IHN0cmR1cChjb29raWUt
PnBhdGgpOwotICAgICAgICBld2tDb29raWUtPmV4cGlyZXMgPSBzb3VwX2RhdGVfdG9fdGltZV90
KGNvb2tpZS0+ZXhwaXJlcyk7Ci0gICAgICAgIGV3a0Nvb2tpZS0+c2VjdXJlID0gc3RhdGljX2Nh
c3Q8RWluYV9Cb29sPihjb29raWUtPnNlY3VyZSk7Ci0gICAgICAgIGV3a0Nvb2tpZS0+aHR0cF9v
bmx5ID0gc3RhdGljX2Nhc3Q8RWluYV9Cb29sPihjb29raWUtPmh0dHBfb25seSk7Ci0gICAgICAg
IHJlc3VsdCA9IGVpbmFfbGlzdF9hcHBlbmQocmVzdWx0LCBld2tDb29raWUpOworICAgICAgICBp
ZiAoRXdrX0Nvb2tpZSogZXdrQ29va2llID0gc3RhdGljX2Nhc3Q8RXdrX0Nvb2tpZSo+KG1hbGxv
YyhzaXplb2YoKmV3a0Nvb2tpZSkpKSkgeworICAgICAgICAgICAgZXdrQ29va2llLT5uYW1lID0g
c3RyZHVwKGNvb2tpZS0+bmFtZSk7CisgICAgICAgICAgICBld2tDb29raWUtPnZhbHVlID0gc3Ry
ZHVwKGNvb2tpZS0+dmFsdWUpOworICAgICAgICAgICAgZXdrQ29va2llLT5kb21haW4gPSBzdHJk
dXAoY29va2llLT5kb21haW4pOworICAgICAgICAgICAgZXdrQ29va2llLT5wYXRoID0gc3RyZHVw
KGNvb2tpZS0+cGF0aCk7CisgICAgICAgICAgICBld2tDb29raWUtPmV4cGlyZXMgPSBzb3VwX2Rh
dGVfdG9fdGltZV90KGNvb2tpZS0+ZXhwaXJlcyk7CisgICAgICAgICAgICBld2tDb29raWUtPnNl
Y3VyZSA9IHN0YXRpY19jYXN0PEVpbmFfQm9vbD4oY29va2llLT5zZWN1cmUpOworICAgICAgICAg
ICAgZXdrQ29va2llLT5odHRwX29ubHkgPSBzdGF0aWNfY2FzdDxFaW5hX0Jvb2w+KGNvb2tpZS0+
aHR0cF9vbmx5KTsKKyAgICAgICAgICAgIHJlc3VsdCA9IGVpbmFfbGlzdF9hcHBlbmQocmVzdWx0
LCBld2tDb29raWUpOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIENSSVRJQ0FMKCJDb3Vs
ZCBub3QgYWxsb2NhdGUgRXdrX0Nvb2tpZS4iKTsKICAgICB9CiAKICAgICBzb3VwX2Nvb2tpZXNf
ZnJlZShsaXN0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfd2luZG93
X2ZlYXR1cmVzLmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfd2luZG93X2ZlYXR1cmVz
LmNwcAppbmRleCAwOWNmMjdiLi5hODViMWQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L2Vm
bC9ld2svZXdrX3dpbmRvd19mZWF0dXJlcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9lZmwvZXdr
L2V3a193aW5kb3dfZmVhdHVyZXMuY3BwCkBAIC0xMjAsNiArMTIwLDExIEBAIEV3a19XaW5kb3df
RmVhdHVyZXMqIGV3a193aW5kb3dfZmVhdHVyZXNfbmV3X2Zyb21fY29yZShjb25zdCBXZWJDb3Jl
OjpXaW5kb3dGZWF0CiAgICAgZWxzZQogICAgICAgICB3aW5kb3dfZmVhdHVyZXMtPmNvcmUgPSBu
ZXcgV2ViQ29yZTo6V2luZG93RmVhdHVyZXMoKTsKIAorICAgIGlmICghd2luZG93X2ZlYXR1cmVz
LT5jb3JlKSB7CisgICAgICAgIENSSVRJQ0FMKCJDb3VsZCBub3QgYWxsb2NhdGUgV2ViQ29yZTo6
V2luZG93RmVhdHVyZXMuIik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKwogICAgIHdpbmRv
d19mZWF0dXJlcy0+X19yZWYgPSAxOwogCiAgICAgcmV0dXJuIHdpbmRvd19mZWF0dXJlczsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>117408</attachid>
            <date>2011-12-01 06:45:51 -0800</date>
            <delta_ts>2011-12-01 06:47:00 -0800</delta_ts>
            <desc>updated patch</desc>
            <filename>null_check.patch</filename>
            <type>text/plain</type>
            <size>2899</size>
            <attacher name="Grzegorz Czajkowski">g.czajkowski</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
ZWZsL0NoYW5nZUxvZwppbmRleCBkZWMzODQ5Li45ZTQwYmI4IDEwMDc1NQotLS0gYS9Tb3VyY2Uv
V2ViS2l0L2VmbC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTcgQEAKKzIwMTEtMDktMTQgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWpr
b3dza2lAc2Ftc3VuZy5jb20+CisKKyAgICAgICAgW0VGTF0gQWRkIE5VTEwgY2hlY2tzIHRvIGV3
a193aW5kb3dfZmVhdHVyZXNfbmV3X2Zyb21fY29yZSBhbmQgZXdrX3ZpZXdfd2luZG93X2NyZWF0
ZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTY0OTMy
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCisKKyAgICAgICAgSXQgcHJldmVu
dHMgdGhlIGNyYXNoIHdoaWxlIGFsbG9jYXRpbmcgbWVtb3J5IGZvciB0aGUgbmV3IHdpbmRvdy4K
KworICAgICAgICAqIGV3ay9ld2tfdmlldy5jcHA6CisgICAgICAgIChld2tfdmlld193aW5kb3df
Y3JlYXRlKToKKyAgICAgICAgKiBld2svZXdrX3dpbmRvd19mZWF0dXJlcy5jcHA6CisgICAgICAg
IChld2tfd2luZG93X2ZlYXR1cmVzX25ld19mcm9tX2NvcmUpOgorCiAyMDExLTA5LTEzICBSYXBo
YWVsIEt1Ym8gZGEgQ29zdGEgIDxrdWJvQHByb2Z1c2lvbi5tb2JpPgogCiAgICAgICAgIFtFRkxd
IERvIG5vdCBhbHdheXMgcmV0dXJuIHRoZSBjYWNoZWQgZnJhbWUgbmFtZS4KZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0L2VmbC9l
d2svZXdrX3ZpZXcuY3BwCmluZGV4IDMyMjVjZDkuLmNlNTU1ZmQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJLaXQvZWZsL2V3ay9ld2tfdmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9lZmwvZXdr
L2V3a192aWV3LmNwcApAQCAtMjg2NCw3ICsyODY0LDcgQEAgdm9pZCBld2tfdmlld19yZXN0b3Jl
X3N0YXRlKEV2YXNfT2JqZWN0ICpvLCBFdmFzX09iamVjdCAqZnJhbWUpCiAgKiBOVUxMLCBpdCB3
aWxsIGJlIGNyZWF0ZWQgYSB3aW5kb3cgd2l0aCBkZWZhdWx0IGZlYXR1cmVzLgogICoKICAqIEBy
ZXR1cm4gTmV3IHZpZXcsIGluIGNhc2Ugc21hcnQgY2xhc3MgaW1wbGVtZW50cyB0aGUgY3JlYXRp
b24gb2YgbmV3IHdpbmRvd3M7Ci0gKiBlbHNlLCBjdXJyZW50IHZpZXcgQHBhcmFtIG8uCisgKiBl
bHNlLCBjdXJyZW50IHZpZXcgQHBhcmFtIG8gb3IgQGMgMCBvbiBmYWlsdXJlLgogICoKICAqIEBz
ZWUgZXdrX3dpbmRvd19mZWF0dXJlc19yZWYoKS4KICAqLwpAQCAtMjg3Niw2ICsyODc2LDkgQEAg
RXZhc19PYmplY3QgKmV3a192aWV3X3dpbmRvd19jcmVhdGUoRXZhc19PYmplY3QgKm8sIEVpbmFf
Qm9vbCBqYXZhc2NyaXB0LCBjb25zdAogICAgICAgICByZXR1cm4gbzsKIAogICAgIEV3a19XaW5k
b3dfRmVhdHVyZXMgKndpbmRvd19mZWF0dXJlcyA9IGV3a193aW5kb3dfZmVhdHVyZXNfbmV3X2Zy
b21fY29yZShjb3JlRmVhdHVyZXMpOworICAgIGlmICghd2luZG93X2ZlYXR1cmVzKQorICAgICAg
ICByZXR1cm4gMDsKKwogICAgIEV2YXNfT2JqZWN0KiB2aWV3ID0gc2QtPmFwaS0+d2luZG93X2Ny
ZWF0ZShzZCwgamF2YXNjcmlwdCwgd2luZG93X2ZlYXR1cmVzKTsKICAgICBld2tfd2luZG93X2Zl
YXR1cmVzX3VucmVmKHdpbmRvd19mZWF0dXJlcyk7CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQvZWZsL2V3ay9ld2tfd2luZG93X2ZlYXR1cmVzLmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3
ay9ld2tfd2luZG93X2ZlYXR1cmVzLmNwcAppbmRleCA2OWQ1MmY5Li40YmI2ZTA2IDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX3dpbmRvd19mZWF0dXJlcy5jcHAKKysrIGIv
U291cmNlL1dlYktpdC9lZmwvZXdrL2V3a193aW5kb3dfZmVhdHVyZXMuY3BwCkBAIC0xMDUsMTEg
KzEwNSwxNSBAQCB2b2lkIGV3a193aW5kb3dfZmVhdHVyZXNfaW50X3Byb3BlcnR5X2dldChjb25z
dCBFd2tfV2luZG93X0ZlYXR1cmVzICp3aW5kb3dfZmVhdAogICoKICAqIEBwYXJhbSBjb3JlIGlm
IG5vdCBAYyAwIGEgbmV3IFdlYkNvcmU6OldpbmRvd0ZlYXR1cmVzIGlzIGFsbG9jYXRlZCBjb3B5
aW5nIGNvcmUgZmVhdHVyZXMgYW5kCiAgKiBpdCBpcyBlbWJlZGRlZCBpbnNpZGUgdGhlIEV3a19X
aW5kb3dfRmVhdHVyZXMgd2hvc2UgcmVmIGNvdW50IGlzIGluaXRpYWxpemVkLCBpZiBjb3JlIGlz
IEBjIDAgYSBuZXcgb25lIGlzIGNyZWF0ZWQgd2l0aCB0aGUgZGVmYXVsdCBmZWF0dXJlcy4KLSAq
IEByZXR1cm5zIGEgbmV3IGFsbG9jYXRlZCB0aGUgRXdrX1dpbmRvd19GZWF0dXJlcyBvYmplY3QK
KyAqIEByZXR1cm4gYSBuZXcgYWxsb2NhdGVkIHRoZSBFd2tfV2luZG93X0ZlYXR1cmVzIG9iamVj
dCBvbiBzdWNlc3Mgb3IgQGMgMCBvbiBmYWlsdXJlCiAgKi8KIEV3a19XaW5kb3dfRmVhdHVyZXMg
KmV3a193aW5kb3dfZmVhdHVyZXNfbmV3X2Zyb21fY29yZShjb25zdCBXZWJDb3JlOjpXaW5kb3dG
ZWF0dXJlcyAqY29yZSkKIHsKICAgICBFd2tfV2luZG93X0ZlYXR1cmVzICp3aW5kb3dfZmVhdHVy
ZXMgPSBzdGF0aWNfY2FzdDxFd2tfV2luZG93X0ZlYXR1cmVzKj4obWFsbG9jKHNpemVvZigqd2lu
ZG93X2ZlYXR1cmVzKSkpOworICAgIGlmICghd2luZG93X2ZlYXR1cmVzKSB7CisgICAgICAgIENS
SVRJQ0FMKCJDb3VsZCBub3QgYWxsb2NhdGUgRXdrX1dpbmRvd19GZWF0dXJlcy4iKTsKKyAgICAg
ICAgcmV0dXJuIDA7CisgICAgfQogCiAgICAgaWYgKGNvcmUpCiAgICAgICAgIHdpbmRvd19mZWF0
dXJlcy0+Y29yZSA9IG5ldyBXZWJDb3JlOjpXaW5kb3dGZWF0dXJlcygqY29yZSk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>117409</attachid>
            <date>2011-12-01 06:47:00 -0800</date>
            <delta_ts>2012-01-03 07:14:35 -0800</delta_ts>
            <desc>updated patch</desc>
            <filename>null_check_after_memory_allocation.patch</filename>
            <type>text/plain</type>
            <size>5472</size>
            <attacher name="Grzegorz Czajkowski">g.czajkowski</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA3Mzc0OWY2Li4zMjI1YTE2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYg
QEAKKzIwMTEtMTEtMzAgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3Vu
Zy5jb20+CisKKyAgICAgICAgW0VGTF0gQWRkIE5VTEwgY2hlY2tzIGFmdGVyIG1lbW9yeSBhbGxv
Y2F0aW9uLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9
NzIwMTcKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBB
ZGRzIE5VTEwgY2hlY2sgYmVmb3JlIGFjY2VzcyB0byBwb2ludGVyIHdoaWNoIGlzIGluaXRpYWxp
emVkLgorICAgICAgICBBZGRpdGlvbmFseSByZXBsYWNlIGNhbGxpbmcgYWxsb2NhIHRvIEMrKyBu
ZXcvZGVsZXRlIGluIGNvbXBsaWFuY2Ugd2l0aCBXZWJLaXQgc3R5bGUuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9lZmwvU2Nyb2xsYmFyRWZsLmNwcDoKKyAgICAgICAgKFNjcm9sbGJhckVmbDo6dXBk
YXRlVGh1bWJQb3NpdGlvbkFuZFByb3BvcnRpb24pOgorCiAyMDExLTExLTI0ICBQaGlsaXBwZSBO
b3JtYW5kICA8cG5vcm1hbmRAaWdhbGlhLmNvbT4KIAogICAgICAgICBGaXggQVNTRVJUcyBhZGRl
ZCBpbiByMTAxMDgyLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1Nj
cm9sbGJhckVmbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9lZmwvU2Nyb2xsYmFyRWZs
LmNwcAppbmRleCBjZTEyMzBhLi4wY2ZiZGY3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9lZmwvU2Nyb2xsYmFyRWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9lZmwvU2Nyb2xsYmFyRWZsLmNwcApAQCAtMTU2LDEyICsxNTYsMTggQEAgdm9pZCBTY3JvbGxi
YXJFZmw6OnVwZGF0ZVRodW1iUG9zaXRpb25BbmRQcm9wb3J0aW9uKCkKICAgICAgICAgJiYgbV9s
YXN0VmlzaWJsZVNpemUgPT0gdlNpemUpCiAgICAgICAgIHJldHVybjsKIAorICAgIEVkamVfTWVz
c2FnZV9GbG9hdF9TZXQqIG1lc3NhZ2UgPSAwOworICAgIGNoYXIqIG1lbSA9IDA7CisgICAgaWYg
KG1lbSA9IG5ldyBjaGFyW3NpemVvZihFZGplX01lc3NhZ2VfRmxvYXRfU2V0KSArIHNpemVvZihk
b3VibGUpXSkKKyAgICAgICAgbWVzc2FnZSA9IG5ldyhtZW0pIEVkamVfTWVzc2FnZV9GbG9hdF9T
ZXQ7CisgICAgZWxzZSB7CisgICAgICAgIEVJTkFfTE9HX0VSUigiQ291bGQgbm90IGFsbG9jYXRl
IEVkamVfTWVzc2FnZV9GbG9hdF9TZXQuIik7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKICAg
ICBtX2xhc3RQb3MgPSBwb3M7CiAgICAgbV9sYXN0VG90YWxTaXplID0gdFNpemU7CiAgICAgbV9s
YXN0VmlzaWJsZVNpemUgPSB2U2l6ZTsKLQotICAgIEVkamVfTWVzc2FnZV9GbG9hdF9TZXQqIG1l
c3NhZ2UgPSBzdGF0aWNfY2FzdDxFZGplX01lc3NhZ2VfRmxvYXRfU2V0Kj4KLSAgICAgICAgKGFs
bG9jYShzaXplb2YoRWRqZV9NZXNzYWdlX0Zsb2F0X1NldCkgKyBzaXplb2YoZmxvYXQpKSk7CiAg
ICAgbWVzc2FnZS0+Y291bnQgPSAyOwogCiAgICAgaWYgKHRTaXplIC0gdlNpemUgPiAwKQpAQCAt
MTc1LDYgKzE4MSw3IEBAIHZvaWQgU2Nyb2xsYmFyRWZsOjp1cGRhdGVUaHVtYlBvc2l0aW9uQW5k
UHJvcG9ydGlvbigpCiAgICAgICAgIG1lc3NhZ2UtPnZhbFsxXSA9IDAuMDsKIAogICAgIGVkamVf
b2JqZWN0X21lc3NhZ2Vfc2VuZChwbGF0Zm9ybVdpZGdldCgpLCBFREpFX01FU1NBR0VfRkxPQVRf
U0VULCAwLCBtZXNzYWdlKTsKKyAgICBkZWxldGUgW10gbWVtOwogfQogCiB2b2lkIFNjcm9sbGJh
ckVmbDo6c2V0RnJhbWVSZWN0KGNvbnN0IEludFJlY3QmIHJlY3QpCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L2VmbC9DaGFuZ2VMb2cKaW5k
ZXggNGVmMjA3Mi4uY2MxOGE4OCAxMDA3NTUKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvQ2hhbmdl
TG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvZWZsL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisy
MDExLTExLTMwICBHcnplZ29yeiBDemFqa293c2tpICA8Zy5jemFqa293c2tpQHNhbXN1bmcuY29t
PgorCisgICAgICAgIFtFRkxdIEFkZCBOVUxMIGNoZWNrcyBhZnRlciBtZW1vcnkgYWxsb2NhdGlv
bi4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTcyMDE3
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkcyBO
VUxMIGNoZWNrIHRvIGV3a193aW5kb3dfZmVhdHVyZXNfbmV3X2Zyb21fY29yZSBhZnRlciBjcmVh
dGluZyBhIG5ldyBpbnN0YW5jZSBvZiBXZWJDb3JlJ3MgV2luZG93RmVhdHVyZXMuCisgICAgICAg
IEl0IHByZXZlbnRzIHVuZXhwZWN0ZWQgcmVzdWx0IHdoaWxlIGNhbGxpbmcgZXdrX3dpbmRvd19m
ZWF0dXJlc191bnJlZiBpZiBXaW5kb3dGZWF0dXJlcyBpcyBOVUxMLgorICAgICAgICBBZGRzIE5V
TEwgY2hlY2sgdG8gZXdrX2Nvb2tpZXNfZ2V0X2FsbCB3aGljaCByZXR1cm5zIGxpc3Qgb2YgY29v
a2llcy4KKyAgICAgICAgQ29va2llIHdvbid0IGJlIGFkZGVkIElmIG1hbGxvYyByZXR1cm5zIE5V
TEwuCisKKyAgICAgICAgKiBld2svZXdrX2Nvb2tpZXMuY3BwOgorICAgICAgICAoZXdrX2Nvb2tp
ZXNfZ2V0X2FsbCk6CisgICAgICAgICogZXdrL2V3a193aW5kb3dfZmVhdHVyZXMuY3BwOgorICAg
ICAgICAoZXdrX3dpbmRvd19mZWF0dXJlc19uZXdfZnJvbV9jb3JlKToKKwogMjAxMS0xMS0yMiAg
UGF2ZWwgRmVsZG1hbiAgPHBmZWxkbWFuQGdvb2dsZS5jb20+CiAKICAgICAgICAgV2ViIEluc3Bl
Y3RvcjogcmVtb3ZlIEluc3BlY3Rvcjo6YnJpbmdUb0Zyb250IGZyb20gdGhlIHByb3RvY29sLgpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19jb29raWVzLmNwcCBiL1NvdXJj
ZS9XZWJLaXQvZWZsL2V3ay9ld2tfY29va2llcy5jcHAKaW5kZXggZWVkNWU5Ny4uZWIzOGFiZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9lZmwvZXdrL2V3a19jb29raWVzLmNwcAorKysgYi9T
b3VyY2UvV2ViS2l0L2VmbC9ld2svZXdrX2Nvb2tpZXMuY3BwCkBAIC0yNiw2ICsyNiw3IEBACiAj
ZW5kaWYKICNpbmNsdWRlICJFV2ViS2l0LmgiCiAjaW5jbHVkZSAiUmVzb3VyY2VIYW5kbGUuaCIK
KyNpbmNsdWRlICJld2tfbG9nZ2luZy5oIgogCiAjaW5jbHVkZSA8RWluYS5oPgogI2luY2x1ZGUg
PGVpbmFfc2FmZXR5X2NoZWNrcy5oPgpAQCAtOTAsMTUgKzkxLDE3IEBAIEVpbmFfTGlzdCogZXdr
X2Nvb2tpZXNfZ2V0X2FsbCh2b2lkKQogICAgIGxpc3QgPSBzb3VwX2Nvb2tpZV9qYXJfYWxsX2Nv
b2tpZXMoY29va2llSmFyKTsKICAgICBmb3IgKHAgPSBsaXN0OyBwOyBwID0gcC0+bmV4dCkgewog
ICAgICAgICBTb3VwQ29va2llKiBjb29raWUgPSBzdGF0aWNfY2FzdDxTb3VwQ29va2llKj4ocC0+
ZGF0YSk7Ci0gICAgICAgIEV3a19Db29raWUqIGV3a0Nvb2tpZSA9IHN0YXRpY19jYXN0PEV3a19D
b29raWUqPihtYWxsb2Moc2l6ZW9mKCpld2tDb29raWUpKSk7Ci0gICAgICAgIGV3a0Nvb2tpZS0+
bmFtZSA9IHN0cmR1cChjb29raWUtPm5hbWUpOwotICAgICAgICBld2tDb29raWUtPnZhbHVlID0g
c3RyZHVwKGNvb2tpZS0+dmFsdWUpOwotICAgICAgICBld2tDb29raWUtPmRvbWFpbiA9IHN0cmR1
cChjb29raWUtPmRvbWFpbik7Ci0gICAgICAgIGV3a0Nvb2tpZS0+cGF0aCA9IHN0cmR1cChjb29r
aWUtPnBhdGgpOwotICAgICAgICBld2tDb29raWUtPmV4cGlyZXMgPSBzb3VwX2RhdGVfdG9fdGlt
ZV90KGNvb2tpZS0+ZXhwaXJlcyk7Ci0gICAgICAgIGV3a0Nvb2tpZS0+c2VjdXJlID0gc3RhdGlj
X2Nhc3Q8RWluYV9Cb29sPihjb29raWUtPnNlY3VyZSk7Ci0gICAgICAgIGV3a0Nvb2tpZS0+aHR0
cF9vbmx5ID0gc3RhdGljX2Nhc3Q8RWluYV9Cb29sPihjb29raWUtPmh0dHBfb25seSk7Ci0gICAg
ICAgIHJlc3VsdCA9IGVpbmFfbGlzdF9hcHBlbmQocmVzdWx0LCBld2tDb29raWUpOworICAgICAg
ICBpZiAoRXdrX0Nvb2tpZSogZXdrQ29va2llID0gc3RhdGljX2Nhc3Q8RXdrX0Nvb2tpZSo+KG1h
bGxvYyhzaXplb2YoKmV3a0Nvb2tpZSkpKSkgeworICAgICAgICAgICAgZXdrQ29va2llLT5uYW1l
ID0gc3RyZHVwKGNvb2tpZS0+bmFtZSk7CisgICAgICAgICAgICBld2tDb29raWUtPnZhbHVlID0g
c3RyZHVwKGNvb2tpZS0+dmFsdWUpOworICAgICAgICAgICAgZXdrQ29va2llLT5kb21haW4gPSBz
dHJkdXAoY29va2llLT5kb21haW4pOworICAgICAgICAgICAgZXdrQ29va2llLT5wYXRoID0gc3Ry
ZHVwKGNvb2tpZS0+cGF0aCk7CisgICAgICAgICAgICBld2tDb29raWUtPmV4cGlyZXMgPSBzb3Vw
X2RhdGVfdG9fdGltZV90KGNvb2tpZS0+ZXhwaXJlcyk7CisgICAgICAgICAgICBld2tDb29raWUt
PnNlY3VyZSA9IHN0YXRpY19jYXN0PEVpbmFfQm9vbD4oY29va2llLT5zZWN1cmUpOworICAgICAg
ICAgICAgZXdrQ29va2llLT5odHRwX29ubHkgPSBzdGF0aWNfY2FzdDxFaW5hX0Jvb2w+KGNvb2tp
ZS0+aHR0cF9vbmx5KTsKKyAgICAgICAgICAgIHJlc3VsdCA9IGVpbmFfbGlzdF9hcHBlbmQocmVz
dWx0LCBld2tDb29raWUpOworICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgIENSSVRJQ0FMKCJD
b3VsZCBub3QgYWxsb2NhdGUgRXdrX0Nvb2tpZS4iKTsKICAgICB9CiAKICAgICBzb3VwX2Nvb2tp
ZXNfZnJlZShsaXN0KTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfd2lu
ZG93X2ZlYXR1cmVzLmNwcCBiL1NvdXJjZS9XZWJLaXQvZWZsL2V3ay9ld2tfd2luZG93X2ZlYXR1
cmVzLmNwcAppbmRleCAwOWNmMjdiLi5hODViMWQxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
L2VmbC9ld2svZXdrX3dpbmRvd19mZWF0dXJlcy5jcHAKKysrIGIvU291cmNlL1dlYktpdC9lZmwv
ZXdrL2V3a193aW5kb3dfZmVhdHVyZXMuY3BwCkBAIC0xMjAsNiArMTIwLDExIEBAIEV3a19XaW5k
b3dfRmVhdHVyZXMqIGV3a193aW5kb3dfZmVhdHVyZXNfbmV3X2Zyb21fY29yZShjb25zdCBXZWJD
b3JlOjpXaW5kb3dGZWF0CiAgICAgZWxzZQogICAgICAgICB3aW5kb3dfZmVhdHVyZXMtPmNvcmUg
PSBuZXcgV2ViQ29yZTo6V2luZG93RmVhdHVyZXMoKTsKIAorICAgIGlmICghd2luZG93X2ZlYXR1
cmVzLT5jb3JlKSB7CisgICAgICAgIENSSVRJQ0FMKCJDb3VsZCBub3QgYWxsb2NhdGUgV2ViQ29y
ZTo6V2luZG93RmVhdHVyZXMuIik7CisgICAgICAgIHJldHVybiAwOworICAgIH0KKwogICAgIHdp
bmRvd19mZWF0dXJlcy0+X19yZWYgPSAxOwogCiAgICAgcmV0dXJuIHdpbmRvd19mZWF0dXJlczsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>120943</attachid>
            <date>2012-01-03 07:14:35 -0800</date>
            <delta_ts>2012-01-05 00:05:52 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>replace_alloca.patch</filename>
            <type>text/plain</type>
            <size>1759</size>
            <attacher name="Grzegorz Czajkowski">g.czajkowski</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA5ZDE5ZTI4Li5iZjUyZDg1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYg
QEAKKzIwMTItMDEtMDMgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3Vu
Zy5jb20+CisKKyAgICAgICAgW0VGTF0gUmVwbGFjZSBhbGxvY2EgdG8gQysrIG5ldyBwbGFjZW1l
bnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MjAx
NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlcGxh
Y2VzIGFsbG9jYSB0byBDKysgbmV3IHBsYWNlbWVudCBhcyBpdCBpcyBub3QgdmVyeSBwb3J0YWJs
ZS4KKyAgICAgICAgSXQgYWxsb3dzIHRvIHNraXAgY2hlY2tpbmcgb2YgbWVtb3J5IGFsbG9jYXRp
b24gYXMgbmV3IG5ldmVyIHJldHVybnMgTlVMTC4KKworICAgICAgICAqIHBsYXRmb3JtL2VmbC9T
Y3JvbGxiYXJFZmwuY3BwOgorICAgICAgICAoU2Nyb2xsYmFyRWZsOjp1cGRhdGVUaHVtYlBvc2l0
aW9uQW5kUHJvcG9ydGlvbik6CisKIDIwMTItMDEtMDMgIEFsZXhpcyBNZW5hcmQgIDxhbGV4aXMu
bWVuYXJkQG9wZW5ib3NzYS5vcmc+CiAKICAgICAgICAgZ2V0Q29tcHV0ZWRTdHlsZSBmb3Igb3V0
bGluZSBpcyBub3QgaW1wbGVtZW50ZWQuCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9lZmwvU2Nyb2xsYmFyRWZsLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9T
Y3JvbGxiYXJFZmwuY3BwCmluZGV4IGNlMTIzMGEuLjY1NGVlZTYgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9TY3JvbGxiYXJFZmwuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL2VmbC9TY3JvbGxiYXJFZmwuY3BwCkBAIC0xNjAsOCArMTYwLDggQEAgdm9p
ZCBTY3JvbGxiYXJFZmw6OnVwZGF0ZVRodW1iUG9zaXRpb25BbmRQcm9wb3J0aW9uKCkKICAgICBt
X2xhc3RUb3RhbFNpemUgPSB0U2l6ZTsKICAgICBtX2xhc3RWaXNpYmxlU2l6ZSA9IHZTaXplOwog
Ci0gICAgRWRqZV9NZXNzYWdlX0Zsb2F0X1NldCogbWVzc2FnZSA9IHN0YXRpY19jYXN0PEVkamVf
TWVzc2FnZV9GbG9hdF9TZXQqPgotICAgICAgICAoYWxsb2NhKHNpemVvZihFZGplX01lc3NhZ2Vf
RmxvYXRfU2V0KSArIHNpemVvZihmbG9hdCkpKTsKKyAgICBjaGFyKiBtZW0gPSBuZXcgY2hhcltz
aXplb2YoRWRqZV9NZXNzYWdlX0Zsb2F0X1NldCkgKyBzaXplb2YoZG91YmxlKV07CisgICAgRWRq
ZV9NZXNzYWdlX0Zsb2F0X1NldCogbWVzc2FnZSA9IG5ldyhtZW0pIEVkamVfTWVzc2FnZV9GbG9h
dF9TZXQ7CiAgICAgbWVzc2FnZS0+Y291bnQgPSAyOwogCiAgICAgaWYgKHRTaXplIC0gdlNpemUg
PiAwKQpAQCAtMTc1LDYgKzE3NSw3IEBAIHZvaWQgU2Nyb2xsYmFyRWZsOjp1cGRhdGVUaHVtYlBv
c2l0aW9uQW5kUHJvcG9ydGlvbigpCiAgICAgICAgIG1lc3NhZ2UtPnZhbFsxXSA9IDAuMDsKIAog
ICAgIGVkamVfb2JqZWN0X21lc3NhZ2Vfc2VuZChwbGF0Zm9ybVdpZGdldCgpLCBFREpFX01FU1NB
R0VfRkxPQVRfU0VULCAwLCBtZXNzYWdlKTsKKyAgICBkZWxldGUgW10gbWVtOwogfQogCiB2b2lk
IFNjcm9sbGJhckVmbDo6c2V0RnJhbWVSZWN0KGNvbnN0IEludFJlY3QmIHJlY3QpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121226</attachid>
            <date>2012-01-05 00:05:52 -0800</date>
            <delta_ts>2012-01-05 01:03:05 -0800</delta_ts>
            <desc>updated patch</desc>
            <filename>replace_alloca.patch</filename>
            <type>text/plain</type>
            <size>1488</size>
            <attacher name="Grzegorz Czajkowski">g.czajkowski</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyNzBiNTllLi44YzkwZGU4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYg
QEAKKzIwMTItMDEtMDQgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3Vu
Zy5jb20+CisKKyAgICAgICAgW0VGTF0gUmVwbGFjZSBhbGxvY2EgdG8gQysrIG5ldyBwbGFjZW1l
bnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MjAx
NworCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFJlcGxh
Y2VzIGFsbG9jYSB0byBDKysgbmV3IHBsYWNlbWVudCBhcyBpdCBpcyBub3QgdmVyeSBwb3J0YWJs
ZS4KKyAgICAgICAgSXQgYWxsb3dzIHRvIHNraXAgY2hlY2tpbmcgb2YgbWVtb3J5IGFsbG9jYXRp
b24gYXMgbmV3IG5ldmVyIHJldHVybnMgTlVMTC4KKworICAgICAgICAqIHBsYXRmb3JtL2VmbC9T
Y3JvbGxiYXJFZmwuY3BwOgorICAgICAgICAoU2Nyb2xsYmFyRWZsOjp1cGRhdGVUaHVtYlBvc2l0
aW9uQW5kUHJvcG9ydGlvbik6CisKIDIwMTItMDEtMDMgIEFkYW0gQmFydGggIDxhYmFydGhAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBIVE1MQ29uc3RydWN0aW9uU2l0ZTo6YXR0YWNoIHNob3VsZG4n
dCByZXR1cm4gYSB2YWx1ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZs
L1Njcm9sbGJhckVmbC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9lZmwvU2Nyb2xsYmFy
RWZsLmNwcAppbmRleCBjZTEyMzBhLi4xODM2OTFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9lZmwvU2Nyb2xsYmFyRWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9lZmwvU2Nyb2xsYmFyRWZsLmNwcApAQCAtMTYwLDggKzE2MCw4IEBAIHZvaWQgU2Nyb2xs
YmFyRWZsOjp1cGRhdGVUaHVtYlBvc2l0aW9uQW5kUHJvcG9ydGlvbigpCiAgICAgbV9sYXN0VG90
YWxTaXplID0gdFNpemU7CiAgICAgbV9sYXN0VmlzaWJsZVNpemUgPSB2U2l6ZTsKIAotICAgIEVk
amVfTWVzc2FnZV9GbG9hdF9TZXQqIG1lc3NhZ2UgPSBzdGF0aWNfY2FzdDxFZGplX01lc3NhZ2Vf
RmxvYXRfU2V0Kj4KLSAgICAgICAgKGFsbG9jYShzaXplb2YoRWRqZV9NZXNzYWdlX0Zsb2F0X1Nl
dCkgKyBzaXplb2YoZmxvYXQpKSk7CisgICAgY2hhciBidWZmZXJbc2l6ZW9mKEVkamVfTWVzc2Fn
ZV9GbG9hdF9TZXQpICsgc2l6ZW9mKGRvdWJsZSldOworICAgIEVkamVfTWVzc2FnZV9GbG9hdF9T
ZXQqIG1lc3NhZ2UgPSByZWludGVycHJldF9jYXN0PEVkamVfTWVzc2FnZV9GbG9hdF9TZXQqPihi
dWZmZXIpOwogICAgIG1lc3NhZ2UtPmNvdW50ID0gMjsKIAogICAgIGlmICh0U2l6ZSAtIHZTaXpl
ID4gMCkK
</data>
<flag name="review"
          id="121652"
          type_id="1"
          status="+"
          setter="kling"
    />
    <flag name="commit-queue"
          id="121653"
          type_id="3"
          status="-"
          setter="kling"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>121235</attachid>
            <date>2012-01-05 01:03:05 -0800</date>
            <delta_ts>2012-01-05 07:47:17 -0800</delta_ts>
            <desc>updated patch</desc>
            <filename>replace_alloca.patch</filename>
            <type>text/plain</type>
            <size>1642</size>
            <attacher name="Grzegorz Czajkowski">g.czajkowski</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCAyNzBiNTllLi45ODNjZTJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTgg
QEAKKzIwMTItMDEtMDQgIEdyemVnb3J6IEN6YWprb3dza2kgIDxnLmN6YWprb3dza2lAc2Ftc3Vu
Zy5jb20+CisKKyAgICAgICAgW0VGTF0gUmVwbGFjZSBhbGxvY2EgdG8gQysrIG5ldyBwbGFjZW1l
bnQuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03MjAx
NworCisgICAgICAgIFJldmlld2VkIGJ5IEFuZHJlYXMgS2xpbmcuCisKKyAgICAgICAgUmVwbGFj
ZXMgYWxsb2NhIHRvIEMrKyBuZXcgcGxhY2VtZW50IGFzIGl0IGlzIG5vdCB2ZXJ5IHBvcnRhYmxl
LgorICAgICAgICBJdCBhbGxvd3MgdG8gc2tpcCBjaGVja2luZyBvZiBtZW1vcnkgYWxsb2NhdGlv
biBhcyBuZXcgbmV2ZXIgcmV0dXJucyBOVUxMLgorICAgICAgICBBY2NvcmRpbmcgdG8gRWRqZSdz
IGRvY3VtZW50YXRpb24gdHlwZSBvZiB2YWwgKG1lbWJlciBvZiBFZGplX01lc3NhZ2VfRmxvYXRf
U2V0KQorICAgICAgICBpcyBkb3VibGUgc28gSSBjaGFuZ2VkIGl0IHRvIGF2b2lkIHVuZGVmaW5l
ZCBiZWhhdmlvdXIuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9lZmwvU2Nyb2xsYmFyRWZsLmNwcDoK
KyAgICAgICAgKFNjcm9sbGJhckVmbDo6dXBkYXRlVGh1bWJQb3NpdGlvbkFuZFByb3BvcnRpb24p
OgorCiAyMDEyLTAxLTAzICBBZGFtIEJhcnRoICA8YWJhcnRoQHdlYmtpdC5vcmc+CiAKICAgICAg
ICAgSFRNTENvbnN0cnVjdGlvblNpdGU6OmF0dGFjaCBzaG91bGRuJ3QgcmV0dXJuIGEgdmFsdWUK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9TY3JvbGxiYXJFZmwuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1Njcm9sbGJhckVmbC5jcHAKaW5kZXggY2Ux
MjMwYS4uMTgzNjkxYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1Nj
cm9sbGJhckVmbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1Njcm9sbGJh
ckVmbC5jcHAKQEAgLTE2MCw4ICsxNjAsOCBAQCB2b2lkIFNjcm9sbGJhckVmbDo6dXBkYXRlVGh1
bWJQb3NpdGlvbkFuZFByb3BvcnRpb24oKQogICAgIG1fbGFzdFRvdGFsU2l6ZSA9IHRTaXplOwog
ICAgIG1fbGFzdFZpc2libGVTaXplID0gdlNpemU7CiAKLSAgICBFZGplX01lc3NhZ2VfRmxvYXRf
U2V0KiBtZXNzYWdlID0gc3RhdGljX2Nhc3Q8RWRqZV9NZXNzYWdlX0Zsb2F0X1NldCo+Ci0gICAg
ICAgIChhbGxvY2Eoc2l6ZW9mKEVkamVfTWVzc2FnZV9GbG9hdF9TZXQpICsgc2l6ZW9mKGZsb2F0
KSkpOworICAgIGNoYXIgYnVmZmVyW3NpemVvZihFZGplX01lc3NhZ2VfRmxvYXRfU2V0KSArIHNp
emVvZihkb3VibGUpXTsKKyAgICBFZGplX01lc3NhZ2VfRmxvYXRfU2V0KiBtZXNzYWdlID0gcmVp
bnRlcnByZXRfY2FzdDxFZGplX01lc3NhZ2VfRmxvYXRfU2V0Kj4oYnVmZmVyKTsKICAgICBtZXNz
YWdlLT5jb3VudCA9IDI7CiAKICAgICBpZiAodFNpemUgLSB2U2l6ZSA+IDApCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>