<?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>87701</bug_id>
          
          <creation_ts>2012-05-28 23:49:30 -0700</creation_ts>
          <short_desc>[Qt] REGRESSION(r118616): It made all tests crash in debug mode</short_desc>
          <delta_ts>2012-06-06 04:35:54 -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>JavaScriptCore</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P1</priority>
          <bug_severity>Blocker</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>79668</blocked>
    
    <blocked>87581</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>ggaren</cc>
    
    <cc>loki</cc>
    
    <cc>noam</cc>
    
    <cc>oliver</cc>
    
    <cc>ossy</cc>
    
    <cc>webkit.review.bot</cc>
    
    <cc>zherczeg</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>635637</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-05-28 23:49:30 -0700</bug_when>
    <thetext>http://build.webkit.sed.hu/results/x86-64%20Linux%20Qt%20Debug/r118616%20%2823100%29/results.html

Unfortunately r118616 made all tests crash on Qt (32/64 bit too) 
in debug mode with the following crash log:
crash log for DumpRenderTree (pid 7699):
STDOUT: &lt;empty&gt;
STDERR: 1   0x42e04c /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/bin/DumpRenderTree() [0x42e04c]
STDERR: 2   0x7f966309c230 /lib/libc.so.6(+0x32230) [0x7f966309c230]
STDERR: 3   0x7f966afe0e78 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::WriteBarrierBase&lt;JSC::Structure&gt;::unvalidatedGet() const+0xc) [0x7f966afe0e78]
STDERR: 4   0x7f966afdf87e /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::JSCell::unvalidatedStructure()+0x1c) [0x7f966afdf87e]
STDERR: 5   0x7f966c7678a9 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::slowValidateCell(JSC::JSCell*)+0x44) [0x7f966c7678a9]
STDERR: 6   0x7f966ae66a3b /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(void JSC::validateCell&lt;JSC::JSCell*&gt;(JSC::JSCell*)+0x18) [0x7f966ae66a3b]
STDERR: 7   0x7f966b00e303 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::WriteBarrierBase&lt;JSC::JSObject&gt;::get() const+0x27) [0x7f966b00e303]
STDERR: 8   0x7f966b0c5950 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::Bindings::QtInstance::removeCachedMethod(JSC::JSObject*)+0x4e) [0x7f966b0c5950]
STDERR: 9   0x7f966b0de75f /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::Bindings::QtRuntimeMethodData::finalize(JSC::Handle&lt;JSC::Unknown&gt;, void*)+0x4f) [0x7f966b0de75f]
STDERR: 10  0x7f966c583466 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::WeakBlock::finalize(JSC::WeakImpl*)+0xec) [0x7f966c583466]
STDERR: 11  0x7f966c582dfd /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::WeakBlock::sweep()+0x91) [0x7f966c582dfd]
STDERR: 12  0x7f966c582222 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::WeakSet::sweep()+0x76) [0x7f966c582222]
STDERR: 13  0x7f966c59949e /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::MarkedBlock::sweepWeakSet()+0x1e) [0x7f966c59949e]
STDERR: 14  0x7f966c599a5e /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::SweepWeakSet::operator()(JSC::MarkedBlock*)+0x1c) [0x7f966c599a5e]
STDERR: 15  0x7f966c59ab77 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(void JSC::MarkedAllocator::forEachBlock&lt;JSC::SweepWeakSet&gt;(JSC::SweepWeakSet&amp;)+0x49) [0x7f966c59ab77]
STDERR: 16  0x7f966c59a757 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::SweepWeakSet::ReturnType JSC::MarkedSpace::forEachBlock&lt;JSC::SweepWeakSet&gt;(JSC::SweepWeakSet&amp;)+0x65) [0x7f966c59a757]
STDERR: 17  0x7f966c59a1d9 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::SweepWeakSet::ReturnType JSC::MarkedSpace::forEachBlock&lt;JSC::SweepWeakSet&gt;()+0x1f) [0x7f966c59a1d9]
STDERR: 18  0x7f966c598ebc /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::MarkedSpace::sweepWeakSets()+0x18) [0x7f966c598ebc]
STDERR: 19  0x7f966c587e23 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::Heap::collect(JSC::Heap::SweepToggle)+0x19d) [0x7f966c587e23]
STDERR: 20  0x7f966c587c81 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(JSC::Heap::collectAllGarbage()+0x2f) [0x7f966c587c81]
STDERR: 21  0x7f966afe29d7 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(+0x20519d7) [0x7f966afe29d7]
STDERR: 22  0x7f966afe2c16 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebCore::GCController::gcTimerFired(WebCore::Timer&lt;WebCore::GCController&gt;*)+0x1a) [0x7f966afe2c16]
STDERR: 23  0x7f966afe2e44 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebCore::Timer&lt;WebCore::GCController&gt;::fired()+0x6e) [0x7f966afe2e44]
STDERR: 24  0x7f966b98bf14 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebCore::ThreadTimers::sharedTimerFiredInternal()+0xc6) [0x7f966b98bf14]
STDERR: 25  0x7f966b98be4b /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebCore::ThreadTimers::sharedTimerFired()+0x19) [0x7f966b98be4b]
STDERR: 26  0x7f966bc925e2 /home/webkitbuildbot/slaves/debug64bit/buildslave/qt-linux-64-debug/build/WebKitBuild/Debug/lib/libQtWebKit.so.4(WebCore::SharedTimerQt::timerEvent(QTimerEvent*)+0x6a) [0x7f966bc925e2]
STDERR: 27  0x7f966470f519 /usr/local/Trolltech/Qt-4.8.0/lib/libQtCore.so.4(QObject::event(QEvent*)+0xa9) [0x7f966470f519]
STDERR: 28  0x7f9664fcb19c /usr/local/Trolltech/Qt-4.8.0/lib/libQtGui.so.4(QApplicationPrivate::notify_helper(QObject*, QEvent*)+0xac) [0x7f9664fcb19c]
STDERR: 29  0x7f9664fd206d /usr/local/Trolltech/Qt-4.8.0/lib/libQtGui.so.4(QApplication::notify(QObject*, QEvent*)+0x13d) [0x7f9664fd206d]
STDERR: 30  0x7f96646fd0ec /usr/local/Trolltech/Qt-4.8.0/lib/libQtCore.so.4(QCoreApplication::notifyInternal(QObject*, QEvent*)+0x8c) [0x7f96646fd0ec]
STDERR: 31  0x7f966473152e /usr/local/Trolltech/Qt-4.8.0/lib/libQtCore.so.4(+0x1cf52e) [0x7f966473152e]
STDERR: LEAK: 68 WebCoreNode
STDERR: LEAK: 1 CachedResource
STDERR: LEAK: 1 SubresourceLoader
STDERR: LEAK: 1 Frame
STDERR: LEAK: 1 Page
STDERR: LEAK: 3 RenderObject

Could you check what happened?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>635677</commentid>
    <comment_count>1</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-05-29 00:49:42 -0700</bug_when>
    <thetext>QtInstance::m_methods needs to be a HashMap with a Weak&lt;JSObject&gt; value type. I would make this change myself but I&apos;m not familiar with QHash and QByteArray, and the QtInstance object model has a lot of friend relationships and poor modularity, which makes it hard for me to have confidence in a code change just by reading a subsection of the Qt codebase.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>635937</commentid>
    <comment_count>2</comment_count>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2012-05-29 06:20:17 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; QtInstance::m_methods needs to be a HashMap with a Weak&lt;JSObject&gt; value type. I would make this change myself but I&apos;m not familiar with QHash and QByteArray, and the QtInstance object model has a lot of friend relationships and poor modularity, which makes it hard for me to have confidence in a code change just by reading a subsection of the Qt codebase.

Hi Geoff, thanks for the help. I know the design is flawed there, but still I would like to fix it. However, I got all kinds of compiler errors (when playing with PassWeak), so please tell me how this thing should work.

Perhaps some different implementation for this could also be help:

