<?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>116686</bug_id>
          
          <creation_ts>2013-05-23 12:10:14 -0700</creation_ts>
          <short_desc>[Soup] [Gstreamer] ASSERT in StreamingClient::getOrCreateReadBuffer</short_desc>
          <delta_ts>2013-05-31 03:25:02 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKitGTK</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>http://www.publico.es/455878/espana-suma-11-banderas-azules-mas-a-sus-costas-y-se-mantiene-lider</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Sergio Villar Senin">svillar</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>berto</cc>
    
    <cc>cdumez</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>danw</cc>
    
    <cc>gtk-ews</cc>
    
    <cc>gustavo</cc>
    
    <cc>menard</cc>
    
    <cc>mrobinson</cc>
    
    <cc>pnormand</cc>
    
    <cc>rakuco</cc>
    
    <cc>rego+ews</cc>
    
    <cc>rego</cc>
    
    <cc>svillar</cc>
    
    <cc>xan.lopez</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>892983</commentid>
    <comment_count>0</comment_count>
    <who name="Sergio Villar Senin">svillar</who>
    <bug_when>2013-05-23 12:10:14 -0700</bug_when>
    <thetext>This is the backtrace of the crash visiting the above url.

Program received signal SIGSEGV, Segmentation fault.
0x00007f26cc3787dc in WTFCrash () at ../../Source/WTF/wtf/Assertions.cpp:339
339	    *(int *)(uintptr_t)0xbbadbeef = 0;
(gdb) bt
#0  0x00007f26cc3787dc in WTFCrash () at ../../Source/WTF/wtf/Assertions.cpp:339
#1  0x00007f26c8409364 in StreamingClient::getOrCreateReadBuffer (this=0x1eedf20, requestedSize=8192, actualSize=@0x7fff11795ea8: 139803140448136)
    at ../../Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:931
#2  0x00007f26c847e3d4 in WebCore::ResourceHandle::ensureReadBuffer (this=0x7f2674e0f7b0) at ../../Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:311
#3  0x00007f26c848062d in WebCore::sendRequestCallback (result=0x7f26743dfdc0, data=0x7f2674e0f7b0) at ../../Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp:730
#4  0x00007f26c5ef1f6b in g_task_return_now (task=0x7f26743dfdc0) at gtask.c:1105
#5  0x00007f26c5ef271e in g_task_return (task=0x7f26743dfdc0, type=&lt;optimized out&gt;) at gtask.c:1158
#6  g_task_return (task=0x7f26743dfdc0, type=&lt;optimized out&gt;) at gtask.c:1126
#7  0x00007f26c603766c in http_input_stream_ready_cb (source=0x76b040, result=0x7f267443ec50, user_data=0x7f26743dfdc0) at soup-request-http.c:124
#8  0x00007f26c5ef1f6b in g_task_return_now (task=0x7f267443ec50) at gtask.c:1105
#9  0x00007f26c5ef271e in g_task_return (task=0x7f267443ec50, type=&lt;optimized out&gt;) at gtask.c:1158
#10 g_task_return (task=0x7f267443ec50, type=&lt;optimized out&gt;) at gtask.c:1126
#11 0x00007f26c603a332 in async_send_request_return_result (item=0x7f26743c3d20, stream=0xedbbc0, error=&lt;optimized out&gt;) at soup-session.c:3628
#12 0x00007f26c603f80f in send_async_maybe_complete (stream=0xedbbc0, item=0x7f26743c3d20) at soup-session.c:3742
#13 try_run_until_read (item=item@entry=0x7f26743c3d20) at soup-session.c:3766
#14 0x00007f26c603f95d in read_ready_cb (msg=&lt;optimized out&gt;, user_data=0x7f26743c3d20) at soup-session.c:3753
#15 0x00007f26c5d41e25 in g_main_dispatch (context=0x761e90) at gmain.c:3054
#16 g_main_context_dispatch (context=context@entry=0x761e90) at gmain.c:3630
#17 0x00007f26c5d42168 in g_main_context_iterate (context=0x761e90, block=block@entry=1, dispatch=dispatch@entry=1, 
    self=&lt;error reading variable: Unhandled dwarf expression opcode 0xfa&gt;) at gmain.c:3701
