<?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>60161</bug_id>
          
          <creation_ts>2011-05-04 05:49:28 -0700</creation_ts>
          <short_desc>[Qt] Virtual Keyboard is not hidden when you &apos;unfocus&apos; from input field / QGraphicsWebview</short_desc>
          <delta_ts>2014-02-03 03:17:43 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Qt</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc>https://projects.maemo.org/bugzilla/show_bug.cgi?id=251766</bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Qt, QtTriaged</keywords>
          <priority>P3</priority>
          <bug_severity>Major</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Leonard Lee">leonard.lee</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>ap</cc>
    
    <cc>benjamin</cc>
    
    <cc>bruno.abinader</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>hausmann</cc>
    
    <cc>indrajit.tapadar</cc>
    
    <cc>kenneth</cc>
    
    <cc>luiz</cc>
    
    <cc>mattia</cc>
    
    <cc>topi.reinio</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>397844</commentid>
    <comment_count>0</comment_count>
    <who name="Leonard Lee">leonard.lee</who>
    <bug_when>2011-05-04 05:49:28 -0700</bug_when>
    <thetext>Attached test application.

On any QML WebView page, ie pointing to google.com

- Press your finger to some input field
- VKB should come up (and it does)
- Type something on the input field.
- Press your finger outside of the input field (unfocused).

EXPECTED OUTCOME:
VKB should be hidden on unfocused.

ACTUAL OUTCOME:
VKB stays visible on unfocused.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>397948</commentid>
    <comment_count>1</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2011-05-04 08:58:06 -0700</bug_when>
    <thetext>Kenneth, you played with that IIRC, any comment?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>398240</commentid>
    <comment_count>2</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-05-04 14:04:36 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Kenneth, you played with that IIRC, any comment?