void QtRuntimeMethodData::finalize(Handle&lt;Unknown&gt; value, void*)
{
    m_instance-&gt;removeCachedMethod(static_cast&lt;JSObject*&gt;(value.get().asCell()));
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>636076</commentid>
    <comment_count>3</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-05-29 08:56:51 -0700</bug_when>
    <thetext>Maybe https://bugs.webkit.org/show_bug.cgi?id=87750 is related to this bug too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>636239</commentid>
    <comment_count>4</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-05-29 11:02:54 -0700</bug_when>
    <thetext>Here&apos;s a rough cut at the changes needed:

&gt; void QtInstance::removeCachedMethod(JSObject* method)

*it will be NULL at finalization time. To maintain current behavior, I guess you could just check for NULL instead of == method. Any item that is null is garbage and can be safely removed from the table.

It would be event better to avoid O(n) search here by removing by key. To do that, use the weakRemove helper function.

&gt;    JSObject* val = qtinst-&gt;m_methods.value(name).get();

HashMap will automatically return NULL for dead Weak pointers, so no change needed here.

&gt;             qtinst-&gt;m_methods.insert(name, WriteBarrier&lt;JSObject&gt;(exec-&gt;globalData(), qtinst-&gt;createRuntimeObject(exec), val));

You want HashMap::set here, to guarantee an overwrite of a NULL Weak pointer.

&gt;             qtinst-&gt;m_methods.insert(name, WriteBarrier&lt;JSObject&gt;(exec-&gt;globalData(), qtinst-&gt;createRuntimeObject(exec), val));

Ditto.

&gt;     if (qtinst-&gt;m_methods.contains(ascii))

This should be HashMap::get. contains is wrong because it will return true even if the contained item is NULL.

&gt;     // clean up (unprotect from gc) the JSValues we&apos;ve created
&gt;    m_methods.clear();

This can go away, since it&apos;s automatic for HashMap.


&gt;    for (QHash&lt;QByteArray, WriteBarrier&lt;JSObject&gt; &gt;::Iterator it = m_methods.begin(), end = m_methods.end(); it != end; ++it)
&gt;        visitor.append(&amp;it.value());

Iterating a HashMap of Weak pointers you need to test the iterator for NULL before dereferencing it.

Not sure what Kind of PassWeak errors you got. I might be able to help you if you paste them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>637181</commentid>
    <comment_count>5</comment_count>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2012-05-30 07:08:40 -0700</bug_when>
    <thetext>Thanks for the long reply.

Now I am stuck here:

../../../../Source/WebCore/bridge/qt/qt_instance.cpp:188: error: no matching function for call to âJSC::SlotVisitor::append(JSC::Weak&lt;JSC::JSObject&gt;*)â
../../../../Source/JavaScriptCore/heap/MarkStack.h:212: note: candidates are: void JSC::MarkStack::append(JSC::ConservativeRoots&amp;)
../../../../Source/JavaScriptCore/heap/MarkStack.h:412: note:                 void JSC::MarkStack::append(JSC::JSValue*)
../../../../Source/JavaScriptCore/heap/MarkStack.h:393: note:                 void JSC::MarkStack::append(JSC::JSValue*, size_t)
../../../../Source/JavaScriptCore/heap/MarkStack.h:418: note:                 void JSC::MarkStack::append(JSC::JSCell**)

SlotVisitor (I think used by GC) needs a JSC::JSCell**, but I only have a Weak&lt;JSC::JSObject&gt;. How can I squeeze the pointer out from it?

And I think we can leave with NULL pointers for those items which already have been freed (the number of possible names are fixed). Thus, can I just remove the removeCachedMethod at all?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>637373</commentid>
    <comment_count>6</comment_count>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-05-30 10:17:18 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Thanks for the long reply.
&gt; 
&gt; Now I am stuck here:
&gt; 
&gt; ../../../../Source/WebCore/bridge/qt/qt_instance.cpp:188: error: no matching function for call to âJSC::SlotVisitor::append(JSC::Weak&lt;JSC::JSObject&gt;*)â
&gt; ../../../../Source/JavaScriptCore/heap/MarkStack.h:212: note: candidates are: void JSC::MarkStack::append(JSC::ConservativeRoots&amp;)
&gt; ../../../../Source/JavaScriptCore/heap/MarkStack.h:412: note:                 void JSC::MarkStack::append(JSC::JSValue*)
&gt; ../../../../Source/JavaScriptCore/heap/MarkStack.h:393: note:                 void JSC::MarkStack::append(JSC::JSValue*, size_t)
&gt; ../../../../Source/JavaScriptCore/heap/MarkStack.h:418: note:                 void JSC::MarkStack::append(JSC::JSCell**)
&gt; 
&gt; SlotVisitor (I think used by GC) needs a JSC::JSCell**, but I only have a Weak&lt;JSC::JSObject&gt;. How can I squeeze the pointer out from it?

Why do you want these pointers to be weak and also marked? The compiler is telling you that&apos;s not compatible with the GC&apos;s design. If the pointers are strong, the object that owns them can clear / destroy the table when it is destroyed. If they are weak, they should not be marked.

&gt; And I think we can leave with NULL pointers for those items which already have been freed (the number of possible names are fixed). Thus, can I just remove the removeCachedMethod at all?

You can -- but NULL items in the table are a small memory leak. Not sure what your requirements are here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>638316</commentid>
    <comment_count>7</comment_count>
      <attachid>145074</attachid>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2012-05-31 06:17:49 -0700</bug_when>
    <thetext>Created attachment 145074
I am here now

After playing with different combinations, this one seems working. Oszi, could you check it?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>638439</commentid>
    <comment_count>8</comment_count>
    <who name="Caio Marcelo de Oliveira Filho">cmarcelo</who>
    <bug_when>2012-05-31 08:21:59 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; Created an attachment (id=145074) [details]
&gt; I am here now
&gt; 
&gt; After playing with different combinations, this one seems working. Oszi, could you check it?

I have a couple of questions here: 

1) It&apos;s not clear to me that we need weak references for the methods, instead of keeping just references. Once the Instance is removed, we just need to tell the cached methods, if still around, that its associated instance is not there anymore.

2) Do we really need this method cache? Other bridges seems to handle without it.

3) Regardless we land this fix or not now. As proposed before by others before (including Oliver), I think a better long term solution here is to just rewrite the QtRuntimeMethod and subclasses with the JSC API. But in this case I don&apos;t see how to keep &quot;Weak&quot; references.

Once I understand (1), I can volunteer to work on (3).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>638463</commentid>
    <comment_count>9</comment_count>
      <attachid>145074</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-05-31 08:48:13 -0700</bug_when>
    <thetext>Comment on attachment 145074
I am here now

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

I tested it on 64 bit debug mode, and everything works. ;)
But a JSC and/or Qt expert should review the patch.

&gt; Source/WebCore/bridge/qt/qt_instance.h:88
&gt; +    class QTWeakObjectReference {

QTWeakObjectReference  -&gt; QtWeakObjectReference</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>638470</commentid>
    <comment_count>10</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-05-31 08:52:09 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #7)
&gt; &gt; Created an attachment (id=145074) [details] [details]
&gt; &gt; I am here now
&gt; &gt; 
&gt; &gt; After playing with different combinations, this one seems working. Oszi, could you check it?
&gt; 
&gt; I have a couple of questions here: 
&gt; 
&gt; 1) It&apos;s not clear to me that we need weak references for the methods, instead of keeping just references. Once the Instance is removed, we just need to tell the cached methods, if still around, that its associated instance is not there anymore.
&gt; 
&gt; 2) Do we really need this method cache? Other bridges seems to handle without it.
&gt; 
&gt; 3) Regardless we land this fix or not now. As proposed before by others before (including Oliver), I think a better long term solution here is to just rewrite the QtRuntimeMethod and subclasses with the JSC API. But in this case I don&apos;t see how to keep &quot;Weak&quot; references.
&gt; 
&gt; Once I understand (1), I can volunteer to work on (3).

Here is the very very old bug report to fix (3): https://bugs.webkit.org/show_bug.cgi?id=60842 ... But it seems nobody is really interested in fixing it ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>639121</commentid>
    <comment_count>11</comment_count>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2012-06-01 02:29:29 -0700</bug_when>
    <thetext>Ok, so shall we land this as a temporary fix? If so, I make it a nice patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>642364</commentid>
    <comment_count>12</comment_count>
      <attachid>145988</attachid>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2012-06-06 04:25:56 -0700</bug_when>
    <thetext>Created attachment 145988