#18 0x00007f26c5d425da in g_main_loop_run (loop=0x75e190) at gmain.c:3895
#19 0x00007f26c898b50a in WebCore::RunLoop::run () at ../../Source/WebCore/platform/gtk/RunLoopGtk.cpp:61
#20 0x00007f26c72533fc in WebKit::WebProcessMainGtk (argc=2, argv=0x7fff117963d8) at ../../Source/WebKit2/WebProcess/gtk/WebProcessMainGtk.cpp:78
#21 0x0000000000400a1c in main (argc=2, argv=0x7fff117963d8) at ../../Source/WebKit2/gtk/MainGtk.cpp:31</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895475</commentid>
    <comment_count>1</comment_count>
    <who name="Alberto Garcia">berto</who>
    <bug_when>2013-05-30 04:11:38 -0700</bug_when>
    <thetext>Reproduced, I&apos;ll take a look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895587</commentid>
    <comment_count>2</comment_count>
    <who name="Alberto Garcia">berto</who>
    <bug_when>2013-05-30 10:46:29 -0700</bug_when>
    <thetext>I actually don&apos;t understand why that assert is there, either it is
wrong or the name of the method is misleading, because it&apos;s creating a
new buffer every time (and we&apos;re most likely leaking memory).

This is called from ResourceHandle::ensureReadBuffer(), which is used
by several callbacks in ResourceHandle.

This comes from bug 115364 and bug 105552.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895590</commentid>
    <comment_count>3</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-05-30 10:58:10 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; I actually don&apos;t understand why that assert is there, either it is
&gt; wrong or the name of the method is misleading, because it&apos;s creating a
&gt; new buffer every time (and we&apos;re most likely leaking memory).

Memory is not leaking because buffer is a GRefPtr. 

&gt; This is called from ResourceHandle::ensureReadBuffer(), which is used
&gt; by several callbacks in ResourceHandle.
&gt; 
&gt; This comes from bug 115364 and bug 105552.

Patch in bug 115364 doesn&apos;t change the logic of the gst buffer, it simply renames the method and moves the default buffer implementation from the cross platform code to the soup resource handle implementation</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895600</commentid>
    <comment_count>4</comment_count>
      <attachid>203367</attachid>
    <who name="Alberto Garcia">berto</who>
    <bug_when>2013-05-30 11:21:00 -0700</bug_when>
    <thetext>Created attachment 203367
Patch

