<?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>56466</bug_id>
          
          <creation_ts>2011-03-16 09:23:38 -0700</creation_ts>
          <short_desc>Popup menu can get stuck in closed state when GtkMenu can&apos;t grab mouse.</short_desc>
          <delta_ts>2011-12-01 09:39:50 -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>WebKitGTK</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Martin H.">textshell</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>andersca</cc>
    
    <cc>mdwajahatali.siddiqui</cc>
    
    <cc>mrobinson</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>368349</commentid>
    <comment_count>0</comment_count>
      <attachid>85934</attachid>
    <who name="Martin H.">textshell</who>
    <bug_when>2011-03-16 09:23:38 -0700</bug_when>
    <thetext>Created attachment 85934
patch to fix the bug

gtk_menu_popup show can silent fail to actually open a menu when it can&apos;t acquire a mouse pointer grab.
As WebCore and gtk track the opened/visible status separately this can lead to a situation where WebCore believes the menu is open and then tries to close it but gtk never signals back that it closed the menu (because it was not visible to start from gtk&apos;s point of view). This way the user can not open for example drop down menus on a website at all.

PopupMenuGtk needs to check if the gtk_menu_popup call actually succeeded and if it didn&apos;t call back to WebCore to signal that the menu is closed again.

I experienced this bug with a compositing manager, i didn&apos;t manage to reproduce it without, but the problem is likely also triggerable without anything special.


I&apos;ve make a patch to fix this by calling gtk_widget_get_visible and if it returns false call client()-&gt;popupDidHide();

The patch is against an older version but trunk seems to have exactly the same code.


--- webkit-1.2.5.orig/WebCore/platform/gtk/PopupMenuGtk.cpp     2011-03-15 14:54:30.807239931 +0100
+++ webkit-1.2.5/WebCore/platform/gtk/PopupMenuGtk.cpp  2011-03-15 14:54:39.415987337 +0100
@@ -108,6 +108,11 @@
 
     g_list_free(children);
     gtk_menu_popup(m_popup.get(), 0, 0, reinterpret_cast&lt;GtkMenuPositionFunc&gt;(menuPositionFunction), this, 0, gtk_get_current_event_time());
+    if (!gtk_widget_get_visible(GTK_WIDGET(m_popup.get()))) {
+        // gtk can refuse to actually open the menu when grabs fail. Make sure WebCore&apos;s state keeps in sync.
+        ASSERT(that-&gt;client());
+        client()-&gt;popupDidHide();
+    }
 }
 
 void PopupMenu::hide()</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>369872</commentid>
    <comment_count>1</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-03-18 14:15:48 -0700</bug_when>
    <thetext>Thanks for your contribution! Do you mind attaching a ChangeLog and making this patch against the version of WebKit in the repository? Please see here for more information: http://www.webkit.org/coding/contributing.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476010</commentid>
    <comment_count>2</comment_count>
      <attachid>109276</attachid>
    <who name="Wajahat Siddiqui">mdwajahatali.siddiqui</who>
    <bug_when>2011-09-30 03:28:45 -0700</bug_when>
    <thetext>Created attachment 109276
proposed patch to fix this issue in recent revision

I think this is a trivial issue, attaching patch with fix made in recent revision</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476060</commentid>
    <comment_count>3</comment_count>
      <attachid>109276</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-09-30 06:34:42 -0700</bug_when>
    <thetext>Comment on attachment 109276
proposed patch to fix this issue in recent revision

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

&gt; Source/WebCore/platform/gtk/PopupMenuGtk.cpp:95
&gt; +    // GTK can refuse to actually open the menu when mouse grabs fails.
&gt; +    // Ensure WebCore does not go into some pesky state.
&gt; +    if (!gtk_widget_get_visible(m_popup-&gt;platformMenu()))
&gt; +        client()-&gt;popupDidHide();

You shold also include this fix in Source/WebKit2/UIProcess/gtk/WebPopupMenuProxyGtk.cpp.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476061</commentid>
    <comment_count>4</comment_count>
      <attachid>109276</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-09-30 06:35:14 -0700</bug_when>
    <thetext>Comment on attachment 109276
proposed patch to fix this issue in recent revision

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

&gt; Source/WebCore/platform/gtk/PopupMenuGtk.cpp:9
&gt; + * Portions Copyright (c) 2010 Motorola Mobility, Inc.  All rights reserved.

Typically the barrier is ~10 lines of code for inserting your copyright line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476863</commentid>
    <comment_count>5</comment_count>
    <who name="Wajahat Siddiqui">mdwajahatali.siddiqui</who>
    <bug_when>2011-10-03 03:13:07 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; (From update of attachment 109276 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=109276&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/platform/gtk/PopupMenuGtk.cpp:95
&gt; &gt; +    // GTK can refuse to actually open the menu when mouse grabs fails.
&gt; &gt; +    // Ensure WebCore does not go into some pesky state.
&gt; &gt; +    if (!gtk_widget_get_visible(m_popup-&gt;platformMenu()))
&gt; &gt; +        client()-&gt;popupDidHide();
&gt; 
&gt; You shold also include this fix in Source/WebKit2/UIProcess/gtk/WebPopupMenuProxyGtk.cpp.

Thanks for your comments, 
I need to talk to webcore from UIProcess to do client()-&gt;popupDidHide(). 
I see WebProcess calls ShowPopupMenu() in WebPopupMenu::show() and there is no such  m_popupClient available with UIProcess 
to do above task. There could be few ways to do it if i am correct?

1) Send m_popupClient as an argument to ShowPopupMenu()
2) Implement IPC mechanism from WebPopupMenuProxyGtk that will inform webcore if popupmenu is displayed. 
3) Have PopupMenuGtk owned with WebPopupMenuProxyGtk class with this we can access PopupMenuClient

Let me know your suggestions before i start implementing!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>476998</commentid>
    <comment_count>6</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-03 08:49:17 -0700</bug_when>
    <thetext>(In reply to comment #5)

&gt; Thanks for your comments, 
&gt; I need to talk to webcore from UIProcess to do client()-&gt;popupDidHide(). 
&gt; I see WebProcess calls ShowPopupMenu() in WebPopupMenu::show() and there is no such  m_popupClient available with UIProcess 
&gt; to do above task. There could be few ways to do it if i am correct?
&gt; 
&gt; 1) Send m_popupClient as an argument to ShowPopupMenu()
&gt; 2) Implement IPC mechanism from WebPopupMenuProxyGtk that will inform webcore if popupmenu is displayed. 
&gt; 3) Have PopupMenuGtk owned with WebPopupMenuProxyGtk class with this we can access PopupMenuClient
&gt; 
&gt; Let me know your suggestions before i start implementing!

My preference is that you create a virtual method in WebPopupMenuProxy::Client called something like failedToShowPopupMenu and implement it in WebPageProxy like the other pop messages. From there you need to an IPC message to pipe it to the WebProcess.

I would double check with andersca or Sam about this approach though. I&apos;ll CC them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>478260</commentid>
    <comment_count>7</comment_count>
      <attachid>109769</attachid>
    <who name="Wajahat Siddiqui">mdwajahatali.siddiqui</who>
    <bug_when>2011-10-05 03:45:37 -0700</bug_when>
    <thetext>Created attachment 109769
reworked patch updated to work in webkit2 as well

Updated as per suggestions &amp; comments ! 
1) Including the fix in context of webkit2.
2) Removing copyright line.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>478359</commentid>
    <comment_count>8</comment_count>
      <attachid>109769</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-10-05 08:09:12 -0700</bug_when>
    <thetext>Comment on attachment 109769
reworked patch updated to work in webkit2 as well

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

&gt; Source/WebKit2/WebProcess/WebPage/WebPage.cpp:2054
&gt; +void WebPage::failedToShowPopupMenu()
&gt; +{
&gt; +    if (!m_activePopupMenu)
&gt; +        return;
&gt; +
&gt; +    m_activePopupMenu-&gt;client()-&gt;popupDidHide();
&gt; +}
&gt; +

