<?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>98580</bug_id>
          
          <creation_ts>2012-10-05 18:51:13 -0700</creation_ts>
          <short_desc>Change the range of m_functionQueueLock in RunLoop::dispatch()</short_desc>
          <delta_ts>2014-02-05 11:01:59 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>98998</dependson>
          <blocked>98978</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Byungwoo Lee">bw80.lee</reporter>
          <assigned_to name="Byungwoo Lee">bw80.lee</assigned_to>
          <cc>andersca</cc>
    
    <cc>ap</cc>
    
    <cc>eric</cc>
    
    <cc>ggaren</cc>
    
    <cc>gustavo</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>jar</cc>
    
    <cc>jar_webkit</cc>
    
    <cc>kenneth</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>levin+threading</cc>
    
    <cc>michael.bruning</cc>
    
    <cc>mrobinson</cc>
    
    <cc>rakuco</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>yael</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>736158</commentid>
    <comment_count>0</comment_count>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-05 18:51:13 -0700</bug_when>
    <thetext>Runloop dispaching sequence can make deadlock.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736223</commentid>
    <comment_count>1</comment_count>
      <attachid>167451</attachid>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-06 02:33:24 -0700</bug_when>
    <thetext>Created attachment 167451
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736459</commentid>
    <comment_count>2</comment_count>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-07 19:45:07 -0700</bug_when>
    <thetext>RunLoop::wakeUp() function also need some protection by a mutex locker because RunLoop::dispatch() can be invoked on multiple thread at one time.
So I added mutex locker for the RunLoop::wakeUp() also.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>736460</commentid>
    <comment_count>3</comment_count>
      <attachid>167494</attachid>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-07 19:45:50 -0700</bug_when>
    <thetext>Created attachment 167494
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>737616</commentid>
    <comment_count>4</comment_count>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-09 03:36:16 -0700</bug_when>
    <thetext>I tested layout test and unit test for efl(webkit2) and there was no regression with this patch.

I&apos;ll upload same patch again for updating ews status on mac(merge conflict)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>737617</commentid>
    <comment_count>5</comment_count>
      <attachid>167724</attachid>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-09 03:37:45 -0700</bug_when>
    <thetext>Created attachment 167724
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>737727</commentid>
    <comment_count>6</comment_count>
      <attachid>167724</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-10-09 06:07:41 -0700</bug_when>
    <thetext>Comment on attachment 167724
Patch

Attachment 167724 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/14207896

New failing tests:
http/tests/inspector/search/resources-search-match-index.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>737893</commentid>
    <comment_count>7</comment_count>
      <attachid>167724</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-10-09 10:01:53 -0700</bug_when>
    <thetext>Comment on attachment 167724
Patch

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

&gt; Source/WebCore/ChangeLog:25
&gt; +        And RunLoop::wakeUp() can be invoked on multiple thread at one time,
&gt; +        so new mutex locker for the function is added(m_wakeUpLock).

As far as I can tell, there’s no problem running the CF version of wakeUp on multiple threads at once, so it doesn’t seem correct to add unneeded locking just because other platforms need it. Unless I’m mistaken and there is a need for locking.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>737968</commentid>
    <comment_count>8</comment_count>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-09 11:24:44 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 167724 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=167724&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:25
&gt; &gt; +        And RunLoop::wakeUp() can be invoked on multiple thread at one time,
&gt; &gt; +        so new mutex locker for the function is added(m_wakeUpLock).
&gt; 
&gt; As far as I can tell, there’s no problem running the CF version of wakeUp on multiple threads at once, so it doesn’t seem correct to add unneeded locking just because other platforms need it. Unless I’m mistaken and there is a need for locking.

Thanks for the review. :-)

As you pointed, the locking should be added only to the port that needs it.

I&apos;ll remove the locking from the CF version and check this issue on other ports also.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>738198</commentid>
    <comment_count>9</comment_count>
    <who name="Jim Roskind">jar_webkit</who>
    <bug_when>2012-10-09 14:35:58 -0700</bug_when>
    <thetext>Drive by comment (since someone added me to the cc list... maybe because I did a lot of work on the message loop in Chrome):

Locks are best used to protect data, not code. When doing so, it is nicest to hold the lock as briefly as possible.

As a result, the call to a function (WakeUp()), while holding the lock, was suspicious/dangerous (and indeed, based on the bug, the source of a deadlock).  It is a nice change to *only* use the lock to protect the queue during the append (and that is part of the recent CL https://bugs.webkit.org/show_bug.cgi#attach_167724).

That CL also creates a new lock m_wakeUpLock, and acquires that lock within WakeUp().   That lock also appears to be held during more substantial calls... so it is potentially dangerous/problematic.  It would probably be nicer to push such a lock acquisition as low in the stack as possible, and only use it for a minimal set of data access (and not for larger calls... which might block... or need another lock, etc.).

YMMV.... but I&apos;m guessing I was cc&apos;ed to toss in this drive by.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>738202</commentid>
    <comment_count>10</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2012-10-09 14:37:19 -0700</bug_when>
    <thetext>Thank you Jim.  :)  Just trying to make sure all the Lock/RunLoop folks are kept in the loop.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>738758</commentid>
    <comment_count>11</comment_count>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2012-10-10 02:24:18 -0700</bug_when>
    <thetext>afaics, we don&apos;t need the locking for the Qt port either. However, I am not a reviewer, so I added Simon so he can take a look.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739194</commentid>
    <comment_count>12</comment_count>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-10 12:03:58 -0700</bug_when>
    <thetext>Thanks again for your comments :-)

I checked with GTK and Window.

1) GTK doesn&apos;t need lock because g_source_attach and g_main_context_wakeup uses locking internally.

2) Window also does&apos;t need lock : it uses ::PostMessage() function that is thread-safe.

If the QT is clear, I&apos;ll update the patch.

(Maybe the EFL is the only port that needs additional locking)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739675</commentid>
    <comment_count>13</comment_count>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-11 00:54:43 -0700</bug_when>
    <thetext>I checked with QT and it seems that additional locking is not needed for wakeUp.
(wakeUp uses QMetaMethod::invoke() with Qt::QueuedConnection parameter. With that parameter, event will be sent by QCoreApplication::postEvent() which is thread-safe)

I&apos;ll use the additional locking in wakeUp() only for EFL port.

I tried to check carefully, but there can be a missed point on the QT, GTK, WIN port.
Please comment if there is some missed point about those ports and also about the other ports.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739763</commentid>
    <comment_count>14</comment_count>
    <who name="Michael Brüning">michael.bruning</who>
    <bug_when>2012-10-11 02:49:41 -0700</bug_when>
    <thetext>Discussed this issue with Jocelyn Turcotte and we agreed that the wakeup lock is not needed for Qt either as we use QMetaMethod.invoke with a QueuedConenction and that is itself thread-safe and protected by the Qt event loops internally.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739776</commentid>
    <comment_count>15</comment_count>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-11 03:11:25 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; Discussed this issue with Jocelyn Turcotte and we agreed that the wakeup lock is not needed for Qt either as we use QMetaMethod.invoke with a QueuedConenction and that is itself thread-safe and protected by the Qt event loops internally.

Thank you for the checking. I&apos;ll upload new patch. :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>739781</commentid>
    <comment_count>16</comment_count>
      <attachid>168184</attachid>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-11 03:16:07 -0700</bug_when>
    <thetext>Created attachment 168184
Final patch that uses m_functionQueueLock only for accessing m_functionQueue and adds additional locker for wakeUp function only for efl port.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740495</commentid>
    <comment_count>17</comment_count>
      <attachid>168328</attachid>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-11 18:25:08 -0700</bug_when>
    <thetext>Created attachment 168328
incorrectly uploaded</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>740496</commentid>
    <comment_count>18</comment_count>
      <attachid>168184</attachid>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-11 18:27:33 -0700</bug_when>
    <thetext>Comment on attachment 168184