Yes, and we use a totally different path for mobile input handling on our branch and used on the desktop, as they are very different use cases. At some point I would like to upstream that code.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>400372</commentid>
    <comment_count>3</comment_count>
    <who name="Leonard Lee">leonard.lee</who>
    <bug_when>2011-05-09 00:27:15 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (In reply to comment #1)
&gt; &gt; Kenneth, you played with that IIRC, any comment?
&gt; 
&gt; Yes, and we use a totally different path for mobile input handling on our branch and used on the desktop, as they are very different use cases. At some point I would like to upstream that code.

Is this issue related to what you&apos;ve experience? If you upstream the code, would that fix this issue?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>400411</commentid>
    <comment_count>4</comment_count>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2011-05-09 02:30:01 -0700</bug_when>
    <thetext>I can confirm the issue with QtTestBrowser. However I set low priority to reflect that we have nobody working on this, Kenneth has other priorities at the moment.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>412515</commentid>
    <comment_count>5</comment_count>
    <who name="Topi Reiniö">topi.reinio</who>
    <bug_when>2011-05-31 02:24:40 -0700</bug_when>
    <thetext>
(In reply to comment #4)
&gt; I can confirm the issue with QtTestBrowser. However I set low priority to reflect that we have nobody working on this, Kenneth has other priorities at the moment.

This is quite bad for 3rd party apps, since it affects everything (QML WebView, QGraphicsWebView and QWebView). Is this still stuck in the backlog?

I created a clumsy workaround for this using an event filter and sending CloseSoftwareInputPanel events whenever the focused widget changes to zero:

class EventFilter : public QObject
{   
protected:
    bool eventFilter(QObject *obj, QEvent *event) {
        QInputContext *ic = qApp-&gt;inputContext();
        if (ic) {
            if (ic-&gt;focusWidget() == 0 &amp;&amp; prevFocusWidget) {
                QEvent closeSIPEvent(QEvent::CloseSoftwareInputPanel);
                ic-&gt;filterEvent(&amp;closeSIPEvent);
            } else if (prevFocusWidget == 0 &amp;&amp; ic-&gt;focusWidget()) {
                QEvent openSIPEvent(QEvent::RequestSoftwareInputPanel);
                ic-&gt;filterEvent(&amp;openSIPEvent);
            }
            prevFocusWidget = ic-&gt;focusWidget();
        }
        return QObject::eventFilter(obj,event);
    }

private:
    QWidget *prevFocusWidget;
};

This will also do the reverse, i.e, request SIP to open when focus widget
changes to non-null, resulting in a single-tap VKB popup.

This filter can be then installed on a QGraphicsView or (in QML) on a
QDeclarativeView instance:

EventFilter ef;
view.installEventFilter(&amp;ef);


But of course, to have a consistent user experience, it would be way better to have this fixed directly in webkit.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>412516</commentid>
    <comment_count>6</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-05-31 02:28:05 -0700</bug_when>
    <thetext>We should do it the proper way instead. Maybe one from INDT can look into it if it is considered important for the next QtWebKit release? cc&apos;ing Luiz and Caio.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>485093</commentid>
    <comment_count>7</comment_count>
      <attachid>111254</attachid>
    <who name="Topi Reiniö">topi.reinio</who>
    <bug_when>2011-10-17 06:05:03 -0700</bug_when>
    <thetext>Created attachment 111254
Patch proposal to somewhat fix the issue

Copying here the patch attached to the originating bug.

-- 

[PATCH] Close software input panel on element blur.

Send an explicit event to open and close software input panel when
input elements are focused and unfocused.

Qt software input framework works through QWidgets. In case of
QGraphicsWebView, the QGraphicsView that contains QGraphicsWebView
stays focused, regardless whether the QGraphicsItems in it has focus
or not.  This means that SIP is never closed, even though the
QGraphicsWebView loses focus.

The framework expects that SIP state is controlled explicitly.

This commit fixes also various problems when focus is controlled
through JS.

FIXME: Might cause regression with QStyle -related SIP appearance
configuration. It is unclear whether the previous code ever worked.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>491611</commentid>
    <comment_count>8</comment_count>
      <attachid>112688</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2011-10-27 08:46:59 -0700</bug_when>
    <thetext>Created attachment 112688
&quot;Close software input panel on element blur&quot; patch.

Updated patch with missing ChangeLog and fixed style issues.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>492343</commentid>
    <comment_count>9</comment_count>
      <attachid>112688</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-28 02:30:34 -0700</bug_when>
    <thetext>Comment on attachment 112688
&quot;Close software input panel on element blur&quot; patch.

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

&gt; Source/WebCore/ChangeLog:1
&gt; +2011-10-27  Bruno de Oliveira Abinader  &lt;bruno.abinader@basyskom.com&gt;

Seems like you changed company :-) congrats! Living in Germany now?

&gt; Source/WebKit/qt/WebCoreSupport/PageClientQt.cpp:202
&gt; +        QApplication::sendEvent(focusedWidget, &amp;openSIPEvent);

Shouldn&apos;t you use filterEvent here? This is what is done on MeeGo

&gt; Source/WebKit/qt/WebCoreSupport/PageClientQt.cpp:213
&gt; -    view-&gt;setAttribute(Qt::WA_InputMethodEnabled, enable);
&gt; +    if (enable)
&gt; +        view-&gt;setAttribute(Qt::WA_InputMethodEnabled, enable);

I don&apos;t think this is supposed to be turned on and off when showing/hiding the vkb. The widget supports IM, so it should just be enabled</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>492344</commentid>
    <comment_count>10</comment_count>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-10-28 02:31:01 -0700</bug_when>
    <thetext>Simon, can you have a look?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>492353</commentid>
    <comment_count>11</comment_count>
      <attachid>112688</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2011-10-28 02:47:07 -0700</bug_when>
    <thetext>Comment on attachment 112688
&quot;Close software input panel on element blur&quot; patch.

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

I&apos;m going to say r- because there are a few open questions here. Support for QStyle::RSIP_OnMouseClick was removed and it&apos;s not clear why QApplication::focusWidget() should be preferred over more specific item/widget hasFocus() functions.

Also I don&apos;t see how this patch handles the case where you just &quot;unblur&quot; an element within the page. AFAICS this patch only calls updateSoftwareInputPanel from QWebPage::focusInEvent, which is certainly not called when a focusable node within the document looses focus.

In the N9 we solved this through EditorClient::setInputMethodState, which through a lengthy chain of calls should end up sending the RSIP _or_ the CSIP event.

&gt; Source/WebKit/qt/Api/qwebpage.cpp:-813
&gt; -        QStyle::RequestSoftwareInputPanel behavior = QStyle::RequestSoftwareInputPanel(
&gt; -            client-&gt;ownerWidget()-&gt;style()-&gt;styleHint(QStyle::SH_RequestSoftwareInputPanel));
&gt; -        if (!clickCausedFocus || behavior == QStyle::RSIP_OnMouseClick) {

So _this_ is the part that your patch removes entirely, the support for QStyle::RSIP_OnMouseClick. Why did you remove it?

&gt; Source/WebKit/qt/WebCoreSupport/PageClientQt.cpp:196
&gt; +    QWidget* focusedWidget = QApplication::focusWidget();
&gt; +
&gt; +    if (!focusedWidget)
&gt; +        return;
&gt; +

That doesn&apos;t look quite right. Wouldn&apos;t it be cleaner to check for view-&gt;hasFocus() and also send the RSIP/CSIP events to view?

&gt; Source/WebKit/qt/WebCoreSupport/PageClientQt.cpp:413
&gt; +    QGraphicsView* focusedGraphicsView = qobject_cast&lt;QGraphicsView*&gt;(QApplication::focusWidget());
&gt; +
&gt; +    if (focusedGraphicsView
&gt; +        &amp;&amp; view-&gt;hasFocus()

Similarly here I think it would be better to use QGraphicsItem::hasFocus() instead of using QApplication::focusWidget().

&gt; Source/WebKit/qt/WebCoreSupport/PageClientQt.cpp:435
&gt; +    if (enable)
&gt; +        view-&gt;setFlag(QGraphicsItem::ItemAcceptsInputMethod, true);
&gt; +
&gt; +    updateSoftwareInputPanel(enable);
&gt; +
&gt; +    if (!enable)
&gt; +        view-&gt;setFlag(QGraphicsItem::ItemAcceptsInputMethod, false);

A comment here (as well as in the other method) would probably help to understand why
you enable before calling updateSoftwareInputPanel and disable afterwards.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>493346</commentid>
    <comment_count>12</comment_count>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2011-10-31 09:13:42 -0700</bug_when>
    <thetext>Hi guys,

First of all, thanks for the reviews. I have been studying the SIP behavior all along different applications on Harmattan. On grob browser, for instance, the behavior is correct. On QML TextInput, you can actually disable the default behavior when setting &quot;activeFocusOnPress&quot; to false and implement a custom VKB call using openSoftwareInputPanel() and closeSoftwareInputPanel() methods. On all these cases, I&apos;ve enabled maliit debugging mode (export MIC_ENABLE_DEBUG=true) and this is what I get:

    MInputContext got CloseSoftwareInputPanel event 
    MInputContext in virtual void MInputContext::reset() 
    MInputContext in virtual void MInputContext::setFocusWidget(QWidget*) QObject(0x0)

However, without this patch, here&apos;s what output on console when &quot;unfocus&quot; from the text input widget:

    MInputContext in virtual void MInputContext::update() 
    MInputContext in virtual void MInputContext::reset() 
    MInputContext in virtual void MInputContext::setFocusWidget(QWidget*) QObject(0x0)

So indeed there is no call for CloseSoftwareInputPanel event anywhere in QWebPage. I&apos;ve looked at grob code and the IM behavior is based on the editFocusChanged(QRect) signal provided by QWKPage. There is no such signal on current QtWebKit version.

That said, please disconsider this patch. I&apos;m now currently testing a small modification of mine on QWebPagePrivate::handleSoftwareInputPanel that might fix the issue without removing any code or adding more virtual functions. If that doesn&apos;t work, there&apos;s still an option to add an event filter on both
PageClient{QWidget,QGraphicsWidget}. I&apos;m going to publish it here as soon as I have a working patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495503</commentid>
    <comment_count>13</comment_count>
      <attachid>113501</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2011-11-03 08:55:46 -0700</bug_when>
    <thetext>Created attachment 113501
&quot;Close SIP explicitly when IM is disabled&quot; patch.

This updated patch does not remove any support for QStyle::RSIP_OnMouseClick (indeed, first click on the input text box focuses it, but only after second click the VKB appears, same expected behavior). The static bool sipRequested is just a flag to avoid unnecessary emissions of QEvent::CloseSoftwareInputPanel. Also, as Kenneth suggested, filterEvent() is used to propagate the event.

ps: While working on this patch, I noticed, for example, that the VKB is still not closed after you digit anything on Google&apos;s text box and click on &quot;Return&quot; key. This updates the view screen showing the results of Google&apos;s query, so focus is no longer at the text box. I tried adding some logic when the &quot;loadFinished&quot; signal is emitted from QWebView and it worked, but with some issues still to resolve. I am going to create another bug entry for this particular case.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495505</commentid>
    <comment_count>14</comment_count>
      <attachid>113501</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2011-11-03 08:58:57 -0700</bug_when>
    <thetext>Comment on attachment 113501
&quot;Close SIP explicitly when IM is disabled&quot; patch.

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

&gt; Source/WebKit/qt/Api/qwebpage.cpp:820
&gt; +    if (!client-&gt;inputMethodEnabled()) {
&gt; +        QInputContext *inputContext = qApp-&gt;inputContext();
&gt; +        if (inputContext) {
&gt; +            inputContext-&gt;reset();
&gt; +            inputContext-&gt;update();

If it is not enabled you do stuff?

&gt; Source/WebKit/qt/Api/qwebpage.cpp:822
&gt; +            //QEvent closeSIPEvent(QEvent::CloseSoftwareInputPanel);
&gt; +            //inputContext-&gt;filterEvent(&amp;closeSIPEvent);

Patches should not add commented out code</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495507</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-03 09:01:45 -0700</bug_when>
    <thetext>Attachment 113501 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebKit/qt/Api/qwebpage.cpp&apos;, u&apos;Sour...&quot; exit_code: 1

Source/WebKit/qt/Api/qwebpage.cpp:813:  Declaration has space between type name and * in QInputContext *inputContext  [whitespace/declaration] [3]
Source/WebKit/qt/Api/qwebpage.cpp:817:  Should have a space between // and comment  [whitespace/comments] [4]
Source/WebKit/qt/Api/qwebpage.cpp:818:  Should have a space between // and comment  [whitespace/comments] [4]
Source/WebKit/qt/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Total errors found: 4 in 2 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>495508</commentid>
    <comment_count>16</comment_count>
      <attachid>113502</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2011-11-03 09:04:36 -0700</bug_when>
    <thetext>Created attachment 113502
Updated &quot;Close SIP explicitly when IM is disabled&quot; patch.

Deep sorry guys, I made a mistake when sending the attachment. But taking the opportunity to answering Kenneth&apos;s question: Yes, the QEvent::CloseSoftwareInputPanel event is sent if client-&gt;inputMethodEnabled() returns false. The rationale is that if IM is disabled, then there&apos;s no need anymore to show SIP. I&apos;ve tested it against the testcase and works as expected.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495510</commentid>
    <comment_count>17</comment_count>
      <attachid>113502</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2011-11-03 09:06:38 -0700</bug_when>
    <thetext>Comment on attachment 113502
Updated &quot;Close SIP explicitly when IM is disabled&quot; patch.

Assigning &quot;?&quot; to &quot;review&quot; and &quot;commit-queue&quot; flags.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495511</commentid>
    <comment_count>18</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-11-03 09:07:02 -0700</bug_when>
    <thetext>Attachment 113502 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebKit/qt/Api/qwebpage.cpp&apos;, u&apos;Sour...&quot; exit_code: 1

Source/WebKit/qt/ChangeLog:1:  ChangeLog entry has no bug number  [changelog/bugnumber] [5]
Total errors found: 1 in 2 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>495531</commentid>
    <comment_count>19</comment_count>
      <attachid>113505</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2011-11-03 09:30:10 -0700</bug_when>
    <thetext>Created attachment 113505
ChangeLog-updated &quot;Close SIP explicitly when IM is disabled&quot; patch.

Updated patch ChangeLog with [Qt] tag and WebKit bugzilla entry.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495554</commentid>
    <comment_count>20</comment_count>
      <attachid>113505</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2011-11-03 09:50:09 -0700</bug_when>
    <thetext>Comment on attachment 113505
ChangeLog-updated &quot;Close SIP explicitly when IM is disabled&quot; patch.

r-

As just discussed on IRC, the CSIP event should not be necessary to send, as the input context should hide the vkb when the input method attribute/flag gets disabled.

Alternatively if that&apos;s unfixible on the input method side, the CSIP event should be sent where we disable the flag.

The ChangeLog also says OOPS and the sipRequested variable is unused :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495563</commentid>
    <comment_count>21</comment_count>
      <attachid>113505</attachid>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2011-11-03 09:56:16 -0700</bug_when>
    <thetext>Comment on attachment 113505
ChangeLog-updated &quot;Close SIP explicitly when IM is disabled&quot; patch.

Removing &quot;review&quot; and &quot;commit-queue&quot; patches.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>495603</commentid>
    <comment_count>22</comment_count>
    <who name="Bruno Abinader (history only)">bruno.abinader</who>
    <bug_when>2011-11-03 10:27:17 -0700</bug_when>
    <thetext>As discussed with Simon via IRC, this is a Harmattan-only issue, due to a misbehavior from MInputContext, so not any longer an upstream issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>546148</commentid>
    <comment_count>23</comment_count>
    <who name="Mattia Barbon">mattia</who>
    <bug_when>2012-01-31 09:16:09 -0800</bug_when>
    <thetext>(In reply to comment #20)
&gt; (From update of attachment 113505 [details])

I&apos;m having te same issue when using Maliit with Qt/Webkit in a QML WebView (tested with Qt 4.8.0), and also the issue mentioned in comment #13.

&gt; As just discussed on IRC, the CSIP event should not be necessary to send, as the input context should hide the vkb when the input method attribute/flag gets disabled.

Is this the Qt::WA_InputMethodEnabled flag or is it something else?

&gt; Alternatively if that&apos;s unfixible on the input method side, the CSIP event should be sent where we disable the flag.

Could you point me to the IRC logs for the conversation mentioned above?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>975213</commentid>
    <comment_count>24</comment_count>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2014-02-03 03:17:43 -0800</bug_when>
    <thetext>=== Bulk closing of Qt bugs ===

If you believe that this bug report is still relevant for a non-Qt port of webkit.org, please re-open it and remove [Qt] from the summary.

If you believe that this is still an important QtWebKit bug, please fill a new report at https://bugreports.qt-project.org and add a link to this issue. See http://qt-project.org/wiki/ReportingBugsInQt for additional guidelines.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>111254</attachid>
            <date>2011-10-17 06:05:03 -0700</date>
            <delta_ts>2011-10-17 06:05:03 -0700</delta_ts>
            <desc>Patch proposal to somewhat fix the issue</desc>
            <filename>251766.patch</filename>
            <type>text/plain</type>
            <size>6148</size>
            <attacher name="Topi Reiniö">topi.reinio</attacher>
            
              <data encoding="base64">QEAgLSwgKywgQEAgCiBTb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9RV2ViUGFnZUNsaWVudC5o
ICAgICAgfCAgICAxICsKIFNvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcCAgICAgICAg
ICAgICAgICB8ICAgMzAgKystLS0tLS0tLS0KIFNvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdl
X3AuaCAgICAgICAgICAgICAgICB8ICAgIDEgLQogU291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3Vw
cG9ydC9QYWdlQ2xpZW50UXQuY3BwIHwgICA1OSArKysrKysrKysrKysrKysrKysrKystCiBTb3Vy
Y2UvV2ViS2l0L3F0L1dlYkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRRdC5oICAgfCAgICA0ICsrCiA1
IGZpbGVzIGNoYW5nZWQsIDY4IGluc2VydGlvbnMoKyksIDI3IGRlbGV0aW9ucygtKQotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9xdC9RV2ViUGFnZUNsaWVudC5oCQorKysgYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9xdC9RV2ViUGFnZUNsaWVudC5oCQpAQCAtOTUsNiArOTUsNyBAQCBw
dWJsaWM6CiAKICAgICB2aXJ0dWFsIFFSZWN0RiB3aW5kb3dSZWN0KCkgY29uc3QgPSAwOwogCisg
ICAgdmlydHVhbCB2b2lkIHVwZGF0ZVNvZnR3YXJlSW5wdXRQYW5lbChib29sIGVuYWJsZSkgPSAw
OwogcHJvdGVjdGVkOgogI2lmbmRlZiBRVF9OT19DVVJTT1IKICAgICB2aXJ0dWFsIFFDdXJzb3Ig
Y3Vyc29yKCkgY29uc3QgPSAwOwotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5j
cHAJCisrKyBhL1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcAkKQEAgLTc5NiwzMCAr
Nzk2LDYgQEAgdm9pZCBRV2ViUGFnZVByaXZhdGU6Om1vdXNlUmVsZWFzZUV2ZW50KFQgKmV2KQog
ICAgIGV2LT5zZXRBY2NlcHRlZChhY2NlcHRlZCk7CiAKICAgICBoYW5kbGVDbGlwYm9hcmQoZXYs
IGV2LT5idXR0b24oKSk7Ci0gICAgaGFuZGxlU29mdHdhcmVJbnB1dFBhbmVsKGV2LT5idXR0b24o
KSwgUVBvaW50Rihldi0+cG9zKCkpLnRvUG9pbnQoKSk7Ci19Ci0KLXZvaWQgUVdlYlBhZ2VQcml2
YXRlOjpoYW5kbGVTb2Z0d2FyZUlucHV0UGFuZWwoUXQ6Ok1vdXNlQnV0dG9uIGJ1dHRvbiwgY29u
c3QgUVBvaW50JiBwb3MpCi17Ci0gICAgRnJhbWUqIGZyYW1lID0gcGFnZS0+Zm9jdXNDb250cm9s
bGVyKCktPmZvY3VzZWRGcmFtZSgpOwotICAgIGlmICghZnJhbWUpCi0gICAgICAgIHJldHVybjsK
LQotICAgIGlmIChjbGllbnQgJiYgY2xpZW50LT5pbnB1dE1ldGhvZEVuYWJsZWQoKQotICAgICAg
ICAmJiBmcmFtZS0+ZG9jdW1lbnQoKS0+Zm9jdXNlZE5vZGUoKQotICAgICAgICAmJiBidXR0b24g
PT0gUXQ6OkxlZnRCdXR0b24gJiYgcUFwcC0+YXV0b1NpcEVuYWJsZWQoKSkgewotICAgICAgICBR
U3R5bGU6OlJlcXVlc3RTb2Z0d2FyZUlucHV0UGFuZWwgYmVoYXZpb3IgPSBRU3R5bGU6OlJlcXVl
c3RTb2Z0d2FyZUlucHV0UGFuZWwoCi0gICAgICAgICAgICBjbGllbnQtPm93bmVyV2lkZ2V0KCkt
PnN0eWxlKCktPnN0eWxlSGludChRU3R5bGU6OlNIX1JlcXVlc3RTb2Z0d2FyZUlucHV0UGFuZWwp
KTsKLSAgICAgICAgaWYgKCFjbGlja0NhdXNlZEZvY3VzIHx8IGJlaGF2aW9yID09IFFTdHlsZTo6
UlNJUF9Pbk1vdXNlQ2xpY2spIHsKLSAgICAgICAgICAgIEhpdFRlc3RSZXN1bHQgcmVzdWx0ID0g
ZnJhbWUtPmV2ZW50SGFuZGxlcigpLT5oaXRUZXN0UmVzdWx0QXRQb2ludChmcmFtZS0+dmlldygp
LT53aW5kb3dUb0NvbnRlbnRzKHBvcyksIGZhbHNlKTsKLSAgICAgICAgICAgIGlmIChyZXN1bHQu
aXNDb250ZW50RWRpdGFibGUoKSkgewotICAgICAgICAgICAgICAgIFFFdmVudCBldmVudChRRXZl
bnQ6OlJlcXVlc3RTb2Z0d2FyZUlucHV0UGFuZWwpOwotICAgICAgICAgICAgICAgIFFBcHBsaWNh
dGlvbjo6c2VuZEV2ZW50KGNsaWVudC0+b3duZXJXaWRnZXQoKSwgJmV2ZW50KTsKLSAgICAgICAg
ICAgIH0KLSAgICAgICAgfQotICAgIH0KLQotICAgIGNsaWNrQ2F1c2VkRm9jdXMgPSBmYWxzZTsK
IH0KIAogI2lmbmRlZiBRVF9OT19DT05URVhUTUVOVQpAQCAtOTc3LDYgKzk1MywxMiBAQCB2b2lk
IFFXZWJQYWdlUHJpdmF0ZTo6Zm9jdXNJbkV2ZW50KFFGb2N1c0V2ZW50KikKICAgICBmb2N1c0Nv
bnRyb2xsZXItPnNldEZvY3VzZWQodHJ1ZSk7CiAgICAgaWYgKCFmb2N1c0NvbnRyb2xsZXItPmZv
Y3VzZWRGcmFtZSgpKQogICAgICAgICBmb2N1c0NvbnRyb2xsZXItPnNldEZvY3VzZWRGcmFtZShR
V2ViRnJhbWVQcml2YXRlOjpjb3JlKG1haW5GcmFtZSkpOworCisgICAgaWYgKGNsaWVudCkgewor
ICAgICAgICBGcmFtZSogZnJhbWUgPSBmb2N1c0NvbnRyb2xsZXItPmZvY3VzZWRPck1haW5GcmFt
ZSgpOworICAgICAgICBib29sIHRyeUVuYWJsZVNvZnR3YXJlSW5wdXRQYW5lbCA9IGZyYW1lICYm
IGZyYW1lLT5kb2N1bWVudCgpICYmIGZyYW1lLT5kb2N1bWVudCgpLT5mb2N1c2VkTm9kZSgpOwor
ICAgICAgICBjbGllbnQtPnVwZGF0ZVNvZnR3YXJlSW5wdXRQYW5lbCh0cnlFbmFibGVTb2Z0d2Fy
ZUlucHV0UGFuZWwpOworICAgIH0KIH0KIAogdm9pZCBRV2ViUGFnZVByaXZhdGU6OmZvY3VzT3V0
RXZlbnQoUUZvY3VzRXZlbnQqKQotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9xd2VicGFnZV9w
LmgJCisrKyBhL1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlX3AuaAkKQEAgLTEyNSw3ICsx
MjUsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzaG9ydGN1dE92ZXJyaWRlRXZlbnQoUUtleUV2ZW50
Kik7CiAgICAgdm9pZCBsZWF2ZUV2ZW50KFFFdmVudCopOwogICAgIHZvaWQgaGFuZGxlQ2xpcGJv
YXJkKFFFdmVudCosIFF0OjpNb3VzZUJ1dHRvbik7Ci0gICAgdm9pZCBoYW5kbGVTb2Z0d2FyZUlu
cHV0UGFuZWwoUXQ6Ok1vdXNlQnV0dG9uLCBjb25zdCBRUG9pbnQmKTsKICAgICBib29sIGhhbmRs
ZVNjcm9sbGluZyhRS2V5RXZlbnQqLCBXZWJDb3JlOjpGcmFtZSopOwogCiAgICAgLy8gUmV0dXJu
cyB3aGV0aGVyIHRoZSBkZWZhdWx0IGFjdGlvbiB3YXMgY2FuY2VsbGVkIGluIHRoZSBKUyBldmVu
dCBoYW5kbGVyCi0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVu
dFF0LmNwcAkKKysrIGEvU291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9QYWdlQ2xpZW50
UXQuY3BwCQpAQCAtMjEsNiArMjEsNyBAQCAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRl
ICJQYWdlQ2xpZW50UXQuaCIKIAorI2luY2x1ZGUgPFFBcHBsaWNhdGlvbj4KICNpbmNsdWRlIDxR
R3JhcGhpY3NTY2VuZT4KICNpbmNsdWRlIDxRR3JhcGhpY3NWaWV3PgogI2lmIGRlZmluZWQoUV9X
U19YMTEpCkBAIC0xMTEsOSArMTEyLDM3IEBAIHZvaWQgUGFnZUNsaWVudFFXaWRnZXQ6OnVwZGF0
ZShjb25zdCBRUmVjdCAmIGRpcnR5UmVjdCkKICAgICB2aWV3LT51cGRhdGUoZGlydHlSZWN0KTsK
IH0KIAordm9pZCBQYWdlQ2xpZW50UVdpZGdldDo6dXBkYXRlU29mdHdhcmVJbnB1dFBhbmVsKGJv
b2wgZW5hYmxlKQoreworI2lmICFkZWZpbmVkKFFUX05PX0lNKQorICAgIFFXaWRnZXQgKmZvY3Vz
ZWRXaWRnZXQgPSBRQXBwbGljYXRpb246OmZvY3VzV2lkZ2V0KCk7CisKKyAgICBpZiAoIWZvY3Vz
ZWRXaWRnZXQpCisgICAgICAgIHJldHVybjsKKworICAgIGlmICghcUFwcC0+YXV0b1NpcEVuYWJs
ZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGVuYWJsZSkgeworICAgICAgICBRRXZl
bnQgb3BlblNJUEV2ZW50KFFFdmVudDo6UmVxdWVzdFNvZnR3YXJlSW5wdXRQYW5lbCk7CisgICAg
ICAgIFFBcHBsaWNhdGlvbjo6c2VuZEV2ZW50KGZvY3VzZWRXaWRnZXQsICZvcGVuU0lQRXZlbnQp
OworICAgIH0gZWxzZSBpZiAoZm9jdXNlZFdpZGdldC0+aW5wdXRDb250ZXh0KCkpIHsKKyAgICAg
ICAgUUV2ZW50IGNsb3NlU0lQRXZlbnQoUUV2ZW50OjpDbG9zZVNvZnR3YXJlSW5wdXRQYW5lbCk7
CisgICAgICAgIFFBcHBsaWNhdGlvbjo6c2VuZEV2ZW50KGZvY3VzZWRXaWRnZXQsICZjbG9zZVNJ
UEV2ZW50KTsKKyAgICB9CisjZW5kaWYKK30KKwogdm9pZCBQYWdlQ2xpZW50UVdpZGdldDo6c2V0
SW5wdXRNZXRob2RFbmFibGVkKGJvb2wgZW5hYmxlKQogewotICAgIHZpZXctPnNldEF0dHJpYnV0
ZShRdDo6V0FfSW5wdXRNZXRob2RFbmFibGVkLCBlbmFibGUpOworICAgIGlmIChlbmFibGUpCisg
ICAgICAgIHZpZXctPnNldEF0dHJpYnV0ZShRdDo6V0FfSW5wdXRNZXRob2RFbmFibGVkLCBlbmFi
bGUpOworCisgICAgdXBkYXRlU29mdHdhcmVJbnB1dFBhbmVsKGVuYWJsZSk7CisKKyAgICBpZiAo
IWVuYWJsZSkKKyAgICAgICAgdmlldy0+c2V0QXR0cmlidXRlKFF0OjpXQV9JbnB1dE1ldGhvZEVu
YWJsZWQsIGVuYWJsZSk7CisKIH0KIAogYm9vbCBQYWdlQ2xpZW50UVdpZGdldDo6aW5wdXRNZXRo
b2RFbmFibGVkKCkgY29uc3QKQEAgLTMxNCw5ICszNDMsMzUgQEAgdm9pZCBQYWdlQ2xpZW50UUdy
YXBoaWNzV2lkZ2V0Ojp1cGRhdGVUaWxlZEJhY2tpbmdTdG9yZVNjYWxlKCkKIH0KICNlbmRpZgog
Cit2b2lkIFBhZ2VDbGllbnRRR3JhcGhpY3NXaWRnZXQ6OnVwZGF0ZVNvZnR3YXJlSW5wdXRQYW5l
bChib29sIGVuYWJsZSkKK3sKKyNpZiAhZGVmaW5lZChRVF9OT19JTSkKKyAgICBRR3JhcGhpY3NW
aWV3ICpmb2N1c2VkR3JhcGhpY3NWaWV3ID0gcW9iamVjdF9jYXN0PFFHcmFwaGljc1ZpZXcgKj4o
UUFwcGxpY2F0aW9uOjpmb2N1c1dpZGdldCgpKTsKKworICAgIGlmIChmb2N1c2VkR3JhcGhpY3NW
aWV3CisgICAgICAgICYmIHZpZXctPmhhc0ZvY3VzKCkKKyAgICAgICAgJiYgdmlldy0+c2NlbmUo
KS0+dmlld3MoKS5jb250YWlucyhmb2N1c2VkR3JhcGhpY3NWaWV3KSkgeworCisgICAgICAgIGlm
IChlbmFibGUpIHsKKyAgICAgICAgICAgIFFFdmVudCBvcGVuU0lQRXZlbnQoUUV2ZW50OjpSZXF1
ZXN0U29mdHdhcmVJbnB1dFBhbmVsKTsKKyAgICAgICAgICAgIFFBcHBsaWNhdGlvbjo6c2VuZEV2
ZW50KGZvY3VzZWRHcmFwaGljc1ZpZXcsICZvcGVuU0lQRXZlbnQpOworICAgICAgICB9IGVsc2Ug
aWYgKGZvY3VzZWRHcmFwaGljc1ZpZXctPmlucHV0Q29udGV4dCgpKSB7CisgICAgICAgICAgICBR
RXZlbnQgY2xvc2VTSVBFdmVudChRRXZlbnQ6OkNsb3NlU29mdHdhcmVJbnB1dFBhbmVsKTsKKyAg
ICAgICAgICAgIFFBcHBsaWNhdGlvbjo6c2VuZEV2ZW50KGZvY3VzZWRHcmFwaGljc1ZpZXcsICZj
bG9zZVNJUEV2ZW50KTsKKyAgICAgICAgfQorICAgIH0KKyNlbmRpZgorfQorCiB2b2lkIFBhZ2VD
bGllbnRRR3JhcGhpY3NXaWRnZXQ6OnNldElucHV0TWV0aG9kRW5hYmxlZChib29sIGVuYWJsZSkK
IHsKLSAgICB2aWV3LT5zZXRGbGFnKFFHcmFwaGljc0l0ZW06Okl0ZW1BY2NlcHRzSW5wdXRNZXRo
b2QsIGVuYWJsZSk7CisgICAgaWYgKGVuYWJsZSkKKyAgICAgICAgdmlldy0+c2V0RmxhZyhRR3Jh
cGhpY3NJdGVtOjpJdGVtQWNjZXB0c0lucHV0TWV0aG9kLCB0cnVlKTsKKworICAgIHVwZGF0ZVNv
ZnR3YXJlSW5wdXRQYW5lbChlbmFibGUpOworCisgICAgaWYgKCFlbmFibGUpCisgICAgICAgIHZp
ZXctPnNldEZsYWcoUUdyYXBoaWNzSXRlbTo6SXRlbUFjY2VwdHNJbnB1dE1ldGhvZCwgZmFsc2Up
OwogfQogCiBib29sIFBhZ2VDbGllbnRRR3JhcGhpY3NXaWRnZXQ6OmlucHV0TWV0aG9kRW5hYmxl
ZCgpIGNvbnN0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVu
dFF0LmgJCisrKyBhL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudFF0
LmgJCkBAIC05Nyw2ICs5Nyw4IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgUVJlY3RGIHdpbmRv
d1JlY3QoKSBjb25zdDsKIAorICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVTb2Z0d2FyZUlucHV0UGFu
ZWwoYm9vbCBlbmFibGUpOworCiAgICAgUVdpZGdldCogdmlldzsKICAgICBRV2ViUGFnZSogcGFn
ZTsKIApAQCAtMjE4LDYgKzIyMCw4IEBAIHB1YmxpYzoKIAogICAgIHZpcnR1YWwgUVJlY3RGIHdp
bmRvd1JlY3QoKSBjb25zdDsKIAorICAgIHZpcnR1YWwgdm9pZCB1cGRhdGVTb2Z0d2FyZUlucHV0
UGFuZWwoYm9vbCBlbmFibGUpOworCiAgICAgUUdyYXBoaWNzV2ViVmlldyogdmlldzsKICAgICBR
V2ViUGFnZSogcGFnZTsKICAgICBib29sIHZpZXdSZXNpemVzVG9Db250ZW50czsKCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>112688</attachid>
            <date>2011-10-27 08:46:59 -0700</date>
            <delta_ts>2011-11-03 08:55:46 -0700</delta_ts>
            <desc>&quot;Close software input panel on element blur&quot; patch.</desc>
            <filename>0001-Qt-Close-software-input-panel-on-element-blur.patch</filename>
            <type>text/plain</type>
            <size>9566</size>
            <attacher name="Bruno Abinader (history only)">bruno.abinader</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBkYTlkMWIyLi5lODlhY2EzIDEwMDc1NQotLS0gYS9Tb3VyY2UvV2ViQ29y
ZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzAg
QEAKKzIwMTEtMTAtMjcgIEJydW5vIGRlIE9saXZlaXJhIEFiaW5hZGVyICA8YnJ1bm8uYWJpbmFk
ZXJAYmFzeXNrb20uY29tPgorCisgICAgICAgIFtRdF0gQ2xvc2Ugc29mdHdhcmUgaW5wdXQgcGFu
ZWwgb24gZWxlbWVudCBibHVyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD02MDE2MQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgIFNlbmQgYW4gZXhwbGljaXQgZXZlbnQgdG8gb3BlbiBhbmQgY2xvc2Ugc29mdHdh
cmUgaW5wdXQgcGFuZWwgd2hlbgorICAgICAgICBpbnB1dCBlbGVtZW50cyBhcmUgZm9jdXNlZCBh
bmQgdW5mb2N1c2VkLgorCisgICAgICAgIFF0IHNvZnR3YXJlIGlucHV0IGZyYW1ld29yayB3b3Jr
cyB0aHJvdWdoIFFXaWRnZXRzLiBJbiBjYXNlIG9mCisgICAgICAgIFFHcmFwaGljc1dlYlZpZXcs
IHRoZSBRR3JhcGhpY3NWaWV3IHRoYXQgY29udGFpbnMgUUdyYXBoaWNzV2ViVmlldworICAgICAg
ICBzdGF5cyBmb2N1c2VkLCByZWdhcmRsZXNzIHdoZXRoZXIgdGhlIFFHcmFwaGljc0l0ZW1zIGlu
IGl0IGhhcyBmb2N1cworICAgICAgICBvciBub3QuICBUaGlzIG1lYW5zIHRoYXQgU0lQIGlzIG5l
dmVyIGNsb3NlZCwgZXZlbiB0aG91Z2ggdGhlCisgICAgICAgIFFHcmFwaGljc1dlYlZpZXcgbG9z
ZXMgZm9jdXMuCisKKyAgICAgICAgVGhlIGZyYW1ld29yayBleHBlY3RzIHRoYXQgU0lQIHN0YXRl
IGlzIGNvbnRyb2xsZWQgZXhwbGljaXRseS4KKworICAgICAgICBUaGlzIGNvbW1pdCBmaXhlcyBh
bHNvIHZhcmlvdXMgcHJvYmxlbXMgd2hlbiBmb2N1cyBpcyBjb250cm9sbGVkCisgICAgICAgIHRo
cm91Z2ggSlMuCisKKyAgICAgICAgUGF0Y2ggYnkgS2ltbW8gS2lubnVuZW4gPGtpbW1vLnQua2lu
bnVuZW5Abm9raWEuY29tPiBvbiAyMDExLTA3LTI5CisKKyAgICAgICAgUE1PIEJ1ZyAyNTE3NjYu
CisKKyAgICAgICAgKiBwbGF0Zm9ybS9xdC9RV2ViUGFnZUNsaWVudC5oOgorCiAyMDExLTA5LTEy
ICBBZGFtIEtsZWluICA8YWRhbWtAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEZpeCBvdXQtb2Yt
Ym91bmRzIGFjY2VzcyBpbiBHcmFkaWVudDo6c29ydFN0b3BzSWZOZWNlc3NhcnkKZGlmZiAtLWdp
dCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L1FXZWJQYWdlQ2xpZW50LmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9xdC9RV2ViUGFnZUNsaWVudC5oCmluZGV4IGQ4ZjQxNzEuLmE1OGM3
MTcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL3F0L1FXZWJQYWdlQ2xpZW50
LmgKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vcXQvUVdlYlBhZ2VDbGllbnQuaApAQCAt
OTUsNiArOTUsNyBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIFFSZWN0RiB3aW5kb3dSZWN0KCkg
Y29uc3QgPSAwOwogCisgICAgdmlydHVhbCB2b2lkIHVwZGF0ZVNvZnR3YXJlSW5wdXRQYW5lbChi
b29sIGVuYWJsZSkgPSAwOwogcHJvdGVjdGVkOgogI2lmbmRlZiBRVF9OT19DVVJTT1IKICAgICB2
aXJ0dWFsIFFDdXJzb3IgY3Vyc29yKCkgY29uc3QgPSAwOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YktpdC9xdC9BcGkvcXdlYnBhZ2UuY3BwIGIvU291cmNlL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2Uu
Y3BwCmluZGV4IGIzZWZlMGYuLmFlYjg5OGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQv
QXBpL3F3ZWJwYWdlLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAK
QEAgLTc5NiwzMCArNzk2LDYgQEAgdm9pZCBRV2ViUGFnZVByaXZhdGU6Om1vdXNlUmVsZWFzZUV2
ZW50KFQgKmV2KQogICAgIGV2LT5zZXRBY2NlcHRlZChhY2NlcHRlZCk7CiAKICAgICBoYW5kbGVD
bGlwYm9hcmQoZXYsIGV2LT5idXR0b24oKSk7Ci0gICAgaGFuZGxlU29mdHdhcmVJbnB1dFBhbmVs
KGV2LT5idXR0b24oKSwgUVBvaW50Rihldi0+cG9zKCkpLnRvUG9pbnQoKSk7Ci19Ci0KLXZvaWQg
UVdlYlBhZ2VQcml2YXRlOjpoYW5kbGVTb2Z0d2FyZUlucHV0UGFuZWwoUXQ6Ok1vdXNlQnV0dG9u
IGJ1dHRvbiwgY29uc3QgUVBvaW50JiBwb3MpCi17Ci0gICAgRnJhbWUqIGZyYW1lID0gcGFnZS0+
Zm9jdXNDb250cm9sbGVyKCktPmZvY3VzZWRGcmFtZSgpOwotICAgIGlmICghZnJhbWUpCi0gICAg
ICAgIHJldHVybjsKLQotICAgIGlmIChjbGllbnQgJiYgY2xpZW50LT5pbnB1dE1ldGhvZEVuYWJs
ZWQoKQotICAgICAgICAmJiBmcmFtZS0+ZG9jdW1lbnQoKS0+Zm9jdXNlZE5vZGUoKQotICAgICAg
ICAmJiBidXR0b24gPT0gUXQ6OkxlZnRCdXR0b24gJiYgcUFwcC0+YXV0b1NpcEVuYWJsZWQoKSkg
ewotICAgICAgICBRU3R5bGU6OlJlcXVlc3RTb2Z0d2FyZUlucHV0UGFuZWwgYmVoYXZpb3IgPSBR
U3R5bGU6OlJlcXVlc3RTb2Z0d2FyZUlucHV0UGFuZWwoCi0gICAgICAgICAgICBjbGllbnQtPm93
bmVyV2lkZ2V0KCktPnN0eWxlKCktPnN0eWxlSGludChRU3R5bGU6OlNIX1JlcXVlc3RTb2Z0d2Fy
ZUlucHV0UGFuZWwpKTsKLSAgICAgICAgaWYgKCFjbGlja0NhdXNlZEZvY3VzIHx8IGJlaGF2aW9y
ID09IFFTdHlsZTo6UlNJUF9Pbk1vdXNlQ2xpY2spIHsKLSAgICAgICAgICAgIEhpdFRlc3RSZXN1
bHQgcmVzdWx0ID0gZnJhbWUtPmV2ZW50SGFuZGxlcigpLT5oaXRUZXN0UmVzdWx0QXRQb2ludChm
cmFtZS0+dmlldygpLT53aW5kb3dUb0NvbnRlbnRzKHBvcyksIGZhbHNlKTsKLSAgICAgICAgICAg
IGlmIChyZXN1bHQuaXNDb250ZW50RWRpdGFibGUoKSkgewotICAgICAgICAgICAgICAgIFFFdmVu
dCBldmVudChRRXZlbnQ6OlJlcXVlc3RTb2Z0d2FyZUlucHV0UGFuZWwpOwotICAgICAgICAgICAg
ICAgIFFBcHBsaWNhdGlvbjo6c2VuZEV2ZW50KGNsaWVudC0+b3duZXJXaWRnZXQoKSwgJmV2ZW50
KTsKLSAgICAgICAgICAgIH0KLSAgICAgICAgfQotICAgIH0KLQotICAgIGNsaWNrQ2F1c2VkRm9j
dXMgPSBmYWxzZTsKIH0KIAogI2lmbmRlZiBRVF9OT19DT05URVhUTUVOVQpAQCAtOTc3LDYgKzk1
MywxMiBAQCB2b2lkIFFXZWJQYWdlUHJpdmF0ZTo6Zm9jdXNJbkV2ZW50KFFGb2N1c0V2ZW50KikK
ICAgICBmb2N1c0NvbnRyb2xsZXItPnNldEZvY3VzZWQodHJ1ZSk7CiAgICAgaWYgKCFmb2N1c0Nv
bnRyb2xsZXItPmZvY3VzZWRGcmFtZSgpKQogICAgICAgICBmb2N1c0NvbnRyb2xsZXItPnNldEZv
Y3VzZWRGcmFtZShRV2ViRnJhbWVQcml2YXRlOjpjb3JlKG1haW5GcmFtZSkpOworCisgICAgaWYg
KGNsaWVudCkgeworICAgICAgICBGcmFtZSogZnJhbWUgPSBmb2N1c0NvbnRyb2xsZXItPmZvY3Vz
ZWRPck1haW5GcmFtZSgpOworICAgICAgICBib29sIHRyeUVuYWJsZVNvZnR3YXJlSW5wdXRQYW5l
bCA9IGZyYW1lICYmIGZyYW1lLT5kb2N1bWVudCgpICYmIGZyYW1lLT5kb2N1bWVudCgpLT5mb2N1
c2VkTm9kZSgpOworICAgICAgICBjbGllbnQtPnVwZGF0ZVNvZnR3YXJlSW5wdXRQYW5lbCh0cnlF
bmFibGVTb2Z0d2FyZUlucHV0UGFuZWwpOworICAgIH0KIH0KIAogdm9pZCBRV2ViUGFnZVByaXZh
dGU6OmZvY3VzT3V0RXZlbnQoUUZvY3VzRXZlbnQqKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9xdC9BcGkvcXdlYnBhZ2VfcC5oIGIvU291cmNlL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2VfcC5o
CmluZGV4IDg2ZjU0YjcuLmYwMjhhODEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQXBp
L3F3ZWJwYWdlX3AuaAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9xd2VicGFnZV9wLmgKQEAg
LTEyNSw3ICsxMjUsNiBAQCBwdWJsaWM6CiAgICAgdm9pZCBzaG9ydGN1dE92ZXJyaWRlRXZlbnQo
UUtleUV2ZW50Kik7CiAgICAgdm9pZCBsZWF2ZUV2ZW50KFFFdmVudCopOwogICAgIHZvaWQgaGFu
ZGxlQ2xpcGJvYXJkKFFFdmVudCosIFF0OjpNb3VzZUJ1dHRvbik7Ci0gICAgdm9pZCBoYW5kbGVT
b2Z0d2FyZUlucHV0UGFuZWwoUXQ6Ok1vdXNlQnV0dG9uLCBjb25zdCBRUG9pbnQmKTsKICAgICBi
b29sIGhhbmRsZVNjcm9sbGluZyhRS2V5RXZlbnQqLCBXZWJDb3JlOjpGcmFtZSopOwogCiAgICAg
Ly8gUmV0dXJucyB3aGV0aGVyIHRoZSBkZWZhdWx0IGFjdGlvbiB3YXMgY2FuY2VsbGVkIGluIHRo
ZSBKUyBldmVudCBoYW5kbGVyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxv
ZyBiL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCmluZGV4IDMyNDI4ZjEuLmUwNjFhMjUgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQv
cXQvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzkgQEAKKzIwMTEtMTAtMjcgIEJydW5vIGRlIE9saXZl
aXJhIEFiaW5hZGVyICA8YnJ1bm8uYWJpbmFkZXJAYmFzeXNrb20uY29tPgorCisgICAgICAgIFtR
dF0gQ2xvc2Ugc29mdHdhcmUgaW5wdXQgcGFuZWwgb24gZWxlbWVudCBibHVyCisgICAgICAgIGh0
dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MDE2MQorCisgICAgICAgIFJl
dmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFNlbmQgYW4gZXhwbGljaXQgZXZl
bnQgdG8gb3BlbiBhbmQgY2xvc2Ugc29mdHdhcmUgaW5wdXQgcGFuZWwgd2hlbgorICAgICAgICBp
bnB1dCBlbGVtZW50cyBhcmUgZm9jdXNlZCBhbmQgdW5mb2N1c2VkLgorCisgICAgICAgIFF0IHNv
ZnR3YXJlIGlucHV0IGZyYW1ld29yayB3b3JrcyB0aHJvdWdoIFFXaWRnZXRzLiBJbiBjYXNlIG9m
CisgICAgICAgIFFHcmFwaGljc1dlYlZpZXcsIHRoZSBRR3JhcGhpY3NWaWV3IHRoYXQgY29udGFp
bnMgUUdyYXBoaWNzV2ViVmlldworICAgICAgICBzdGF5cyBmb2N1c2VkLCByZWdhcmRsZXNzIHdo
ZXRoZXIgdGhlIFFHcmFwaGljc0l0ZW1zIGluIGl0IGhhcyBmb2N1cworICAgICAgICBvciBub3Qu
ICBUaGlzIG1lYW5zIHRoYXQgU0lQIGlzIG5ldmVyIGNsb3NlZCwgZXZlbiB0aG91Z2ggdGhlCisg
ICAgICAgIFFHcmFwaGljc1dlYlZpZXcgbG9zZXMgZm9jdXMuCisKKyAgICAgICAgVGhlIGZyYW1l
d29yayBleHBlY3RzIHRoYXQgU0lQIHN0YXRlIGlzIGNvbnRyb2xsZWQgZXhwbGljaXRseS4KKwor
ICAgICAgICBUaGlzIGNvbW1pdCBmaXhlcyBhbHNvIHZhcmlvdXMgcHJvYmxlbXMgd2hlbiBmb2N1
cyBpcyBjb250cm9sbGVkCisgICAgICAgIHRocm91Z2ggSlMuCisKKyAgICAgICAgUGF0Y2ggYnkg
S2ltbW8gS2lubnVuZW4gPGtpbW1vLnQua2lubnVuZW5Abm9raWEuY29tPiBvbiAyMDExLTA3LTI5
CisKKyAgICAgICAgUE1PIEJ1ZyAyNTE3NjYuCisKKyAgICAgICAgKiBBcGkvcXdlYnBhZ2UuY3Bw
OgorICAgICAgICAoUVdlYlBhZ2VQcml2YXRlOjptb3VzZVJlbGVhc2VFdmVudCk6CisgICAgICAg
IChRV2ViUGFnZVByaXZhdGU6OmZvY3VzSW5FdmVudCk6CisgICAgICAgICogQXBpL3F3ZWJwYWdl
X3AuaDoKKyAgICAgICAgKiBXZWJDb3JlU3VwcG9ydC9QYWdlQ2xpZW50UXQuY3BwOgorICAgICAg
ICAoV2ViQ29yZTo6UGFnZUNsaWVudFFXaWRnZXQ6OnVwZGF0ZVNvZnR3YXJlSW5wdXRQYW5lbCk6
CisgICAgICAgIChXZWJDb3JlOjpQYWdlQ2xpZW50UVdpZGdldDo6c2V0SW5wdXRNZXRob2RFbmFi
bGVkKToKKyAgICAgICAgKFdlYkNvcmU6OlBhZ2VDbGllbnRRR3JhcGhpY3NXaWRnZXQ6OnVwZGF0
ZVNvZnR3YXJlSW5wdXRQYW5lbCk6CisgICAgICAgIChXZWJDb3JlOjpQYWdlQ2xpZW50UUdyYXBo
aWNzV2lkZ2V0OjpzZXRJbnB1dE1ldGhvZEVuYWJsZWQpOgorICAgICAgICAqIFdlYkNvcmVTdXBw
b3J0L1BhZ2VDbGllbnRRdC5oOgorCiAyMDExLTA5LTA2ICBBZGVtYXIgZGUgU291emEgUmVpcyBK
ci4gIDxhZGVtYXIucmVpc0BvcGVuYm9zc2Eub3JnPgogCiAgICAgICAgIFtRdF1bU3ltYmlhbl0g
UkVHUkVTU0lPTls5NDEwNV0gRHVtcFJlbmRlclRyZWUuZXhlIGRvZXNuJ3QgYnVpbGQgb24gU3lt
YmlhbgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9QYWdlQ2xp
ZW50UXQuY3BwIGIvU291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9QYWdlQ2xpZW50UXQu
Y3BwCmluZGV4IGQ3OTI2NjYuLjMzNTQzMzIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvcXQv
V2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudFF0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L3F0L1dl
YkNvcmVTdXBwb3J0L1BhZ2VDbGllbnRRdC5jcHAKQEAgLTIzLDYgKzIzLDggQEAKICNpbmNsdWRl
ICJQYWdlQ2xpZW50UXQuaCIKICNpbmNsdWRlICJUZXh0dXJlTWFwcGVyUXQuaCIKICNpbmNsdWRl
ICJ0ZXhtYXAvVGV4dHVyZU1hcHBlclBsYXRmb3JtTGF5ZXIuaCIKKworI2luY2x1ZGUgPFFBcHBs
aWNhdGlvbj4KICNpbmNsdWRlIDxRR3JhcGhpY3NTY2VuZT4KICNpbmNsdWRlIDxRR3JhcGhpY3NW
aWV3PgogI2lmIGRlZmluZWQoUV9XU19YMTEpCkBAIC0xODQsOSArMTg2LDM3IEBAIHZvaWQgUGFn
ZUNsaWVudFFXaWRnZXQ6OnVwZGF0ZShjb25zdCBRUmVjdCAmIGRpcnR5UmVjdCkKICAgICB2aWV3
LT51cGRhdGUoZGlydHlSZWN0KTsKIH0KIAordm9pZCBQYWdlQ2xpZW50UVdpZGdldDo6dXBkYXRl
U29mdHdhcmVJbnB1dFBhbmVsKGJvb2wgZW5hYmxlKQoreworI2lmICFkZWZpbmVkKFFUX05PX0lN
KQorICAgIFFXaWRnZXQqIGZvY3VzZWRXaWRnZXQgPSBRQXBwbGljYXRpb246OmZvY3VzV2lkZ2V0
KCk7CisKKyAgICBpZiAoIWZvY3VzZWRXaWRnZXQpCisgICAgICAgIHJldHVybjsKKworICAgIGlm
ICghcUFwcC0+YXV0b1NpcEVuYWJsZWQoKSkKKyAgICAgICAgcmV0dXJuOworCisgICAgaWYgKGVu
YWJsZSkgeworICAgICAgICBRRXZlbnQgb3BlblNJUEV2ZW50KFFFdmVudDo6UmVxdWVzdFNvZnR3
YXJlSW5wdXRQYW5lbCk7CisgICAgICAgIFFBcHBsaWNhdGlvbjo6c2VuZEV2ZW50KGZvY3VzZWRX
aWRnZXQsICZvcGVuU0lQRXZlbnQpOworICAgIH0gZWxzZSBpZiAoZm9jdXNlZFdpZGdldC0+aW5w
dXRDb250ZXh0KCkpIHsKKyAgICAgICAgUUV2ZW50IGNsb3NlU0lQRXZlbnQoUUV2ZW50OjpDbG9z
ZVNvZnR3YXJlSW5wdXRQYW5lbCk7CisgICAgICAgIFFBcHBsaWNhdGlvbjo6c2VuZEV2ZW50KGZv
Y3VzZWRXaWRnZXQsICZjbG9zZVNJUEV2ZW50KTsKKyAgICB9CisjZW5kaWYKK30KKwogdm9pZCBQ
YWdlQ2xpZW50UVdpZGdldDo6c2V0SW5wdXRNZXRob2RFbmFibGVkKGJvb2wgZW5hYmxlKQogewot
ICAgIHZpZXctPnNldEF0dHJpYnV0ZShRdDo6V0FfSW5wdXRNZXRob2RFbmFibGVkLCBlbmFibGUp
OworICAgIGlmIChlbmFibGUpCisgICAgICAgIHZpZXctPnNldEF0dHJpYnV0ZShRdDo6V0FfSW5w
dXRNZXRob2RFbmFibGVkLCBlbmFibGUpOworCisgICAgdXBkYXRlU29mdHdhcmVJbnB1dFBhbmVs
KGVuYWJsZSk7CisKKyAgICBpZiAoIWVuYWJsZSkKKyAgICAgICAgdmlldy0+c2V0QXR0cmlidXRl
KFF0OjpXQV9JbnB1dE1ldGhvZEVuYWJsZWQsIGVuYWJsZSk7CisKIH0KIAogYm9vbCBQYWdlQ2xp
ZW50UVdpZGdldDo6aW5wdXRNZXRob2RFbmFibGVkKCkgY29uc3QKQEAgLTM3NCw5ICs0MDQsMzUg
QEAgdm9pZCBQYWdlQ2xpZW50UUdyYXBoaWNzV2lkZ2V0Ojp1cGRhdGVUaWxlZEJhY2tpbmdTdG9y
ZVNjYWxlKCkKIH0KICNlbmRpZgogCit2b2lkIFBhZ2VDbGllbnRRR3JhcGhpY3NXaWRnZXQ6OnVw
ZGF0ZVNvZnR3YXJlSW5wdXRQYW5lbChib29sIGVuYWJsZSkKK3sKKyNpZiAhZGVmaW5lZChRVF9O
T19JTSkKKyAgICBRR3JhcGhpY3NWaWV3KiBmb2N1c2VkR3JhcGhpY3NWaWV3ID0gcW9iamVjdF9j
YXN0PFFHcmFwaGljc1ZpZXcqPihRQXBwbGljYXRpb246OmZvY3VzV2lkZ2V0KCkpOworCisgICAg
aWYgKGZvY3VzZWRHcmFwaGljc1ZpZXcKKyAgICAgICAgJiYgdmlldy0+aGFzRm9jdXMoKQorICAg
ICAgICAmJiB2aWV3LT5zY2VuZSgpLT52aWV3cygpLmNvbnRhaW5zKGZvY3VzZWRHcmFwaGljc1Zp
ZXcpKSB7CisKKyAgICAgICAgaWYgKGVuYWJsZSkgeworICAgICAgICAgICAgUUV2ZW50IG9wZW5T
SVBFdmVudChRRXZlbnQ6OlJlcXVlc3RTb2Z0d2FyZUlucHV0UGFuZWwpOworICAgICAgICAgICAg
UUFwcGxpY2F0aW9uOjpzZW5kRXZlbnQoZm9jdXNlZEdyYXBoaWNzVmlldywgJm9wZW5TSVBFdmVu
dCk7CisgICAgICAgIH0gZWxzZSBpZiAoZm9jdXNlZEdyYXBoaWNzVmlldy0+aW5wdXRDb250ZXh0
KCkpIHsKKyAgICAgICAgICAgIFFFdmVudCBjbG9zZVNJUEV2ZW50KFFFdmVudDo6Q2xvc2VTb2Z0
d2FyZUlucHV0UGFuZWwpOworICAgICAgICAgICAgUUFwcGxpY2F0aW9uOjpzZW5kRXZlbnQoZm9j
dXNlZEdyYXBoaWNzVmlldywgJmNsb3NlU0lQRXZlbnQpOworICAgICAgICB9CisgICAgfQorI2Vu
ZGlmCit9CisKIHZvaWQgUGFnZUNsaWVudFFHcmFwaGljc1dpZGdldDo6c2V0SW5wdXRNZXRob2RF
bmFibGVkKGJvb2wgZW5hYmxlKQogewotICAgIHZpZXctPnNldEZsYWcoUUdyYXBoaWNzSXRlbTo6
SXRlbUFjY2VwdHNJbnB1dE1ldGhvZCwgZW5hYmxlKTsKKyAgICBpZiAoZW5hYmxlKQorICAgICAg
ICB2aWV3LT5zZXRGbGFnKFFHcmFwaGljc0l0ZW06Okl0ZW1BY2NlcHRzSW5wdXRNZXRob2QsIHRy
dWUpOworCisgICAgdXBkYXRlU29mdHdhcmVJbnB1dFBhbmVsKGVuYWJsZSk7CisKKyAgICBpZiAo
IWVuYWJsZSkKKyAgICAgICAgdmlldy0+c2V0RmxhZyhRR3JhcGhpY3NJdGVtOjpJdGVtQWNjZXB0
c0lucHV0TWV0aG9kLCBmYWxzZSk7CiB9CiAKIGJvb2wgUGFnZUNsaWVudFFHcmFwaGljc1dpZGdl
dDo6aW5wdXRNZXRob2RFbmFibGVkKCkgY29uc3QKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
cXQvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudFF0LmggYi9Tb3VyY2UvV2ViS2l0L3F0L1dlYkNv
cmVTdXBwb3J0L1BhZ2VDbGllbnRRdC5oCmluZGV4IDE2YmI1MGMuLjQxN2FiOGUgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJLaXQvcXQvV2ViQ29yZVN1cHBvcnQvUGFnZUNsaWVudFF0LmgKKysrIGIv
U291cmNlL1dlYktpdC9xdC9XZWJDb3JlU3VwcG9ydC9QYWdlQ2xpZW50UXQuaApAQCAtODcsNiAr
ODcsOCBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIFFSZWN0RiB3aW5kb3dSZWN0KCkgY29uc3Q7
CiAKKyAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlU29mdHdhcmVJbnB1dFBhbmVsKGJvb2wgZW5hYmxl
KTsKKwogICAgIFFXaWRnZXQqIHZpZXc7CiAgICAgUVdlYlBhZ2UqIHBhZ2U7CiAKQEAgLTIxMCw2
ICsyMTIsOCBAQCBwdWJsaWM6CiAKICAgICB2aXJ0dWFsIFFSZWN0RiB3aW5kb3dSZWN0KCkgY29u
c3Q7CiAKKyAgICB2aXJ0dWFsIHZvaWQgdXBkYXRlU29mdHdhcmVJbnB1dFBhbmVsKGJvb2wgZW5h
YmxlKTsKKwogICAgIFFHcmFwaGljc1dlYlZpZXcqIHZpZXc7CiAgICAgUVdlYlBhZ2UqIHBhZ2U7
CiAgICAgYm9vbCB2aWV3UmVzaXplc1RvQ29udGVudHM7Ci0tIAoxLjcuNS40Cgo=
</data>
<flag name="review"
          id="110806"
          type_id="1"
          status="-"
          setter="hausmann"
    />
    <flag name="commit-queue"
          id="110807"
          type_id="3"
          status="-"
          setter="hausmann"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>113501</attachid>
            <date>2011-11-03 08:55:46 -0700</date>
            <delta_ts>2011-11-03 09:04:36 -0700</delta_ts>
            <desc>&quot;Close SIP explicitly when IM is disabled&quot; patch.</desc>
            <filename>0001-Close-SIP-explicitly-when-IM-is-disabled.patch</filename>
            <type>text/plain</type>
            <size>4061</size>
            <attacher name="Bruno Abinader (history only)">bruno.abinader</attacher>
            
              <data encoding="base64">RnJvbSAyNTRjNzlkYjIxNzQzNmQxZWFmMTBhZTI3NWU2MDZkZDk5MzUwM2M1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBCcnVubyBkZSBPbGl2ZWlyYSBBYmluYWRlciA8YnJ1bm8uYWJp
bmFkZXJAYmFzeXNrb20uY29tPgpEYXRlOiBUaHUsIDMgTm92IDIwMTEgMTY6NDE6NDYgKzAxMDAK
U3ViamVjdDogW1BBVENIXSBDbG9zZSBTSVAgZXhwbGljaXRseSB3aGVuIElNIGlzIGRpc2FibGVk
CgpTZW5kIGFuIGV4cGxpY2l0IGV2ZW50IHRvIGNsb3NlIHNvZnR3YXJlIGlucHV0IHBhbmVsIHdo
ZW4gaW5wdXQKZWxlbWVudHMgYXJlIGZvY3VzZWQgYW5kIHVuZm9jdXNlZC4KClF0IHNvZnR3YXJl
IGlucHV0IGZyYW1ld29yayB3b3JrcyB0aHJvdWdoIFFXaWRnZXRzLiBJbiBjYXNlIG9mClFHcmFw
aGljc1dlYlZpZXcsIHRoZSBRR3JhcGhpY3NWaWV3IHRoYXQgY29udGFpbnMgUUdyYXBoaWNzV2Vi
VmlldwpzdGF5cyBmb2N1c2VkLCByZWdhcmRsZXNzIHdoZXRoZXIgdGhlIFFHcmFwaGljc0l0ZW1z
IGluIGl0IGhhcyBmb2N1cwpvciBub3QuICBUaGlzIG1lYW5zIHRoYXQgU0lQIGlzIG5ldmVyIGNs
b3NlZCwgZXZlbiB0aG91Z2ggdGhlClFHcmFwaGljc1dlYlZpZXcgbG9zZXMgZm9jdXMuCgpUaGUg
ZnJhbWV3b3JrIGV4cGVjdHMgdGhhdCBTSVAgc3RhdGUgaXMgY29udHJvbGxlZCBleHBsaWNpdGx5
LgoKUE1PIEJ1ZyAyNTE3NjYuCi0tLQogU291cmNlL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2UuY3Bw
IHwgICAyMiArKysrKysrKysrKysrKysrKysrLS0tCiBTb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxv
ZyAgICAgICAgfCAgIDIyICsrKysrKysrKysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwg
NDEgaW5zZXJ0aW9ucygrKSwgMyBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2Vi
S2l0L3F0L0FwaS9xd2VicGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5j
cHAKaW5kZXggYjNlZmUwZi4uNWY2OGE5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9B
cGkvcXdlYnBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcApA
QCAtMTI4LDYgKzEyOCw3IEBACiAjaW5jbHVkZSA8UURyb3BFdmVudD4KICNpbmNsdWRlIDxRRmls
ZURpYWxvZz4KICNpbmNsdWRlIDxRSHR0cFJlcXVlc3RIZWFkZXI+CisjaW5jbHVkZSA8UUlucHV0
Q29udGV4dD4KICNpbmNsdWRlIDxRSW5wdXREaWFsb2c+CiAjaW5jbHVkZSA8UU1lc3NhZ2VCb3g+
CiAjaW5jbHVkZSA8UU5ldHdvcmtQcm94eT4KQEAgLTgwMSwxMyArODAyLDI3IEBAIHZvaWQgUVdl
YlBhZ2VQcml2YXRlOjptb3VzZVJlbGVhc2VFdmVudChUICpldikKIAogdm9pZCBRV2ViUGFnZVBy
aXZhdGU6OmhhbmRsZVNvZnR3YXJlSW5wdXRQYW5lbChRdDo6TW91c2VCdXR0b24gYnV0dG9uLCBj
b25zdCBRUG9pbnQmIHBvcykKIHsKKyAgICBzdGF0aWMgYm9vbCBzaXBSZXF1ZXN0ZWQgPSBmYWxz
ZTsKKwogICAgIEZyYW1lKiBmcmFtZSA9IHBhZ2UtPmZvY3VzQ29udHJvbGxlcigpLT5mb2N1c2Vk
RnJhbWUoKTsKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoY2xp
ZW50ICYmIGNsaWVudC0+aW5wdXRNZXRob2RFbmFibGVkKCkKLSAgICAgICAgJiYgZnJhbWUtPmRv
Y3VtZW50KCktPmZvY3VzZWROb2RlKCkKLSAgICAgICAgJiYgYnV0dG9uID09IFF0OjpMZWZ0QnV0
dG9uICYmIHFBcHAtPmF1dG9TaXBFbmFibGVkKCkpIHsKKyAgICBpZiAoIWNsaWVudCkgeworICAg
ICAgICBjbGlja0NhdXNlZEZvY3VzID0gZmFsc2U7CisgICAgICAgIHJldHVybjsKKyAgICB9CisK
KyAgICBpZiAoIWNsaWVudC0+aW5wdXRNZXRob2RFbmFibGVkKCkpIHsKKyAgICAgICAgUUlucHV0
Q29udGV4dCAqaW5wdXRDb250ZXh0ID0gcUFwcC0+aW5wdXRDb250ZXh0KCk7CisgICAgICAgIGlm
IChpbnB1dENvbnRleHQpIHsKKyAgICAgICAgICAgIGlucHV0Q29udGV4dC0+cmVzZXQoKTsKKyAg
ICAgICAgICAgIGlucHV0Q29udGV4dC0+dXBkYXRlKCk7CisgICAgICAgICAgICAvL1FFdmVudCBj
bG9zZVNJUEV2ZW50KFFFdmVudDo6Q2xvc2VTb2Z0d2FyZUlucHV0UGFuZWwpOworICAgICAgICAg
ICAgLy9pbnB1dENvbnRleHQtPmZpbHRlckV2ZW50KCZjbG9zZVNJUEV2ZW50KTsKKyAgICAgICAg
fQorICAgIH0gZWxzZSBpZiAoZnJhbWUtPmRvY3VtZW50KCktPmZvY3VzZWROb2RlKCkKKyAgICAg
ICAgICAgICYmIGJ1dHRvbiA9PSBRdDo6TGVmdEJ1dHRvbiAmJiBxQXBwLT5hdXRvU2lwRW5hYmxl
ZCgpKSB7CiAgICAgICAgIFFTdHlsZTo6UmVxdWVzdFNvZnR3YXJlSW5wdXRQYW5lbCBiZWhhdmlv
ciA9IFFTdHlsZTo6UmVxdWVzdFNvZnR3YXJlSW5wdXRQYW5lbCgKICAgICAgICAgICAgIGNsaWVu
dC0+b3duZXJXaWRnZXQoKS0+c3R5bGUoKS0+c3R5bGVIaW50KFFTdHlsZTo6U0hfUmVxdWVzdFNv
ZnR3YXJlSW5wdXRQYW5lbCkpOwogICAgICAgICBpZiAoIWNsaWNrQ2F1c2VkRm9jdXMgfHwgYmVo
YXZpb3IgPT0gUVN0eWxlOjpSU0lQX09uTW91c2VDbGljaykgewpAQCAtODE1LDYgKzgzMCw3IEBA
IHZvaWQgUVdlYlBhZ2VQcml2YXRlOjpoYW5kbGVTb2Z0d2FyZUlucHV0UGFuZWwoUXQ6Ok1vdXNl
QnV0dG9uIGJ1dHRvbiwgY29uc3QgUVBvCiAgICAgICAgICAgICBpZiAocmVzdWx0LmlzQ29udGVu
dEVkaXRhYmxlKCkpIHsKICAgICAgICAgICAgICAgICBRRXZlbnQgZXZlbnQoUUV2ZW50OjpSZXF1
ZXN0U29mdHdhcmVJbnB1dFBhbmVsKTsKICAgICAgICAgICAgICAgICBRQXBwbGljYXRpb246OnNl
bmRFdmVudChjbGllbnQtPm93bmVyV2lkZ2V0KCksICZldmVudCk7CisgICAgICAgICAgICAgICAg
c2lwUmVxdWVzdGVkID0gdHJ1ZTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9xdC9D
aGFuZ2VMb2cKaW5kZXggMzI0MjhmMS4uNGQ2ZTE5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9xdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyNSBAQAorMjAxMS0xMS0wMyAgQnJ1bm8gZGUgT2xpdmVpcmEgQWJpbmFkZXIgIDxicnVuby5h
YmluYWRlckBiYXN5c2tvbS5jb20+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgQ2xvc2UgU0lQIGV4cGxpY2l0bHkgd2hlbiBJTSBpcyBkaXNhYmxlZAor
CisgICAgICAgIFNlbmQgYW4gZXhwbGljaXQgZXZlbnQgdG8gY2xvc2Ugc29mdHdhcmUgaW5wdXQg
cGFuZWwgd2hlbiBpbnB1dAorICAgICAgICBlbGVtZW50cyBhcmUgZm9jdXNlZCBhbmQgdW5mb2N1
c2VkLgorCisgICAgICAgIFF0IHNvZnR3YXJlIGlucHV0IGZyYW1ld29yayB3b3JrcyB0aHJvdWdo
IFFXaWRnZXRzLiBJbiBjYXNlIG9mCisgICAgICAgIFFHcmFwaGljc1dlYlZpZXcsIHRoZSBRR3Jh
cGhpY3NWaWV3IHRoYXQgY29udGFpbnMgUUdyYXBoaWNzV2ViVmlldworICAgICAgICBzdGF5cyBm
b2N1c2VkLCByZWdhcmRsZXNzIHdoZXRoZXIgdGhlIFFHcmFwaGljc0l0ZW1zIGluIGl0IGhhcyBm
b2N1cworICAgICAgICBvciBub3QuICBUaGlzIG1lYW5zIHRoYXQgU0lQIGlzIG5ldmVyIGNsb3Nl
ZCwgZXZlbiB0aG91Z2ggdGhlCisgICAgICAgIFFHcmFwaGljc1dlYlZpZXcgbG9zZXMgZm9jdXMu
CisKKyAgICAgICAgVGhlIGZyYW1ld29yayBleHBlY3RzIHRoYXQgU0lQIHN0YXRlIGlzIGNvbnRy
b2xsZWQgZXhwbGljaXRseS4KKworICAgICAgICBQTU8gQnVnIDI1MTc2Ni4KKworICAgICAgICAq
IEFwaS9xd2VicGFnZS5jcHA6CisgICAgICAgIChRV2ViUGFnZVByaXZhdGU6OmhhbmRsZVNvZnR3
YXJlSW5wdXRQYW5lbCk6CisKIDIwMTEtMDktMDYgIEFkZW1hciBkZSBTb3V6YSBSZWlzIEpyLiAg
PGFkZW1hci5yZWlzQG9wZW5ib3NzYS5vcmc+CiAKICAgICAgICAgW1F0XVtTeW1iaWFuXSBSRUdS
RVNTSU9OWzk0MTA1XSBEdW1wUmVuZGVyVHJlZS5leGUgZG9lc24ndCBidWlsZCBvbiBTeW1iaWFu
Ci0tIAoxLjcuMy40Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>113502</attachid>
            <date>2011-11-03 09:04:36 -0700</date>
            <delta_ts>2011-11-03 09:30:10 -0700</delta_ts>
            <desc>Updated &quot;Close SIP explicitly when IM is disabled&quot; patch.</desc>
            <filename>0001-Close-SIP-explicitly-when-IM-is-disabled.patch</filename>
            <type>text/plain</type>
            <size>3835</size>
            <attacher name="Bruno Abinader (history only)">bruno.abinader</attacher>
            
              <data encoding="base64">RnJvbSAxNzA3YmZkMjA3NWU4M2UxMDkxMzc3N2FiMDBkNTQ2MGUyOWYwM2NjIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBCcnVubyBkZSBPbGl2ZWlyYSBBYmluYWRlciA8YnJ1bm8uYWJp
bmFkZXJAYmFzeXNrb20uY29tPgpEYXRlOiBUaHUsIDMgTm92IDIwMTEgMTY6NDE6NDYgKzAxMDAK
U3ViamVjdDogW1BBVENIXSBDbG9zZSBTSVAgZXhwbGljaXRseSB3aGVuIElNIGlzIGRpc2FibGVk
CgpTZW5kIGFuIGV4cGxpY2l0IGV2ZW50IHRvIGNsb3NlIHNvZnR3YXJlIGlucHV0IHBhbmVsIHdo
ZW4gaW5wdXQKZWxlbWVudHMgYXJlIGZvY3VzZWQgYW5kIHVuZm9jdXNlZC4KClF0IHNvZnR3YXJl
IGlucHV0IGZyYW1ld29yayB3b3JrcyB0aHJvdWdoIFFXaWRnZXRzLiBJbiBjYXNlIG9mClFHcmFw
aGljc1dlYlZpZXcsIHRoZSBRR3JhcGhpY3NWaWV3IHRoYXQgY29udGFpbnMgUUdyYXBoaWNzV2Vi
VmlldwpzdGF5cyBmb2N1c2VkLCByZWdhcmRsZXNzIHdoZXRoZXIgdGhlIFFHcmFwaGljc0l0ZW1z
IGluIGl0IGhhcyBmb2N1cwpvciBub3QuICBUaGlzIG1lYW5zIHRoYXQgU0lQIGlzIG5ldmVyIGNs
b3NlZCwgZXZlbiB0aG91Z2ggdGhlClFHcmFwaGljc1dlYlZpZXcgbG9zZXMgZm9jdXMuCgpUaGUg
ZnJhbWV3b3JrIGV4cGVjdHMgdGhhdCBTSVAgc3RhdGUgaXMgY29udHJvbGxlZCBleHBsaWNpdGx5
LgoKUE1PIEJ1ZyAyNTE3NjYuCi0tLQogU291cmNlL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2UuY3Bw
IHwgICAxOCArKysrKysrKysrKysrKysrLS0KIFNvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nICAg
ICAgICB8ICAgMjIgKysrKysrKysrKysrKysrKysrKysrKwogMiBmaWxlcyBjaGFuZ2VkLCAzOCBp
bnNlcnRpb25zKCspLCAyIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQv
cXQvQXBpL3F3ZWJwYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcApp
bmRleCBiM2VmZTBmLi42MWMyMzkwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9x
d2VicGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdC9xdC9BcGkvcXdlYnBhZ2UuY3BwCkBAIC0x
MjgsNiArMTI4LDcgQEAKICNpbmNsdWRlIDxRRHJvcEV2ZW50PgogI2luY2x1ZGUgPFFGaWxlRGlh
bG9nPgogI2luY2x1ZGUgPFFIdHRwUmVxdWVzdEhlYWRlcj4KKyNpbmNsdWRlIDxRSW5wdXRDb250
ZXh0PgogI2luY2x1ZGUgPFFJbnB1dERpYWxvZz4KICNpbmNsdWRlIDxRTWVzc2FnZUJveD4KICNp
bmNsdWRlIDxRTmV0d29ya1Byb3h5PgpAQCAtODAxLDEyICs4MDIsMjQgQEAgdm9pZCBRV2ViUGFn
ZVByaXZhdGU6Om1vdXNlUmVsZWFzZUV2ZW50KFQgKmV2KQogCiB2b2lkIFFXZWJQYWdlUHJpdmF0
ZTo6aGFuZGxlU29mdHdhcmVJbnB1dFBhbmVsKFF0OjpNb3VzZUJ1dHRvbiBidXR0b24sIGNvbnN0
IFFQb2ludCYgcG9zKQogeworICAgIHN0YXRpYyBib29sIHNpcFJlcXVlc3RlZCA9IGZhbHNlOwor
CiAgICAgRnJhbWUqIGZyYW1lID0gcGFnZS0+Zm9jdXNDb250cm9sbGVyKCktPmZvY3VzZWRGcmFt
ZSgpOwogICAgIGlmICghZnJhbWUpCiAgICAgICAgIHJldHVybjsKIAotICAgIGlmIChjbGllbnQg
JiYgY2xpZW50LT5pbnB1dE1ldGhvZEVuYWJsZWQoKQotICAgICAgICAmJiBmcmFtZS0+ZG9jdW1l
bnQoKS0+Zm9jdXNlZE5vZGUoKQorICAgIGlmICghY2xpZW50KSB7CisgICAgICAgIGNsaWNrQ2F1
c2VkRm9jdXMgPSBmYWxzZTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIGlmICghY2xp
ZW50LT5pbnB1dE1ldGhvZEVuYWJsZWQoKSkgeworICAgICAgICBRSW5wdXRDb250ZXh0KiBpbnB1
dENvbnRleHQgPSBxQXBwLT5pbnB1dENvbnRleHQoKTsKKyAgICAgICAgaWYgKGlucHV0Q29udGV4
dCkgeworICAgICAgICAgICAgUUV2ZW50IGNsb3NlU0lQRXZlbnQoUUV2ZW50OjpDbG9zZVNvZnR3
YXJlSW5wdXRQYW5lbCk7CisgICAgICAgICAgICBpbnB1dENvbnRleHQtPmZpbHRlckV2ZW50KCZj
bG9zZVNJUEV2ZW50KTsKKyAgICAgICAgfQorICAgIH0gZWxzZSBpZiAoZnJhbWUtPmRvY3VtZW50
KCktPmZvY3VzZWROb2RlKCkKICAgICAgICAgJiYgYnV0dG9uID09IFF0OjpMZWZ0QnV0dG9uICYm
IHFBcHAtPmF1dG9TaXBFbmFibGVkKCkpIHsKICAgICAgICAgUVN0eWxlOjpSZXF1ZXN0U29mdHdh
cmVJbnB1dFBhbmVsIGJlaGF2aW9yID0gUVN0eWxlOjpSZXF1ZXN0U29mdHdhcmVJbnB1dFBhbmVs
KAogICAgICAgICAgICAgY2xpZW50LT5vd25lcldpZGdldCgpLT5zdHlsZSgpLT5zdHlsZUhpbnQo
UVN0eWxlOjpTSF9SZXF1ZXN0U29mdHdhcmVJbnB1dFBhbmVsKSk7CkBAIC04MTUsNiArODI4LDcg
QEAgdm9pZCBRV2ViUGFnZVByaXZhdGU6OmhhbmRsZVNvZnR3YXJlSW5wdXRQYW5lbChRdDo6TW91
c2VCdXR0b24gYnV0dG9uLCBjb25zdCBRUG8KICAgICAgICAgICAgIGlmIChyZXN1bHQuaXNDb250
ZW50RWRpdGFibGUoKSkgewogICAgICAgICAgICAgICAgIFFFdmVudCBldmVudChRRXZlbnQ6OlJl
cXVlc3RTb2Z0d2FyZUlucHV0UGFuZWwpOwogICAgICAgICAgICAgICAgIFFBcHBsaWNhdGlvbjo6
c2VuZEV2ZW50KGNsaWVudC0+b3duZXJXaWRnZXQoKSwgJmV2ZW50KTsKKyAgICAgICAgICAgICAg
ICBzaXBSZXF1ZXN0ZWQgPSB0cnVlOwogICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgfQpk
aWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0L3F0
L0NoYW5nZUxvZwppbmRleCAzMjQyOGYxLi40ZDZlMTkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0L3F0L0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDI1IEBACisyMDExLTExLTAzICBCcnVubyBkZSBPbGl2ZWlyYSBBYmluYWRlciAgPGJydW5v
LmFiaW5hZGVyQGJhc3lza29tLmNvbT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9P
UFMhKS4KKworICAgICAgICBDbG9zZSBTSVAgZXhwbGljaXRseSB3aGVuIElNIGlzIGRpc2FibGVk
CisKKyAgICAgICAgU2VuZCBhbiBleHBsaWNpdCBldmVudCB0byBjbG9zZSBzb2Z0d2FyZSBpbnB1
dCBwYW5lbCB3aGVuIGlucHV0CisgICAgICAgIGVsZW1lbnRzIGFyZSBmb2N1c2VkIGFuZCB1bmZv
Y3VzZWQuCisKKyAgICAgICAgUXQgc29mdHdhcmUgaW5wdXQgZnJhbWV3b3JrIHdvcmtzIHRocm91
Z2ggUVdpZGdldHMuIEluIGNhc2Ugb2YKKyAgICAgICAgUUdyYXBoaWNzV2ViVmlldywgdGhlIFFH
cmFwaGljc1ZpZXcgdGhhdCBjb250YWlucyBRR3JhcGhpY3NXZWJWaWV3CisgICAgICAgIHN0YXlz
IGZvY3VzZWQsIHJlZ2FyZGxlc3Mgd2hldGhlciB0aGUgUUdyYXBoaWNzSXRlbXMgaW4gaXQgaGFz
IGZvY3VzCisgICAgICAgIG9yIG5vdC4gIFRoaXMgbWVhbnMgdGhhdCBTSVAgaXMgbmV2ZXIgY2xv
c2VkLCBldmVuIHRob3VnaCB0aGUKKyAgICAgICAgUUdyYXBoaWNzV2ViVmlldyBsb3NlcyBmb2N1
cy4KKworICAgICAgICBUaGUgZnJhbWV3b3JrIGV4cGVjdHMgdGhhdCBTSVAgc3RhdGUgaXMgY29u
dHJvbGxlZCBleHBsaWNpdGx5LgorCisgICAgICAgIFBNTyBCdWcgMjUxNzY2LgorCisgICAgICAg
ICogQXBpL3F3ZWJwYWdlLmNwcDoKKyAgICAgICAgKFFXZWJQYWdlUHJpdmF0ZTo6aGFuZGxlU29m
dHdhcmVJbnB1dFBhbmVsKToKKwogMjAxMS0wOS0wNiAgQWRlbWFyIGRlIFNvdXphIFJlaXMgSnIu
ICA8YWRlbWFyLnJlaXNAb3BlbmJvc3NhLm9yZz4KIAogICAgICAgICBbUXRdW1N5bWJpYW5dIFJF
R1JFU1NJT05bOTQxMDVdIER1bXBSZW5kZXJUcmVlLmV4ZSBkb2Vzbid0IGJ1aWxkIG9uIFN5bWJp
YW4KLS0gCjEuNy4zLjQKCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>113505</attachid>
            <date>2011-11-03 09:30:10 -0700</date>
            <delta_ts>2011-11-03 09:56:16 -0700</delta_ts>
            <desc>ChangeLog-updated &quot;Close SIP explicitly when IM is disabled&quot; patch.</desc>
            <filename>0001-Qt-Close-SIP-explicitly-when-IM-is-disabled.patch</filename>
            <type>text/plain</type>
            <size>3981</size>
            <attacher name="Bruno Abinader (history only)">bruno.abinader</attacher>
            
              <data encoding="base64">RnJvbSBmOTEwZDg5OTY0MDFjZWI2YzM1MWQwN2U3MzI4N2M4MTFmOTEzNTg1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBCcnVubyBkZSBPbGl2ZWlyYSBBYmluYWRlciA8YnJ1bm8uYWJp
bmFkZXJAYmFzeXNrb20uY29tPgpEYXRlOiBUaHUsIDMgTm92IDIwMTEgMTY6NDE6NDYgKzAxMDAK
U3ViamVjdDogW1BBVENIXSBbUXRdIENsb3NlIFNJUCBleHBsaWNpdGx5IHdoZW4gSU0gaXMgZGlz
YWJsZWQKIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD02MDE2MQoKU2Vu
ZCBhbiBleHBsaWNpdCBldmVudCB0byBjbG9zZSBzb2Z0d2FyZSBpbnB1dCBwYW5lbCB3aGVuIGlu
cHV0CmVsZW1lbnRzIGFyZSBmb2N1c2VkIGFuZCB1bmZvY3VzZWQuCgpRdCBzb2Z0d2FyZSBpbnB1
dCBmcmFtZXdvcmsgd29ya3MgdGhyb3VnaCBRV2lkZ2V0cy4gSW4gY2FzZSBvZgpRR3JhcGhpY3NX
ZWJWaWV3LCB0aGUgUUdyYXBoaWNzVmlldyB0aGF0IGNvbnRhaW5zIFFHcmFwaGljc1dlYlZpZXcK
c3RheXMgZm9jdXNlZCwgcmVnYXJkbGVzcyB3aGV0aGVyIHRoZSBRR3JhcGhpY3NJdGVtcyBpbiBp
dCBoYXMgZm9jdXMKb3Igbm90LiAgVGhpcyBtZWFucyB0aGF0IFNJUCBpcyBuZXZlciBjbG9zZWQs
IGV2ZW4gdGhvdWdoIHRoZQpRR3JhcGhpY3NXZWJWaWV3IGxvc2VzIGZvY3VzLgoKVGhlIGZyYW1l
d29yayBleHBlY3RzIHRoYXQgU0lQIHN0YXRlIGlzIGNvbnRyb2xsZWQgZXhwbGljaXRseS4KClBN
TyBCdWcgMjUxNzY2LgotLS0KIFNvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcCB8ICAg
MTggKysrKysrKysrKysrKysrKy0tCiBTb3VyY2UvV2ViS2l0L3F0L0NoYW5nZUxvZyAgICAgICAg
fCAgIDI1ICsrKysrKysrKysrKysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgNDEgaW5z
ZXJ0aW9ucygrKSwgMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L3F0
L0FwaS9xd2VicGFnZS5jcHAgYi9Tb3VyY2UvV2ViS2l0L3F0L0FwaS9xd2VicGFnZS5jcHAKaW5k
ZXggN2U2OTZjNC4uYjIyZWM5ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9xdC9BcGkvcXdl
YnBhZ2UuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvcXQvQXBpL3F3ZWJwYWdlLmNwcApAQCAtMTMw
LDYgKzEzMCw3IEBACiAjaW5jbHVkZSA8UURyb3BFdmVudD4KICNpbmNsdWRlIDxRRmlsZURpYWxv
Zz4KICNpbmNsdWRlIDxRSHR0cFJlcXVlc3RIZWFkZXI+CisjaW5jbHVkZSA8UUlucHV0Q29udGV4
dD4KICNpbmNsdWRlIDxRSW5wdXREaWFsb2c+CiAjaW5jbHVkZSA8UU1lc3NhZ2VCb3g+CiAjaW5j
bHVkZSA8UU5ldHdvcmtQcm94eT4KQEAgLTc5NywxMiArNzk4LDI0IEBAIHZvaWQgUVdlYlBhZ2VQ
cml2YXRlOjptb3VzZVJlbGVhc2VFdmVudChUICpldikKIAogdm9pZCBRV2ViUGFnZVByaXZhdGU6
OmhhbmRsZVNvZnR3YXJlSW5wdXRQYW5lbChRdDo6TW91c2VCdXR0b24gYnV0dG9uLCBjb25zdCBR
UG9pbnQmIHBvcykKIHsKKyAgICBzdGF0aWMgYm9vbCBzaXBSZXF1ZXN0ZWQgPSBmYWxzZTsKKwog
ICAgIEZyYW1lKiBmcmFtZSA9IHBhZ2UtPmZvY3VzQ29udHJvbGxlcigpLT5mb2N1c2VkRnJhbWUo
KTsKICAgICBpZiAoIWZyYW1lKQogICAgICAgICByZXR1cm47CiAKLSAgICBpZiAoY2xpZW50ICYm
IGNsaWVudC0+aW5wdXRNZXRob2RFbmFibGVkKCkKLSAgICAgICAgJiYgZnJhbWUtPmRvY3VtZW50
KCktPmZvY3VzZWROb2RlKCkKKyAgICBpZiAoIWNsaWVudCkgeworICAgICAgICBjbGlja0NhdXNl
ZEZvY3VzID0gZmFsc2U7CisgICAgICAgIHJldHVybjsKKyAgICB9CisKKyAgICBpZiAoIWNsaWVu
dC0+aW5wdXRNZXRob2RFbmFibGVkKCkpIHsKKyAgICAgICAgUUlucHV0Q29udGV4dCogaW5wdXRD
b250ZXh0ID0gcUFwcC0+aW5wdXRDb250ZXh0KCk7CisgICAgICAgIGlmIChpbnB1dENvbnRleHQp
IHsKKyAgICAgICAgICAgIFFFdmVudCBjbG9zZVNJUEV2ZW50KFFFdmVudDo6Q2xvc2VTb2Z0d2Fy
ZUlucHV0UGFuZWwpOworICAgICAgICAgICAgaW5wdXRDb250ZXh0LT5maWx0ZXJFdmVudCgmY2xv
c2VTSVBFdmVudCk7CisgICAgICAgIH0KKyAgICB9IGVsc2UgaWYgKGZyYW1lLT5kb2N1bWVudCgp
LT5mb2N1c2VkTm9kZSgpCiAgICAgICAgICYmIGJ1dHRvbiA9PSBRdDo6TGVmdEJ1dHRvbiAmJiBx
QXBwLT5hdXRvU2lwRW5hYmxlZCgpKSB7CiAgICAgICAgIFFTdHlsZTo6UmVxdWVzdFNvZnR3YXJl
SW5wdXRQYW5lbCBiZWhhdmlvciA9IFFTdHlsZTo6UmVxdWVzdFNvZnR3YXJlSW5wdXRQYW5lbCgK
ICAgICAgICAgICAgIGNsaWVudC0+b3duZXJXaWRnZXQoKS0+c3R5bGUoKS0+c3R5bGVIaW50KFFT
dHlsZTo6U0hfUmVxdWVzdFNvZnR3YXJlSW5wdXRQYW5lbCkpOwpAQCAtODExLDYgKzgyNCw3IEBA
IHZvaWQgUVdlYlBhZ2VQcml2YXRlOjpoYW5kbGVTb2Z0d2FyZUlucHV0UGFuZWwoUXQ6Ok1vdXNl
QnV0dG9uIGJ1dHRvbiwgY29uc3QgUVBvCiAgICAgICAgICAgICBpZiAocmVzdWx0LmlzQ29udGVu
dEVkaXRhYmxlKCkpIHsKICAgICAgICAgICAgICAgICBRRXZlbnQgZXZlbnQoUUV2ZW50OjpSZXF1
ZXN0U29mdHdhcmVJbnB1dFBhbmVsKTsKICAgICAgICAgICAgICAgICBRQXBwbGljYXRpb246OnNl
bmRFdmVudChjbGllbnQtPm93bmVyV2lkZ2V0KCksICZldmVudCk7CisgICAgICAgICAgICAgICAg
c2lwUmVxdWVzdGVkID0gdHJ1ZTsKICAgICAgICAgICAgIH0KICAgICAgICAgfQogICAgIH0KZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvcXQvQ2hhbmdlTG9nIGIvU291cmNlL1dlYktpdC9xdC9D
aGFuZ2VMb2cKaW5kZXggODEzNTU4NC4uODM1MWExMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9xdC9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdC9xdC9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwyOCBAQAorMjAxMS0xMS0wMyAgQnJ1bm8gZGUgT2xpdmVpcmEgQWJpbmFkZXIgIDxicnVuby5h
YmluYWRlckBiYXN5c2tvbS5jb20+CisKKyAgICAgICAgW1F0XSBDbG9zZSBTSVAgZXhwbGljaXRs
eSB3aGVuIElNIGlzIGRpc2FibGVkCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD02MDE2MQorCisgICAgICAgIFNlbmQgYW4gZXhwbGljaXQgZXZlbnQgdG8g
Y2xvc2Ugc29mdHdhcmUgaW5wdXQgcGFuZWwgd2hlbiBpbnB1dAorICAgICAgICBlbGVtZW50cyBh
cmUgZm9jdXNlZCBhbmQgdW5mb2N1c2VkLgorCisgICAgICAgIFF0IHNvZnR3YXJlIGlucHV0IGZy
YW1ld29yayB3b3JrcyB0aHJvdWdoIFFXaWRnZXRzLiBJbiBjYXNlIG9mCisgICAgICAgIFFHcmFw
aGljc1dlYlZpZXcsIHRoZSBRR3JhcGhpY3NWaWV3IHRoYXQgY29udGFpbnMgUUdyYXBoaWNzV2Vi
VmlldworICAgICAgICBzdGF5cyBmb2N1c2VkLCByZWdhcmRsZXNzIHdoZXRoZXIgdGhlIFFHcmFw
aGljc0l0ZW1zIGluIGl0IGhhcyBmb2N1cworICAgICAgICBvciBub3QuICBUaGlzIG1lYW5zIHRo
YXQgU0lQIGlzIG5ldmVyIGNsb3NlZCwgZXZlbiB0aG91Z2ggdGhlCisgICAgICAgIFFHcmFwaGlj
c1dlYlZpZXcgbG9zZXMgZm9jdXMuCisKKyAgICAgICAgVGhlIGZyYW1ld29yayBleHBlY3RzIHRo
YXQgU0lQIHN0YXRlIGlzIGNvbnRyb2xsZWQgZXhwbGljaXRseS4KKworICAgICAgICBQTU8gQnVn
IDI1MTc2Ni4KKworICAgICAgICBOZWVkIGEgc2hvcnQgZGVzY3JpcHRpb24gYW5kIGJ1ZyBVUkwg
KE9PUFMhKQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAg
ICogQXBpL3F3ZWJwYWdlLmNwcDoKKyAgICAgICAgKFFXZWJQYWdlUHJpdmF0ZTo6aGFuZGxlU29m
dHdhcmVJbnB1dFBhbmVsKToKKwogMjAxMS0xMS0wMiAgSm9uIExlZSAgPGpvbmxlZUBhcHBsZS5j
b20+CiAKICAgICAgICAgRXhwYW5kIERyYWdDb250cm9sbGVyIHRvIHByb3ZpZGUgbW9yZSBpbmZv
cm1hdGlvbiBhYm91dCB0aGUgZHJhZ2dpbmcgc2Vzc2lvbgotLSAKMS43LjMuNAoK
</data>

          </attachment>
      

    </bug>

</bugzilla>