You might want to guard this code with a GTK+ #ifdef. I&apos;m CCing some of the WebKit2 people.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>479799</commentid>
    <comment_count>9</comment_count>
    <who name="Wajahat Siddiqui">mdwajahatali.siddiqui</who>
    <bug_when>2011-10-06 22:40:22 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (From update of attachment 109769 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=109769&amp;action=review
&gt; 
&gt; &gt; Source/WebKit2/WebProcess/WebPage/WebPage.cpp:2054
&gt; &gt; +void WebPage::failedToShowPopupMenu()
&gt; &gt; +{
&gt; &gt; +    if (!m_activePopupMenu)
&gt; &gt; +        return;
&gt; &gt; +
&gt; &gt; +    m_activePopupMenu-&gt;client()-&gt;popupDidHide();
&gt; &gt; +}
&gt; &gt; +
&gt; 
&gt; You might want to guard this code with a GTK+ #ifdef. I&apos;m CCing some of the WebKit2 people.

You mean #if PLATFORM(GTK) ? Do I need to submit another patch?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508066</commentid>
    <comment_count>10</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-11-23 04:21:10 -0800</bug_when>
    <thetext>(In reply to comment #9)

&gt; You mean #if PLATFORM(GTK) ? Do I need to submit another patch?

Yes, I think it makes sense to change the WebKit2 code to be wrapped with #if PLATFORM(GTK).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>508660</commentid>
    <comment_count>11</comment_count>
      <attachid>116483</attachid>
    <who name="Wajahat Siddiqui">mdwajahatali.siddiqui</who>
    <bug_when>2011-11-24 00:40:02 -0800</bug_when>
    <thetext>Created attachment 116483
updated as per comments

updated as per comments, wrapping GTK specific code in #if PLATFORM(GTK) 
for WebKit2 where ever required.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>509678</commentid>
    <comment_count>12</comment_count>
      <attachid>116483</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-11-28 02:15:20 -0800</bug_when>
    <thetext>Comment on attachment 116483
updated as per comments

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

&gt; Source/WebKit2/UIProcess/gtk/WebPopupMenuProxyGtk.cpp:94
&gt; +    if (!gtk_widget_get_visible(m_popup-&gt;platformMenu()))
&gt; +       m_client-&gt;failedToShowPopupMenu();
&gt; +

Shouldn&apos;t you return early instead of going into a main loop here?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>510489</commentid>
    <comment_count>13</comment_count>
      <attachid>116895</attachid>
    <who name="Wajahat Siddiqui">mdwajahatali.siddiqui</who>
    <bug_when>2011-11-28 22:10:50 -0800</bug_when>
    <thetext>Created attachment 116895
updated patch rev 2

Right thanks for pointing it out, Also I see m_client check need to be present before calling popUp</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>510606</commentid>
    <comment_count>14</comment_count>
      <attachid>116895</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-11-29 01:47:07 -0800</bug_when>
    <thetext>Comment on attachment 116895
updated patch rev 2

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

&gt; Source/WebKit2/UIProcess/gtk/WebPopupMenuProxyGtk.cpp:90
&gt; +    if (!m_client)
&gt; +        return;

In what cases can the m_client by null before running the event loop?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>510624</commentid>
    <comment_count>15</comment_count>
      <attachid>116895</attachid>
    <who name="Wajahat Siddiqui">mdwajahatali.siddiqui</who>
    <bug_when>2011-11-29 02:07:20 -0800</bug_when>
    <thetext>Comment on attachment 116895
updated patch rev 2

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

&gt;&gt; Source/WebKit2/UIProcess/gtk/WebPopupMenuProxyGtk.cpp:90
&gt;&gt; +        return;
&gt; 
&gt; In what cases can the m_client by null before running the event loop?

I felt this check was made after event loop should be present before since m_client is being used in 
m_popup-&gt;popUp(rect.size(), menuPosition, size, selectedIndex, m_client-&gt;currentlyProcessedMouseDownEvent() ? m_client-&gt;currentlyProcessedMouseDownEvent()-&gt;nativeEvent() : 0); ???</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512027</commentid>
    <comment_count>16</comment_count>
      <attachid>116895</attachid>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2011-11-30 12:44:14 -0800</bug_when>
    <thetext>Comment on attachment 116895
updated patch rev 2

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

&gt; Source/WebKit2/UIProcess/gtk/WebPopupMenuProxyGtk.cpp:114
&gt;  
&gt;      g_signal_handler_disconnect(m_popup-&gt;platformMenu(), unmapHandler);
&gt;  
&gt; -    if (!m_client)
&gt; -        return;
&gt; -
&gt;      m_client-&gt;valueChangedForPopupMenu(this, m_activeItem);

This worries me. What if the client existed before you ran the main loop, but not after. If the client can be null before and after the main loop run you need to check in both places. I&apos;m not convinced that it can be null before though...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512466</commentid>
    <comment_count>17</comment_count>
      <attachid>117337</attachid>
    <who name="Wajahat Siddiqui">mdwajahatali.siddiqui</who>
    <bug_when>2011-11-30 22:08:48 -0800</bug_when>
    <thetext>Created attachment 117337
updated patch rev 3

reverting m_client check in previous patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512849</commentid>
    <comment_count>18</comment_count>
      <attachid>117337</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-01 09:39:45 -0800</bug_when>
    <thetext>Comment on attachment 117337
updated patch rev 3

Clearing flags on attachment: 117337

Committed r101678: &lt;http://trac.webkit.org/changeset/101678&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>512850</commentid>
    <comment_count>19</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-12-01 09:39:50 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>85934</attachid>
            <date>2011-03-16 09:23:38 -0700</date>
            <delta_ts>2011-03-16 09:23:38 -0700</delta_ts>
            <desc>patch to fix the bug</desc>
            <filename>fix-popup-menu.patch</filename>
            <type>text/plain</type>
            <size>784</size>
            <attacher name="Martin H.">textshell</attacher>
            
              <data encoding="base64">SW5kZXg6IHdlYmtpdC0xLjIuNS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIHdlYmtpdC0xLjIuNS5vcmlnL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL1Bv
cHVwTWVudUd0ay5jcHAJMjAxMS0wMy0xNSAxNDo1NDozMC44MDcyMzk5MzEgKzAxMDAKKysrIHdl
YmtpdC0xLjIuNS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3BwCTIwMTEtMDMt
MTUgMTQ6NTQ6MzkuNDE1OTg3MzM3ICswMTAwCkBAIC0xMDgsNiArMTA4LDExIEBACiAKICAgICBn
X2xpc3RfZnJlZShjaGlsZHJlbik7CiAgICAgZ3RrX21lbnVfcG9wdXAobV9wb3B1cC5nZXQoKSwg
MCwgMCwgcmVpbnRlcnByZXRfY2FzdDxHdGtNZW51UG9zaXRpb25GdW5jPihtZW51UG9zaXRpb25G
dW5jdGlvbiksIHRoaXMsIDAsIGd0a19nZXRfY3VycmVudF9ldmVudF90aW1lKCkpOworICAgIGlm
ICghZ3RrX3dpZGdldF9nZXRfdmlzaWJsZShHVEtfV0lER0VUKG1fcG9wdXAuZ2V0KCkpKSkgewor
ICAgICAgICAvLyBndGsgY2FuIHJlZnVzZSB0byBhY3R1YWxseSBvcGVuIHRoZSBtZW51IHdoZW4g
Z3JhYnMgZmFpbC4gTWFrZSBzdXJlIFdlYkNvcmUncyBzdGF0ZSBrZWVwcyBpbiBzeW5jLgorICAg
ICAgICBBU1NFUlQodGhhdC0+Y2xpZW50KCkpOworICAgICAgICBjbGllbnQoKS0+cG9wdXBEaWRI
aWRlKCk7CisgICAgfQogfQogCiB2b2lkIFBvcHVwTWVudTo6aGlkZSgpCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109276</attachid>
            <date>2011-09-30 03:28:45 -0700</date>
            <delta_ts>2011-10-05 03:45:37 -0700</delta_ts>
            <desc>proposed patch to fix this issue in recent revision</desc>
            <filename>proposed_updated.patch</filename>
            <type>text/plain</type>
            <size>1830</size>
            <attacher name="Wajahat Siddiqui">mdwajahatali.siddiqui</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk2Mzk3KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMDktMzAgIFdhamFoYXQg
U2lkZGlxdWkgIDxtZHdhamFoYXRhbGkuc2lkZGlxdWlAbW90b3JvbGEuY29tPgorCisgICAgICAg
IFBvcHVwIG1lbnUgY2FuIGdldCBzdHVjayBpbiBjbG9zZWQgc3RhdGUgd2hlbiBHdGtNZW51IGNh
bid0IGdyYWIgbW91c2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD01NjQ2NgorCisgICAgICAgIEFkZCBhIGNoZWNrIGlmIHBvcHVwIG1lbnUgaXMgbm90
IHZpc2libGUgZHVlIHRvIG5vIG1vdXNlIGdyYWIsIAorICAgICAgICBFbnN1cmUgV2ViQ29yZSBk
b2VzIG5vdCBjbG9zZSBwb3B1cCBhbmQgaGVuY2UgZ28gaW50byBzb21lIGludmFsaWQgc3RhdGUu
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0
Zm9ybS9ndGsvUG9wdXBNZW51R3RrLmNwcDogCisgICAgICAgIChXZWJDb3JlOjpQb3B1cE1lbnVH
dGs6OnNob3cpOgorCiAyMDExLTA5LTI5ICBBbnR0aSBLb2l2aXN0byAgPGFudHRpQGFwcGxlLmNv
bT4KIAogICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9Njkx
MDYKSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3BwCj09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3Bw
CShyZXZpc2lvbiA5NjM5MCkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Qb3B1cE1l
bnVHdGsuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC02LDYgKzYsNyBAQAogICogQ29weXJpZ2h0IChD
KSAyMDA4IENvbGxhYm9yYSBMdGQuCiAgKiBDb3B5cmlnaHQgKEMpIDIwMTAgTm9raWEgQ29ycG9y
YXRpb24gYW5kL29yIGl0cyBzdWJzaWRpYXJ5KC1pZXMpLgogICogQ29weXJpZ2h0IChDKSAyMDEw
IElnYWxpYSBTLkwuCisgKiBQb3J0aW9ucyBDb3B5cmlnaHQgKGMpIDIwMTAgTW90b3JvbGEgTW9i
aWxpdHksIEluYy4gIEFsbCByaWdodHMgcmVzZXJ2ZWQuCiAgKgogICogVGhpcyBsaWJyYXJ5IGlz
IGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vcgogICogbW9kaWZ5
IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExpYnJhcnkgR2VuZXJhbCBQdWJsaWMKQEAg
LTg3LDYgKzg4LDExIEBACiAgICAgbWVudVBvc2l0aW9uLm1vdmUoMCwgcmVjdC5oZWlnaHQoKSk7
CiAKICAgICBtX3BvcHVwLT5wb3BVcChyZWN0LnNpemUoKSwgbWVudVBvc2l0aW9uLCBzaXplLCBp
bmRleCwgZ3RrX2dldF9jdXJyZW50X2V2ZW50KCkpOworCisgICAgLy8gR1RLIGNhbiByZWZ1c2Ug
dG8gYWN0dWFsbHkgb3BlbiB0aGUgbWVudSB3aGVuIG1vdXNlIGdyYWJzIGZhaWxzLgorICAgIC8v
IEVuc3VyZSBXZWJDb3JlIGRvZXMgbm90IGdvIGludG8gc29tZSBwZXNreSBzdGF0ZS4KKyAgICBp
ZiAoIWd0a193aWRnZXRfZ2V0X3Zpc2libGUobV9wb3B1cC0+cGxhdGZvcm1NZW51KCkpKQorICAg
ICAgICBjbGllbnQoKS0+cG9wdXBEaWRIaWRlKCk7CiB9CiAKIHZvaWQgUG9wdXBNZW51R3RrOjpo
aWRlKCkK
</data>
<flag name="review"
          id="106485"
          type_id="1"
          status="-"
          setter="mrobinson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>109769</attachid>
            <date>2011-10-05 03:45:37 -0700</date>
            <delta_ts>2011-11-24 00:40:02 -0800</delta_ts>
            <desc>reworked patch updated to work in webkit2 as well</desc>
            <filename>proposed_popupmenu_fix_updated.patch</filename>
            <type>text/plain</type>
            <size>8215</size>
            <attacher name="Wajahat Siddiqui">mdwajahatali.siddiqui</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDk2Njg5KQorKysgU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTYgQEAKKzIwMTEtMTAtMDUgIFdhamFoYXQg
U2lkZGlxdWkgIDxtZHdhamFoYXRhbGkuc2lkZGlxdWlAbW90b3JvbGEuY29tPgorCisgICAgICAg
IFBvcHVwIG1lbnUgY2FuIGdldCBzdHVjayBpbiBjbG9zZWQgc3RhdGUgd2hlbiBHdGtNZW51IGNh
bid0IGdyYWIgbW91c2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVn
LmNnaT9pZD01NjQ2NgorCisgICAgICAgIEFkZCBhIGNoZWNrIGlmIHBvcHVwIG1lbnUgaXMgbm90
IHZpc2libGUgZHVlIHRvIG5vIG1vdXNlIGdyYWIsCisgICAgICAgIEVuc3VyZSBXZWJDb3JlIGlz
IGluIHN5bmMgd2l0aCBwcm9wZXIgc3RhdGUuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ndGsvUG9wdXBNZW51R3RrLmNwcDoKKyAg
ICAgICAgKFdlYkNvcmU6OlBvcHVwTWVudUd0azo6c2hvdyk6CisKIDIwMTEtMTAtMDUgIFBhdmVs
IEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIEluc3BlY3Rv
cjogYWRkIENTUyBtb2RlbCBjbGFzc2VzIHRvIHRoZSBjb21waWxhdGlvbi4KSW5kZXg6IFNvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3BwCShyZXZpc2lvbiA5NjY3
OSkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3BwCSh3b3Jr
aW5nIGNvcHkpCkBAIC04Nyw2ICs4NywxMSBAQAogICAgIG1lbnVQb3NpdGlvbi5tb3ZlKDAsIHJl
Y3QuaGVpZ2h0KCkpOwogCiAgICAgbV9wb3B1cC0+cG9wVXAocmVjdC5zaXplKCksIG1lbnVQb3Np
dGlvbiwgc2l6ZSwgaW5kZXgsIGd0a19nZXRfY3VycmVudF9ldmVudCgpKTsKKworICAgIC8vIEdU
SyBjYW4gcmVmdXNlIHRvIGFjdHVhbGx5IG9wZW4gdGhlIG1lbnUgd2hlbiBtb3VzZSBncmFicyBm
YWlscy4KKyAgICAvLyBFbnN1cmUgV2ViQ29yZSBkb2VzIG5vdCBnbyBpbnRvIHNvbWUgcGVza3kg
c3RhdGUuCisgICAgaWYgKCFndGtfd2lkZ2V0X2dldF92aXNpYmxlKG1fcG9wdXAtPnBsYXRmb3Jt
TWVudSgpKSkKKyAgICAgICAgY2xpZW50KCktPnBvcHVwRGlkSGlkZSgpOwogfQogCiB2b2lkIFBv
cHVwTWVudUd0azo6aGlkZSgpCkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlBvcHVwTWVudS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1dl
YlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUG9wdXBNZW51LmgJKHJldmlzaW9uIDk2Njc5KQor
KysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQb3B1cE1lbnUu
aAkod29ya2luZyBjb3B5KQpAQCAtNDgsNiArNDgsNyBAQAogICAgIHZvaWQgZGlzY29ubmVjdEZy
b21QYWdlKCkgeyBtX3BhZ2UgPSAwOyB9CiAgICAgdm9pZCBkaWRDaGFuZ2VTZWxlY3RlZEluZGV4
KGludCBuZXdJbmRleCk7CiAgICAgdm9pZCBzZXRUZXh0Rm9ySW5kZXgoaW50IG5ld0luZGV4KTsK
KyAgICBXZWJDb3JlOjpQb3B1cE1lbnVDbGllbnQqIGNsaWVudCgpIGNvbnN0IHsgcmV0dXJuIG1f
cG9wdXBDbGllbnQ7IH0KIAogICAgIHZpcnR1YWwgdm9pZCBzaG93KGNvbnN0IFdlYkNvcmU6Oklu
dFJlY3QmLCBXZWJDb3JlOjpGcmFtZVZpZXcqLCBpbnQgaW5kZXgpIE9WRVJSSURFOwogICAgIHZp
cnR1YWwgdm9pZCBoaWRlKCkgT1ZFUlJJREU7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgkocmV2aXNpb24gOTY2
NzkpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdl
cy5pbgkod29ya2luZyBjb3B5KQpAQCAtMTM5LDYgKzEzOSw3IEBACiAgICAgIyBQb3B1cCBtZW51
LgogICAgIERpZENoYW5nZVNlbGVjdGVkSW5kZXhGb3JBY3RpdmVQb3B1cE1lbnUoaW50MzJfdCBu
ZXdJbmRleCk7CiAgICAgU2V0VGV4dEZvckFjdGl2ZVBvcHVwTWVudShpbnQzMl90IGluZGV4KTsK
KyAgICBGYWlsZWRUb1Nob3dQb3B1cE1lbnUoKTsKICAgICAKICAgICAjIENvbnRleHQgbWVudS4K
ICAgICBEaWRTZWxlY3RJdGVtRnJvbUFjdGl2ZUNvbnRleHRNZW51KFdlYktpdDo6V2ViQ29udGV4
dE1lbnVJdGVtRGF0YSBtZW51SXRlbSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNz
L1dlYlBhZ2UvV2ViUGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCShyZXZpc2lvbiA5NjY3OSkKKysrIFNvdXJjZS9XZWJL
aXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjA0
NCw2ICsyMDQ0LDE0IEBACiAgICAgbV9hY3RpdmVQb3B1cE1lbnUtPnNldFRleHRGb3JJbmRleChp
bmRleCk7CiB9CiAKK3ZvaWQgV2ViUGFnZTo6ZmFpbGVkVG9TaG93UG9wdXBNZW51KCkKK3sKKyAg
ICBpZiAoIW1fYWN0aXZlUG9wdXBNZW51KQorICAgICAgICByZXR1cm47CisKKyAgICBtX2FjdGl2
ZVBvcHVwTWVudS0+Y2xpZW50KCktPnBvcHVwRGlkSGlkZSgpOworfQorCiB2b2lkIFdlYlBhZ2U6
OmRpZFNlbGVjdEl0ZW1Gcm9tQWN0aXZlQ29udGV4dE1lbnUoY29uc3QgV2ViQ29udGV4dE1lbnVJ
dGVtRGF0YSYgaXRlbSkKIHsKICAgICBBU1NFUlQobV9jb250ZXh0TWVudSk7CkluZGV4OiBTb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmgJKHJldmlzaW9uIDk2Njc5
KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaAkod29ya2lu
ZyBjb3B5KQpAQCAtNTU0LDYgKzU1NCw3IEBACiAKICAgICB2b2lkIGRpZENoYW5nZVNlbGVjdGVk
SW5kZXhGb3JBY3RpdmVQb3B1cE1lbnUoaW50MzJfdCBuZXdJbmRleCk7CiAgICAgdm9pZCBzZXRU
ZXh0Rm9yQWN0aXZlUG9wdXBNZW51KGludDMyX3QgaW5kZXgpOworICAgIHZvaWQgZmFpbGVkVG9T
aG93UG9wdXBNZW51KCk7CiAKICAgICB2b2lkIGRpZENob29zZUZpbGVzRm9yT3BlblBhbmVsKGNv
bnN0IFZlY3RvcjxTdHJpbmc+Jik7CiAgICAgdm9pZCBkaWRDYW5jZWxGb3JPcGVuUGFuZWwoKTsK
SW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9ndGsvV2ViUG9wdXBNZW51UHJveHlHdGsu
Y3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9ndGsvV2ViUG9wdXBN
ZW51UHJveHlHdGsuY3BwCShyZXZpc2lvbiA5NjY3OSkKKysrIFNvdXJjZS9XZWJLaXQyL1VJUHJv
Y2Vzcy9ndGsvV2ViUG9wdXBNZW51UHJveHlHdGsuY3BwCSh3b3JraW5nIGNvcHkpCkBAIC04Nyw2
ICs4NywxMSBAQAogICAgIGd1bG9uZyB1bm1hcEhhbmRsZXIgPSBnX3NpZ25hbF9jb25uZWN0KG1f
cG9wdXAtPnBsYXRmb3JtTWVudSgpLCAidW5tYXAiLCBHX0NBTExCQUNLKG1lbnVVbm1hcHBlZCks
IHRoaXMpOwogICAgIG1fcG9wdXAtPnBvcFVwKHJlY3Quc2l6ZSgpLCBtZW51UG9zaXRpb24sIHNp
emUsIHNlbGVjdGVkSW5kZXgsIG1fY2xpZW50LT5jdXJyZW50bHlQcm9jZXNzZWRNb3VzZURvd25F
dmVudCgpID8gbV9jbGllbnQtPmN1cnJlbnRseVByb2Nlc3NlZE1vdXNlRG93bkV2ZW50KCktPm5h
dGl2ZUV2ZW50KCkgOiAwKTsKIAorICAgIC8vIFBvcHVwTWVudSBjYW4gZmFpbCB0byBvcGVuIHdo
ZW4gdGhlcmUgaXMgbm8gbW91c2UgZ3JhYi4KKyAgICAvLyBFbnN1cmUgV2ViQ29yZSBkb2VzIG5v
dCBnbyBpbnRvIHNvbWUgcGVza3kgc3RhdGUuCisgICAgaWYgKCFndGtfd2lkZ2V0X2dldF92aXNp
YmxlKG1fcG9wdXAtPnBsYXRmb3JtTWVudSgpKSkKKyAgICAgICBtX2NsaWVudC0+ZmFpbGVkVG9T
aG93UG9wdXBNZW51KCk7CisKICAgICAvLyBXZWJQYWdlUHJveHkgZXhwZWN0cyB0aGUgbWVudSB0
byBydW4gaW4gYSBuZXN0ZWQgcnVuIGxvb3AsIHNpbmNlIGl0IGludmFsaWRhdGVzIHRoZQogICAg
IC8vIG1lbnUgcmlnaHQgYWZ0ZXIgY2FsbGluZyBXZWJQb3B1cE1lbnVQcm94eTo6c2hvd1BvcHVw
TWVudSgpLgogICAgIG1fcnVuTG9vcCA9IGdfbWFpbl9sb29wX25ldygwLCBGQUxTRSk7CkluZGV4
OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAo9PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0t
LSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAkocmV2aXNpb24gOTY2
NzkpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAkod29ya2lu
ZyBjb3B5KQpAQCAtMjMzMyw2ICsyMzMzLDExIEBACiAgICAgcmV0dXJuIG1fY3VycmVudGx5UHJv
Y2Vzc2VkTW91c2VEb3duRXZlbnQuZ2V0KCk7CiB9CiAKK3ZvaWQgV2ViUGFnZVByb3h5OjpmYWls
ZWRUb1Nob3dQb3B1cE1lbnUoKQoreworICAgIHByb2Nlc3MoKS0+c2VuZChNZXNzYWdlczo6V2Vi
UGFnZTo6RmFpbGVkVG9TaG93UG9wdXBNZW51KCksIG1fcGFnZUlEKTsKK30KKwogdm9pZCBXZWJQ
YWdlUHJveHk6OnNob3dQb3B1cE1lbnUoY29uc3QgSW50UmVjdCYgcmVjdCwgdWludDY0X3QgdGV4
dERpcmVjdGlvbiwgY29uc3QgVmVjdG9yPFdlYlBvcHVwSXRlbT4mIGl0ZW1zLCBpbnQzMl90IHNl
bGVjdGVkSW5kZXgsIGNvbnN0IFBsYXRmb3JtUG9wdXBNZW51RGF0YSYgZGF0YSkKIHsKICAgICBp
ZiAobV9hY3RpdmVQb3B1cE1lbnUpIHsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9X
ZWJQb3B1cE1lbnVQcm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9XZWJQb3B1cE1lbnVQcm94eS5oCShyZXZpc2lvbiA5NjY3OSkKKysrIFNvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9XZWJQb3B1cE1lbnVQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC01Myw2ICs1
Myw3IEBACiAgICAgICAgIHZpcnR1YWwgdm9pZCB2YWx1ZUNoYW5nZWRGb3JQb3B1cE1lbnUoV2Vi
UG9wdXBNZW51UHJveHkqLCBpbnQzMl90IG5ld1NlbGVjdGVkSW5kZXgpID0gMDsKICAgICAgICAg
dmlydHVhbCB2b2lkIHNldFRleHRGcm9tSXRlbUZvclBvcHVwTWVudShXZWJQb3B1cE1lbnVQcm94
eSosIGludDMyX3QgaW5kZXgpID0gMDsKICAgICAgICAgdmlydHVhbCBOYXRpdmVXZWJNb3VzZUV2
ZW50KiBjdXJyZW50bHlQcm9jZXNzZWRNb3VzZURvd25FdmVudCgpID0gMDsKKyAgICAgICAgdmly
dHVhbCB2b2lkIGZhaWxlZFRvU2hvd1BvcHVwTWVudSgpID0gMDsKICAgICB9OwogCiAgICAgdmly
dHVhbCB+V2ViUG9wdXBNZW51UHJveHkoKQpJbmRleDogU291cmNlL1dlYktpdDIvVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkuaAkocmV2aXNpb24gOTY2NzkpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nl
c3MvV2ViUGFnZVByb3h5LmgJKHdvcmtpbmcgY29weSkKQEAgLTU3NCw2ICs1NzQsNyBAQAogICAg
IHZpcnR1YWwgdm9pZCB2YWx1ZUNoYW5nZWRGb3JQb3B1cE1lbnUoV2ViUG9wdXBNZW51UHJveHkq
LCBpbnQzMl90IG5ld1NlbGVjdGVkSW5kZXgpOwogICAgIHZpcnR1YWwgdm9pZCBzZXRUZXh0RnJv
bUl0ZW1Gb3JQb3B1cE1lbnUoV2ViUG9wdXBNZW51UHJveHkqLCBpbnQzMl90IGluZGV4KTsKICAg
ICB2aXJ0dWFsIE5hdGl2ZVdlYk1vdXNlRXZlbnQqIGN1cnJlbnRseVByb2Nlc3NlZE1vdXNlRG93
bkV2ZW50KCk7CisgICAgdmlydHVhbCB2b2lkIGZhaWxlZFRvU2hvd1BvcHVwTWVudSgpOwogCiAg
ICAgLy8gSW1wbGVtZW50ZWQgaW4gZ2VuZXJhdGVkIFdlYlBhZ2VQcm94eU1lc3NhZ2VSZWNlaXZl
ci5jcHAKICAgICB2b2lkIGRpZFJlY2VpdmVXZWJQYWdlUHJveHlNZXNzYWdlKENvcmVJUEM6OkNv
bm5lY3Rpb24qLCBDb3JlSVBDOjpNZXNzYWdlSUQsIENvcmVJUEM6OkFyZ3VtZW50RGVjb2Rlciop
OwpJbmRleDogU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQyL0NoYW5nZUxvZwkocmV2aXNpb24gOTY2ODkpCisrKyBTb3VyY2UvV2ViS2l0Mi9DaGFu
Z2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwyOCBAQAorMjAxMS0xMC0wNSAgV2FqYWhh
dCBTaWRkaXF1aSAgPG1kd2FqYWhhdGFsaS5zaWRkaXF1aUBtb3Rvcm9sYS5jb20+CisKKyAgICAg
ICAgUG9wdXAgbWVudSBjYW4gZ2V0IHN0dWNrIGluIGNsb3NlZCBzdGF0ZSB3aGVuIEd0a01lbnUg
Y2FuJ3QgZ3JhYiBtb3VzZS4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTU2NDY2CisKKyAgICAgICAgQWRkIGEgY2hlY2sgaWYgcG9wdXAgbWVudSBpcyBu
b3QgdmlzaWJsZSBkdWUgdG8gbm8gbW91c2UgZ3JhYiwKKyAgICAgICAgRW5zdXJlIFdlYkNvcmUg
aXMgaW4gc3luYyB3aXRoIHByb3BlciBzdGF0ZS4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQYWdlUHJveHk6OmZhaWxlZFRvU2hvd1BvcHVwTWVudSk6IEFkZGVk
IE1ldGhvZCB0byBzZW5kIG1lc3NhZ2UKKyAgICAgICAgdG8gV2ViUHJvY2Vzcy4KKyAgICAgICAg
KiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBvcHVw
TWVudVByb3h5Lmg6CisgICAgICAgICogVUlQcm9jZXNzL2d0ay9XZWJQb3B1cE1lbnVQcm94eUd0
ay5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBvcHVwTWVudVByb3h5R3RrOjpzaG93UG9wdXBN
ZW51KToKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBvcHVwTWVudS5o
OiAKKyAgICAgICAgKFdlYktpdDo6V2ViUG9wdXBNZW51OjpjbGllbnQpOiBBZGRlZCBNZXRob2Qg
dG8gZ2V0IFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudAorICAgICAgICAqIFdlYlByb2Nlc3MvV2Vi
UGFnZS9XZWJQYWdlLmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZTo6ZmFpbGVkVG9TaG93
UG9wdXBNZW51KTogCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbjogQWRkZWQgTWVz
c2FnZSB0byBpbmZvcm0gV2ViUHJvY2VzcyAKKyAgICAgICAgU2hvd1BvcHVwTWVudSBmYWlsZWQu
CisKIDIwMTEtMTAtMDUgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgogCiAgICAgICAgIFtHVEtdIFVzZSBXS1JldGFpblB0ciBmb3IgV0sgdHlwZXMgaW4gV2ViS2l0
MiBHVEsrCg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>116483</attachid>
            <date>2011-11-24 00:40:02 -0800</date>
            <delta_ts>2011-11-28 22:10:50 -0800</delta_ts>
            <desc>updated as per comments</desc>
            <filename>proposed_popupmenu_fix_updated_rev2.patch</filename>
            <type>text/plain</type>
            <size>8542</size>
            <attacher name="Wajahat Siddiqui">mdwajahatali.siddiqui</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwMTEyNikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDExLTExLTI0ICBXYWphaGF0
IFNpZGRpcXVpICA8bWR3YWphaGF0YWxpLnNpZGRpcXVpQG1vdG9yb2xhLmNvbT4KKworICAgICAg
ICBQb3B1cCBtZW51IGNhbiBnZXQgc3R1Y2sgaW4gY2xvc2VkIHN0YXRlIHdoZW4gR3RrTWVudSBj
YW4ndCBncmFiIG1vdXNlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTY0NjYKKworICAgICAgICBBZGQgYSBjaGVjayBpZiBwb3B1cCBtZW51IGlzIG5v
dCB2aXNpYmxlIGR1ZSB0byBubyBtb3VzZSBncmFiLAorICAgICAgICBFbnN1cmUgV2ViQ29yZSBp
cyBpbiBzeW5jIHdpdGggcHJvcGVyIHN0YXRlLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vZ3RrL1BvcHVwTWVudUd0ay5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpQb3B1cE1lbnVHdGs6OnNob3cpOgorCiAyMDExLTExLTIzICBQYXZl
bCBGZWxkbWFuICA8cGZlbGRtYW5AZ29vZ2xlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9y
OiBnZXQgcmlkIG9mIHRoZSBXZWJJbnNwZWN0b3IubWFpblJlc291cmNlLCB1c2UgV2ViSW5zcGVj
dG9yLmluc3BlY3RlZFBhZ2VVUkwgaW5zdGVhZC4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3BwCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvUG9wdXBNZW51R3RrLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
ODgsNiArODgsMTEgQEAKICAgICBtZW51UG9zaXRpb24ubW92ZSgwLCByZWN0LmhlaWdodCgpKTsK
IAogICAgIG1fcG9wdXAtPnBvcFVwKHJlY3Quc2l6ZSgpLCBtZW51UG9zaXRpb24sIHNpemUsIGlu
ZGV4LCBndGtfZ2V0X2N1cnJlbnRfZXZlbnQoKSk7CisKKyAgICAvLyBHVEsgY2FuIHJlZnVzZSB0
byBhY3R1YWxseSBvcGVuIHRoZSBtZW51IHdoZW4gbW91c2UgZ3JhYnMgZmFpbHMuCisgICAgLy8g
RW5zdXJlIFdlYkNvcmUgZG9lcyBub3QgZ28gaW50byBzb21lIHBlc2t5IHN0YXRlLgorICAgIGlm
ICghZ3RrX3dpZGdldF9nZXRfdmlzaWJsZShtX3BvcHVwLT5wbGF0Zm9ybU1lbnUoKSkpCisgICAg
ICAgIGNsaWVudCgpLT5wb3B1cERpZEhpZGUoKTsKIH0KIAogdm9pZCBQb3B1cE1lbnVHdGs6Omhp
ZGUoKQpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQ
b3B1cE1lbnUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlBvcHVwTWVudS5oCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBvcHVwTWVudS5oCSh3b3JraW5nIGNv
cHkpCkBAIC00OCw2ICs0OCw5IEBACiAgICAgdm9pZCBkaXNjb25uZWN0RnJvbVBhZ2UoKSB7IG1f
cGFnZSA9IDA7IH0KICAgICB2b2lkIGRpZENoYW5nZVNlbGVjdGVkSW5kZXgoaW50IG5ld0luZGV4
KTsKICAgICB2b2lkIHNldFRleHRGb3JJbmRleChpbnQgbmV3SW5kZXgpOworI2lmIFBMQVRGT1JN
KEdUSykgICAgCisgICAgV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KiBjbGllbnQoKSBjb25zdCB7
IHJldHVybiBtX3BvcHVwQ2xpZW50OyB9CisjZW5kaWYKIAogICAgIHZpcnR1YWwgdm9pZCBzaG93
KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmLCBXZWJDb3JlOjpGcmFtZVZpZXcqLCBpbnQgaW5kZXgp
IE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBoaWRlKCkgT1ZFUlJJREU7CkluZGV4OiBTb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdl
cy5pbgkocmV2aXNpb24gMTAxMTI2KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTE0NCw2ICsxNDQsOSBA
QAogICAgICMgUG9wdXAgbWVudS4KICAgICBEaWRDaGFuZ2VTZWxlY3RlZEluZGV4Rm9yQWN0aXZl
UG9wdXBNZW51KGludDMyX3QgbmV3SW5kZXgpOwogICAgIFNldFRleHRGb3JBY3RpdmVQb3B1cE1l
bnUoaW50MzJfdCBpbmRleCk7CisjaWYgUExBVEZPUk0oR1RLKSAgICAKKyAgICBGYWlsZWRUb1No
b3dQb3B1cE1lbnUoKTsKKyNlbmRpZiAgICAKICAgICAKICAgICAjIENvbnRleHQgbWVudS4KICAg
ICBEaWRTZWxlY3RJdGVtRnJvbUFjdGl2ZUNvbnRleHRNZW51KFdlYktpdDo6V2ViQ29udGV4dE1l
bnVJdGVtRGF0YSBtZW51SXRlbSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxMzks
NiArMjEzOSwxNiBAQAogICAgIG1fYWN0aXZlUG9wdXBNZW51LT5zZXRUZXh0Rm9ySW5kZXgoaW5k
ZXgpOwogfQogCisjaWYgUExBVEZPUk0oR1RLKQordm9pZCBXZWJQYWdlOjpmYWlsZWRUb1Nob3dQ
b3B1cE1lbnUoKQoreworICAgIGlmICghbV9hY3RpdmVQb3B1cE1lbnUpCisgICAgICAgIHJldHVy
bjsKKworICAgIG1fYWN0aXZlUG9wdXBNZW51LT5jbGllbnQoKS0+cG9wdXBEaWRIaWRlKCk7Cit9
CisjZW5kaWYKKwogdm9pZCBXZWJQYWdlOjpkaWRTZWxlY3RJdGVtRnJvbUFjdGl2ZUNvbnRleHRN
ZW51KGNvbnN0IFdlYkNvbnRleHRNZW51SXRlbURhdGEmIGl0ZW0pCiB7CiAgICAgaWYgKCFtX2Nv
bnRleHRNZW51KQpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5oCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01NzQsNiArNTc0LDEwIEBACiAgICAg
dm9pZCBkaWRDaGFuZ2VTZWxlY3RlZEluZGV4Rm9yQWN0aXZlUG9wdXBNZW51KGludDMyX3QgbmV3
SW5kZXgpOwogICAgIHZvaWQgc2V0VGV4dEZvckFjdGl2ZVBvcHVwTWVudShpbnQzMl90IGluZGV4
KTsKIAorI2lmIFBMQVRGT1JNKEdUSykgICAgCisgICAgdm9pZCBmYWlsZWRUb1Nob3dQb3B1cE1l
bnUoKTsKKyNlbmRpZiAgICAKKwogICAgIHZvaWQgZGlkQ2hvb3NlRmlsZXNGb3JPcGVuUGFuZWwo
Y29uc3QgVmVjdG9yPFN0cmluZz4mKTsKICAgICB2b2lkIGRpZENhbmNlbEZvck9wZW5QYW5lbCgp
OwogI2lmIEVOQUJMRShXRUJfUFJPQ0VTU19TQU5EQk9YKQpJbmRleDogU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaAkocmV2aXNpb24gMTAxMTI2KQorKysgU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC01OTMsNiArNTkz
LDkgQEAKICAgICB2aXJ0dWFsIHZvaWQgdmFsdWVDaGFuZ2VkRm9yUG9wdXBNZW51KFdlYlBvcHVw
TWVudVByb3h5KiwgaW50MzJfdCBuZXdTZWxlY3RlZEluZGV4KTsKICAgICB2aXJ0dWFsIHZvaWQg
c2V0VGV4dEZyb21JdGVtRm9yUG9wdXBNZW51KFdlYlBvcHVwTWVudVByb3h5KiwgaW50MzJfdCBp
bmRleCk7CiAgICAgdmlydHVhbCBOYXRpdmVXZWJNb3VzZUV2ZW50KiBjdXJyZW50bHlQcm9jZXNz
ZWRNb3VzZURvd25FdmVudCgpOworI2lmIFBMQVRGT1JNKEdUSykKKyAgICB2aXJ0dWFsIHZvaWQg
ZmFpbGVkVG9TaG93UG9wdXBNZW51KCk7CisjZW5kaWYgICAgCiAKICAgICAvLyBJbXBsZW1lbnRl
ZCBpbiBnZW5lcmF0ZWQgV2ViUGFnZVByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcAogICAgIHZvaWQg
ZGlkUmVjZWl2ZVdlYlBhZ2VQcm94eU1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJ
UEM6Ok1lc3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyKik7CkluZGV4OiBTb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL1dlYlBvcHVwTWVudVByb3h5R3RrLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL1dlYlBvcHVwTWVudVByb3h5R3RrLmNw
cAkocmV2aXNpb24gMTAxMTI2KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2d0ay9XZWJQ
b3B1cE1lbnVQcm94eUd0ay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTg3LDYgKzg3LDExIEBACiAg
ICAgZ3Vsb25nIHVubWFwSGFuZGxlciA9IGdfc2lnbmFsX2Nvbm5lY3QobV9wb3B1cC0+cGxhdGZv
cm1NZW51KCksICJ1bm1hcCIsIEdfQ0FMTEJBQ0sobWVudVVubWFwcGVkKSwgdGhpcyk7CiAgICAg
bV9wb3B1cC0+cG9wVXAocmVjdC5zaXplKCksIG1lbnVQb3NpdGlvbiwgc2l6ZSwgc2VsZWN0ZWRJ
bmRleCwgbV9jbGllbnQtPmN1cnJlbnRseVByb2Nlc3NlZE1vdXNlRG93bkV2ZW50KCkgPyBtX2Ns
aWVudC0+Y3VycmVudGx5UHJvY2Vzc2VkTW91c2VEb3duRXZlbnQoKS0+bmF0aXZlRXZlbnQoKSA6
IDApOwogCisgICAgLy8gUG9wdXBNZW51IGNhbiBmYWlsIHRvIG9wZW4gd2hlbiB0aGVyZSBpcyBu
byBtb3VzZSBncmFiLgorICAgIC8vIEVuc3VyZSBXZWJDb3JlIGRvZXMgbm90IGdvIGludG8gc29t
ZSBwZXNreSBzdGF0ZS4KKyAgICBpZiAoIWd0a193aWRnZXRfZ2V0X3Zpc2libGUobV9wb3B1cC0+
cGxhdGZvcm1NZW51KCkpKQorICAgICAgIG1fY2xpZW50LT5mYWlsZWRUb1Nob3dQb3B1cE1lbnUo
KTsKKwogICAgIC8vIFdlYlBhZ2VQcm94eSBleHBlY3RzIHRoZSBtZW51IHRvIHJ1biBpbiBhIG5l
c3RlZCBydW4gbG9vcCwgc2luY2UgaXQgaW52YWxpZGF0ZXMgdGhlCiAgICAgLy8gbWVudSByaWdo
dCBhZnRlciBjYWxsaW5nIFdlYlBvcHVwTWVudVByb3h5OjpzaG93UG9wdXBNZW51KCkuCiAgICAg
bV9ydW5Mb29wID0gZ19tYWluX2xvb3BfbmV3KDAsIEZBTFNFKTsKSW5kZXg6IFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3BwCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3Vy
Y2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MjQ2Myw2ICsyNDYzLDEzIEBACiAgICAgcmV0dXJuIG1fY3VycmVudGx5UHJvY2Vzc2VkTW91c2VE
b3duRXZlbnQuZ2V0KCk7CiB9CiAKKyNpZiBQTEFURk9STShHVEspCit2b2lkIFdlYlBhZ2VQcm94
eTo6ZmFpbGVkVG9TaG93UG9wdXBNZW51KCkKK3sKKyAgICBwcm9jZXNzKCktPnNlbmQoTWVzc2Fn
ZXM6OldlYlBhZ2U6OkZhaWxlZFRvU2hvd1BvcHVwTWVudSgpLCBtX3BhZ2VJRCk7Cit9CisjZW5k
aWYKKwogdm9pZCBXZWJQYWdlUHJveHk6OnNob3dQb3B1cE1lbnUoY29uc3QgSW50UmVjdCYgcmVj
dCwgdWludDY0X3QgdGV4dERpcmVjdGlvbiwgY29uc3QgVmVjdG9yPFdlYlBvcHVwSXRlbT4mIGl0
ZW1zLCBpbnQzMl90IHNlbGVjdGVkSW5kZXgsIGNvbnN0IFBsYXRmb3JtUG9wdXBNZW51RGF0YSYg
ZGF0YSkKIHsKICAgICBpZiAobV9hY3RpdmVQb3B1cE1lbnUpIHsKSW5kZXg6IFNvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9XZWJQb3B1cE1lbnVQcm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9XZWJQb3B1cE1lbnVQcm94eS5oCShyZXZpc2lvbiAxMDExMjYpCisr
KyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUG9wdXBNZW51UHJveHkuaAkod29ya2luZyBj
b3B5KQpAQCAtNTMsNiArNTMsOSBAQAogICAgICAgICB2aXJ0dWFsIHZvaWQgdmFsdWVDaGFuZ2Vk
Rm9yUG9wdXBNZW51KFdlYlBvcHVwTWVudVByb3h5KiwgaW50MzJfdCBuZXdTZWxlY3RlZEluZGV4
KSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBzZXRUZXh0RnJvbUl0ZW1Gb3JQb3B1cE1lbnUo
V2ViUG9wdXBNZW51UHJveHkqLCBpbnQzMl90IGluZGV4KSA9IDA7CiAgICAgICAgIHZpcnR1YWwg
TmF0aXZlV2ViTW91c2VFdmVudCogY3VycmVudGx5UHJvY2Vzc2VkTW91c2VEb3duRXZlbnQoKSA9
IDA7CisjaWYgUExBVEZPUk0oR1RLKQorICAgICAgICB2aXJ0dWFsIHZvaWQgZmFpbGVkVG9TaG93
UG9wdXBNZW51KCkgPSAwOworI2VuZGlmICAgICAgICAKICAgICB9OwogCiAgICAgdmlydHVhbCB+
V2ViUG9wdXBNZW51UHJveHkoKQpJbmRleDogU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkocmV2aXNpb24gMTAxMTI2KQorKysg
U291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjcgQEAK
KzIwMTEtMTEtMjQgIFdhamFoYXQgU2lkZGlxdWkgIDxtZHdhamFoYXRhbGkuc2lkZGlxdWlAbW90
b3JvbGEuY29tPgorCisgICAgICAgIFBvcHVwIG1lbnUgY2FuIGdldCBzdHVjayBpbiBjbG9zZWQg
c3RhdGUgd2hlbiBHdGtNZW51IGNhbid0IGdyYWIgbW91c2UuCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01NjQ2NgorCisgICAgICAgIEFkZCBhIGNoZWNr
IGlmIHBvcHVwIG1lbnUgaXMgbm90IHZpc2libGUgZHVlIHRvIG5vIG1vdXNlIGdyYWIsCisgICAg
ICAgIEVuc3VyZSBXZWJDb3JlIGlzIGluIHN5bmMgd2l0aCBwcm9wZXIgc3RhdGUuCisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2Vi
UGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktpdDo6V2ViUGFnZVByb3h5OjpmYWlsZWRUb1No
b3dQb3B1cE1lbnUpOiBBZGRlZCBNZXRob2QgdG8gc2VuZCBtZXNzYWdlCisgICAgICAgIHRvIFdl
YlByb2Nlc3MuCisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAq
IFVJUHJvY2Vzcy9XZWJQb3B1cE1lbnVQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9ndGsv
V2ViUG9wdXBNZW51UHJveHlHdGsuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQb3B1cE1lbnVQ
cm94eUd0azo6c2hvd1BvcHVwTWVudSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3Vw
cG9ydC9XZWJQb3B1cE1lbnUuaDoKKyAgICAgICAgKFdlYktpdDo6V2ViUG9wdXBNZW51OjpjbGll
bnQpOiBBZGRlZCBNZXRob2QgdG8gZ2V0IFdlYkNvcmU6OlBvcHVwTWVudUNsaWVudC4KKyAgICAg
ICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6Oldl
YlBhZ2U6OmZhaWxlZFRvU2hvd1BvcHVwTWVudSk6CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNz
YWdlcy5pbjogQWRkZWQgTWVzc2FnZSB0byBpbmZvcm0gV2ViUHJvY2VzcyBTaG93UG9wdXBNZW51
IGZhaWxlZC4KKwogMjAxMS0xMS0yMSAgSmVzdXMgU2FuY2hlei1QYWxlbmNpYSAgPGplc3VzLnBh
bGVuY2lhQG9wZW5ib3NzYS5vcmc+CiAKICAgICAgICAgW1F0XVtXSzJdIE1vdmUgUVF1aWNrV2Vi
Vmlldzo6ZG93bmxvYWRSZXF1ZXN0ZWQgc2lnbmFsIGludG8gZXhwZXJpbWVudGFsCg==
</data>
<flag name="review"
          id="115655"
          type_id="1"
          status="-"
          setter="mrobinson"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>116895</attachid>
            <date>2011-11-28 22:10:50 -0800</date>
            <delta_ts>2011-11-30 22:08:48 -0800</delta_ts>
            <desc>updated patch rev 2</desc>
            <filename>updated_rev_2.patch</filename>
            <type>text/plain</type>
            <size>8854</size>
            <attacher name="Wajahat Siddiqui">mdwajahatali.siddiqui</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwMTEyNikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDExLTExLTI5ICBXYWphaGF0
IFNpZGRpcXVpICA8bWR3YWphaGF0YWxpLnNpZGRpcXVpQG1vdG9yb2xhLmNvbT4KKworICAgICAg
ICBQb3B1cCBtZW51IGNhbiBnZXQgc3R1Y2sgaW4gY2xvc2VkIHN0YXRlIHdoZW4gR3RrTWVudSBj
YW4ndCBncmFiIG1vdXNlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTY0NjYKKworICAgICAgICBBZGQgYSBjaGVjayBpZiBwb3B1cCBtZW51IGlzIG5v
dCB2aXNpYmxlIGR1ZSB0byBubyBtb3VzZSBncmFiLAorICAgICAgICBFbnN1cmUgV2ViQ29yZSBp
cyBpbiBzeW5jIHdpdGggcHJvcGVyIHN0YXRlLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vZ3RrL1BvcHVwTWVudUd0ay5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpQb3B1cE1lbnVHdGs6OnNob3cpOgorCiAyMDExLTExLTIzICBQYXZl
bCBGZWxkbWFuICA8cGZlbGRtYW5AZ29vZ2xlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9y
OiBnZXQgcmlkIG9mIHRoZSBXZWJJbnNwZWN0b3IubWFpblJlc291cmNlLCB1c2UgV2ViSW5zcGVj
dG9yLmluc3BlY3RlZFBhZ2VVUkwgaW5zdGVhZC4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3BwCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvUG9wdXBNZW51R3RrLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
ODgsNiArODgsMTEgQEAKICAgICBtZW51UG9zaXRpb24ubW92ZSgwLCByZWN0LmhlaWdodCgpKTsK
IAogICAgIG1fcG9wdXAtPnBvcFVwKHJlY3Quc2l6ZSgpLCBtZW51UG9zaXRpb24sIHNpemUsIGlu
ZGV4LCBndGtfZ2V0X2N1cnJlbnRfZXZlbnQoKSk7CisKKyAgICAvLyBHVEsgY2FuIHJlZnVzZSB0
byBhY3R1YWxseSBvcGVuIHRoZSBtZW51IHdoZW4gbW91c2UgZ3JhYnMgZmFpbHMuCisgICAgLy8g
RW5zdXJlIFdlYkNvcmUgZG9lcyBub3QgZ28gaW50byBzb21lIHBlc2t5IHN0YXRlLgorICAgIGlm
ICghZ3RrX3dpZGdldF9nZXRfdmlzaWJsZShtX3BvcHVwLT5wbGF0Zm9ybU1lbnUoKSkpCisgICAg
ICAgIGNsaWVudCgpLT5wb3B1cERpZEhpZGUoKTsKIH0KIAogdm9pZCBQb3B1cE1lbnVHdGs6Omhp
ZGUoKQpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQ
b3B1cE1lbnUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlBvcHVwTWVudS5oCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBvcHVwTWVudS5oCSh3b3JraW5nIGNv
cHkpCkBAIC00OCw2ICs0OCw5IEBACiAgICAgdm9pZCBkaXNjb25uZWN0RnJvbVBhZ2UoKSB7IG1f
cGFnZSA9IDA7IH0KICAgICB2b2lkIGRpZENoYW5nZVNlbGVjdGVkSW5kZXgoaW50IG5ld0luZGV4
KTsKICAgICB2b2lkIHNldFRleHRGb3JJbmRleChpbnQgbmV3SW5kZXgpOworI2lmIFBMQVRGT1JN
KEdUSykgICAgCisgICAgV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KiBjbGllbnQoKSBjb25zdCB7
IHJldHVybiBtX3BvcHVwQ2xpZW50OyB9CisjZW5kaWYKIAogICAgIHZpcnR1YWwgdm9pZCBzaG93
KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmLCBXZWJDb3JlOjpGcmFtZVZpZXcqLCBpbnQgaW5kZXgp
IE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBoaWRlKCkgT1ZFUlJJREU7CkluZGV4OiBTb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdl
cy5pbgkocmV2aXNpb24gMTAxMTI2KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTE0NCw2ICsxNDQsOSBA
QAogICAgICMgUG9wdXAgbWVudS4KICAgICBEaWRDaGFuZ2VTZWxlY3RlZEluZGV4Rm9yQWN0aXZl
UG9wdXBNZW51KGludDMyX3QgbmV3SW5kZXgpOwogICAgIFNldFRleHRGb3JBY3RpdmVQb3B1cE1l
bnUoaW50MzJfdCBpbmRleCk7CisjaWYgUExBVEZPUk0oR1RLKSAgICAKKyAgICBGYWlsZWRUb1No
b3dQb3B1cE1lbnUoKTsKKyNlbmRpZiAgICAKICAgICAKICAgICAjIENvbnRleHQgbWVudS4KICAg
ICBEaWRTZWxlY3RJdGVtRnJvbUFjdGl2ZUNvbnRleHRNZW51KFdlYktpdDo6V2ViQ29udGV4dE1l
bnVJdGVtRGF0YSBtZW51SXRlbSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxMzks
NiArMjEzOSwxNiBAQAogICAgIG1fYWN0aXZlUG9wdXBNZW51LT5zZXRUZXh0Rm9ySW5kZXgoaW5k
ZXgpOwogfQogCisjaWYgUExBVEZPUk0oR1RLKQordm9pZCBXZWJQYWdlOjpmYWlsZWRUb1Nob3dQ
b3B1cE1lbnUoKQoreworICAgIGlmICghbV9hY3RpdmVQb3B1cE1lbnUpCisgICAgICAgIHJldHVy
bjsKKworICAgIG1fYWN0aXZlUG9wdXBNZW51LT5jbGllbnQoKS0+cG9wdXBEaWRIaWRlKCk7Cit9
CisjZW5kaWYKKwogdm9pZCBXZWJQYWdlOjpkaWRTZWxlY3RJdGVtRnJvbUFjdGl2ZUNvbnRleHRN
ZW51KGNvbnN0IFdlYkNvbnRleHRNZW51SXRlbURhdGEmIGl0ZW0pCiB7CiAgICAgaWYgKCFtX2Nv
bnRleHRNZW51KQpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5oCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01NzQsNiArNTc0LDEwIEBACiAgICAg
dm9pZCBkaWRDaGFuZ2VTZWxlY3RlZEluZGV4Rm9yQWN0aXZlUG9wdXBNZW51KGludDMyX3QgbmV3
SW5kZXgpOwogICAgIHZvaWQgc2V0VGV4dEZvckFjdGl2ZVBvcHVwTWVudShpbnQzMl90IGluZGV4
KTsKIAorI2lmIFBMQVRGT1JNKEdUSykgICAgCisgICAgdm9pZCBmYWlsZWRUb1Nob3dQb3B1cE1l
bnUoKTsKKyNlbmRpZiAgICAKKwogICAgIHZvaWQgZGlkQ2hvb3NlRmlsZXNGb3JPcGVuUGFuZWwo
Y29uc3QgVmVjdG9yPFN0cmluZz4mKTsKICAgICB2b2lkIGRpZENhbmNlbEZvck9wZW5QYW5lbCgp
OwogI2lmIEVOQUJMRShXRUJfUFJPQ0VTU19TQU5EQk9YKQpJbmRleDogU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaAkocmV2aXNpb24gMTAxMTI2KQorKysgU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC01OTMsNiArNTkz
LDkgQEAKICAgICB2aXJ0dWFsIHZvaWQgdmFsdWVDaGFuZ2VkRm9yUG9wdXBNZW51KFdlYlBvcHVw
TWVudVByb3h5KiwgaW50MzJfdCBuZXdTZWxlY3RlZEluZGV4KTsKICAgICB2aXJ0dWFsIHZvaWQg
c2V0VGV4dEZyb21JdGVtRm9yUG9wdXBNZW51KFdlYlBvcHVwTWVudVByb3h5KiwgaW50MzJfdCBp
bmRleCk7CiAgICAgdmlydHVhbCBOYXRpdmVXZWJNb3VzZUV2ZW50KiBjdXJyZW50bHlQcm9jZXNz
ZWRNb3VzZURvd25FdmVudCgpOworI2lmIFBMQVRGT1JNKEdUSykKKyAgICB2aXJ0dWFsIHZvaWQg
ZmFpbGVkVG9TaG93UG9wdXBNZW51KCk7CisjZW5kaWYgICAgCiAKICAgICAvLyBJbXBsZW1lbnRl
ZCBpbiBnZW5lcmF0ZWQgV2ViUGFnZVByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcAogICAgIHZvaWQg
ZGlkUmVjZWl2ZVdlYlBhZ2VQcm94eU1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJ
UEM6Ok1lc3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyKik7CkluZGV4OiBTb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL1dlYlBvcHVwTWVudVByb3h5R3RrLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL1dlYlBvcHVwTWVudVByb3h5R3RrLmNw
cAkocmV2aXNpb24gMTAxMTI2KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2d0ay9XZWJQ
b3B1cE1lbnVQcm94eUd0ay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTg1LDggKzg1LDE5IEBACiAg
ICAgbWVudVBvc2l0aW9uLm1vdmUoMCwgcmVjdC5oZWlnaHQoKSk7CiAKICAgICBndWxvbmcgdW5t
YXBIYW5kbGVyID0gZ19zaWduYWxfY29ubmVjdChtX3BvcHVwLT5wbGF0Zm9ybU1lbnUoKSwgInVu
bWFwIiwgR19DQUxMQkFDSyhtZW51VW5tYXBwZWQpLCB0aGlzKTsKKworICAgIGlmICghbV9jbGll
bnQpCisgICAgICAgIHJldHVybjsKKwogICAgIG1fcG9wdXAtPnBvcFVwKHJlY3Quc2l6ZSgpLCBt
ZW51UG9zaXRpb24sIHNpemUsIHNlbGVjdGVkSW5kZXgsIG1fY2xpZW50LT5jdXJyZW50bHlQcm9j
ZXNzZWRNb3VzZURvd25FdmVudCgpID8gbV9jbGllbnQtPmN1cnJlbnRseVByb2Nlc3NlZE1vdXNl
RG93bkV2ZW50KCktPm5hdGl2ZUV2ZW50KCkgOiAwKTsKIAorICAgIC8vIFBvcHVwTWVudSBjYW4g
ZmFpbCB0byBvcGVuIHdoZW4gdGhlcmUgaXMgbm8gbW91c2UgZ3JhYi4KKyAgICAvLyBFbnN1cmUg
V2ViQ29yZSBkb2VzIG5vdCBnbyBpbnRvIHNvbWUgcGVza3kgc3RhdGUuCisgICAgaWYgKCFndGtf
d2lkZ2V0X2dldF92aXNpYmxlKG1fcG9wdXAtPnBsYXRmb3JtTWVudSgpKSkgeworICAgICAgIG1f
Y2xpZW50LT5mYWlsZWRUb1Nob3dQb3B1cE1lbnUoKTsKKyAgICAgICByZXR1cm47CisgICAgfQor
CiAgICAgLy8gV2ViUGFnZVByb3h5IGV4cGVjdHMgdGhlIG1lbnUgdG8gcnVuIGluIGEgbmVzdGVk
IHJ1biBsb29wLCBzaW5jZSBpdCBpbnZhbGlkYXRlcyB0aGUKICAgICAvLyBtZW51IHJpZ2h0IGFm
dGVyIGNhbGxpbmcgV2ViUG9wdXBNZW51UHJveHk6OnNob3dQb3B1cE1lbnUoKS4KICAgICBtX3J1
bkxvb3AgPSBnX21haW5fbG9vcF9uZXcoMCwgRkFMU0UpOwpAQCAtMTAwLDkgKzExMSw2IEBACiAK
ICAgICBnX3NpZ25hbF9oYW5kbGVyX2Rpc2Nvbm5lY3QobV9wb3B1cC0+cGxhdGZvcm1NZW51KCks
IHVubWFwSGFuZGxlcik7CiAKLSAgICBpZiAoIW1fY2xpZW50KQotICAgICAgICByZXR1cm47Ci0K
ICAgICBtX2NsaWVudC0+dmFsdWVDaGFuZ2VkRm9yUG9wdXBNZW51KHRoaXMsIG1fYWN0aXZlSXRl
bSk7CiB9CiAKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQYWdlUHJveHkuY3Bw
CShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVBy
b3h5LmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjQ2Myw2ICsyNDYzLDEzIEBACiAgICAgcmV0dXJu
IG1fY3VycmVudGx5UHJvY2Vzc2VkTW91c2VEb3duRXZlbnQuZ2V0KCk7CiB9CiAKKyNpZiBQTEFU
Rk9STShHVEspCit2b2lkIFdlYlBhZ2VQcm94eTo6ZmFpbGVkVG9TaG93UG9wdXBNZW51KCkKK3sK
KyAgICBwcm9jZXNzKCktPnNlbmQoTWVzc2FnZXM6OldlYlBhZ2U6OkZhaWxlZFRvU2hvd1BvcHVw
TWVudSgpLCBtX3BhZ2VJRCk7Cit9CisjZW5kaWYKKwogdm9pZCBXZWJQYWdlUHJveHk6OnNob3dQ
b3B1cE1lbnUoY29uc3QgSW50UmVjdCYgcmVjdCwgdWludDY0X3QgdGV4dERpcmVjdGlvbiwgY29u
c3QgVmVjdG9yPFdlYlBvcHVwSXRlbT4mIGl0ZW1zLCBpbnQzMl90IHNlbGVjdGVkSW5kZXgsIGNv
bnN0IFBsYXRmb3JtUG9wdXBNZW51RGF0YSYgZGF0YSkKIHsKICAgICBpZiAobV9hY3RpdmVQb3B1
cE1lbnUpIHsKSW5kZXg6IFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQb3B1cE1lbnVQcm94
eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9XZWJQb3B1cE1lbnVQ
cm94eS5oCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2Vi
UG9wdXBNZW51UHJveHkuaAkod29ya2luZyBjb3B5KQpAQCAtNTMsNiArNTMsOSBAQAogICAgICAg
ICB2aXJ0dWFsIHZvaWQgdmFsdWVDaGFuZ2VkRm9yUG9wdXBNZW51KFdlYlBvcHVwTWVudVByb3h5
KiwgaW50MzJfdCBuZXdTZWxlY3RlZEluZGV4KSA9IDA7CiAgICAgICAgIHZpcnR1YWwgdm9pZCBz
ZXRUZXh0RnJvbUl0ZW1Gb3JQb3B1cE1lbnUoV2ViUG9wdXBNZW51UHJveHkqLCBpbnQzMl90IGlu
ZGV4KSA9IDA7CiAgICAgICAgIHZpcnR1YWwgTmF0aXZlV2ViTW91c2VFdmVudCogY3VycmVudGx5
UHJvY2Vzc2VkTW91c2VEb3duRXZlbnQoKSA9IDA7CisjaWYgUExBVEZPUk0oR1RLKQorICAgICAg
ICB2aXJ0dWFsIHZvaWQgZmFpbGVkVG9TaG93UG9wdXBNZW51KCkgPSAwOworI2VuZGlmICAgICAg
ICAKICAgICB9OwogCiAgICAgdmlydHVhbCB+V2ViUG9wdXBNZW51UHJveHkoKQpJbmRleDogU291
cmNlL1dlYktpdDIvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL0NoYW5n
ZUxvZwkocmV2aXNpb24gMTAxMTI2KQorKysgU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMjcgQEAKKzIwMTEtMTEtMjkgIFdhamFoYXQgU2lkZGlxdWkg
IDxtZHdhamFoYXRhbGkuc2lkZGlxdWlAbW90b3JvbGEuY29tPgorCisgICAgICAgIFBvcHVwIG1l
bnUgY2FuIGdldCBzdHVjayBpbiBjbG9zZWQgc3RhdGUgd2hlbiBHdGtNZW51IGNhbid0IGdyYWIg
bW91c2UuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD01
NjQ2NgorCisgICAgICAgIEFkZCBhIGNoZWNrIGlmIHBvcHVwIG1lbnUgaXMgbm90IHZpc2libGUg
ZHVlIHRvIG5vIG1vdXNlIGdyYWIsCisgICAgICAgIEVuc3VyZSBXZWJDb3JlIGlzIGluIHN5bmMg
d2l0aCBwcm9wZXIgc3RhdGUuCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcDoKKyAgICAgICAgKFdlYktp
dDo6V2ViUGFnZVByb3h5OjpmYWlsZWRUb1Nob3dQb3B1cE1lbnUpOiBBZGRlZCBNZXRob2QgdG8g
c2VuZCBtZXNzYWdlCisgICAgICAgIHRvIFdlYlByb2Nlc3MuCisgICAgICAgICogVUlQcm9jZXNz
L1dlYlBhZ2VQcm94eS5oOgorICAgICAgICAqIFVJUHJvY2Vzcy9XZWJQb3B1cE1lbnVQcm94eS5o
OgorICAgICAgICAqIFVJUHJvY2Vzcy9ndGsvV2ViUG9wdXBNZW51UHJveHlHdGsuY3BwOgorICAg
ICAgICAoV2ViS2l0OjpXZWJQb3B1cE1lbnVQcm94eUd0azo6c2hvd1BvcHVwTWVudSk6CisgICAg
ICAgICogV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQb3B1cE1lbnUuaDoKKyAgICAgICAg
KFdlYktpdDo6V2ViUG9wdXBNZW51OjpjbGllbnQpOiBBZGRlZCBNZXRob2QgdG8gZ2V0IFdlYkNv
cmU6OlBvcHVwTWVudUNsaWVudC4KKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFn
ZS5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlBhZ2U6OmZhaWxlZFRvU2hvd1BvcHVwTWVudSk6
CisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuaDoKKyAgICAgICAgKiBXZWJQ
cm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbjogQWRkZWQgTWVzc2FnZSB0byBpbmZv
cm0gV2ViUHJvY2VzcyBTaG93UG9wdXBNZW51IGZhaWxlZC4KKwogMjAxMS0xMS0yMSAgSmVzdXMg
U2FuY2hlei1QYWxlbmNpYSAgPGplc3VzLnBhbGVuY2lhQG9wZW5ib3NzYS5vcmc+CiAKICAgICAg
ICAgW1F0XVtXSzJdIE1vdmUgUVF1aWNrV2ViVmlldzo6ZG93bmxvYWRSZXF1ZXN0ZWQgc2lnbmFs
IGludG8gZXhwZXJpbWVudGFsCg==
</data>
<flag name="review"
          id="116183"
          type_id="1"
          status="-"
          setter="mrobinson"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>117337</attachid>
            <date>2011-11-30 22:08:48 -0800</date>
            <delta_ts>2011-12-01 09:39:45 -0800</delta_ts>
            <desc>updated patch rev 3</desc>
            <filename>updated_rev_3.patch</filename>
            <type>text/plain</type>
            <size>8567</size>
            <attacher name="Wajahat Siddiqui">mdwajahatali.siddiqui</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwMTEyNikKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDExLTEyLTAxICBXYWphaGF0
IFNpZGRpcXVpICA8bWR3YWphaGF0YWxpLnNpZGRpcXVpQG1vdG9yb2xhLmNvbT4KKworICAgICAg
ICBQb3B1cCBtZW51IGNhbiBnZXQgc3R1Y2sgaW4gY2xvc2VkIHN0YXRlIHdoZW4gR3RrTWVudSBj
YW4ndCBncmFiIG1vdXNlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1
Zy5jZ2k/aWQ9NTY0NjYKKworICAgICAgICBBZGQgYSBjaGVjayBpZiBwb3B1cCBtZW51IGlzIG5v
dCB2aXNpYmxlIGR1ZSB0byBubyBtb3VzZSBncmFiLAorICAgICAgICBFbnN1cmUgV2ViQ29yZSBp
cyBpbiBzeW5jIHdpdGggcHJvcGVyIHN0YXRlLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgICogcGxhdGZvcm0vZ3RrL1BvcHVwTWVudUd0ay5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpQb3B1cE1lbnVHdGs6OnNob3cpOgorCiAyMDExLTExLTIzICBQYXZl
bCBGZWxkbWFuICA8cGZlbGRtYW5AZ29vZ2xlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9y
OiBnZXQgcmlkIG9mIHRoZSBXZWJJbnNwZWN0b3IubWFpblJlc291cmNlLCB1c2UgV2ViSW5zcGVj
dG9yLmluc3BlY3RlZFBhZ2VVUkwgaW5zdGVhZC4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRm
b3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2d0ay9Qb3B1cE1lbnVHdGsuY3BwCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ndGsvUG9wdXBNZW51R3RrLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
ODgsNiArODgsMTEgQEAKICAgICBtZW51UG9zaXRpb24ubW92ZSgwLCByZWN0LmhlaWdodCgpKTsK
IAogICAgIG1fcG9wdXAtPnBvcFVwKHJlY3Quc2l6ZSgpLCBtZW51UG9zaXRpb24sIHNpemUsIGlu
ZGV4LCBndGtfZ2V0X2N1cnJlbnRfZXZlbnQoKSk7CisKKyAgICAvLyBHVEsgY2FuIHJlZnVzZSB0
byBhY3R1YWxseSBvcGVuIHRoZSBtZW51IHdoZW4gbW91c2UgZ3JhYnMgZmFpbHMuCisgICAgLy8g
RW5zdXJlIFdlYkNvcmUgZG9lcyBub3QgZ28gaW50byBzb21lIHBlc2t5IHN0YXRlLgorICAgIGlm
ICghZ3RrX3dpZGdldF9nZXRfdmlzaWJsZShtX3BvcHVwLT5wbGF0Zm9ybU1lbnUoKSkpCisgICAg
ICAgIGNsaWVudCgpLT5wb3B1cERpZEhpZGUoKTsKIH0KIAogdm9pZCBQb3B1cE1lbnVHdGs6Omhp
ZGUoKQpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJDb3JlU3VwcG9ydC9XZWJQ
b3B1cE1lbnUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYkNv
cmVTdXBwb3J0L1dlYlBvcHVwTWVudS5oCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYkNvcmVTdXBwb3J0L1dlYlBvcHVwTWVudS5oCSh3b3JraW5nIGNv
cHkpCkBAIC00OCw2ICs0OCw5IEBACiAgICAgdm9pZCBkaXNjb25uZWN0RnJvbVBhZ2UoKSB7IG1f
cGFnZSA9IDA7IH0KICAgICB2b2lkIGRpZENoYW5nZVNlbGVjdGVkSW5kZXgoaW50IG5ld0luZGV4
KTsKICAgICB2b2lkIHNldFRleHRGb3JJbmRleChpbnQgbmV3SW5kZXgpOworI2lmIFBMQVRGT1JN
KEdUSykgICAgCisgICAgV2ViQ29yZTo6UG9wdXBNZW51Q2xpZW50KiBjbGllbnQoKSBjb25zdCB7
IHJldHVybiBtX3BvcHVwQ2xpZW50OyB9CisjZW5kaWYKIAogICAgIHZpcnR1YWwgdm9pZCBzaG93
KGNvbnN0IFdlYkNvcmU6OkludFJlY3QmLCBXZWJDb3JlOjpGcmFtZVZpZXcqLCBpbnQgaW5kZXgp
IE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBoaWRlKCkgT1ZFUlJJREU7CkluZGV4OiBTb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdlcy5pbgo9PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5tZXNzYWdl
cy5pbgkocmV2aXNpb24gMTAxMTI2KQorKysgU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL1dlYlBhZ2UubWVzc2FnZXMuaW4JKHdvcmtpbmcgY29weSkKQEAgLTE0NCw2ICsxNDQsOSBA
QAogICAgICMgUG9wdXAgbWVudS4KICAgICBEaWRDaGFuZ2VTZWxlY3RlZEluZGV4Rm9yQWN0aXZl
UG9wdXBNZW51KGludDMyX3QgbmV3SW5kZXgpOwogICAgIFNldFRleHRGb3JBY3RpdmVQb3B1cE1l
bnUoaW50MzJfdCBpbmRleCk7CisjaWYgUExBVEZPUk0oR1RLKSAgICAKKyAgICBGYWlsZWRUb1No
b3dQb3B1cE1lbnUoKTsKKyNlbmRpZiAgICAKICAgICAKICAgICAjIENvbnRleHQgbWVudS4KICAg
ICBEaWRTZWxlY3RJdGVtRnJvbUFjdGl2ZUNvbnRleHRNZW51KFdlYktpdDo6V2ViQ29udGV4dE1l
bnVJdGVtRGF0YSBtZW51SXRlbSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYktpdDIvV2ViUHJvY2Vz
cy9XZWJQYWdlL1dlYlBhZ2UuY3BwCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2UvV2ViS2l0
Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTIxMzks
NiArMjEzOSwxNiBAQAogICAgIG1fYWN0aXZlUG9wdXBNZW51LT5zZXRUZXh0Rm9ySW5kZXgoaW5k
ZXgpOwogfQogCisjaWYgUExBVEZPUk0oR1RLKQordm9pZCBXZWJQYWdlOjpmYWlsZWRUb1Nob3dQ
b3B1cE1lbnUoKQoreworICAgIGlmICghbV9hY3RpdmVQb3B1cE1lbnUpCisgICAgICAgIHJldHVy
bjsKKworICAgIG1fYWN0aXZlUG9wdXBNZW51LT5jbGllbnQoKS0+cG9wdXBEaWRIaWRlKCk7Cit9
CisjZW5kaWYKKwogdm9pZCBXZWJQYWdlOjpkaWRTZWxlY3RJdGVtRnJvbUFjdGl2ZUNvbnRleHRN
ZW51KGNvbnN0IFdlYkNvbnRleHRNZW51SXRlbURhdGEmIGl0ZW0pCiB7CiAgICAgaWYgKCFtX2Nv
bnRleHRNZW51KQpJbmRleDogU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBh
Z2UuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2Vi
UGFnZS5oCShyZXZpc2lvbiAxMDExMjYpCisrKyBTb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvV2ViUGFnZS5oCSh3b3JraW5nIGNvcHkpCkBAIC01NzQsNiArNTc0LDEwIEBACiAgICAg
dm9pZCBkaWRDaGFuZ2VTZWxlY3RlZEluZGV4Rm9yQWN0aXZlUG9wdXBNZW51KGludDMyX3QgbmV3
SW5kZXgpOwogICAgIHZvaWQgc2V0VGV4dEZvckFjdGl2ZVBvcHVwTWVudShpbnQzMl90IGluZGV4
KTsKIAorI2lmIFBMQVRGT1JNKEdUSykgICAgCisgICAgdm9pZCBmYWlsZWRUb1Nob3dQb3B1cE1l
bnUoKTsKKyNlbmRpZiAgICAKKwogICAgIHZvaWQgZGlkQ2hvb3NlRmlsZXNGb3JPcGVuUGFuZWwo
Y29uc3QgVmVjdG9yPFN0cmluZz4mKTsKICAgICB2b2lkIGRpZENhbmNlbEZvck9wZW5QYW5lbCgp
OwogI2lmIEVOQUJMRShXRUJfUFJPQ0VTU19TQU5EQk9YKQpJbmRleDogU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQyL1VJ
UHJvY2Vzcy9XZWJQYWdlUHJveHkuaAkocmV2aXNpb24gMTAxMTI2KQorKysgU291cmNlL1dlYktp
dDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5oCSh3b3JraW5nIGNvcHkpCkBAIC01OTMsNiArNTkz
LDkgQEAKICAgICB2aXJ0dWFsIHZvaWQgdmFsdWVDaGFuZ2VkRm9yUG9wdXBNZW51KFdlYlBvcHVw
TWVudVByb3h5KiwgaW50MzJfdCBuZXdTZWxlY3RlZEluZGV4KTsKICAgICB2aXJ0dWFsIHZvaWQg
c2V0VGV4dEZyb21JdGVtRm9yUG9wdXBNZW51KFdlYlBvcHVwTWVudVByb3h5KiwgaW50MzJfdCBp
bmRleCk7CiAgICAgdmlydHVhbCBOYXRpdmVXZWJNb3VzZUV2ZW50KiBjdXJyZW50bHlQcm9jZXNz
ZWRNb3VzZURvd25FdmVudCgpOworI2lmIFBMQVRGT1JNKEdUSykKKyAgICB2aXJ0dWFsIHZvaWQg
ZmFpbGVkVG9TaG93UG9wdXBNZW51KCk7CisjZW5kaWYgICAgCiAKICAgICAvLyBJbXBsZW1lbnRl
ZCBpbiBnZW5lcmF0ZWQgV2ViUGFnZVByb3h5TWVzc2FnZVJlY2VpdmVyLmNwcAogICAgIHZvaWQg
ZGlkUmVjZWl2ZVdlYlBhZ2VQcm94eU1lc3NhZ2UoQ29yZUlQQzo6Q29ubmVjdGlvbiosIENvcmVJ
UEM6Ok1lc3NhZ2VJRCwgQ29yZUlQQzo6QXJndW1lbnREZWNvZGVyKik7CkluZGV4OiBTb3VyY2Uv
V2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL1dlYlBvcHVwTWVudVByb3h5R3RrLmNwcAo9PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvZ3RrL1dlYlBvcHVwTWVudVByb3h5R3RrLmNw
cAkocmV2aXNpb24gMTAxMTI2KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL2d0ay9XZWJQ
b3B1cE1lbnVQcm94eUd0ay5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTg3LDYgKzg3LDEzIEBACiAg
ICAgZ3Vsb25nIHVubWFwSGFuZGxlciA9IGdfc2lnbmFsX2Nvbm5lY3QobV9wb3B1cC0+cGxhdGZv
cm1NZW51KCksICJ1bm1hcCIsIEdfQ0FMTEJBQ0sobWVudVVubWFwcGVkKSwgdGhpcyk7CiAgICAg
bV9wb3B1cC0+cG9wVXAocmVjdC5zaXplKCksIG1lbnVQb3NpdGlvbiwgc2l6ZSwgc2VsZWN0ZWRJ
bmRleCwgbV9jbGllbnQtPmN1cnJlbnRseVByb2Nlc3NlZE1vdXNlRG93bkV2ZW50KCkgPyBtX2Ns
aWVudC0+Y3VycmVudGx5UHJvY2Vzc2VkTW91c2VEb3duRXZlbnQoKS0+bmF0aXZlRXZlbnQoKSA6
IDApOwogCisgICAgLy8gUG9wdXBNZW51IGNhbiBmYWlsIHRvIG9wZW4gd2hlbiB0aGVyZSBpcyBu
byBtb3VzZSBncmFiLgorICAgIC8vIEVuc3VyZSBXZWJDb3JlIGRvZXMgbm90IGdvIGludG8gc29t
ZSBwZXNreSBzdGF0ZS4KKyAgICBpZiAoIWd0a193aWRnZXRfZ2V0X3Zpc2libGUobV9wb3B1cC0+
cGxhdGZvcm1NZW51KCkpKSB7CisgICAgICAgbV9jbGllbnQtPmZhaWxlZFRvU2hvd1BvcHVwTWVu
dSgpOworICAgICAgIHJldHVybjsKKyAgICB9CisKICAgICAvLyBXZWJQYWdlUHJveHkgZXhwZWN0
cyB0aGUgbWVudSB0byBydW4gaW4gYSBuZXN0ZWQgcnVuIGxvb3AsIHNpbmNlIGl0IGludmFsaWRh
dGVzIHRoZQogICAgIC8vIG1lbnUgcmlnaHQgYWZ0ZXIgY2FsbGluZyBXZWJQb3B1cE1lbnVQcm94
eTo6c2hvd1BvcHVwTWVudSgpLgogICAgIG1fcnVuTG9vcCA9IGdfbWFpbl9sb29wX25ldygwLCBG
QUxTRSk7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUGFnZVByb3h5LmNwcAko
cmV2aXNpb24gMTAxMTI2KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBhZ2VQcm94
eS5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI0NjMsNiArMjQ2MywxMyBAQAogICAgIHJldHVybiBt
X2N1cnJlbnRseVByb2Nlc3NlZE1vdXNlRG93bkV2ZW50LmdldCgpOwogfQogCisjaWYgUExBVEZP
Uk0oR1RLKQordm9pZCBXZWJQYWdlUHJveHk6OmZhaWxlZFRvU2hvd1BvcHVwTWVudSgpCit7Cisg
ICAgcHJvY2VzcygpLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlOjpGYWlsZWRUb1Nob3dQb3B1cE1l
bnUoKSwgbV9wYWdlSUQpOworfQorI2VuZGlmCisKIHZvaWQgV2ViUGFnZVByb3h5OjpzaG93UG9w
dXBNZW51KGNvbnN0IEludFJlY3QmIHJlY3QsIHVpbnQ2NF90IHRleHREaXJlY3Rpb24sIGNvbnN0
IFZlY3RvcjxXZWJQb3B1cEl0ZW0+JiBpdGVtcywgaW50MzJfdCBzZWxlY3RlZEluZGV4LCBjb25z
dCBQbGF0Zm9ybVBvcHVwTWVudURhdGEmIGRhdGEpCiB7CiAgICAgaWYgKG1fYWN0aXZlUG9wdXBN
ZW51KSB7CkluZGV4OiBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUG9wdXBNZW51UHJveHku
aAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvV2ViUG9wdXBNZW51UHJv
eHkuaAkocmV2aXNpb24gMTAxMTI2KQorKysgU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL1dlYlBv
cHVwTWVudVByb3h5LmgJKHdvcmtpbmcgY29weSkKQEAgLTUzLDYgKzUzLDkgQEAKICAgICAgICAg
dmlydHVhbCB2b2lkIHZhbHVlQ2hhbmdlZEZvclBvcHVwTWVudShXZWJQb3B1cE1lbnVQcm94eSos
IGludDMyX3QgbmV3U2VsZWN0ZWRJbmRleCkgPSAwOwogICAgICAgICB2aXJ0dWFsIHZvaWQgc2V0
VGV4dEZyb21JdGVtRm9yUG9wdXBNZW51KFdlYlBvcHVwTWVudVByb3h5KiwgaW50MzJfdCBpbmRl
eCkgPSAwOwogICAgICAgICB2aXJ0dWFsIE5hdGl2ZVdlYk1vdXNlRXZlbnQqIGN1cnJlbnRseVBy
b2Nlc3NlZE1vdXNlRG93bkV2ZW50KCkgPSAwOworI2lmIFBMQVRGT1JNKEdUSykKKyAgICAgICAg
dmlydHVhbCB2b2lkIGZhaWxlZFRvU2hvd1BvcHVwTWVudSgpID0gMDsKKyNlbmRpZiAgICAgICAg
CiAgICAgfTsKIAogICAgIHZpcnR1YWwgfldlYlBvcHVwTWVudVByb3h5KCkKSW5kZXg6IFNvdXJj
ZS9XZWJLaXQyL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2ViS2l0Mi9DaGFuZ2VM
b2cJKHJldmlzaW9uIDEwMTEyNikKKysrIFNvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDI3IEBACisyMDExLTEyLTAxICBXYWphaGF0IFNpZGRpcXVpICA8
bWR3YWphaGF0YWxpLnNpZGRpcXVpQG1vdG9yb2xhLmNvbT4KKworICAgICAgICBQb3B1cCBtZW51
IGNhbiBnZXQgc3R1Y2sgaW4gY2xvc2VkIHN0YXRlIHdoZW4gR3RrTWVudSBjYW4ndCBncmFiIG1v
dXNlLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9NTY0
NjYKKworICAgICAgICBBZGQgYSBjaGVjayBpZiBwb3B1cCBtZW51IGlzIG5vdCB2aXNpYmxlIGR1
ZSB0byBubyBtb3VzZSBncmFiLAorICAgICAgICBFbnN1cmUgV2ViQ29yZSBpcyBpbiBzeW5jIHdp
dGggcHJvcGVyIHN0YXRlLgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgor
CisgICAgICAgICogVUlQcm9jZXNzL1dlYlBhZ2VQcm94eS5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYlBhZ2VQcm94eTo6ZmFpbGVkVG9TaG93UG9wdXBNZW51KTogQWRkZWQgTWV0aG9kIHRvIHNl
bmQgbWVzc2FnZQorICAgICAgICB0byBXZWJQcm9jZXNzLgorICAgICAgICAqIFVJUHJvY2Vzcy9X
ZWJQYWdlUHJveHkuaDoKKyAgICAgICAgKiBVSVByb2Nlc3MvV2ViUG9wdXBNZW51UHJveHkuaDoK
KyAgICAgICAgKiBVSVByb2Nlc3MvZ3RrL1dlYlBvcHVwTWVudVByb3h5R3RrLmNwcDoKKyAgICAg
ICAgKFdlYktpdDo6V2ViUG9wdXBNZW51UHJveHlHdGs6OnNob3dQb3B1cE1lbnUpOgorICAgICAg
ICAqIFdlYlByb2Nlc3MvV2ViQ29yZVN1cHBvcnQvV2ViUG9wdXBNZW51Lmg6CisgICAgICAgIChX
ZWJLaXQ6OldlYlBvcHVwTWVudTo6Y2xpZW50KTogQWRkZWQgTWV0aG9kIHRvIGdldCBXZWJDb3Jl
OjpQb3B1cE1lbnVDbGllbnQuCisgICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2Uu
Y3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJQYWdlOjpmYWlsZWRUb1Nob3dQb3B1cE1lbnUpOgor
ICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmg6CisgICAgICAgICogV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UubWVzc2FnZXMuaW46IEFkZGVkIE1lc3NhZ2UgdG8gaW5mb3Jt
IFdlYlByb2Nlc3MgU2hvd1BvcHVwTWVudSBmYWlsZWQuCisKIDIwMTEtMTEtMjEgIEplc3VzIFNh
bmNoZXotUGFsZW5jaWEgIDxqZXN1cy5wYWxlbmNpYUBvcGVuYm9zc2Eub3JnPgogCiAgICAgICAg
IFtRdF1bV0syXSBNb3ZlIFFRdWlja1dlYlZpZXc6OmRvd25sb2FkUmVxdWVzdGVkIHNpZ25hbCBp
bnRvIGV4cGVyaW1lbnRhbAo=
</data>

          </attachment>
      

    </bug>

</bugzilla>