(In reply to comment #3)
&gt; Memory is not leaking because buffer is a GRefPtr.

Yes, you&apos;re right.

This patch removes the assertion and returns the buffer if it
exists. I don&apos;t see any other crash or assertion being triggered and
everytime a new buffer is created it seems to be cleared correctly
afterwards.

Then we have the thing that the requestedSize parameter is completely
ignored if the buffer already exists, although in practice this is not
happening since we&apos;re using a constant value that is defined in
ResourceHandle::ensureReadBuffer()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895602</commentid>
    <comment_count>5</comment_count>
    <who name="Alberto Garcia">berto</who>
    <bug_when>2013-05-30 11:23:12 -0700</bug_when>
    <thetext>I think the original code is from Gustavo, adding him to Cc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895604</commentid>
    <comment_count>6</comment_count>
      <attachid>203367</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-05-30 11:30:28 -0700</bug_when>
    <thetext>Comment on attachment 203367
Patch

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

I wonder if we could reuse the buffer also for the case of not using the soup resource handle.

&gt; Source/WebCore/platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:936
&gt; +        mapGstBuffer(buffer);

I don&apos;t know what map/unmap means in GST but we are unmapping the buffer for every data chunk in didReceiveData.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895606</commentid>
    <comment_count>7</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-05-30 11:44:00 -0700</bug_when>
    <thetext>I had missed the leakPtr in didReceiveData, so we are in the end creating and mapping the buffer before every data chunk, and releasing it after.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895612</commentid>
    <comment_count>8</comment_count>
      <attachid>203367</attachid>
    <who name="kov&apos;s GTK+ EWS bot">gtk-ews</who>
    <bug_when>2013-05-30 11:57:32 -0700</bug_when>
    <thetext>Comment on attachment 203367
Patch

Attachment 203367 did not pass gtk-ews (gtk):
Output: http://webkit-queues.appspot.com/results/689307</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895628</commentid>
    <comment_count>9</comment_count>
    <who name="Manuel Rego Casasnovas">rego</who>
    <bug_when>2013-05-30 12:19:04 -0700</bug_when>
    <thetext>I&apos;ve just tested manually the patch in gtk-wk2 and it worked now, so it should be some temporal issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895632</commentid>
    <comment_count>10</comment_count>
    <who name="Alberto Garcia">berto</who>
    <bug_when>2013-05-30 12:24:34 -0700</bug_when>
    <thetext>sendRequestCallback() is called twice, the first one is a redirection
(there&apos;s an ensureReadBuffer() there). The second one is the call at
the end of the function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895636</commentid>
    <comment_count>11</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-05-30 12:28:48 -0700</bug_when>
    <thetext>It seems that the assert was actually correct and tried to detect cases where the sequence getOrCreateBuffer -&gt; didReceivedata doesn&apos;t happen. This currently happens in case of redirection because we changed the skip_async by read_async, but we don&apos;t really read anything and then didReceiveData is not called. So the fix should be either use skip_async now that we depend on recent glib, or use a different buffer in this particular case, a skipBuffer or something, so that we don&apos;t allocate a gst buffer for nothing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895837</commentid>
    <comment_count>12</comment_count>
      <attachid>203427</attachid>
    <who name="Alberto Garcia">berto</who>
    <bug_when>2013-05-31 02:40:55 -0700</bug_when>
    <thetext>Created attachment 203427
Patch

Using skip_async() to handle the redirection fixes the problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895839</commentid>
    <comment_count>13</comment_count>
      <attachid>203427</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2013-05-31 03:04:46 -0700</bug_when>
    <thetext>Comment on attachment 203427
Patch

Thanks!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895847</commentid>
    <comment_count>14</comment_count>
      <attachid>203427</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-31 03:24:58 -0700</bug_when>
    <thetext>Comment on attachment 203427
Patch

Clearing flags on attachment: 203427

Committed r151013: &lt;http://trac.webkit.org/changeset/151013&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>895848</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-05-31 03:25:02 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203367</attachid>
            <date>2013-05-30 11:21:00 -0700</date>
            <delta_ts>2013-05-31 02:40:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>116686.diff</filename>
            <type>text/plain</type>
            <size>1815</size>
            <attacher name="Alberto Garcia">berto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmZTg2Yjc5Li42ZDMyMmVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQg
QEAKKzIwMTMtMDUtMzAgIEFsYmVydG8gR2FyY2lhICA8YWdhcmNpYUBpZ2FsaWEuY29tPgorCisg
ICAgICAgIFtTb3VwXSBbR3N0cmVhbWVyXSBBU1NFUlQgaW4gU3RyZWFtaW5nQ2xpZW50OjpnZXRP
ckNyZWF0ZVJlYWRCdWZmZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTExNjY4NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdFdlYlNvdXJjZUdT
dHJlYW1lci5jcHA6CisgICAgICAgIChTdHJlYW1pbmdDbGllbnQ6OmdldE9yQ3JlYXRlUmVhZEJ1
ZmZlcik6CisgICAgICAgIFJlbW92ZSBhc3NlcnRpb24gYW5kIHJldHVybiB0aGUgYnVmZmVyIGlm
IGl0IGFscmVhZHkgZXhpc3RzLgorCiAyMDEzLTA1LTMwICBBbmRyZWFzIEtsaW5nICA8YWtsaW5n
QGFwcGxlLmNvbT4KIAogICAgICAgICBBdm9pZCB1c2luZyBDU1NPTSBzdHlsZSBkZWNsYXJhdGlv
bnMgaW4gSFRNTCBlZGl0aW5nLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvZ3N0cmVhbWVyL1dlYktpdFdlYlNvdXJjZUdTdHJlYW1lci5jcHAgYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291cmNlR1N0cmVh
bWVyLmNwcAppbmRleCA3NjNiMWUwLi4zNjBjMWEyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0V2ViU291cmNlR1N0cmVhbWVyLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9nc3RyZWFtZXIvV2ViS2l0
V2ViU291cmNlR1N0cmVhbWVyLmNwcApAQCAtOTI3LDE2ICs5MjcsMTggQEAgdm9pZCBTdHJlYW1p
bmdDbGllbnQ6OmRpZFJlY2VpdmVEYXRhKFJlc291cmNlSGFuZGxlKiBoYW5kbGUsIGNvbnN0IGNo
YXIqIGRhdGEsIGkKIGNoYXIqIFN0cmVhbWluZ0NsaWVudDo6Z2V0T3JDcmVhdGVSZWFkQnVmZmVy
KHNpemVfdCByZXF1ZXN0ZWRTaXplLCBzaXplX3QmIGFjdHVhbFNpemUpCiB7CiAgICAgV2ViS2l0
V2ViU3JjUHJpdmF0ZSogcHJpdiA9IG1fc3JjLT5wcml2OworICAgIEdzdEJ1ZmZlciogYnVmZmVy
OwogCi0gICAgQVNTRVJUKCFwcml2LT5idWZmZXIpOwotCi0gICAgR3N0QnVmZmVyKiBidWZmZXIg
PSBnc3RfYnVmZmVyX25ld19hbmRfYWxsb2MocmVxdWVzdGVkU2l6ZSk7CisgICAgaWYgKCFwcml2
LT5idWZmZXIpIHsKKyAgICAgICAgYnVmZmVyID0gZ3N0X2J1ZmZlcl9uZXdfYW5kX2FsbG9jKHJl
cXVlc3RlZFNpemUpOwogCiAjaWZkZWYgR1NUX0FQSV9WRVJTSU9OXzEKLSAgICBtYXBHc3RCdWZm
ZXIoYnVmZmVyKTsKKyAgICAgICAgbWFwR3N0QnVmZmVyKGJ1ZmZlcik7CiAjZW5kaWYKIAotICAg
IHByaXYtPmJ1ZmZlciA9IGFkb3B0R1JlZihidWZmZXIpOworICAgICAgICBwcml2LT5idWZmZXIg
PSBhZG9wdEdSZWYoYnVmZmVyKTsKKyAgICB9IGVsc2UKKyAgICAgICAgYnVmZmVyID0gcHJpdi0+
YnVmZmVyLmdldCgpOwogCiAgICAgYWN0dWFsU2l6ZSA9IGdldEdzdEJ1ZmZlclNpemUoYnVmZmVy
KTsKICAgICByZXR1cm4gZ2V0R3N0QnVmZmVyRGF0YVBvaW50ZXIoYnVmZmVyKTsK
</data>
<flag name="commit-queue"
          id="224807"
          type_id="3"
          status="-"
          setter="gtk-ews"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>203427</attachid>
            <date>2013-05-31 02:40:55 -0700</date>
            <delta_ts>2013-05-31 03:24:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>116686.diff</filename>
            <type>text/plain</type>
            <size>3911</size>
            <attacher name="Alberto Garcia">berto</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBmZTg2Yjc5Li5hOTJiYmY1IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjQg
QEAKKzIwMTMtMDUtMzEgIEFsYmVydG8gR2FyY2lhICA8YWdhcmNpYUBpZ2FsaWEuY29tPgorCisg
ICAgICAgIFtTb3VwXSBbR3N0cmVhbWVyXSBBU1NFUlQgaW4gU3RyZWFtaW5nQ2xpZW50OjpnZXRP
ckNyZWF0ZVJlYWRCdWZmZXIKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTExNjY4NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFdlIHdlcmUgdXNpbmcgZ19pbnB1dF9zdHJlYW1fcmVhZF9hc3luYygpIHRvIGhh
bmRsZSByZWRpcmVjdGlvbnMKKyAgICAgICAgYmVjYXVzZSBvZiBHbm9tZSBidWcgIzY5MTQ4OS4K
KworICAgICAgICBUaGlzIHByb2R1Y2VzIGFuIHVuZXhwZWN0ZWQgcmVhZCBhdHRlbXB0IHdoaWNo
IHRyaWdnZXJzIGFuIGFzc2VydAorICAgICAgICBpbiBTdHJlYW1pbmdDbGllbnQ6OmdldE9yQ3Jl
YXRlUmVhZEJ1ZmZlcigpLgorCisgICAgICAgIE5vdyB0aGF0IHRoZSBHbm9tZSBidWcgaXMgZml4
ZWQgd2UgY2FuIHJlcGxhY2UgcmVhZF9hc3luYygpIHdpdGgKKyAgICAgICAgc2tpcF9hc3luYygp
LgorCisgICAgICAgICogcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxlU291cC5j
cHA6CisgICAgICAgIChXZWJDb3JlOjpSZXNvdXJjZUhhbmRsZTo6ZW5zdXJlUmVhZEJ1ZmZlcik6
CisgICAgICAgIChXZWJDb3JlOjpyZWRpcmVjdFNraXBDYWxsYmFjayk6CisgICAgICAgIChXZWJD
b3JlOjpzZW5kUmVxdWVzdENhbGxiYWNrKToKKwogMjAxMy0wNS0zMCAgQW5kcmVhcyBLbGluZyAg
PGFrbGluZ0BhcHBsZS5jb20+CiAKICAgICAgICAgQXZvaWQgdXNpbmcgQ1NTT00gc3R5bGUgZGVj
bGFyYXRpb25zIGluIEhUTUwgZWRpdGluZy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL25ldHdvcmsvc291cC9SZXNvdXJjZUhhbmRsZVNvdXAuY3BwIGIvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vbmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxlU291cC5jcHAKaW5kZXggNmNk
ZDY5Ny4uNWE2MjAwOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vbmV0d29y
ay9zb3VwL1Jlc291cmNlSGFuZGxlU291cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vbmV0d29yay9zb3VwL1Jlc291cmNlSGFuZGxlU291cC5jcHAKQEAgLTg2LDYgKzg2LDcgQEAg
aW5saW5lIHN0YXRpYyB2b2lkIHNvdXBMb2dQcmludGVyKFNvdXBMb2dnZXIqLCBTb3VwTG9nZ2Vy
TG9nTGV2ZWwsIGNoYXIgZGlyZWN0aW8KIH0KIAogc3RhdGljIGJvb2wgbG9hZGluZ1N5bmNocm9u
b3VzUmVxdWVzdCA9IGZhbHNlOworc3RhdGljIGNvbnN0IHNpemVfdCBkZWZhdWx0UmVhZEJ1ZmZl
clNpemUgPSA4MTkyOwogCiBjbGFzcyBXZWJDb3JlU3luY2hyb25vdXNMb2FkZXIgOiBwdWJsaWMg
UmVzb3VyY2VIYW5kbGVDbGllbnQgewogICAgIFdURl9NQUtFX05PTkNPUFlBQkxFKFdlYkNvcmVT
eW5jaHJvbm91c0xvYWRlcik7CkBAIC0zMDYsNyArMzA3LDYgQEAgdm9pZCBSZXNvdXJjZUhhbmRs
ZTo6ZW5zdXJlUmVhZEJ1ZmZlcigpCiB7CiAgICAgUmVzb3VyY2VIYW5kbGVJbnRlcm5hbCogZCA9
IGdldEludGVybmFsKCk7CiAKLSAgICBzdGF0aWMgY29uc3Qgc2l6ZV90IGRlZmF1bHRSZWFkQnVm
ZmVyU2l6ZSA9IDgxOTI7CiAgICAgc2l6ZV90IGJ1ZmZlclNpemU7CiAgICAgY2hhciogYnVmZmVy
UHRyID0gY2xpZW50KCktPmdldE9yQ3JlYXRlUmVhZEJ1ZmZlcihkZWZhdWx0UmVhZEJ1ZmZlclNp
emUsIGJ1ZmZlclNpemUpOwogICAgIGlmIChidWZmZXJQdHIpIHsKQEAgLTUyNCw3ICs1MjQsNyBA
QCBzdGF0aWMgdm9pZCByZWRpcmVjdFNraXBDYWxsYmFjayhHT2JqZWN0KiwgR0FzeW5jUmVzdWx0
KiBhc3luY1Jlc3VsdCwgZ3BvaW50ZXIgZAogCiAgICAgR093blB0cjxHRXJyb3I+IGVycm9yOwog
ICAgIFJlc291cmNlSGFuZGxlSW50ZXJuYWwqIGQgPSBoYW5kbGUtPmdldEludGVybmFsKCk7Ci0g
ICAgZ3NzaXplIGJ5dGVzU2tpcHBlZCA9IGdfaW5wdXRfc3RyZWFtX3JlYWRfZmluaXNoKGQtPm1f
aW5wdXRTdHJlYW0uZ2V0KCksIGFzeW5jUmVzdWx0LCAmZXJyb3Iub3V0UHRyKCkpOworICAgIGdz
c2l6ZSBieXRlc1NraXBwZWQgPSBnX2lucHV0X3N0cmVhbV9za2lwX2ZpbmlzaChkLT5tX2lucHV0
U3RyZWFtLmdldCgpLCBhc3luY1Jlc3VsdCwgJmVycm9yLm91dFB0cigpKTsKICAgICBpZiAoZXJy
b3IpIHsKICAgICAgICAgaGFuZGxlLT5jbGllbnQoKS0+ZGlkRmFpbChoYW5kbGUuZ2V0KCksIFJl
c291cmNlRXJyb3I6OmdlbmVyaWNHRXJyb3IoZXJyb3IuZ2V0KCksIGQtPm1fc291cFJlcXVlc3Qu
Z2V0KCkpKTsKICAgICAgICAgY2xlYW51cFNvdXBSZXF1ZXN0T3BlcmF0aW9uKGhhbmRsZS5nZXQo
KSk7CkBAIC01MzIsOCArNTMyLDcgQEAgc3RhdGljIHZvaWQgcmVkaXJlY3RTa2lwQ2FsbGJhY2so
R09iamVjdCosIEdBc3luY1Jlc3VsdCogYXN5bmNSZXN1bHQsIGdwb2ludGVyIGQKICAgICB9CiAK
ICAgICBpZiAoYnl0ZXNTa2lwcGVkID4gMCkgewotICAgICAgICBoYW5kbGUtPmVuc3VyZVJlYWRC
dWZmZXIoKTsKLSAgICAgICAgZ19pbnB1dF9zdHJlYW1fcmVhZF9hc3luYyhkLT5tX2lucHV0U3Ry
ZWFtLmdldCgpLCBkLT5tX3JlYWRCdWZmZXJQdHIsIGQtPm1fcmVhZEJ1ZmZlclNpemUsIEdfUFJJ
T1JJVFlfREVGQVVMVCwKKyAgICAgICAgZ19pbnB1dF9zdHJlYW1fc2tpcF9hc3luYyhkLT5tX2lu
cHV0U3RyZWFtLmdldCgpLCBkZWZhdWx0UmVhZEJ1ZmZlclNpemUsIEdfUFJJT1JJVFlfREVGQVVM
VCwKICAgICAgICAgICAgIGQtPm1fY2FuY2VsbGFibGUuZ2V0KCksIHJlZGlyZWN0U2tpcENhbGxi
YWNrLCBoYW5kbGUuZ2V0KCkpOwogICAgICAgICByZXR1cm47CiAgICAgfQpAQCAtNjgzLDExICs2
ODIsNyBAQCBzdGF0aWMgdm9pZCBzZW5kUmVxdWVzdENhbGxiYWNrKEdPYmplY3QqLCBHQXN5bmNS
ZXN1bHQqIHJlc3VsdCwgZ3BvaW50ZXIgZGF0YSkKICAgICBpZiAoc291cE1lc3NhZ2UpIHsKICAg
ICAgICAgaWYgKFNPVVBfU1RBVFVTX0lTX1JFRElSRUNUSU9OKHNvdXBNZXNzYWdlLT5zdGF0dXNf
Y29kZSkgJiYgc2hvdWxkUmVkaXJlY3QoaGFuZGxlLmdldCgpKSkgewogICAgICAgICAgICAgZC0+
bV9pbnB1dFN0cmVhbSA9IGlucHV0U3RyZWFtOwotICAgICAgICAgICAgLy8gV2UgdXNlIHJlYWRf
YXN5bmMoKSByYXRoZXIgdGhhbiBza2lwX2FzeW5jKCkgdG8gd29yayBhcm91bmQKLSAgICAgICAg
ICAgIC8vIGh0dHBzOi8vYnVnemlsbGEuZ25vbWUub3JnL3Nob3dfYnVnLmNnaT9pZD02OTE0ODkg
dW50aWwgd2UgY2FuCi0gICAgICAgICAgICAvLyBkZXBlbmQgb24gZ2xpYiA+IDIuMzUuNAotICAg
ICAgICAgICAgaGFuZGxlLT5lbnN1cmVSZWFkQnVmZmVyKCk7Ci0gICAgICAgICAgICBnX2lucHV0
X3N0cmVhbV9yZWFkX2FzeW5jKGQtPm1faW5wdXRTdHJlYW0uZ2V0KCksIGQtPm1fcmVhZEJ1ZmZl
clB0ciwgZC0+bV9yZWFkQnVmZmVyU2l6ZSwgR19QUklPUklUWV9ERUZBVUxULAorICAgICAgICAg
ICAgZ19pbnB1dF9zdHJlYW1fc2tpcF9hc3luYyhkLT5tX2lucHV0U3RyZWFtLmdldCgpLCBkZWZh
dWx0UmVhZEJ1ZmZlclNpemUsIEdfUFJJT1JJVFlfREVGQVVMVCwKICAgICAgICAgICAgICAgICBk
LT5tX2NhbmNlbGxhYmxlLmdldCgpLCByZWRpcmVjdFNraXBDYWxsYmFjaywgaGFuZGxlLmdldCgp
KTsKICAgICAgICAgICAgIHJldHVybjsKICAgICAgICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>