patch

There was no objection, and the bots are still dead, so ...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>642365</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-06-06 04:27:26 -0700</bug_when>
    <thetext>Attachment 145988 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1
Source/WebCore/bridge/qt/qt_instance.h:30:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 1 in 6 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>642368</commentid>
    <comment_count>14</comment_count>
      <attachid>145988</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2012-06-06 04:28:45 -0700</bug_when>
    <thetext>Comment on attachment 145988
patch

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

rs=me, we need this fix for broken debug tests.

&gt; Source/WebCore/bridge/qt/qt_instance.h:88
&gt; +    class QTWeakObjectReference {

s/QTWeakObjectReference /QtWeakObjectReference/g :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>642371</commentid>
    <comment_count>15</comment_count>
    <who name="Zoltan Herczeg">zherczeg</who>
    <bug_when>2012-06-06 04:35:54 -0700</bug_when>
    <thetext>Landed as http://trac.webkit.org/changeset/119584</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>145074</attachid>
            <date>2012-05-31 06:17:49 -0700</date>
            <delta_ts>2012-06-06 04:25:56 -0700</delta_ts>
            <desc>I am here now</desc>
            <filename>0001-qtbridge-fix.patch</filename>
            <type>text/plain</type>
            <size>7562</size>
            <attacher name="Zoltan Herczeg">zherczeg</attacher>
            
              <data encoding="base64">RnJvbSBkMWU5YWQzODA1OWJhNjAyNDlkMWM2MjBhYTFiNTdkZTIyNTAzNTZhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBab2x0YW4gSGVyY3plZyA8emhlcmN6ZWdAd2Via2l0Lm9yZz4K
RGF0ZTogVGh1LCAzMSBNYXkgMjAxMiAwNjoxMDoyOCAtMDcwMApTdWJqZWN0OiBbUEFUQ0hdIHF0
YnJpZGdlLWZpeAoKLS0tCiBTb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfY2xhc3MuY3BwICAg
ICAgIHwgICAgNCArLQogU291cmNlL1dlYkNvcmUvYnJpZGdlL3F0L3F0X2luc3RhbmNlLmNwcCAg
ICB8ICAgMjcgKysrKy0tLS0tLS0tLS0tLS0tCiBTb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRf
aW5zdGFuY2UuaCAgICAgIHwgICA0MCArKysrKysrKysrKysrKysrKysrKysrKystLS0KIFNvdXJj
ZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50aW1lLmNwcCAgICAgfCAgICA0ICstCiBTb3VyY2Uv
V2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZV9xdDQuY3BwIHwgICAgNCArLQogNSBmaWxlcyBj
aGFuZ2VkLCA0OCBpbnNlcnRpb25zKCspLCAzMSBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfY2xhc3MuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJp
ZGdlL3F0L3F0X2NsYXNzLmNwcAppbmRleCAxMDU4OThlLi5mYjllZTdiIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfY2xhc3MuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9xdC9xdF9jbGFzcy5jcHAKQEAgLTg3LDcgKzg3LDcgQEAgSlNWYWx1ZSBRdENsYXNz
OjpmYWxsYmFja09iamVjdChFeGVjU3RhdGUqIGV4ZWMsIEluc3RhbmNlKiBpbnN0LCBQcm9wZXJ0
eU5hbWUgaWQKICAgICAgICAgUU1ldGFNZXRob2QgbSA9IG1fbWV0YU9iamVjdC0+bWV0aG9kKGlu
ZGV4KTsKICAgICAgICAgaWYgKG0uYWNjZXNzKCkgIT0gUU1ldGFNZXRob2Q6OlByaXZhdGUpIHsK
ICAgICAgICAgICAgIFF0UnVudGltZU1ldGFNZXRob2QqIHZhbCA9IFF0UnVudGltZU1ldGFNZXRo
b2Q6OmNyZWF0ZShleGVjLCB1c3RyaW5nLCBzdGF0aWNfY2FzdDxRdEluc3RhbmNlKj4oaW5zdCks
IGluZGV4LCBub3JtYWwsIGZhbHNlKTsKLSAgICAgICAgICAgIHF0aW5zdC0+bV9tZXRob2RzLmlu
c2VydChuYW1lLCBXcml0ZUJhcnJpZXI8SlNPYmplY3Q+KGV4ZWMtPmdsb2JhbERhdGEoKSwgcXRp
bnN0LT5jcmVhdGVSdW50aW1lT2JqZWN0KGV4ZWMpLCB2YWwpKTsKKyAgICAgICAgICAgIHF0aW5z
dC0+bV9tZXRob2RzLmluc2VydChuYW1lLCB2YWwpOwogICAgICAgICAgICAgcmV0dXJuIHZhbDsK
ICAgICAgICAgfQogICAgIH0KQEAgLTExMCw3ICsxMTAsNyBAQCBKU1ZhbHVlIFF0Q2xhc3M6OmZh
bGxiYWNrT2JqZWN0KEV4ZWNTdGF0ZSogZXhlYywgSW5zdGFuY2UqIGluc3QsIFByb3BlcnR5TmFt
ZSBpZAogICAgICAgICBpZiAobm9ybWFsID09IG0ubmFtZSgpKSB7CiAjZW5kaWYKICAgICAgICAg
ICAgIFF0UnVudGltZU1ldGFNZXRob2QqIHZhbCA9IFF0UnVudGltZU1ldGFNZXRob2Q6OmNyZWF0
ZShleGVjLCB1c3RyaW5nLCBzdGF0aWNfY2FzdDxRdEluc3RhbmNlKj4oaW5zdCksIGluZGV4LCBu
b3JtYWwsIGZhbHNlKTsKLSAgICAgICAgICAgIHF0aW5zdC0+bV9tZXRob2RzLmluc2VydChuYW1l
LCBXcml0ZUJhcnJpZXI8SlNPYmplY3Q+KGV4ZWMtPmdsb2JhbERhdGEoKSwgcXRpbnN0LT5jcmVh
dGVSdW50aW1lT2JqZWN0KGV4ZWMpLCB2YWwpKTsKKyAgICAgICAgICAgIHF0aW5zdC0+bV9tZXRo
b2RzLmluc2VydChuYW1lLCB2YWwpOwogICAgICAgICAgICAgcmV0dXJuIHZhbDsKICAgICAgICAg
fQogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9pbnN0YW5j
ZS5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfaW5zdGFuY2UuY3BwCmluZGV4IGQ0
OTg5MjEuLjZiNzM4NTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9p
bnN0YW5jZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3F0L3F0X2luc3RhbmNlLmNw
cApAQCAtNjEsMTUgKzYxLDYgQEAgcHVibGljOgogICAgIAogICAgIHN0YXRpYyBjb25zdCBDbGFz
c0luZm8gc19pbmZvOwogCi0gICAgc3RhdGljIHZvaWQgdmlzaXRDaGlsZHJlbihKU0NlbGwqIGNl
bGwsIFNsb3RWaXNpdG9yJiB2aXNpdG9yKQotICAgIHsKLSAgICAgICAgUXRSdW50aW1lT2JqZWN0
KiB0aGlzT2JqZWN0ID0ganNDYXN0PFF0UnVudGltZU9iamVjdCo+KGNlbGwpOwotICAgICAgICBS
dW50aW1lT2JqZWN0Ojp2aXNpdENoaWxkcmVuKHRoaXNPYmplY3QsIHZpc2l0b3IpOwotICAgICAg
ICBRdEluc3RhbmNlKiBpbnN0YW5jZSA9IHN0YXRpY19jYXN0PFF0SW5zdGFuY2UqPih0aGlzT2Jq
ZWN0LT5nZXRJbnRlcm5hbEluc3RhbmNlKCkpOwotICAgICAgICBpZiAoaW5zdGFuY2UpCi0gICAg
ICAgICAgICBpbnN0YW5jZS0+dmlzaXRBZ2dyZWdhdGUodmlzaXRvcik7Ci0gICAgfQotCiAgICAg
c3RhdGljIFN0cnVjdHVyZSogY3JlYXRlU3RydWN0dXJlKEpTR2xvYmFsRGF0YSYgZ2xvYmFsRGF0
YSwgSlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCwgSlNWYWx1ZSBwcm90b3R5cGUpCiAgICAg
ewogICAgICAgICByZXR1cm4gU3RydWN0dXJlOjpjcmVhdGUoZ2xvYmFsRGF0YSwgZ2xvYmFsT2Jq
ZWN0LCBwcm90b3R5cGUsIFR5cGVJbmZvKE9iamVjdFR5cGUsICBTdHJ1Y3R1cmVGbGFncyksICZz
X2luZm8pOwpAQCAtMTU4LDEzICsxNDksMTMgQEAgdm9pZCBRdEluc3RhbmNlOjpwdXQoSlNPYmpl
Y3QqIG9iamVjdCwgRXhlY1N0YXRlKiBleGVjLCBQcm9wZXJ0eU5hbWUgcHJvcGVydHlOYW0KICAg
ICBKU09iamVjdDo6cHV0KG9iamVjdCwgZXhlYywgcHJvcGVydHlOYW1lLCB2YWx1ZSwgc2xvdCk7
CiB9CiAKLXZvaWQgUXRJbnN0YW5jZTo6cmVtb3ZlQ2FjaGVkTWV0aG9kKEpTT2JqZWN0KiBtZXRo
b2QpCit2b2lkIFF0SW5zdGFuY2U6OnJlbW92ZVVudXNlZE1ldGhvZHMoKQogewotICAgIGZvciAo
UUhhc2g8UUJ5dGVBcnJheSwgV3JpdGVCYXJyaWVyPEpTT2JqZWN0PiA+OjpJdGVyYXRvciBpdCA9
IG1fbWV0aG9kcy5iZWdpbigpLCBlbmQgPSBtX21ldGhvZHMuZW5kKCk7IGl0ICE9IGVuZDsgKytp
dCkgewotICAgICAgICBpZiAoaXQudmFsdWUoKS5nZXQoKSA9PSBtZXRob2QpIHsKLSAgICAgICAg
ICAgIG1fbWV0aG9kcy5lcmFzZShpdCk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0K
KyAgICBmb3IgKFFIYXNoPFFCeXRlQXJyYXksIFFUV2Vha09iamVjdFJlZmVyZW5jZT46Okl0ZXJh
dG9yIGl0ID0gbV9tZXRob2RzLmJlZ2luKCksIGVuZCA9IG1fbWV0aG9kcy5lbmQoKTsgaXQgIT0g
ZW5kOyApIHsKKyAgICAgICAgaWYgKCFpdC52YWx1ZSgpLmdldCgpKQorICAgICAgICAgICAgaXQg
PSBtX21ldGhvZHMuZXJhc2UoaXQpOworICAgICAgICBlbHNlCisgICAgICAgICAgICArK2l0Owog
ICAgIH0KIH0KIApAQCAtMTk0LDEyICsxODUsNiBAQCBSdW50aW1lT2JqZWN0KiBRdEluc3RhbmNl
OjpuZXdSdW50aW1lT2JqZWN0KEV4ZWNTdGF0ZSogZXhlYykKICAgICByZXR1cm4gUXRSdW50aW1l
T2JqZWN0OjpjcmVhdGUoZXhlYywgZXhlYy0+bGV4aWNhbEdsb2JhbE9iamVjdCgpLCB0aGlzKTsK
IH0KIAotdm9pZCBRdEluc3RhbmNlOjp2aXNpdEFnZ3JlZ2F0ZShTbG90VmlzaXRvciYgdmlzaXRv
cikKLXsKLSAgICBmb3IgKFFIYXNoPFFCeXRlQXJyYXksIFdyaXRlQmFycmllcjxKU09iamVjdD4g
Pjo6SXRlcmF0b3IgaXQgPSBtX21ldGhvZHMuYmVnaW4oKSwgZW5kID0gbV9tZXRob2RzLmVuZCgp
OyBpdCAhPSBlbmQ7ICsraXQpCi0gICAgICAgIHZpc2l0b3IuYXBwZW5kKCZpdC52YWx1ZSgpKTsK
LX0KLQogdm9pZCBRdEluc3RhbmNlOjpiZWdpbigpCiB7CiAgICAgLy8gRG8gbm90aGluZy4KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9pbnN0YW5jZS5oIGIvU291cmNl
L1dlYkNvcmUvYnJpZGdlL3F0L3F0X2luc3RhbmNlLmgKaW5kZXggMDU1NjIzYmYuLmFhMjY1ODYg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9pbnN0YW5jZS5oCisrKyBi
L1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9pbnN0YW5jZS5oCkBAIC0yNyw2ICsyNyw3IEBA
CiAjaW5jbHVkZSA8UXRTY3JpcHQvcXNjcmlwdGVuZ2luZS5oPgogI2luY2x1ZGUgPHFoYXNoLmg+
CiAjaW5jbHVkZSA8cXNldC5oPgorI2luY2x1ZGUgIldlYWsuaCIKIAogbmFtZXNwYWNlIEpTQyB7
CiAKQEAgLTQ5LDggKzUwLDYgQEAgcHVibGljOgogICAgIHZpcnR1YWwgSlNWYWx1ZSB2YWx1ZU9m
KEV4ZWNTdGF0ZSopIGNvbnN0OwogICAgIHZpcnR1YWwgSlNWYWx1ZSBkZWZhdWx0VmFsdWUoRXhl
Y1N0YXRlKiwgUHJlZmVycmVkUHJpbWl0aXZlVHlwZSkgY29uc3Q7CiAKLSAgICB2b2lkIHZpc2l0
QWdncmVnYXRlKFNsb3RWaXNpdG9yJik7Ci0KICAgICB2aXJ0dWFsIEpTVmFsdWUgZ2V0TWV0aG9k
KEV4ZWNTdGF0ZSosIFByb3BlcnR5TmFtZSk7CiAgICAgdmlydHVhbCBKU1ZhbHVlIGludm9rZU1l
dGhvZChFeGVjU3RhdGUqLCBSdW50aW1lTWV0aG9kKik7CiAKQEAgLTY4LDcgKzY3LDcgQEAgcHVi
bGljOgogICAgIHZpcnR1YWwgYm9vbCBnZXRPd25Qcm9wZXJ0eVNsb3QoSlNPYmplY3QqLCBFeGVj
U3RhdGUqLCBQcm9wZXJ0eU5hbWUsIFByb3BlcnR5U2xvdCYpOwogICAgIHZpcnR1YWwgdm9pZCBw
dXQoSlNPYmplY3QqLCBFeGVjU3RhdGUqLCBQcm9wZXJ0eU5hbWUsIEpTVmFsdWUsIFB1dFByb3Bl
cnR5U2xvdCYpOwogCi0gICAgdm9pZCByZW1vdmVDYWNoZWRNZXRob2QoSlNPYmplY3QqKTsKKyAg
ICB2b2lkIHJlbW92ZVVudXNlZE1ldGhvZHMoKTsKIAogICAgIHN0YXRpYyBRdEluc3RhbmNlKiBn
ZXRJbnN0YW5jZShKU09iamVjdCopOwogCkBAIC04NSw2ICs4NCwzOSBAQCBwdWJsaWM6CiAgICAg
c3RhdGljIFF0U2VuZGVyU3RhY2sqIHF0U2VuZGVyU3RhY2soKTsKIAogcHJpdmF0ZToKKworICAg
IGNsYXNzIFFUV2Vha09iamVjdFJlZmVyZW5jZSB7CisgICAgcHVibGljOgorICAgICAgICBRVFdl
YWtPYmplY3RSZWZlcmVuY2UoSlNPYmplY3QqIHJlZmVyZW5jZSkKKyAgICAgICAgICAgIDogbV9y
ZWZlcmVuY2UocmVmZXJlbmNlKQorICAgICAgICB7CisgICAgICAgIH0KKworICAgICAgICBRVFdl
YWtPYmplY3RSZWZlcmVuY2UoY29uc3QgUVRXZWFrT2JqZWN0UmVmZXJlbmNlJiBzb3VyY2UpCisg
ICAgICAgICAgICA6IG1fcmVmZXJlbmNlKHNvdXJjZS5tX3JlZmVyZW5jZS5nZXQoKSkKKyAgICAg
ICAgeworICAgICAgICB9CisKKyAgICAgICAgUVRXZWFrT2JqZWN0UmVmZXJlbmNlKCkKKyAgICAg
ICAgICAgIDogbV9yZWZlcmVuY2UoKQorICAgICAgICB7CisgICAgICAgIH0KKworICAgICAgICBR
VFdlYWtPYmplY3RSZWZlcmVuY2UmIG9wZXJhdG9yPShjb25zdCBRVFdlYWtPYmplY3RSZWZlcmVu
Y2UmIHNvdXJjZSkKKyAgICAgICAgeworICAgICAgICAgICAgbV9yZWZlcmVuY2UgPSBQYXNzV2Vh
azxKU09iamVjdD4oc291cmNlLm1fcmVmZXJlbmNlLmdldCgpKTsKKyAgICAgICAgICAgIHJldHVy
biAqdGhpczsKKyAgICAgICAgfQorCisgICAgICAgIEpTT2JqZWN0KiBnZXQoKSBjb25zdAorICAg
ICAgICB7CisgICAgICAgICAgICByZXR1cm4gbV9yZWZlcmVuY2UuZ2V0KCk7CisgICAgICAgIH0K
KworICAgIHByaXZhdGU6CisgICAgICAgIFdlYWs8SlNPYmplY3Q+IG1fcmVmZXJlbmNlOworICAg
IH07CisKICAgICBzdGF0aWMgUGFzc1JlZlB0cjxRdEluc3RhbmNlPiBjcmVhdGUoUU9iamVjdCAq
aW5zdGFuY2UsIFBhc3NSZWZQdHI8Um9vdE9iamVjdD4gcm9vdE9iamVjdCwgUVNjcmlwdEVuZ2lu
ZTo6VmFsdWVPd25lcnNoaXAgb3duZXJzaGlwKQogICAgIHsKICAgICAgICAgcmV0dXJuIGFkb3B0
UmVmKG5ldyBRdEluc3RhbmNlKGluc3RhbmNlLCByb290T2JqZWN0LCBvd25lcnNoaXApKTsKQEAg
LTk2LDcgKzEyOCw3IEBAIHByaXZhdGU6CiAgICAgbXV0YWJsZSBRdENsYXNzKiBtX2NsYXNzOwog
ICAgIFFXZWFrUG9pbnRlcjxRT2JqZWN0PiBtX29iamVjdDsKICAgICBRT2JqZWN0KiBtX2hhc2hr
ZXk7Ci0gICAgbXV0YWJsZSBRSGFzaDxRQnl0ZUFycmF5LCBXcml0ZUJhcnJpZXI8SlNPYmplY3Q+
ID4gbV9tZXRob2RzOworICAgIG11dGFibGUgUUhhc2g8UUJ5dGVBcnJheSwgUVRXZWFrT2JqZWN0
UmVmZXJlbmNlPiBtX21ldGhvZHM7CiAgICAgbXV0YWJsZSBRSGFzaDxRU3RyaW5nLCBRdEZpZWxk
Kj4gbV9maWVsZHM7CiAgICAgUVNjcmlwdEVuZ2luZTo6VmFsdWVPd25lcnNoaXAgbV9vd25lcnNo
aXA7CiB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdlL3F0L3F0X3J1bnRpbWUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvYnJpZGdlL3F0L3F0X3J1bnRpbWUuY3BwCmluZGV4IGM0MDMx
MTUuLjA0YTkzMDUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50
aW1lLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZS5jcHAKQEAg
LTk5OCw5ICs5OTgsOSBAQCBRdFJ1bnRpbWVNZXRob2REYXRhOjp+UXRSdW50aW1lTWV0aG9kRGF0
YSgpCiB7CiB9CiAKLXZvaWQgUXRSdW50aW1lTWV0aG9kRGF0YTo6ZmluYWxpemUoSGFuZGxlPFVu
a25vd24+IHZhbHVlLCB2b2lkKikKK3ZvaWQgUXRSdW50aW1lTWV0aG9kRGF0YTo6ZmluYWxpemUo
SGFuZGxlPFVua25vd24+LCB2b2lkKikKIHsKLSAgICBtX2luc3RhbmNlLT5yZW1vdmVDYWNoZWRN
ZXRob2Qoc3RhdGljX2Nhc3Q8SlNPYmplY3QqPih2YWx1ZS5nZXQoKS5hc0NlbGwoKSkpOworICAg
IG1faW5zdGFuY2UtPnJlbW92ZVVudXNlZE1ldGhvZHMoKTsKIH0KIAogUXRSdW50aW1lTWV0YU1l
dGhvZERhdGE6On5RdFJ1bnRpbWVNZXRhTWV0aG9kRGF0YSgpCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZV9xdDQuY3BwIGIvU291cmNlL1dlYkNvcmUvYnJp
ZGdlL3F0L3F0X3J1bnRpbWVfcXQ0LmNwcAppbmRleCA0NzdkZjcxLi4yNzZmYmYwIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZV9xdDQuY3BwCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50aW1lX3F0NC5jcHAKQEAgLTk5OCw5ICs5OTgs
OSBAQCBRdFJ1bnRpbWVNZXRob2REYXRhOjp+UXRSdW50aW1lTWV0aG9kRGF0YSgpCiB7CiB9CiAK
LXZvaWQgUXRSdW50aW1lTWV0aG9kRGF0YTo6ZmluYWxpemUoSGFuZGxlPFVua25vd24+IHZhbHVl
LCB2b2lkKikKK3ZvaWQgUXRSdW50aW1lTWV0aG9kRGF0YTo6ZmluYWxpemUoSGFuZGxlPFVua25v
d24+LCB2b2lkKikKIHsKLSAgICBtX2luc3RhbmNlLT5yZW1vdmVDYWNoZWRNZXRob2Qoc3RhdGlj
X2Nhc3Q8SlNPYmplY3QqPih2YWx1ZS5nZXQoKS5hc0NlbGwoKSkpOworICAgIG1faW5zdGFuY2Ut
PnJlbW92ZVVudXNlZE1ldGhvZHMoKTsKIH0KIAogUXRSdW50aW1lTWV0YU1ldGhvZERhdGE6On5R
dFJ1bnRpbWVNZXRhTWV0aG9kRGF0YSgpCi0tIAoxLjcuMi41Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>145988</attachid>
            <date>2012-06-06 04:25:56 -0700</date>
            <delta_ts>2012-06-06 04:28:45 -0700</delta_ts>
            <desc>patch</desc>
            <filename>0001-qtbridge-fix.patch</filename>
            <type>text/plain</type>
            <size>9087</size>
            <attacher name="Zoltan Herczeg">zherczeg</attacher>
            
              <data encoding="base64">RnJvbSBhZTZiNWYzMzRmN2YzMWVhYzg4YzAzOWMyYmVjZjVmMDQzMjgzMThjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBab2x0YW4gSGVyY3plZyA8emhlcmN6ZWdAd2Via2l0Lm9yZz4K
RGF0ZTogV2VkLCA2IEp1biAyMDEyIDA0OjI0OjI2IC0wNzAwClN1YmplY3Q6IFtQQVRDSF0gcXRi
cmlkZ2UtZml4CgotLS0KIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAg
ICAgfCAgIDI4ICsrKysrKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9x
dF9jbGFzcy5jcHAgICAgICAgfCAgICA0ICstCiBTb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRf
aW5zdGFuY2UuY3BwICAgIHwgICAyNyArKysrLS0tLS0tLS0tLS0tLS0KIFNvdXJjZS9XZWJDb3Jl
L2JyaWRnZS9xdC9xdF9pbnN0YW5jZS5oICAgICAgfCAgIDQwICsrKysrKysrKysrKysrKysrKysr
KysrKy0tLQogU291cmNlL1dlYkNvcmUvYnJpZGdlL3F0L3F0X3J1bnRpbWUuY3BwICAgICB8ICAg
IDQgKy0KIFNvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50aW1lX3F0NC5jcHAgfCAgICA0
ICstCiA2IGZpbGVzIGNoYW5nZWQsIDc2IGluc2VydGlvbnMoKyksIDMxIGRlbGV0aW9ucygtKQoK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBiYjk4OTc2Li5mY2ZlODE0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzEg
QEAKKzIwMTItMDYtMDYgIFpvbHRhbiBIZXJjemVnICA8emhlcmN6ZWdAd2Via2l0Lm9yZz4KKwor
ICAgICAgICBbUXRdIFJFR1JFU1NJT04ocjExODYxNik6IEl0IG1hZGUgYWxsIHRlc3RzIGNyYXNo
IGluIGRlYnVnIG1vZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTg3NzAxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAg
ICAgICAgUmVwbGFjZSBXcml0ZUJhcnJpZXI8SlNPYmplY3Q+IHRvIFdlYWs8SlNPYmplY3Q+IGJ5
IGludHJvZHVjaW5nIGEgbmV3CisgICAgICAgIFFUV2Vha09iamVjdFJlZmVyZW5jZSBzdWIgY2xh
c3MuIFJld3JpdGUgYWxsIGFmZmVjdGVkIHR5cGUgZGVmaW5pdGlvbnMuCisKKyAgICAgICAgQWxs
IGV4aXN0aW5nIHRlc3QgaW4gZGVidWcgbW9kZSBjb3ZlciB0aGlzIGlzc3VlLgorCisgICAgICAg
ICogYnJpZGdlL3F0L3F0X2NsYXNzLmNwcDoKKyAgICAgICAgKEpTQzo6QmluZGluZ3M6OlF0Q2xh
c3M6OmZhbGxiYWNrT2JqZWN0KToKKyAgICAgICAgKiBicmlkZ2UvcXQvcXRfaW5zdGFuY2UuY3Bw
OgorICAgICAgICAoUXRSdW50aW1lT2JqZWN0KToKKyAgICAgICAgKEpTQzo6QmluZGluZ3M6OlF0
SW5zdGFuY2U6OnJlbW92ZVVudXNlZE1ldGhvZHMpOgorICAgICAgICAqIGJyaWRnZS9xdC9xdF9p
bnN0YW5jZS5oOgorICAgICAgICAoUXRJbnN0YW5jZSk6CisgICAgICAgIChRVFdlYWtPYmplY3RS
ZWZlcmVuY2UpOgorICAgICAgICAoSlNDOjpCaW5kaW5nczo6UXRJbnN0YW5jZTo6UVRXZWFrT2Jq
ZWN0UmVmZXJlbmNlOjpRVFdlYWtPYmplY3RSZWZlcmVuY2UpOgorICAgICAgICAoSlNDOjpCaW5k
aW5nczo6UXRJbnN0YW5jZTo6UVRXZWFrT2JqZWN0UmVmZXJlbmNlOjpvcGVyYXRvcj0pOgorICAg
ICAgICAoSlNDOjpCaW5kaW5nczo6UXRJbnN0YW5jZTo6UVRXZWFrT2JqZWN0UmVmZXJlbmNlOjpn
ZXQpOgorICAgICAgICAqIGJyaWRnZS9xdC9xdF9ydW50aW1lLmNwcDoKKyAgICAgICAgKEpTQzo6
QmluZGluZ3M6OlF0UnVudGltZU1ldGhvZERhdGE6OmZpbmFsaXplKToKKyAgICAgICAgKiBicmlk
Z2UvcXQvcXRfcnVudGltZV9xdDQuY3BwOgorICAgICAgICAoSlNDOjpCaW5kaW5nczo6UXRSdW50
aW1lTWV0aG9kRGF0YTo6ZmluYWxpemUpOgorCiAyMDEyLTA2LTA2ICBNaWNoYWVsIEJyw7xuaW5n
ICA8bWljaGFlbC5icnVuaW5nQG5va2lhLmNvbT4KIAogICAgICAgICBbUXRdIEZpeCBoYXJtYXR0
YW4gYnVpbGRzIGJyb2tlbiBieSByMTE5MjQ3LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
YnJpZGdlL3F0L3F0X2NsYXNzLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9jbGFz
cy5jcHAKaW5kZXggMTUyOGQ2Yi4uMDBjZDFjNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YnJpZGdlL3F0L3F0X2NsYXNzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRf
Y2xhc3MuY3BwCkBAIC04Nyw3ICs4Nyw3IEBAIEpTVmFsdWUgUXRDbGFzczo6ZmFsbGJhY2tPYmpl
Y3QoRXhlY1N0YXRlKiBleGVjLCBJbnN0YW5jZSogaW5zdCwgUHJvcGVydHlOYW1lIGlkCiAgICAg
ICAgIFFNZXRhTWV0aG9kIG0gPSBtX21ldGFPYmplY3QtPm1ldGhvZChpbmRleCk7CiAgICAgICAg
IGlmIChtLmFjY2VzcygpICE9IFFNZXRhTWV0aG9kOjpQcml2YXRlKSB7CiAgICAgICAgICAgICBR
dFJ1bnRpbWVNZXRhTWV0aG9kKiB2YWwgPSBRdFJ1bnRpbWVNZXRhTWV0aG9kOjpjcmVhdGUoZXhl
YywgdXN0cmluZywgc3RhdGljX2Nhc3Q8UXRJbnN0YW5jZSo+KGluc3QpLCBpbmRleCwgbm9ybWFs
LCBmYWxzZSk7Ci0gICAgICAgICAgICBxdGluc3QtPm1fbWV0aG9kcy5pbnNlcnQobmFtZSwgV3Jp
dGVCYXJyaWVyPEpTT2JqZWN0PihleGVjLT5nbG9iYWxEYXRhKCksIHF0aW5zdC0+Y3JlYXRlUnVu
dGltZU9iamVjdChleGVjKSwgdmFsKSk7CisgICAgICAgICAgICBxdGluc3QtPm1fbWV0aG9kcy5p
bnNlcnQobmFtZSwgdmFsKTsKICAgICAgICAgICAgIHJldHVybiB2YWw7CiAgICAgICAgIH0KICAg
ICB9CkBAIC0xMTAsNyArMTEwLDcgQEAgSlNWYWx1ZSBRdENsYXNzOjpmYWxsYmFja09iamVjdChF
eGVjU3RhdGUqIGV4ZWMsIEluc3RhbmNlKiBpbnN0LCBQcm9wZXJ0eU5hbWUgaWQKICAgICAgICAg
aWYgKG5vcm1hbCA9PSBtLm5hbWUoKSkgewogI2VuZGlmCiAgICAgICAgICAgICBRdFJ1bnRpbWVN
ZXRhTWV0aG9kKiB2YWwgPSBRdFJ1bnRpbWVNZXRhTWV0aG9kOjpjcmVhdGUoZXhlYywgdXN0cmlu
Zywgc3RhdGljX2Nhc3Q8UXRJbnN0YW5jZSo+KGluc3QpLCBpbmRleCwgbm9ybWFsLCBmYWxzZSk7
Ci0gICAgICAgICAgICBxdGluc3QtPm1fbWV0aG9kcy5pbnNlcnQobmFtZSwgV3JpdGVCYXJyaWVy
PEpTT2JqZWN0PihleGVjLT5nbG9iYWxEYXRhKCksIHF0aW5zdC0+Y3JlYXRlUnVudGltZU9iamVj
dChleGVjKSwgdmFsKSk7CisgICAgICAgICAgICBxdGluc3QtPm1fbWV0aG9kcy5pbnNlcnQobmFt
ZSwgdmFsKTsKICAgICAgICAgICAgIHJldHVybiB2YWw7CiAgICAgICAgIH0KICAgICB9CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfaW5zdGFuY2UuY3BwIGIvU291cmNl
L1dlYkNvcmUvYnJpZGdlL3F0L3F0X2luc3RhbmNlLmNwcAppbmRleCBjNzkwOTZkLi5mN2M5M2Y0
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfaW5zdGFuY2UuY3BwCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9pbnN0YW5jZS5jcHAKQEAgLTYxLDE1ICs2
MSw2IEBAIHB1YmxpYzoKICAgICAKICAgICBzdGF0aWMgY29uc3QgQ2xhc3NJbmZvIHNfaW5mbzsK
IAotICAgIHN0YXRpYyB2b2lkIHZpc2l0Q2hpbGRyZW4oSlNDZWxsKiBjZWxsLCBTbG90VmlzaXRv
ciYgdmlzaXRvcikKLSAgICB7Ci0gICAgICAgIFF0UnVudGltZU9iamVjdCogdGhpc09iamVjdCA9
IGpzQ2FzdDxRdFJ1bnRpbWVPYmplY3QqPihjZWxsKTsKLSAgICAgICAgUnVudGltZU9iamVjdDo6
dmlzaXRDaGlsZHJlbih0aGlzT2JqZWN0LCB2aXNpdG9yKTsKLSAgICAgICAgUXRJbnN0YW5jZSog
aW5zdGFuY2UgPSBzdGF0aWNfY2FzdDxRdEluc3RhbmNlKj4odGhpc09iamVjdC0+Z2V0SW50ZXJu
YWxJbnN0YW5jZSgpKTsKLSAgICAgICAgaWYgKGluc3RhbmNlKQotICAgICAgICAgICAgaW5zdGFu
Y2UtPnZpc2l0QWdncmVnYXRlKHZpc2l0b3IpOwotICAgIH0KLQogICAgIHN0YXRpYyBTdHJ1Y3R1
cmUqIGNyZWF0ZVN0cnVjdHVyZShKU0dsb2JhbERhdGEmIGdsb2JhbERhdGEsIEpTR2xvYmFsT2Jq
ZWN0KiBnbG9iYWxPYmplY3QsIEpTVmFsdWUgcHJvdG90eXBlKQogICAgIHsKICAgICAgICAgcmV0
dXJuIFN0cnVjdHVyZTo6Y3JlYXRlKGdsb2JhbERhdGEsIGdsb2JhbE9iamVjdCwgcHJvdG90eXBl
LCBUeXBlSW5mbyhPYmplY3RUeXBlLCAgU3RydWN0dXJlRmxhZ3MpLCAmc19pbmZvKTsKQEAgLTE1
OCwxMyArMTQ5LDEzIEBAIHZvaWQgUXRJbnN0YW5jZTo6cHV0KEpTT2JqZWN0KiBvYmplY3QsIEV4
ZWNTdGF0ZSogZXhlYywgUHJvcGVydHlOYW1lIHByb3BlcnR5TmFtCiAgICAgSlNPYmplY3Q6OnB1
dChvYmplY3QsIGV4ZWMsIHByb3BlcnR5TmFtZSwgdmFsdWUsIHNsb3QpOwogfQogCi12b2lkIFF0
SW5zdGFuY2U6OnJlbW92ZUNhY2hlZE1ldGhvZChKU09iamVjdCogbWV0aG9kKQordm9pZCBRdElu
c3RhbmNlOjpyZW1vdmVVbnVzZWRNZXRob2RzKCkKIHsKLSAgICBmb3IgKFFIYXNoPFFCeXRlQXJy
YXksIFdyaXRlQmFycmllcjxKU09iamVjdD4gPjo6SXRlcmF0b3IgaXQgPSBtX21ldGhvZHMuYmVn
aW4oKSwgZW5kID0gbV9tZXRob2RzLmVuZCgpOyBpdCAhPSBlbmQ7ICsraXQpIHsKLSAgICAgICAg
aWYgKGl0LnZhbHVlKCkuZ2V0KCkgPT0gbWV0aG9kKSB7Ci0gICAgICAgICAgICBtX21ldGhvZHMu
ZXJhc2UoaXQpOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9CisgICAgZm9yIChRSGFz
aDxRQnl0ZUFycmF5LCBRVFdlYWtPYmplY3RSZWZlcmVuY2U+OjpJdGVyYXRvciBpdCA9IG1fbWV0
aG9kcy5iZWdpbigpLCBlbmQgPSBtX21ldGhvZHMuZW5kKCk7IGl0ICE9IGVuZDsgKSB7CisgICAg
ICAgIGlmICghaXQudmFsdWUoKS5nZXQoKSkKKyAgICAgICAgICAgIGl0ID0gbV9tZXRob2RzLmVy
YXNlKGl0KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgKytpdDsKICAgICB9CiB9CiAKQEAg
LTE5NCwxMiArMTg1LDYgQEAgUnVudGltZU9iamVjdCogUXRJbnN0YW5jZTo6bmV3UnVudGltZU9i
amVjdChFeGVjU3RhdGUqIGV4ZWMpCiAgICAgcmV0dXJuIFF0UnVudGltZU9iamVjdDo6Y3JlYXRl
KGV4ZWMsIGV4ZWMtPmxleGljYWxHbG9iYWxPYmplY3QoKSwgdGhpcyk7CiB9CiAKLXZvaWQgUXRJ
bnN0YW5jZTo6dmlzaXRBZ2dyZWdhdGUoU2xvdFZpc2l0b3ImIHZpc2l0b3IpCi17Ci0gICAgZm9y
IChRSGFzaDxRQnl0ZUFycmF5LCBXcml0ZUJhcnJpZXI8SlNPYmplY3Q+ID46Okl0ZXJhdG9yIGl0
ID0gbV9tZXRob2RzLmJlZ2luKCksIGVuZCA9IG1fbWV0aG9kcy5lbmQoKTsgaXQgIT0gZW5kOyAr
K2l0KQotICAgICAgICB2aXNpdG9yLmFwcGVuZCgmaXQudmFsdWUoKSk7Ci19Ci0KIHZvaWQgUXRJ
bnN0YW5jZTo6YmVnaW4oKQogewogICAgIC8vIERvIG5vdGhpbmcuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfaW5zdGFuY2UuaCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRn
ZS9xdC9xdF9pbnN0YW5jZS5oCmluZGV4IDA1NTYyM2JmLi5hYTI2NTg2IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfaW5zdGFuY2UuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9icmlkZ2UvcXQvcXRfaW5zdGFuY2UuaApAQCAtMjcsNiArMjcsNyBAQAogI2luY2x1ZGUgPFF0
U2NyaXB0L3FzY3JpcHRlbmdpbmUuaD4KICNpbmNsdWRlIDxxaGFzaC5oPgogI2luY2x1ZGUgPHFz
ZXQuaD4KKyNpbmNsdWRlICJXZWFrLmgiCiAKIG5hbWVzcGFjZSBKU0MgewogCkBAIC00OSw4ICs1
MCw2IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIEpTVmFsdWUgdmFsdWVPZihFeGVjU3RhdGUqKSBj
b25zdDsKICAgICB2aXJ0dWFsIEpTVmFsdWUgZGVmYXVsdFZhbHVlKEV4ZWNTdGF0ZSosIFByZWZl
cnJlZFByaW1pdGl2ZVR5cGUpIGNvbnN0OwogCi0gICAgdm9pZCB2aXNpdEFnZ3JlZ2F0ZShTbG90
VmlzaXRvciYpOwotCiAgICAgdmlydHVhbCBKU1ZhbHVlIGdldE1ldGhvZChFeGVjU3RhdGUqLCBQ
cm9wZXJ0eU5hbWUpOwogICAgIHZpcnR1YWwgSlNWYWx1ZSBpbnZva2VNZXRob2QoRXhlY1N0YXRl
KiwgUnVudGltZU1ldGhvZCopOwogCkBAIC02OCw3ICs2Nyw3IEBAIHB1YmxpYzoKICAgICB2aXJ0
dWFsIGJvb2wgZ2V0T3duUHJvcGVydHlTbG90KEpTT2JqZWN0KiwgRXhlY1N0YXRlKiwgUHJvcGVy
dHlOYW1lLCBQcm9wZXJ0eVNsb3QmKTsKICAgICB2aXJ0dWFsIHZvaWQgcHV0KEpTT2JqZWN0Kiwg
RXhlY1N0YXRlKiwgUHJvcGVydHlOYW1lLCBKU1ZhbHVlLCBQdXRQcm9wZXJ0eVNsb3QmKTsKIAot
ICAgIHZvaWQgcmVtb3ZlQ2FjaGVkTWV0aG9kKEpTT2JqZWN0Kik7CisgICAgdm9pZCByZW1vdmVV
bnVzZWRNZXRob2RzKCk7CiAKICAgICBzdGF0aWMgUXRJbnN0YW5jZSogZ2V0SW5zdGFuY2UoSlNP
YmplY3QqKTsKIApAQCAtODUsNiArODQsMzkgQEAgcHVibGljOgogICAgIHN0YXRpYyBRdFNlbmRl
clN0YWNrKiBxdFNlbmRlclN0YWNrKCk7CiAKIHByaXZhdGU6CisKKyAgICBjbGFzcyBRVFdlYWtP
YmplY3RSZWZlcmVuY2UgeworICAgIHB1YmxpYzoKKyAgICAgICAgUVRXZWFrT2JqZWN0UmVmZXJl
bmNlKEpTT2JqZWN0KiByZWZlcmVuY2UpCisgICAgICAgICAgICA6IG1fcmVmZXJlbmNlKHJlZmVy
ZW5jZSkKKyAgICAgICAgeworICAgICAgICB9CisKKyAgICAgICAgUVRXZWFrT2JqZWN0UmVmZXJl
bmNlKGNvbnN0IFFUV2Vha09iamVjdFJlZmVyZW5jZSYgc291cmNlKQorICAgICAgICAgICAgOiBt
X3JlZmVyZW5jZShzb3VyY2UubV9yZWZlcmVuY2UuZ2V0KCkpCisgICAgICAgIHsKKyAgICAgICAg
fQorCisgICAgICAgIFFUV2Vha09iamVjdFJlZmVyZW5jZSgpCisgICAgICAgICAgICA6IG1fcmVm
ZXJlbmNlKCkKKyAgICAgICAgeworICAgICAgICB9CisKKyAgICAgICAgUVRXZWFrT2JqZWN0UmVm
ZXJlbmNlJiBvcGVyYXRvcj0oY29uc3QgUVRXZWFrT2JqZWN0UmVmZXJlbmNlJiBzb3VyY2UpCisg
ICAgICAgIHsKKyAgICAgICAgICAgIG1fcmVmZXJlbmNlID0gUGFzc1dlYWs8SlNPYmplY3Q+KHNv
dXJjZS5tX3JlZmVyZW5jZS5nZXQoKSk7CisgICAgICAgICAgICByZXR1cm4gKnRoaXM7CisgICAg
ICAgIH0KKworICAgICAgICBKU09iamVjdCogZ2V0KCkgY29uc3QKKyAgICAgICAgeworICAgICAg
ICAgICAgcmV0dXJuIG1fcmVmZXJlbmNlLmdldCgpOworICAgICAgICB9CisKKyAgICBwcml2YXRl
OgorICAgICAgICBXZWFrPEpTT2JqZWN0PiBtX3JlZmVyZW5jZTsKKyAgICB9OworCiAgICAgc3Rh
dGljIFBhc3NSZWZQdHI8UXRJbnN0YW5jZT4gY3JlYXRlKFFPYmplY3QgKmluc3RhbmNlLCBQYXNz
UmVmUHRyPFJvb3RPYmplY3Q+IHJvb3RPYmplY3QsIFFTY3JpcHRFbmdpbmU6OlZhbHVlT3duZXJz
aGlwIG93bmVyc2hpcCkKICAgICB7CiAgICAgICAgIHJldHVybiBhZG9wdFJlZihuZXcgUXRJbnN0
YW5jZShpbnN0YW5jZSwgcm9vdE9iamVjdCwgb3duZXJzaGlwKSk7CkBAIC05Niw3ICsxMjgsNyBA
QCBwcml2YXRlOgogICAgIG11dGFibGUgUXRDbGFzcyogbV9jbGFzczsKICAgICBRV2Vha1BvaW50
ZXI8UU9iamVjdD4gbV9vYmplY3Q7CiAgICAgUU9iamVjdCogbV9oYXNoa2V5OwotICAgIG11dGFi
bGUgUUhhc2g8UUJ5dGVBcnJheSwgV3JpdGVCYXJyaWVyPEpTT2JqZWN0PiA+IG1fbWV0aG9kczsK
KyAgICBtdXRhYmxlIFFIYXNoPFFCeXRlQXJyYXksIFFUV2Vha09iamVjdFJlZmVyZW5jZT4gbV9t
ZXRob2RzOwogICAgIG11dGFibGUgUUhhc2g8UVN0cmluZywgUXRGaWVsZCo+IG1fZmllbGRzOwog
ICAgIFFTY3JpcHRFbmdpbmU6OlZhbHVlT3duZXJzaGlwIG1fb3duZXJzaGlwOwogfTsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50aW1lLmNwcCBiL1NvdXJjZS9X
ZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50aW1lLmNwcAppbmRleCBjNDAzMTE1Li4wNGE5MzA1IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9icmlkZ2UvcXQvcXRfcnVudGltZS5jcHAKKysrIGIv
U291cmNlL1dlYkNvcmUvYnJpZGdlL3F0L3F0X3J1bnRpbWUuY3BwCkBAIC05OTgsOSArOTk4LDkg
QEAgUXRSdW50aW1lTWV0aG9kRGF0YTo6flF0UnVudGltZU1ldGhvZERhdGEoKQogewogfQogCi12
b2lkIFF0UnVudGltZU1ldGhvZERhdGE6OmZpbmFsaXplKEhhbmRsZTxVbmtub3duPiB2YWx1ZSwg
dm9pZCopCit2b2lkIFF0UnVudGltZU1ldGhvZERhdGE6OmZpbmFsaXplKEhhbmRsZTxVbmtub3du
Piwgdm9pZCopCiB7Ci0gICAgbV9pbnN0YW5jZS0+cmVtb3ZlQ2FjaGVkTWV0aG9kKHN0YXRpY19j
YXN0PEpTT2JqZWN0Kj4odmFsdWUuZ2V0KCkuYXNDZWxsKCkpKTsKKyAgICBtX2luc3RhbmNlLT5y
ZW1vdmVVbnVzZWRNZXRob2RzKCk7CiB9CiAKIFF0UnVudGltZU1ldGFNZXRob2REYXRhOjp+UXRS
dW50aW1lTWV0YU1ldGhvZERhdGEoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYnJpZGdl
L3F0L3F0X3J1bnRpbWVfcXQ0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL2JyaWRnZS9xdC9xdF9ydW50
aW1lX3F0NC5jcHAKaW5kZXggNDc3ZGY3MS4uMjc2ZmJmMCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YkNvcmUvYnJpZGdlL3F0L3F0X3J1bnRpbWVfcXQ0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9i
cmlkZ2UvcXQvcXRfcnVudGltZV9xdDQuY3BwCkBAIC05OTgsOSArOTk4LDkgQEAgUXRSdW50aW1l
TWV0aG9kRGF0YTo6flF0UnVudGltZU1ldGhvZERhdGEoKQogewogfQogCi12b2lkIFF0UnVudGlt
ZU1ldGhvZERhdGE6OmZpbmFsaXplKEhhbmRsZTxVbmtub3duPiB2YWx1ZSwgdm9pZCopCit2b2lk
IFF0UnVudGltZU1ldGhvZERhdGE6OmZpbmFsaXplKEhhbmRsZTxVbmtub3duPiwgdm9pZCopCiB7
Ci0gICAgbV9pbnN0YW5jZS0+cmVtb3ZlQ2FjaGVkTWV0aG9kKHN0YXRpY19jYXN0PEpTT2JqZWN0
Kj4odmFsdWUuZ2V0KCkuYXNDZWxsKCkpKTsKKyAgICBtX2luc3RhbmNlLT5yZW1vdmVVbnVzZWRN
ZXRob2RzKCk7CiB9CiAKIFF0UnVudGltZU1ldGFNZXRob2REYXRhOjp+UXRSdW50aW1lTWV0YU1l
dGhvZERhdGEoKQotLSAKMS43LjIuNQoK
</data>
<flag name="review"
          id="153219"
          type_id="1"
          status="+"
          setter="ossy"
    />
          </attachment>
      

    </bug>

</bugzilla>