Final patch that uses m_functionQueueLock only for accessing m_functionQueue and adds additional locker for wakeUp function only for efl port.

Oops, uploaded incorrect patch. reopen this again.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>741730</commentid>
    <comment_count>19</comment_count>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-10-14 21:46:27 -0700</bug_when>
    <thetext>I tested layout test and unit test on EFL, and there was no regressions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>744382</commentid>
    <comment_count>20</comment_count>
    <who name="Yael">yael</who>
    <bug_when>2012-10-17 10:36:14 -0700</bug_when>
    <thetext>*** Bug 99494 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>755334</commentid>
    <comment_count>21</comment_count>
      <attachid>168184</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-10-31 08:42:17 -0700</bug_when>
    <thetext>Comment on attachment 168184
Final patch that uses m_functionQueueLock only for accessing m_functionQueue and adds additional locker for wakeUp function only for efl port.

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

&gt; Source/WebCore/platform/RunLoop.cpp:111
&gt; -    MutexLocker locker(m_functionQueueLock);
&gt; -    m_functionQueue.append(function);
&gt; +    {
&gt; +        MutexLocker locker(m_functionQueueLock);
&gt; +        m_functionQueue.append(function);
&gt; +    }

Why is this still needed?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>756802</commentid>
    <comment_count>22</comment_count>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-11-01 18:39:37 -0700</bug_when>
    <thetext>(In reply to comment #21)
&gt; (From update of attachment 168184 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=168184&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/RunLoop.cpp:111
&gt; &gt; -    MutexLocker locker(m_functionQueueLock);
&gt; &gt; -    m_functionQueue.append(function);
&gt; &gt; +    {
&gt; &gt; +        MutexLocker locker(m_functionQueueLock);
&gt; &gt; +        m_functionQueue.append(function);
&gt; &gt; +    }
&gt; 
&gt; Why is this still needed?

Because the mutex is for the m_functionQueue, and calling wakeUp doesn&apos;t need to be protected by m_functionQueueLock.

RunLoop::wakeUp() also be used in the Connection::wakeUpRunLoop() without acquiring any lock.

wakeUpRunLoop() is called in the ScrollingThread::dispatch(), and in the function, locking is released like below.

 void ScrollingThread::dispatch(const Function&lt;void()&gt;&amp; function)
 {
     shared().createThreadIfNeeded();
 
     {
         MutexLocker locker(shared().m_functionsMutex);
         shared().m_functions.append(function);
     }
 
     shared().wakeUpRunLoop();
 }

This function also release lock right after the shared resource is accessed.
and call the wakeUp without locking.

I thought that this is more safer than the previous.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>757811</commentid>
    <comment_count>23</comment_count>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-11-02 17:59:59 -0700</bug_when>
    <thetext>I made two bug for the EFL port issue : Bug 101132, Bug 101135
It will be clear to handle those in the separate issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>976885</commentid>
    <comment_count>24</comment_count>
      <attachid>168184</attachid>
    <who name="Andreas Kling">kling</who>
    <bug_when>2014-02-05 11:01:59 -0800</bug_when>
    <thetext>Comment on attachment 168184
Final patch that uses m_functionQueueLock only for accessing m_functionQueue and adds additional locker for wakeUp function only for efl port.

Clearing review flag on patches from before 2014. If this patch is still relevant, please reset the r? flag.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>167451</attachid>
            <date>2012-10-06 02:33:24 -0700</date>
            <delta_ts>2012-10-07 19:43:48 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-98580-20121006183230.patch</filename>
            <type>text/plain</type>
            <size>1985</size>
            <attacher name="Byungwoo Lee">bw80.lee</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMwNDczCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMGE4ZjA0ODBhYTZjZTMw
NGI5N2JlMTZiOGY5ODU0ZDRkNDRlODNhYi4uZGQ5M2YwOGEyODRiZGRkMjJlMjc1YTZiMmViMTE3
ODc4ZDEwZmE2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI5IEBACisyMDEyLTEwLTA2ICBCeXVu
Z3dvbyBMZWUgIDxidzgwLmxlZUBzYW1zdW5nLmNvbT4KKworICAgICAgICBDaGFuZ2UgdGhlIHJh
bmdlIG9mIG1fZnVuY3Rpb25RdWV1ZUxvY2sgaW4gUnVuTG9vcDo6ZGlzcGF0Y2goKS4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4NTgwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIG11dGV4IGxvY2tl
ciBpbiBSdW5Mb29wOjpkaXNwYXRjaCgpIGZvciBhY2Nlc3NpbmcgbV9mdW5jdGlvblF1ZXVlCisg
ICAgICAgIG9ubHkuCisKKyAgICAgICAgRUZMIHVzZXMgZWNvcmVfcGlwZV93cml0ZSgpIHRvIHdh
a2V1cCBtYWluIHJ1biBsb29wLCBhbmQgdGhlIGZ1bmN0aW9uCisgICAgICAgIHVzZXMgcGlwZSB3
cml0ZSB3aXRoIE9fTk9OQkxPQ0sgZGlzYWJsZWQuCisgICAgICAgIFdoZW4gd3JpdHRlbiBkYXRh
IGlzIG1vcmUgdGhhbiBQSVBFX0JVRiwgcGlwZSB3cml0ZSB3aWxsIGJsb2NrIHVudGlsCisgICAg
ICAgIGl0IGNhbiBiZSB3cml0dGVuLgorCisgICAgICAgIEluIFJ1bkxvb3A6OmRpc3BhdGNoKCks
IGxvY2sgZm9yIG1fZnVuY3Rpb25RdWV1ZUxvY2sgaXMgcmVsZWFzZWQgYWZ0ZXIKKyAgICAgICAg
dGhlIHdha2VVcCgpIGlzIGZpbmlzaGVkLgorICAgICAgICBXaGVuIHBpcGUgYnVmZmVyIGZ1bGwg
c3RhdHVzLCB0aGlzIGNhbiBtYWtlIGRlYWRsb2NrIHByb2JsZW0gYmVjYXVzZQorICAgICAgICBS
dW5Mb29wOjpwZXJmb3JtV29yaygpIGFsc28gbmVlZCB0aGUgbV9mdW5jdGlvblF1ZXVlTG9jay4K
KworICAgICAgICBUbyBwcmV2ZW50IHRoaXMsIHVzZWQgdGhlIG11dGV4IGxvY2tlciBpbiBSdW5M
b29wOjpkaXNwYXRjaCgpIG9ubHkgZm9yCisgICAgICAgIGFjY2Vzc2luZyBtX2Z1bmN0aW9uUXVl
dWUuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9SdW5Mb29wLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6
OlJ1bkxvb3A6OmRpc3BhdGNoKToKKwogMjAxMi0xMC0wNCAgS2VuaWNoaSBJc2hpYmFzaGkgIDxi
YXNoaUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgW1dlYlNvY2tldF0gRXh0ZW5zaW9uUGFyc2Vy
IHNob3VsZCBoYXZlIGl0cyBvd24gZmlsZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vUnVuTG9vcC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9SdW5Mb29wLmNwcApp
bmRleCA3ODAzMGFmNzZhYWRkODExNTQxNThlNGE1MzNlZDI1MmNlOGYzOWVjLi4zYWEzZjBjODU4
NzU4OTJmYjM5NDQ3NGRkM2M1MzNlN2RkYTA4NWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9SdW5Mb29wLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9SdW5M
b29wLmNwcApAQCAtMTA1LDggKzEwNSwxMCBAQCB2b2lkIFJ1bkxvb3A6OnBlcmZvcm1Xb3JrKCkK
IAogdm9pZCBSdW5Mb29wOjpkaXNwYXRjaChjb25zdCBGdW5jdGlvbjx2b2lkKCk+JiBmdW5jdGlv
bikKIHsKLSAgICBNdXRleExvY2tlciBsb2NrZXIobV9mdW5jdGlvblF1ZXVlTG9jayk7Ci0gICAg
bV9mdW5jdGlvblF1ZXVlLmFwcGVuZChmdW5jdGlvbik7CisgICAgeworICAgICAgICBNdXRleExv
Y2tlciBsb2NrZXIobV9mdW5jdGlvblF1ZXVlTG9jayk7CisgICAgICAgIG1fZnVuY3Rpb25RdWV1
ZS5hcHBlbmQoZnVuY3Rpb24pOworICAgIH0KIAogICAgIHdha2VVcCgpOwogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>167494</attachid>
            <date>2012-10-07 19:45:50 -0700</date>
            <delta_ts>2012-10-09 03:37:37 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-98580-20121008114453.patch</filename>
            <type>text/plain</type>
            <size>5495</size>
            <attacher name="Byungwoo Lee">bw80.lee</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMwNTgxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzRlZDgwZDg3ZmEwMzM0
OGUyNDE4Mzk4NWMwMDJjMTcyMjgyMDljMi4uMDM1ZmFlZTc3MzNjMTUyNDhhMTU2NTE2ZmY3OGQw
YjVlZTA2MzljYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEyLTEwLTA2ICBCeXVu
Z3dvbyBMZWUgIDxidzgwLmxlZUBzYW1zdW5nLmNvbT4KKworICAgICAgICBDaGFuZ2UgdGhlIHJh
bmdlIG9mIG1fZnVuY3Rpb25RdWV1ZUxvY2sgaW4gUnVuTG9vcDo6ZGlzcGF0Y2goKS4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4NTgwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIG11dGV4IGxvY2tl
ciBpbiBSdW5Mb29wOjpkaXNwYXRjaCgpIGZvciBhY2Nlc3NpbmcgbV9mdW5jdGlvblF1ZXVlCisg
ICAgICAgIG9ubHksIGFuZCBtYWtlIG1fd2FrZVVwTG9jayBmb3Igd2FrZVVwKCkgZnVuY3Rpb24u
CisKKyAgICAgICAgRUZMIHVzZXMgZWNvcmVfcGlwZV93cml0ZSgpIHRvIHdha2V1cCBtYWluIHJ1
biBsb29wLCBhbmQgdGhlIGZ1bmN0aW9uCisgICAgICAgIHVzZXMgcGlwZSB3cml0ZSB3aXRoIE9f
Tk9OQkxPQ0sgZGlzYWJsZWQuCisgICAgICAgIFdoZW4gd3JpdHRlbiBkYXRhIGlzIG1vcmUgdGhh
biBQSVBFX0JVRiwgcGlwZSB3cml0ZSB3aWxsIGJsb2NrIHVudGlsCisgICAgICAgIGl0IGNhbiBi
ZSB3cml0dGVuLgorCisgICAgICAgIEluIFJ1bkxvb3A6OmRpc3BhdGNoKCksIGxvY2sgZm9yIG1f
ZnVuY3Rpb25RdWV1ZUxvY2sgaXMgcmVsZWFzZWQgYWZ0ZXIKKyAgICAgICAgdGhlIHdha2VVcCgp
IGlzIGZpbmlzaGVkLgorICAgICAgICBXaGVuIHBpcGUgYnVmZmVyIGZ1bGwgc3RhdHVzLCB0aGlz
IGNhbiBtYWtlIGRlYWRsb2NrIHByb2JsZW0gYmVjYXVzZQorICAgICAgICBSdW5Mb29wOjpwZXJm
b3JtV29yaygpIGFsc28gbmVlZCB0aGUgbV9mdW5jdGlvblF1ZXVlTG9jay4KKworICAgICAgICBU
byBwcmV2ZW50IHRoaXMsIHVzZWQgdGhlIG11dGV4IGxvY2tlciBpbiBSdW5Mb29wOjpkaXNwYXRj
aCgpIG9ubHkgZm9yCisgICAgICAgIGFjY2Vzc2luZyBtX2Z1bmN0aW9uUXVldWUuCisKKyAgICAg
ICAgQW5kIFJ1bkxvb3A6Ondha2VVcCgpIGNhbiBiZSBpbnZva2VkIG9uIG11bHRpcGxlIHRocmVh
ZCBhdCBvbmUgdGltZSwKKyAgICAgICAgc28gbmV3IG11dGV4IGxvY2tlciBmb3IgdGhlIGZ1bmN0
aW9uIGlzIGFkZGVkKG1fd2FrZVVwTG9jaykuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9SdW5Mb29w
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJ1bkxvb3A6OmRpc3BhdGNoKToKKwogMjAxMi0xMC0w
NSAgQWRhbSBCYXJ0aCAgPGFiYXJ0aEB3ZWJraXQub3JnPgogCiAgICAgICAgIFtWOF0gdG9WOChO
b2RlKiwgLi4uKSBkb2VzIG1vcmUgd29yayB0aGFuIG5lZWRlZCAoNiUgZmFzdGVyIG9uIGRvbS10
cmF2ZXJzZSkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1J1bkxvb3AuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUnVuTG9vcC5jcHAKaW5kZXggNzgwMzBhZjc2YWFk
ZDgxMTU0MTU4ZTRhNTMzZWQyNTJjZThmMzllYy4uM2FhM2YwYzg1ODc1ODkyZmIzOTQ0NzRkZDNj
NTMzZTdkZGEwODViNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUnVuTG9v
cC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUnVuTG9vcC5jcHAKQEAgLTEwNSw4
ICsxMDUsMTAgQEAgdm9pZCBSdW5Mb29wOjpwZXJmb3JtV29yaygpCiAKIHZvaWQgUnVuTG9vcDo6
ZGlzcGF0Y2goY29uc3QgRnVuY3Rpb248dm9pZCgpPiYgZnVuY3Rpb24pCiB7Ci0gICAgTXV0ZXhM
b2NrZXIgbG9ja2VyKG1fZnVuY3Rpb25RdWV1ZUxvY2spOwotICAgIG1fZnVuY3Rpb25RdWV1ZS5h
cHBlbmQoZnVuY3Rpb24pOworICAgIHsKKyAgICAgICAgTXV0ZXhMb2NrZXIgbG9ja2VyKG1fZnVu
Y3Rpb25RdWV1ZUxvY2spOworICAgICAgICBtX2Z1bmN0aW9uUXVldWUuYXBwZW5kKGZ1bmN0aW9u
KTsKKyAgICB9CiAKICAgICB3YWtlVXAoKTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL1J1bkxvb3AuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1J1bkxvb3AuaApp
bmRleCBjZTk4NDVlMmE1NzU5MjFhOWYxNWZlNTVmOWIxY2JlZThhZjQxYTg2Li45MGQwYWQ3ZDg1
MGY4OGY5ZjNjMDRlZjUxOTVlZDgwNzcyYjA0ZTkyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9SdW5Mb29wLmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUnVuTG9v
cC5oCkBAIC0xMzcsNiArMTM3LDggQEAgcHJpdmF0ZToKICAgICBNdXRleCBtX2Z1bmN0aW9uUXVl
dWVMb2NrOwogICAgIERlcXVlPEZ1bmN0aW9uPHZvaWQoKT4gPiBtX2Z1bmN0aW9uUXVldWU7CiAK
KyAgICBNdXRleCBtX3dha2VVcExvY2s7CisKICNpZiBQTEFURk9STShXSU4pCiAgICAgc3RhdGlj
IGJvb2wgcmVnaXN0ZXJSdW5Mb29wTWVzc2FnZVdpbmRvd0NsYXNzKCk7CiAgICAgc3RhdGljIExS
RVNVTFQgQ0FMTEJBQ0sgUnVuTG9vcFduZFByb2MoSFdORCwgVUlOVCwgV1BBUkFNLCBMUEFSQU0p
OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvUnVuTG9vcENGLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2NmL1J1bkxvb3BDRi5jcHAKaW5kZXggMGIzMTc3Y2Mw
MTljNTExN2IwYjNlMTlmOWQxOTA5YTFmYmY2MmQxNi4uMTdkNDk2NjlmZTQzYzMwZjViY2Y3M2Iz
Y2Q3MjhiNzNkNGZmMzE1YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2Yv
UnVuTG9vcENGLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9SdW5Mb29wQ0Yu
Y3BwCkBAIC0xMDAsNiArMTAwLDcgQEAgdm9pZCBSdW5Mb29wOjpydW5Gb3JEdXJhdGlvbihkb3Vi
bGUgZHVyYXRpb24pCiAKIHZvaWQgUnVuTG9vcDo6d2FrZVVwKCkKIHsKKyAgICBNdXRleExvY2tl
ciBsb2NrZXIobV93YWtlVXBMb2NrKTsKICAgICBDRlJ1bkxvb3BTb3VyY2VTaWduYWwobV9ydW5M
b29wU291cmNlKTsKICAgICBDRlJ1bkxvb3BXYWtlVXAobV9ydW5Mb29wKTsKIH0KZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9SdW5Mb29wRWZsLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL3BsYXRmb3JtL2VmbC9SdW5Mb29wRWZsLmNwcAppbmRleCBmMjk5ZDhlY2YyNjgyNDBi
ZGQyNjY2YmE1MmE0NGJjY2JhMTllMjJkLi4wMGY4ZDNiMmI0OGZkMTdkY2FlYmE1OTg4NTg1ZjFj
YzAwMDdhMGExIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9lZmwvUnVuTG9v
cEVmbC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1J1bkxvb3BFZmwuY3Bw
CkBAIC0xMDIsNiArMTAyLDcgQEAgdm9pZCBSdW5Mb29wOjp3YWtlVXBFdmVudCh2b2lkKiBkYXRh
LCB2b2lkKiwgdW5zaWduZWQgaW50KQogCiB2b2lkIFJ1bkxvb3A6Ondha2VVcCgpCiB7CisgICAg
TXV0ZXhMb2NrZXIgbG9ja2VyKG1fd2FrZVVwTG9jayk7CiAgICAgZWNvcmVfcGlwZV93cml0ZSht
X3BpcGUuZ2V0KCksIHdha3VwRWNvcmVQaXBlTWVzc2FnZSwgZWNvcmVQaXBlTWVzc2FnZVNpemUp
OwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvUnVuTG9vcEd0
ay5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvUnVuTG9vcEd0ay5jcHAKaW5kZXgg
ZTZlZTZjMGY1NTMyZWVmYzZkMWYyNTRlZjExMTY4NjM1Mjk1NGRkZC4uNWFkMzg3ODYyOWM1NGQ0
NGI1YTQ1MDg3Mjg3MjUxMzg3N2JkN2FmNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3RrL1J1bkxvb3BHdGsuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9SdW5Mb29wR3RrLmNwcApAQCAtMTA1LDYgKzEwNSw3IEBAIGdib29sZWFuIFJ1bkxvb3A6OnF1
ZXVlV29yayhSdW5Mb29wKiBydW5Mb29wKQogCiB2b2lkIFJ1bkxvb3A6Ondha2VVcCgpCiB7Cisg
ICAgTXV0ZXhMb2NrZXIgbG9ja2VyKG1fd2FrZVVwTG9jayk7CiAgICAgR1JlZlB0cjxHU291cmNl
PiBzb3VyY2UgPSBhZG9wdEdSZWYoZ19pZGxlX3NvdXJjZV9uZXcoKSk7CiAgICAgZ19zb3VyY2Vf
c2V0X3ByaW9yaXR5KHNvdXJjZS5nZXQoKSwgR19QUklPUklUWV9ERUZBVUxUKTsKICAgICBnX3Nv
dXJjZV9zZXRfY2FsbGJhY2soc291cmNlLmdldCgpLCByZWludGVycHJldF9jYXN0PEdTb3VyY2VG
dW5jPigmUnVuTG9vcDo6cXVldWVXb3JrKSwgdGhpcywgMCk7CmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9xdC9SdW5Mb29wUXQuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vcXQvUnVuTG9vcFF0LmNwcAppbmRleCAyYTg3ZTJmYzhmNjY3Nzc2OWY3MzE0M2U1NzFlMDlj
NWE1NGM2ZWJhLi4yMmRlNjBiOWVmYjZlYmFhNWMwMzk3Y2JjZjJiYjAyOTEwZWEzOGVjIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9SdW5Mb29wUXQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L1J1bkxvb3BRdC5jcHAKQEAgLTEwMCw2ICsxMDAsNyBA
QCBSdW5Mb29wOjp+UnVuTG9vcCgpCiAKIHZvaWQgUnVuTG9vcDo6d2FrZVVwKCkKIHsKKyAgICBN
dXRleExvY2tlciBsb2NrZXIobV93YWtlVXBMb2NrKTsKICAgICBtX3RpbWVyT2JqZWN0LT53YWtl
VXAoKTsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL1J1bkxv
b3BXaW4uY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL1J1bkxvb3BXaW4uY3BwCmlu
ZGV4IDE2NjNiNjYxMzNhYmMyY2IzZmQwMDU3ZDE5NjcxMjM3ZDBlNzk5ZGEuLjE2ZTUyZjY0YTli
ZTFiZjkwNmM4NTkyYzNmZmNmMTA2NWFhY2Y1ZTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL3dpbi9SdW5Mb29wV2luLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS93aW4vUnVuTG9vcFdpbi5jcHAKQEAgLTExMSw2ICsxMTEsNyBAQCBSdW5Mb29wOjp+UnVuTG9v
cCgpCiAKIHZvaWQgUnVuTG9vcDo6d2FrZVVwKCkKIHsKKyAgICBNdXRleExvY2tlciBsb2NrZXIo
bV93YWtlVXBMb2NrKTsKICAgICAvLyBGSVhNRTogTm8gbmVlZCB0byB3YWtlIHVwIHRoZSBydW4g
bG9vcCBpZiB3ZSd2ZSBhbHJlYWR5IGNhbGxlZCBkaXNwYXRjaAogICAgIC8vIGJlZm9yZSB0aGUg
cnVuIGxvb3AgaGFzIGhhZCB0aGUgdGltZSB0byByZXNwb25kLgogICAgIDo6UG9zdE1lc3NhZ2Uo
bV9ydW5Mb29wTWVzc2FnZVdpbmRvdywgUGVyZm9ybVdvcmtNZXNzYWdlLCByZWludGVycHJldF9j
YXN0PFdQQVJBTT4odGhpcyksIDApOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>167724</attachid>
            <date>2012-10-09 03:37:45 -0700</date>
            <delta_ts>2012-10-11 03:15:59 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-98580-20121009193645.patch</filename>
            <type>text/plain</type>
            <size>5449</size>
            <attacher name="Byungwoo Lee">bw80.lee</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMwNzE1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjY2OGJmYmE0ZTRlODU2
OGNhZTU5OWVlNTI5YWFlYjA1MjE3NjMwMi4uYTc2NDFiNzdkMzUyNzM4NmNhNTk0NmZmMzI2M2U0
ODI2M2RkODc2OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEyLTEwLTA4ICBCeXVu
Z3dvbyBMZWUgIDxidzgwLmxlZUBzYW1zdW5nLmNvbT4KKworICAgICAgICBDaGFuZ2UgdGhlIHJh
bmdlIG9mIG1fZnVuY3Rpb25RdWV1ZUxvY2sgaW4gUnVuTG9vcDo6ZGlzcGF0Y2goKS4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4NTgwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIG11dGV4IGxvY2tl
ciBpbiBSdW5Mb29wOjpkaXNwYXRjaCgpIGZvciBhY2Nlc3NpbmcgbV9mdW5jdGlvblF1ZXVlCisg
ICAgICAgIG9ubHksIGFuZCBtYWtlIG1fd2FrZVVwTG9jayBmb3Igd2FrZVVwKCkgZnVuY3Rpb24u
CisKKyAgICAgICAgRUZMIHVzZXMgZWNvcmVfcGlwZV93cml0ZSgpIHRvIHdha2V1cCBtYWluIHJ1
biBsb29wLCBhbmQgdGhlIGZ1bmN0aW9uCisgICAgICAgIHVzZXMgcGlwZSB3cml0ZSB3aXRoIE9f
Tk9OQkxPQ0sgZGlzYWJsZWQuCisgICAgICAgIFdoZW4gd3JpdHRlbiBkYXRhIGlzIG1vcmUgdGhh
biBQSVBFX0JVRiwgcGlwZSB3cml0ZSB3aWxsIGJsb2NrIHVudGlsCisgICAgICAgIGl0IGNhbiBi
ZSB3cml0dGVuLgorCisgICAgICAgIEluIFJ1bkxvb3A6OmRpc3BhdGNoKCksIGxvY2sgZm9yIG1f
ZnVuY3Rpb25RdWV1ZUxvY2sgaXMgcmVsZWFzZWQgYWZ0ZXIKKyAgICAgICAgdGhlIHdha2VVcCgp
IGlzIGZpbmlzaGVkLgorICAgICAgICBXaGVuIHBpcGUgYnVmZmVyIGZ1bGwgc3RhdHVzLCB0aGlz
IGNhbiBtYWtlIGRlYWRsb2NrIHByb2JsZW0gYmVjYXVzZQorICAgICAgICBSdW5Mb29wOjpwZXJm
b3JtV29yaygpIGFsc28gbmVlZCB0aGUgbV9mdW5jdGlvblF1ZXVlTG9jay4KKworICAgICAgICBU
byBwcmV2ZW50IHRoaXMsIHVzZWQgdGhlIG11dGV4IGxvY2tlciBpbiBSdW5Mb29wOjpkaXNwYXRj
aCgpIG9ubHkgZm9yCisgICAgICAgIGFjY2Vzc2luZyBtX2Z1bmN0aW9uUXVldWUuCisKKyAgICAg
ICAgQW5kIFJ1bkxvb3A6Ondha2VVcCgpIGNhbiBiZSBpbnZva2VkIG9uIG11bHRpcGxlIHRocmVh
ZCBhdCBvbmUgdGltZSwKKyAgICAgICAgc28gbmV3IG11dGV4IGxvY2tlciBmb3IgdGhlIGZ1bmN0
aW9uIGlzIGFkZGVkKG1fd2FrZVVwTG9jaykuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9SdW5Mb29w
LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJ1bkxvb3A6OmRpc3BhdGNoKToKKwogMjAxMi0xMC0w
OCAgVG9ueSBDaGFuZyAgPHRvbnlAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIGltYWdlIG5vdCBk
aXNwbGF5ZWQgaW4gZmxleGJveApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
UnVuTG9vcC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9SdW5Mb29wLmNwcAppbmRleCA3
ODAzMGFmNzZhYWRkODExNTQxNThlNGE1MzNlZDI1MmNlOGYzOWVjLi4zYWEzZjBjODU4NzU4OTJm
YjM5NDQ3NGRkM2M1MzNlN2RkYTA4NWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9SdW5Mb29wLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9SdW5Mb29wLmNw
cApAQCAtMTA1LDggKzEwNSwxMCBAQCB2b2lkIFJ1bkxvb3A6OnBlcmZvcm1Xb3JrKCkKIAogdm9p
ZCBSdW5Mb29wOjpkaXNwYXRjaChjb25zdCBGdW5jdGlvbjx2b2lkKCk+JiBmdW5jdGlvbikKIHsK
LSAgICBNdXRleExvY2tlciBsb2NrZXIobV9mdW5jdGlvblF1ZXVlTG9jayk7Ci0gICAgbV9mdW5j
dGlvblF1ZXVlLmFwcGVuZChmdW5jdGlvbik7CisgICAgeworICAgICAgICBNdXRleExvY2tlciBs
b2NrZXIobV9mdW5jdGlvblF1ZXVlTG9jayk7CisgICAgICAgIG1fZnVuY3Rpb25RdWV1ZS5hcHBl
bmQoZnVuY3Rpb24pOworICAgIH0KIAogICAgIHdha2VVcCgpOwogfQpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vUnVuTG9vcC5oIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
UnVuTG9vcC5oCmluZGV4IGNlOTg0NWUyYTU3NTkyMWE5ZjE1ZmU1NWY5YjFjYmVlOGFmNDFhODYu
LjkwZDBhZDdkODUwZjg4ZjlmM2MwNGVmNTE5NWVkODA3NzJiMDRlOTIgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL1J1bkxvb3AuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9SdW5Mb29wLmgKQEAgLTEzNyw2ICsxMzcsOCBAQCBwcml2YXRlOgogICAgIE11dGV4IG1f
ZnVuY3Rpb25RdWV1ZUxvY2s7CiAgICAgRGVxdWU8RnVuY3Rpb248dm9pZCgpPiA+IG1fZnVuY3Rp
b25RdWV1ZTsKIAorICAgIE11dGV4IG1fd2FrZVVwTG9jazsKKwogI2lmIFBMQVRGT1JNKFdJTikK
ICAgICBzdGF0aWMgYm9vbCByZWdpc3RlclJ1bkxvb3BNZXNzYWdlV2luZG93Q2xhc3MoKTsKICAg
ICBzdGF0aWMgTFJFU1VMVCBDQUxMQkFDSyBSdW5Mb29wV25kUHJvYyhIV05ELCBVSU5ULCBXUEFS
QU0sIExQQVJBTSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9jZi9SdW5M
b29wQ0YuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vY2YvUnVuTG9vcENGLmNwcAppbmRl
eCAwYjMxNzdjYzAxOWM1MTE3YjBiM2UxOWY5ZDE5MDlhMWZiZjYyZDE2Li4xN2Q0OTY2OWZlNDNj
MzBmNWJjZjczYjNjZDcyOGI3M2Q0ZmYzMTVjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9jZi9SdW5Mb29wQ0YuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2Nm
L1J1bkxvb3BDRi5jcHAKQEAgLTEwMCw2ICsxMDAsNyBAQCB2b2lkIFJ1bkxvb3A6OnJ1bkZvckR1
cmF0aW9uKGRvdWJsZSBkdXJhdGlvbikKIAogdm9pZCBSdW5Mb29wOjp3YWtlVXAoKQogeworICAg
IE11dGV4TG9ja2VyIGxvY2tlcihtX3dha2VVcExvY2spOwogICAgIENGUnVuTG9vcFNvdXJjZVNp
Z25hbChtX3J1bkxvb3BTb3VyY2UpOwogICAgIENGUnVuTG9vcFdha2VVcChtX3J1bkxvb3ApOwog
fQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1J1bkxvb3BFZmwuY3Bw
IGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1J1bkxvb3BFZmwuY3BwCmluZGV4IGYyOTlk
OGVjZjI2ODI0MGJkZDI2NjZiYTUyYTQ0YmNjYmExOWUyMmQuLjAwZjhkM2IyYjQ4ZmQxN2RjYWVi
YTU5ODg1ODVmMWNjMDAwN2EwYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2VmbC9SdW5Mb29wRWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9lZmwvUnVu
TG9vcEVmbC5jcHAKQEAgLTEwMiw2ICsxMDIsNyBAQCB2b2lkIFJ1bkxvb3A6Ondha2VVcEV2ZW50
KHZvaWQqIGRhdGEsIHZvaWQqLCB1bnNpZ25lZCBpbnQpCiAKIHZvaWQgUnVuTG9vcDo6d2FrZVVw
KCkKIHsKKyAgICBNdXRleExvY2tlciBsb2NrZXIobV93YWtlVXBMb2NrKTsKICAgICBlY29yZV9w
aXBlX3dyaXRlKG1fcGlwZS5nZXQoKSwgd2FrdXBFY29yZVBpcGVNZXNzYWdlLCBlY29yZVBpcGVN
ZXNzYWdlU2l6ZSk7CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0
ay9SdW5Mb29wR3RrLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9SdW5Mb29wR3Rr
LmNwcAppbmRleCBlNmVlNmMwZjU1MzJlZWZjNmQxZjI1NGVmMTExNjg2MzUyOTU0ZGRkLi41YWQz
ODc4NjI5YzU0ZDQ0YjVhNDUwODcyODcyNTEzODc3YmQ3YWY3IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvUnVuTG9vcEd0ay5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3RrL1J1bkxvb3BHdGsuY3BwCkBAIC0xMDUsNiArMTA1LDcgQEAgZ2Jvb2xlYW4g
UnVuTG9vcDo6cXVldWVXb3JrKFJ1bkxvb3AqIHJ1bkxvb3ApCiAKIHZvaWQgUnVuTG9vcDo6d2Fr
ZVVwKCkKIHsKKyAgICBNdXRleExvY2tlciBsb2NrZXIobV93YWtlVXBMb2NrKTsKICAgICBHUmVm
UHRyPEdTb3VyY2U+IHNvdXJjZSA9IGFkb3B0R1JlZihnX2lkbGVfc291cmNlX25ldygpKTsKICAg
ICBnX3NvdXJjZV9zZXRfcHJpb3JpdHkoc291cmNlLmdldCgpLCBHX1BSSU9SSVRZX0RFRkFVTFQp
OwogICAgIGdfc291cmNlX3NldF9jYWxsYmFjayhzb3VyY2UuZ2V0KCksIHJlaW50ZXJwcmV0X2Nh
c3Q8R1NvdXJjZUZ1bmM+KCZSdW5Mb29wOjpxdWV1ZVdvcmspLCB0aGlzLCAwKTsKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L1J1bkxvb3BRdC5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9xdC9SdW5Mb29wUXQuY3BwCmluZGV4IDUwMWJkNWMxMjNiMGYwM2NlOWEw
Y2Y5MGUxNzI2OTFmNTA2ZDlhMWIuLjk5MzZjYmYxODBlNzljMzg0NTJmMzFiZmM3NzU2NTE4Njhj
ZTk5NzkgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L1J1bkxvb3BRdC5j
cHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvUnVuTG9vcFF0LmNwcApAQCAtMTAw
LDYgKzEwMCw3IEBAIFJ1bkxvb3A6On5SdW5Mb29wKCkKIAogdm9pZCBSdW5Mb29wOjp3YWtlVXAo
KQogeworICAgIE11dGV4TG9ja2VyIGxvY2tlcihtX3dha2VVcExvY2spOwogICAgIG1fdGltZXJP
YmplY3QtPndha2VVcCgpOwogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS93aW4vUnVuTG9vcFdpbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS93aW4vUnVuTG9v
cFdpbi5jcHAKaW5kZXggMTdkNjg0NWU5ZmZkYzM5MjhjMDY3YzdjMTU4ODNhYWI5MGQyOWE2OC4u
MjM0MWFiMGU0YjU4NTMwYTMwMmNhZDUxMmI5NGRlNWQ3M2UyOGZmYyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vd2luL1J1bkxvb3BXaW4uY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL3BsYXRmb3JtL3dpbi9SdW5Mb29wV2luLmNwcApAQCAtMTExLDYgKzExMSw3IEBAIFJ1bkxv
b3A6On5SdW5Mb29wKCkKIAogdm9pZCBSdW5Mb29wOjp3YWtlVXAoKQogeworICAgIE11dGV4TG9j
a2VyIGxvY2tlcihtX3dha2VVcExvY2spOwogICAgIC8vIEZJWE1FOiBObyBuZWVkIHRvIHdha2Ug
dXAgdGhlIHJ1biBsb29wIGlmIHdlJ3ZlIGFscmVhZHkgY2FsbGVkIGRpc3BhdGNoCiAgICAgLy8g
YmVmb3JlIHRoZSBydW4gbG9vcCBoYXMgaGFkIHRoZSB0aW1lIHRvIHJlc3BvbmQuCiAgICAgOjpQ
b3N0TWVzc2FnZShtX3J1bkxvb3BNZXNzYWdlV2luZG93LCBQZXJmb3JtV29ya01lc3NhZ2UsIHJl
aW50ZXJwcmV0X2Nhc3Q8V1BBUkFNPih0aGlzKSwgMCk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>168184</attachid>
            <date>2012-10-11 03:16:07 -0700</date>
            <delta_ts>2014-02-05 11:01:58 -0800</delta_ts>
            <desc>Final patch that uses m_functionQueueLock only for accessing m_functionQueue and adds additional locker for wakeUp function only for efl port.</desc>
            <filename>bug-98580-20121011191503.patch</filename>
            <type>text/plain</type>
            <size>3318</size>
            <attacher name="Byungwoo Lee">bw80.lee</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMwODQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZDExMTE5NTM4NzU5OGUw
OWJiNmI0MjVjNGE4NzFmM2VjYjlmMGVhNS4uYTQ1MzM4ZDQzZWQ3OGIwYThmMTdiY2UxYzRiNDIz
NGRhZDdjY2I1YSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM2IEBACisyMDEyLTEwLTExICBCeXVu
Z3dvbyBMZWUgIDxidzgwLmxlZUBzYW1zdW5nLmNvbT4KKworICAgICAgICBDaGFuZ2UgdGhlIHJh
bmdlIG9mIG1fZnVuY3Rpb25RdWV1ZUxvY2sgaW4gUnVuTG9vcDo6ZGlzcGF0Y2goKS4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTk4NTgwCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIG11dGV4IGxvY2tl
ciBpbiBSdW5Mb29wOjpkaXNwYXRjaCgpIGZvciBhY2Nlc3NpbmcgbV9mdW5jdGlvblF1ZXVlCisg
ICAgICAgIG9ubHksIGFuZCBtYWtlIG1fd2FrZVVwTG9jayBmb3Igd2FrZVVwKCkgZnVuY3Rpb24u
CisKKyAgICAgICAgRUZMIHVzZXMgZWNvcmVfcGlwZV93cml0ZSgpIHRvIHdha2V1cCBtYWluIHJ1
biBsb29wLCBhbmQgdGhlIGZ1bmN0aW9uCisgICAgICAgIHVzZXMgcGlwZSB3cml0ZSB3aXRoIE9f
Tk9OQkxPQ0sgZGlzYWJsZWQuCisgICAgICAgIFdoZW4gd3JpdHRlbiBkYXRhIGlzIG1vcmUgdGhh
biBQSVBFX0JVRiwgcGlwZSB3cml0ZSB3aWxsIGJsb2NrIHVudGlsCisgICAgICAgIGl0IGNhbiBi
ZSB3cml0dGVuLgorCisgICAgICAgIEluIFJ1bkxvb3A6OmRpc3BhdGNoKCksIGxvY2sgZm9yIG1f
ZnVuY3Rpb25RdWV1ZUxvY2sgaXMgcmVsZWFzZWQgYWZ0ZXIKKyAgICAgICAgdGhlIHdha2VVcCgp
IGlzIGZpbmlzaGVkLgorICAgICAgICBXaGVuIHBpcGUgYnVmZmVyIGZ1bGwgc3RhdHVzLCB0aGlz
IGNhbiBtYWtlIGRlYWRsb2NrIHByb2JsZW0gYmVjYXVzZQorICAgICAgICBSdW5Mb29wOjpwZXJm
b3JtV29yaygpIGFsc28gbmVlZCB0aGUgbV9mdW5jdGlvblF1ZXVlTG9jay4KKworICAgICAgICBU
byBwcmV2ZW50IHRoaXMsIHVzZWQgdGhlIG11dGV4IGxvY2tlciBpbiBSdW5Mb29wOjpkaXNwYXRj
aCgpIG9ubHkgZm9yCisgICAgICAgIGFjY2Vzc2luZyBtX2Z1bmN0aW9uUXVldWUuCisKKyAgICAg
ICAgQW5kIFJ1bkxvb3A6Ondha2VVcCgpIG9uIEVGTCBuZWVkIHByb3RlY3Rpb24gdG8gZW5zdXJl
IHRocmVhZC1zYWZldHkuCisgICAgICAgIFNvIG5ldyBtdXRleCBsb2NrZXIgZm9yIHRoZSBmdW5j
dGlvbiBpcyBhZGRlZChtX3dha2VVcExvY2spIG9ubHkgZm9yIEVGTC4KKworICAgICAgICAqIHBs
YXRmb3JtL1J1bkxvb3AuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UnVuTG9vcDo6ZGlzcGF0Y2gp
OgorICAgICAgICAqIHBsYXRmb3JtL1J1bkxvb3AuaDoKKyAgICAgICAgKFJ1bkxvb3ApOgorICAg
ICAgICAqIHBsYXRmb3JtL2VmbC9SdW5Mb29wRWZsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJ1
bkxvb3A6Ondha2VVcCk6CisKIDIwMTItMTAtMDkgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFNob3VsZCByZWplY3QgaW52YWxpZCBkYXRlcyBjb25zdHJ1Y3Rl
ZCB3aXRoIG11bHRpcGxlIGZpZWxkcyBVSQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vUnVuTG9vcC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9SdW5Mb29wLmNwcApp
bmRleCA3ODAzMGFmNzZhYWRkODExNTQxNThlNGE1MzNlZDI1MmNlOGYzOWVjLi4zYWEzZjBjODU4
NzU4OTJmYjM5NDQ3NGRkM2M1MzNlN2RkYTA4NWI2IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9SdW5Mb29wLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9SdW5M
b29wLmNwcApAQCAtMTA1LDggKzEwNSwxMCBAQCB2b2lkIFJ1bkxvb3A6OnBlcmZvcm1Xb3JrKCkK
IAogdm9pZCBSdW5Mb29wOjpkaXNwYXRjaChjb25zdCBGdW5jdGlvbjx2b2lkKCk+JiBmdW5jdGlv
bikKIHsKLSAgICBNdXRleExvY2tlciBsb2NrZXIobV9mdW5jdGlvblF1ZXVlTG9jayk7Ci0gICAg
bV9mdW5jdGlvblF1ZXVlLmFwcGVuZChmdW5jdGlvbik7CisgICAgeworICAgICAgICBNdXRleExv
Y2tlciBsb2NrZXIobV9mdW5jdGlvblF1ZXVlTG9jayk7CisgICAgICAgIG1fZnVuY3Rpb25RdWV1
ZS5hcHBlbmQoZnVuY3Rpb24pOworICAgIH0KIAogICAgIHdha2VVcCgpOwogfQpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vUnVuTG9vcC5oIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vUnVuTG9vcC5oCmluZGV4IGNlOTg0NWUyYTU3NTkyMWE5ZjE1ZmU1NWY5YjFjYmVlOGFm
NDFhODYuLmEwMWFhNWY2OTgzNWI0OGE4OThkNDRiMmZhZWE2ZjYzNzBlYzk5NDcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1J1bkxvb3AuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9SdW5Mb29wLmgKQEAgLTE2OCw2ICsxNjgsNyBAQCBwcml2YXRlOgogI2VsaWYg
UExBVEZPUk0oRUZMKQogICAgIGJvb2wgbV9pbml0RWZsOwogICAgIE93blB0cjxFY29yZV9QaXBl
PiBtX3BpcGU7CisgICAgTXV0ZXggbV93YWtlVXBMb2NrOwogICAgIHN0YXRpYyB2b2lkIHdha2VV
cEV2ZW50KHZvaWQqIGRhdGEsIHZvaWQqLCB1bnNpZ25lZCBpbnQpOwogI2VuZGlmCiB9OwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1J1bkxvb3BFZmwuY3BwIGIvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZWZsL1J1bkxvb3BFZmwuY3BwCmluZGV4IGYyOTlkOGVjZjI2
ODI0MGJkZDI2NjZiYTUyYTQ0YmNjYmExOWUyMmQuLjAwZjhkM2IyYjQ4ZmQxN2RjYWViYTU5ODg1
ODVmMWNjMDAwN2EwYTEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2VmbC9S
dW5Mb29wRWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9lZmwvUnVuTG9vcEVm
bC5jcHAKQEAgLTEwMiw2ICsxMDIsNyBAQCB2b2lkIFJ1bkxvb3A6Ondha2VVcEV2ZW50KHZvaWQq
IGRhdGEsIHZvaWQqLCB1bnNpZ25lZCBpbnQpCiAKIHZvaWQgUnVuTG9vcDo6d2FrZVVwKCkKIHsK
KyAgICBNdXRleExvY2tlciBsb2NrZXIobV93YWtlVXBMb2NrKTsKICAgICBlY29yZV9waXBlX3dy
aXRlKG1fcGlwZS5nZXQoKSwgd2FrdXBFY29yZVBpcGVNZXNzYWdlLCBlY29yZVBpcGVNZXNzYWdl
U2l6ZSk7CiB9CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="0"
              isprivate="0"
          >
            <attachid>168328</attachid>
            <date>2012-10-11 18:25:08 -0700</date>
            <delta_ts>2012-10-11 19:54:48 -0700</delta_ts>
            <desc>incorrectly uploaded</desc>
            <filename>bug-98580-20121012102405.patch</filename>
            <type>text/plain</type>
            <size>3613</size>
            <attacher name="Byungwoo Lee">bw80.lee</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTMxMDk3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYWMyYjM4Y2M0NDhjNmRm
N2VlMWVlMzNhOGM3MTM2ZDI5MWY4MTMxZi4uNTFhZWFjNmFlZTdmZjhmNjEzM2QwY2NlZWExNjhh
YjYyNzg4NDU1MiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEyLTEwLTExICBCeXVu
Z3dvbyBMZWUgIDxidzgwLmxlZUBzYW1zdW5nLmNvbT4KKworICAgICAgICBbRUZMXVtXSzJdIENo
YW5nZSB0aGUgcmFuZ2Ugb2YgbG9ja2luZyBpbiBXb3JrUXVldWVFZmwuY3BwLgorICAgICAgICBo
dHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTg1ODAKKworICAgICAgICBS
ZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGUgbXV0ZXggbV93b3JrSXRl
bVF1ZXVlTG9jayBhbmQgbV90aW1lcldvcmtJdGVtc0xvY2sgYXJlIHVzZWQgbm90CisgICAgICAg
IG9ubHkgZm9yIHRoZSBxdWV1ZSBvciB3b3JrIGl0ZW1zIG5vdCBhbHNvIGZvciBzZW5kTWVzc2Fn
ZVRvVGhyZWFkKCkKKyAgICAgICAgZnVuY3Rpb24gd2hpY2ggaGFzIGNvZGUgdG8gd3JpdGUgcGlw
ZS4KKyAgICAgICAgVGhpcyBjYW4gbWFrZSBkZWFkIGxvY2sgaXNzdWUgd2hlbiBwaXBlIGJ1ZmZl
ciBpcyBmdWxsLgorCisgICAgICAgIFRvIHByZXZlbnQgdGhpcywgdGhvc2UgbXV0ZXggbG9ja2Vy
cyBhcmUgdXNlZCBvbmx5IGZvciB0aGUgYWNjZXNzIHRvIHRoZQorICAgICAgICBzaGFyZWQgcmVz
b3VyY2VzLgorCisgICAgICAgIEFuZCBzZW5kTWVzc2FnZVRvVGhyZWFkKCkgbmVlZHMgcHJvdGVj
dGlvbiB0byBlbnN1cmUgdGhyZWFkLXNhZmV0eS4KKyAgICAgICAgU28gbmV3IG11dGV4IGxvY2tl
ciBmb3IgdGhlIGZ1bmN0aW9uIGlzIGFkZGVkIChtX3NlbmRNZXNzYWdlVG9UaHJlYWRMb2NrKS4K
KworICAgICAgICAqIFBsYXRmb3JtL1dvcmtRdWV1ZS5oOgorICAgICAgICAoV29ya1F1ZXVlKToK
KyAgICAgICAgKiBQbGF0Zm9ybS9lZmwvV29ya1F1ZXVlRWZsLmNwcDoKKyAgICAgICAgKFdvcmtR
dWV1ZTo6c2VuZE1lc3NhZ2VUb1RocmVhZCk6CisgICAgICAgIChXb3JrUXVldWU6OmRpc3BhdGNo
KToKKyAgICAgICAgKFdvcmtRdWV1ZTo6ZGlzcGF0Y2hBZnRlckRlbGF5KToKKwogMjAxMi0xMC0x
MSAgUmVnaW5hIENodW5nICA8aGVlamluLnIuY2h1bmdAc2Ftc3VuZy5jb20+CiAKICAgICAgICAg
W0VGTF1bV0syXSBXZWJQcm9jZXNzIGtlZXBzIG9uIHdhaXRpbmcgZm9yIFVJUHJvY2VzcwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vV29ya1F1ZXVlLmggYi9Tb3VyY2UvV2Vi
S2l0Mi9QbGF0Zm9ybS9Xb3JrUXVldWUuaAppbmRleCA2YTVjNzU2YjM0YzlkNGYwOWQ4ZDIyZTI5
NGZhZGJjZjU2NWVjN2ZiLi43MTBiYThjNWYwMzQzNDFiZDJlN2I0YzZhZmQ3ZWQ3Y2NiODZmODlk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9Xb3JrUXVldWUuaAorKysgYi9T
b3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybS9Xb3JrUXVldWUuaApAQCAtMjE3LDYgKzIxNyw4IEBAIHBy
aXZhdGU6CiAgICAgVmVjdG9yPE93blB0cjxUaW1lcldvcmtJdGVtPiA+IG1fdGltZXJXb3JrSXRl
bXM7CiAgICAgTXV0ZXggbV90aW1lcldvcmtJdGVtc0xvY2s7CiAKKyAgICBNdXRleCBtX3NlbmRN
ZXNzYWdlVG9UaHJlYWRMb2NrOworCiAgICAgdm9pZCBzZW5kTWVzc2FnZVRvVGhyZWFkKGNvbnN0
IGNoYXIqKTsKICAgICBzdGF0aWMgdm9pZCogd29ya1F1ZXVlVGhyZWFkKFdvcmtRdWV1ZSopOwog
ICAgIHZvaWQgcGVyZm9ybVdvcmsoKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1BsYXRm
b3JtL2VmbC9Xb3JrUXVldWVFZmwuY3BwIGIvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vZWZsL1dv
cmtRdWV1ZUVmbC5jcHAKaW5kZXggNmM1MDViNDFjN2M3MDIxYzAyNDE1ZmEwODE5NGUyY2NkODBi
NWQ1OC4uN2Y3NTVhMjI3ODA0NGYxZmIxNDYzODVmYzRlYWVmMDUxM2QwZDVhYiAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYktpdDIvUGxhdGZvcm0vZWZsL1dvcmtRdWV1ZUVmbC5jcHAKKysrIGIvU291
cmNlL1dlYktpdDIvUGxhdGZvcm0vZWZsL1dvcmtRdWV1ZUVmbC5jcHAKQEAgLTE3MCw2ICsxNzAs
NyBAQCB2b2lkIFdvcmtRdWV1ZTo6cGVyZm9ybVRpbWVyV29yaygpCiAKIHZvaWQgV29ya1F1ZXVl
OjpzZW5kTWVzc2FnZVRvVGhyZWFkKGNvbnN0IGNoYXIqIG1lc3NhZ2UpCiB7CisgICAgTXV0ZXhM
b2NrZXIgbG9ja2VyKG1fc2VuZE1lc3NhZ2VUb1RocmVhZExvY2spOwogICAgIGlmICh3cml0ZSht
X3dyaXRlVG9QaXBlRGVzY3JpcHRvciwgbWVzc2FnZSwgdGhyZWFkTWVzc2FnZVNpemUpID09IC0x
KQogICAgICAgICBMT0dfRVJST1IoIkZhaWxlZCB0byB3YWtlIHVwIFdvcmtRdWV1ZSBUaHJlYWQi
KTsKIH0KQEAgLTIxMiw4ICsyMTMsMTAgQEAgdm9pZCBXb3JrUXVldWU6OnVucmVnaXN0ZXJTb2Nr
ZXRFdmVudEhhbmRsZXIoaW50IGZpbGVEZXNjcmlwdG9yKQogCiB2b2lkIFdvcmtRdWV1ZTo6ZGlz
cGF0Y2goY29uc3QgRnVuY3Rpb248dm9pZCgpPiYgZnVuY3Rpb24pCiB7Ci0gICAgTXV0ZXhMb2Nr
ZXIgbG9ja2VyKG1fd29ya0l0ZW1RdWV1ZUxvY2spOwotICAgIG1fd29ya0l0ZW1RdWV1ZS5hcHBl
bmQoZnVuY3Rpb24pOworICAgIHsKKyAgICAgICAgTXV0ZXhMb2NrZXIgbG9ja2VyKG1fd29ya0l0
ZW1RdWV1ZUxvY2spOworICAgICAgICBtX3dvcmtJdGVtUXVldWUuYXBwZW5kKGZ1bmN0aW9uKTsK
KyAgICB9CiAgICAgc2VuZE1lc3NhZ2VUb1RocmVhZCh3YWt1cFRocmVhZE1lc3NhZ2UpOwogfQog
CkBAIC0yMjIsMTEgKzIyNSwxMyBAQCB2b2lkIFdvcmtRdWV1ZTo6ZGlzcGF0Y2hBZnRlckRlbGF5
KGNvbnN0IEZ1bmN0aW9uPHZvaWQoKT4mIGZ1bmN0aW9uLCBkb3VibGUgZGVsYQogICAgIGlmIChk
ZWxheSA8IDApCiAgICAgICAgIHJldHVybjsKIAotICAgIE11dGV4TG9ja2VyIGxvY2tlcihtX3Rp
bWVyV29ya0l0ZW1zTG9jayk7Ci0gICAgT3duUHRyPFRpbWVyV29ya0l0ZW0+IHRpbWVyV29ya0l0
ZW0gPSBUaW1lcldvcmtJdGVtOjpjcmVhdGUoZnVuY3Rpb24sIGN1cnJlbnRUaW1lKCkgKyBkZWxh
eSk7Ci0gICAgaWYgKCF0aW1lcldvcmtJdGVtKQotICAgICAgICByZXR1cm47CisgICAgeworICAg
ICAgICBNdXRleExvY2tlciBsb2NrZXIobV90aW1lcldvcmtJdGVtc0xvY2spOworICAgICAgICBP
d25QdHI8VGltZXJXb3JrSXRlbT4gdGltZXJXb3JrSXRlbSA9IFRpbWVyV29ya0l0ZW06OmNyZWF0
ZShmdW5jdGlvbiwgY3VycmVudFRpbWUoKSArIGRlbGF5KTsKKyAgICAgICAgaWYgKCF0aW1lcldv
cmtJdGVtKQorICAgICAgICAgICAgcmV0dXJuOwogCi0gICAgaW5zZXJ0VGltZXJXb3JrSXRlbSh0
aW1lcldvcmtJdGVtLnJlbGVhc2UoKSk7CisgICAgICAgIGluc2VydFRpbWVyV29ya0l0ZW0odGlt
ZXJXb3JrSXRlbS5yZWxlYXNlKCkpOworICAgIH0KICAgICBzZW5kTWVzc2FnZVRvVGhyZWFkKHdh
a3VwVGhyZWFkTWVzc2FnZSk7CiB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>