<?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>87415</bug_id>
          
          <creation_ts>2012-05-24 12:43:14 -0700</creation_ts>
          <short_desc>[chromium]  Reset minimum/maximum page scale factors when page-scale-factor limits are unset</short_desc>
          <delta_ts>2013-04-15 07:23:06 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>WONTFIX</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>1</everconfirmed>
          <reporter name="Sadrul Habib Chowdhury">sadrul</reporter>
          <assigned_to name="Sadrul Habib Chowdhury">sadrul</assigned_to>
          <cc>abarth</cc>
    
    <cc>danakj</cc>
    
    <cc>dglazkov</cc>
    
    <cc>fishd</cc>
    
    <cc>jamesr</cc>
    
    <cc>rjkroege</cc>
    
    <cc>schenney</cc>
    
    <cc>tkent+wkapi</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>633071</commentid>
    <comment_count>0</comment_count>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2012-05-24 12:43:14 -0700</bug_when>
    <thetext>Adding a flag to enable page-scale-factor even when device-scale-factor is enabled will allow developers to find and fix various bugs that show up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633072</commentid>
    <comment_count>1</comment_count>
      <attachid>143872</attachid>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2012-05-24 12:44:42 -0700</bug_when>
    <thetext>Created attachment 143872
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633115</commentid>
    <comment_count>2</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-05-24 13:24:29 -0700</bug_when>
    <thetext>nit: The title should indicate this for when device-scale factor is being used in the compositor. It can be used in other ways and this does not affect them. 

Otherwise, LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633117</commentid>
    <comment_count>3</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-05-24 13:27:44 -0700</bug_when>
    <thetext>You&apos;ll need to rebase also to get EWS to check it out.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633191</commentid>
    <comment_count>4</comment_count>
      <attachid>143890</attachid>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2012-05-24 13:56:10 -0700</bug_when>
    <thetext>Created attachment 143890
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633197</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-05-24 13:58:31 -0700</bug_when>
    <thetext>Please wait for approval from abarth@webkit.org, dglazkov@chromium.org, fishd@chromium.org, jamesr@chromium.org or tkent@chromium.org before submitting, as this patch contains changes to the Chromium public API. See also https://trac.webkit.org/wiki/ChromiumWebKitAPI.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633207</commentid>
    <comment_count>6</comment_count>
      <attachid>143890</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-05-24 14:13:51 -0700</bug_when>
    <thetext>Comment on attachment 143890
Patch

We have WebKit API for setting the page scale limits already, so it&apos;s weird to me that we have to add additional public API to do this again.  Why is that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633210</commentid>
    <comment_count>7</comment_count>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-05-24 14:15:08 -0700</bug_when>
    <thetext>Oh true! Sadrul, can we just call WebView()-&gt;setPageScaleFactorLimits() from somewhere in chromium?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633255</commentid>
    <comment_count>8</comment_count>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2012-05-24 14:47:13 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; Oh true! Sadrul, can we just call WebView()-&gt;setPageScaleFactorLimits() from somewhere in chromium?

That works! Yay! But looks like we need the following change (the change restores m_minimumPageScaleFactor and m_maximumPageScaleFactor to minPageScaleFactor and maxPageScaleFactor when setPageScaleFactorLimits is called with -1 for one of the params):


diff --git a/Source/WebKit/chromium/src/WebViewImpl.cpp b/Source/WebKit/chromium/src/WebViewImpl.cpp
index a47cb28..5bcfb73 100644
--- a/Source/WebKit/chromium/src/WebViewImpl.cpp
+++ b/Source/WebKit/chromium/src/WebViewImpl.cpp
@@ -2511,14 +2511,19 @@ void WebViewImpl::setPageScaleFactorLimits(float minPageScale, float maxPageScal
 
 bool WebViewImpl::computePageScaleFactorLimits()
 {
-    if (m_pageDefinedMinimumPageScaleFactor == -1 || m_pageDefinedMaximumPageScaleFactor == -1)
+    if ((m_pageDefinedMinimumPageScaleFactor == -1 || m_pageDefinedMaximumPageScaleFactor == -1) &amp;&amp; m_minimumPageScaleFactor == minPageScaleFactor &amp;&amp; m_maximumPageScaleFactor == maxPageScaleFactor)
         return false;
 
     if (!mainFrame() || !page() || !page()-&gt;mainFrame() || !page()-&gt;mainFrame()-&gt;view())
         return false;
 
-    m_minimumPageScaleFactor = min(max(m_pageDefinedMinimumPageScaleFactor, minPageScaleFactor), maxPageScaleFactor) * (deviceScaleFactor() / m_deviceScaleInCompositor);
-    m_maximumPageScaleFactor = max(min(m_pageDefinedMaximumPageScaleFactor, maxPageScaleFactor), minPageScaleFactor) * (deviceScaleFactor() / m_deviceScaleInCompositor);
+    if (m_pageDefinedMinimumPageScaleFactor == -1 || m_pageDefinedMaximumPageScaleFactor == -1) {
+        m_minimumPageScaleFactor = minPageScaleFactor;
+        m_maximumPageScaleFactor = maxPageScaleFactor;
+    } else  {
+        m_minimumPageScaleFactor = min(max(m_pageDefinedMinimumPageScaleFactor, minPageScaleFactor), maxPageScaleFactor) * (deviceScaleFactor() / m_deviceScaleInCompositor);
+        m_maximumPageScaleFactor = max(min(m_pageDefinedMaximumPageScaleFactor, maxPageScaleFactor), minPageScaleFactor) * (deviceScaleFactor() / m_deviceScaleInCompositor);
+    }
 
     int viewWidthNotIncludingScrollbars = page()-&gt;mainFrame()-&gt;view()-&gt;visibleContentRect(false).width();
     int contentsWidth = mainFrame()-&gt;contentsSize().width;


Does this look like a reasonable change? If so, I will put it up in a patch and upload for proper review. (I am unsure if I should close this bug and open a new one or just update this bug with the revised patch/title)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633275</commentid>
    <comment_count>9</comment_count>
      <attachid>143903</attachid>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2012-05-24 15:01:04 -0700</bug_when>
    <thetext>Created attachment 143903
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633278</commentid>
    <comment_count>10</comment_count>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2012-05-24 15:02:52 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #7)
&gt; &gt; Oh true! Sadrul, can we just call WebView()-&gt;setPageScaleFactorLimits() from somewhere in chromium?
&gt; 
&gt; That works! Yay! But looks like we need the following change (the change restores m_minimumPageScaleFactor and m_maximumPageScaleFactor to minPageScaleFactor and maxPageScaleFactor when setPageScaleFactorLimits is called with -1 for one of the params):
&gt; 
&gt; 
&gt; diff --git a/Source/WebKit/chromium/src/WebViewImpl.cpp b/Source/WebKit/chromium/src/WebViewImpl.cpp
&gt; index a47cb28..5bcfb73 100644
&gt; --- a/Source/WebKit/chromium/src/WebViewImpl.cpp
&gt; +++ b/Source/WebKit/chromium/src/WebViewImpl.cpp
&gt; @@ -2511,14 +2511,19 @@ void WebViewImpl::setPageScaleFactorLimits(float minPageScale, float maxPageScal
&gt; 
&gt;  bool WebViewImpl::computePageScaleFactorLimits()
&gt;  {
&gt; -    if (m_pageDefinedMinimumPageScaleFactor == -1 || m_pageDefinedMaximumPageScaleFactor == -1)
&gt; +    if ((m_pageDefinedMinimumPageScaleFactor == -1 || m_pageDefinedMaximumPageScaleFactor == -1) &amp;&amp; m_minimumPageScaleFactor == minPageScaleFactor &amp;&amp; m_maximumPageScaleFactor == maxPageScaleFactor)
&gt;          return false;
&gt; 
&gt;      if (!mainFrame() || !page() || !page()-&gt;mainFrame() || !page()-&gt;mainFrame()-&gt;view())
&gt;          return false;
&gt; 
&gt; -    m_minimumPageScaleFactor = min(max(m_pageDefinedMinimumPageScaleFactor, minPageScaleFactor), maxPageScaleFactor) * (deviceScaleFactor() / m_deviceScaleInCompositor);
&gt; -    m_maximumPageScaleFactor = max(min(m_pageDefinedMaximumPageScaleFactor, maxPageScaleFactor), minPageScaleFactor) * (deviceScaleFactor() / m_deviceScaleInCompositor);
&gt; +    if (m_pageDefinedMinimumPageScaleFactor == -1 || m_pageDefinedMaximumPageScaleFactor == -1) {
&gt; +        m_minimumPageScaleFactor = minPageScaleFactor;
&gt; +        m_maximumPageScaleFactor = maxPageScaleFactor;
&gt; +    } else  {
&gt; +        m_minimumPageScaleFactor = min(max(m_pageDefinedMinimumPageScaleFactor, minPageScaleFactor), maxPageScaleFactor) * (deviceScaleFactor() / m_deviceScaleInCompositor);
&gt; +        m_maximumPageScaleFactor = max(min(m_pageDefinedMaximumPageScaleFactor, maxPageScaleFactor), minPageScaleFactor) * (deviceScaleFactor() / m_deviceScaleInCompositor);
&gt; +    }
&gt; 
&gt;      int viewWidthNotIncludingScrollbars = page()-&gt;mainFrame()-&gt;view()-&gt;visibleContentRect(false).width();
&gt;      int contentsWidth = mainFrame()-&gt;contentsSize().width;
&gt; 
&gt; 
&gt; Does this look like a reasonable change? If so, I will put it up in a patch and upload for proper review. (I am unsure if I should close this bug and open a new one or just update this bug with the revised patch/title)

I have gone ahead and put this patch up for review here. PTAL</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633291</commentid>
    <comment_count>11</comment_count>
      <attachid>143903</attachid>
    <who name="Dana Jansens">danakj</who>
    <bug_when>2012-05-24 15:18:19 -0700</bug_when>
    <thetext>Comment on attachment 143903
Patch

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

Oh I think I see, you want to be able to set the page defined scale factor limits back to -1, and then have the min/max adjusted back to the defaults?

&gt; Source/WebKit/chromium/src/WebViewImpl.cpp:2514
&gt; +    if ((m_pageDefinedMinimumPageScaleFactor == -1 || m_pageDefinedMaximumPageScaleFactor == -1) &amp;&amp; m_minimumPageScaleFactor == minPageScaleFactor &amp;&amp; m_maximumPageScaleFactor == maxPageScaleFactor)

Use some temp var to make this more clear? e.g.
bool currentLimitsAreDefaults = m_minimumPageScaleFactor == minPageScaleFactor &amp;&amp; m_maximumPageScaleFactor == maxPageScaleFactor;

since we&apos;re doing this check for -1s twice, maybe that would make a nice temp var too, pageDefinedLimitsAreDefaults?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633297</commentid>
    <comment_count>12</comment_count>
      <attachid>143903</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-05-24 15:25:15 -0700</bug_when>
    <thetext>Comment on attachment 143903
Patch

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

&gt;&gt; Source/WebKit/chromium/src/WebViewImpl.cpp:2514
&gt;&gt; +    if ((m_pageDefinedMinimumPageScaleFactor == -1 || m_pageDefinedMaximumPageScaleFactor == -1) &amp;&amp; m_minimumPageScaleFactor == minPageScaleFactor &amp;&amp; m_maximumPageScaleFactor == maxPageScaleFactor)
&gt; 
&gt; Use some temp var to make this more clear? e.g.
&gt; bool currentLimitsAreDefaults = m_minimumPageScaleFactor == minPageScaleFactor &amp;&amp; m_maximumPageScaleFactor == maxPageScaleFactor;
&gt; 
&gt; since we&apos;re doing this check for -1s twice, maybe that would make a nice temp var too, pageDefinedLimitsAreDefaults?

so -1,-1 means &quot;use the default&quot;? What about calling setPageScaleLimits(1,1) when we want to override the defaults and doing nothing otherwise?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633298</commentid>
    <comment_count>13</comment_count>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2012-05-24 15:30:16 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 143903 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=143903&amp;action=review
&gt; 
&gt; &gt;&gt; Source/WebKit/chromium/src/WebViewImpl.cpp:2514
&gt; &gt;&gt; +    if ((m_pageDefinedMinimumPageScaleFactor == -1 || m_pageDefinedMaximumPageScaleFactor == -1) &amp;&amp; m_minimumPageScaleFactor == minPageScaleFactor &amp;&amp; m_maximumPageScaleFactor == maxPageScaleFactor)
&gt; &gt; 
&gt; &gt; Use some temp var to make this more clear? e.g.
&gt; &gt; bool currentLimitsAreDefaults = m_minimumPageScaleFactor == minPageScaleFactor &amp;&amp; m_maximumPageScaleFactor == maxPageScaleFactor;
&gt; &gt; 
&gt; &gt; since we&apos;re doing this check for -1s twice, maybe that would make a nice temp var too, pageDefinedLimitsAreDefaults?
&gt; 
&gt; so -1,-1 means &quot;use the default&quot;? What about calling setPageScaleLimits(1,1) when we want to override the defaults and doing nothing otherwise?

If we wanted to do that, we would need to know about it here, and if we wanted to know about it here, then we need to send this info via settings  (which the original patchset did) or some other mechanism.

Or do you mean we just shouldn&apos;t call setPageScaleFactorLimits from here (i.e. in WebViewImpl::setIsAcceleratedCompositingActive), and do it from where we can make this decision (i.e. in http://codereview.chromium.org/10454019/diff/6002/content/renderer/render_view_impl.cc#newcode2781)?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>633330</commentid>
    <comment_count>14</comment_count>
      <attachid>143913</attachid>
    <who name="Sadrul Habib Chowdhury">sadrul</who>
    <bug_when>2012-05-24 16:02:52 -0700</bug_when>
    <thetext>Created attachment 143913
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>636816</commentid>
    <comment_count>15</comment_count>
      <attachid>143913</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-05-29 21:28:11 -0700</bug_when>
    <thetext>Comment on attachment 143913
Patch

It looks like we don&apos;t need this based on the most recent chromium-side patch.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>143872</attachid>
            <date>2012-05-24 12:44:42 -0700</date>
            <delta_ts>2012-05-24 13:56:06 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-87415-20120524154440.patch</filename>
            <type>text/plain</type>
            <size>4900</size>
            <attacher name="Sadrul Habib Chowdhury">sadrul</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE4MjAzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDY1YzcyMTQ5NTMxYTJkNTZjNjRhOTJhMGRiYWE0MzE1YzVmMTZiYWQuLjgwNzczYjhkMTBkMTUy
NjI2NGI3ZjFmYzY4ZjE4YjFiOGQ2OGZkY2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjQgQEAKKzIwMTItMDUtMjQgIFNhZHJ1bCBIYWJpYiBDaG93ZGh1cnkgIDxzYWRy
dWxAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEFkZCBhIGZsYWcgZm9yIGVuYWJsaW5nIHBhZ2Ut
c2NhbGUtZmFjdG9yIGV2ZW4gd2hlbiBkZXZpY2Utc2NhbGUtZmFjdG9yIGlzIHVzZWQuCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD04NzQxNQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZGluZyBhIGZsYWcg
dG8gZW5hYmxlIHBhZ2Utc2NhbGUtZmFjdG9yIGV2ZW4gd2hlbiBkZXZpY2Utc2NhbGUtZmFjdG9y
IGlzCisgICAgICAgIGVuYWJsZWQgd2lsbCBlbmFibGUgZGV2ZWxvcGVycyB0byBmaW5kIGFuZCBm
aXggdmFyaW91cyBidWdzIHRoYXQgc2hvdyB1cC4KKworICAgICAgICAqIHB1YmxpYy9XZWJTZXR0
aW5ncy5oOgorICAgICAgICAqIHNyYy9XZWJTZXR0aW5nc0ltcGwuY3BwOgorICAgICAgICAoV2Vi
S2l0OjpXZWJTZXR0aW5nc0ltcGw6OldlYlNldHRpbmdzSW1wbCk6CisgICAgICAgIChXZWJLaXQ6
OldlYlNldHRpbmdzSW1wbDo6c2V0Rm9yY2VFbmFibGVQYWdlU2NhbGVGYWN0b3IpOgorICAgICAg
ICAoV2ViS2l0KToKKyAgICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmg6CisgICAgICAgIChX
ZWJTZXR0aW5nc0ltcGwpOgorICAgICAgICAoV2ViS2l0OjpXZWJTZXR0aW5nc0ltcGw6OmZvcmNl
RW5hYmxlUGFnZVNjYWxlRmFjdG9yKToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgor
ICAgICAgICAoV2ViS2l0OjpXZWJWaWV3SW1wbDo6c2V0SXNBY2NlbGVyYXRlZENvbXBvc2l0aW5n
QWN0aXZlKToKKwogMjAxMi0wNS0yMyAgQW50dGkgS29pdmlzdG8gIDxhbnR0aUBhcHBsZS5jb20+
CiAKICAgICAgICAgQnVpbGQgZml4LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9wdWJsaWMvV2ViU2V0dGluZ3MuaCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dl
YlNldHRpbmdzLmgKaW5kZXggNzkzNzhmNmUxMDM2YzA0OGIyYzFlZjVkYTQyMzk4YmQ1MzgxYjI3
MC4uZTM2NjljMjZiYzM1ZTY5MTlmNWEyN2VmYmYwZTZlYWRiMmNjNjlkNCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaAorKysgYi9Tb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0aW5ncy5oCkBAIC0xNTEsNyArMTUxLDcgQEAg
cHVibGljOgogICAgIHZpcnR1YWwgYm9vbCB2aWV3cG9ydEVuYWJsZWQoKSBjb25zdCA9IDA7CiAg
ICAgdmlydHVhbCB2b2lkIHNldERlZmF1bHRUaWxlU2l6ZShXZWJTaXplKSA9IDA7CiAgICAgdmly
dHVhbCB2b2lkIHNldE1heFVudGlsZWRMYXllclNpemUoV2ViU2l6ZSkgPSAwOwotCisgICAgdmly
dHVhbCB2b2lkIHNldEZvcmNlRW5hYmxlUGFnZVNjYWxlRmFjdG9yKGJvb2wpID0gMDsKIAogcHJv
dGVjdGVkOgogICAgIH5XZWJTZXR0aW5ncygpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21p
dW0vc3JjL1dlYlNldHRpbmdzSW1wbC5jcHAKaW5kZXggMTVmOWQ5ODdkMzkyMzgyODE0NGMwMjM3
ZGExY2I3ZTIzN2IwNmQ3OC4uZjA1MmFiNjgwNWU4ODJlZDMzODhmMjQyYWUxYzNkOGJiZjU4Y2My
YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBs
LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3Bw
CkBAIC01Miw2ICs1Miw3IEBAIFdlYlNldHRpbmdzSW1wbDo6V2ViU2V0dGluZ3NJbXBsKFNldHRp
bmdzKiBzZXR0aW5ncykKICAgICAsIG1fc2hvd1BhaW50UmVjdHMoZmFsc2UpCiAgICAgLCBtX3Zp
ZXdwb3J0RW5hYmxlZChmYWxzZSkKICAgICAsIG1fYXBwbHlEZWZhdWx0RGV2aWNlU2NhbGVGYWN0
b3JJbkNvbXBvc2l0b3IoZmFsc2UpCisgICAgLCBtX2ZvcmNlRW5hYmxlUGFnZVNjYWxlRmFjdG9y
KGZhbHNlKQogICAgICwgbV9kZWZhdWx0VGlsZVNpemUoV2ViU2l6ZSgyNTYsIDI1NikpCiAgICAg
LCBtX21heFVudGlsZWRMYXllclNpemUoV2ViU2l6ZSg1MTIsIDUxMikpCiB7CkBAIC02MDEsNCAr
NjAyLDkgQEAgdm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldE1heFVudGlsZWRMYXllclNpemUoV2Vi
U2l6ZSBzaXplKQogICAgIG1fbWF4VW50aWxlZExheWVyU2l6ZSA9IHNpemU7CiB9CiAKK3ZvaWQg
V2ViU2V0dGluZ3NJbXBsOjpzZXRGb3JjZUVuYWJsZVBhZ2VTY2FsZUZhY3Rvcihib29sIGVuYWJs
ZSkKK3sKKyAgICBtX2ZvcmNlRW5hYmxlUGFnZVNjYWxlRmFjdG9yID0gZW5hYmxlOworfQorCiB9
IC8vIG5hbWVzcGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlNldHRpbmdzSW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0
dGluZ3NJbXBsLmgKaW5kZXggYTA1MWEwMmQyOTU5YjVjNWE5NjRjODkxMTJlNDU1YWFkYWI5NjY1
MC4uZmM4OWU5Y2I3M2YzMWZkN2QwOTgzNDljYzQwOTBkNWJhNDc3ZDg0MCAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKKysrIGIvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKQEAgLTE0NSwxMSArMTQ1LDEz
IEBAIHB1YmxpYzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0Vmlld3BvcnRFbmFibGVkKGJvb2wpOwog
ICAgIHZpcnR1YWwgdm9pZCBzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZShib29s
KTsKICAgICB2aXJ0dWFsIGJvb2wgdmlld3BvcnRFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV92
aWV3cG9ydEVuYWJsZWQ7IH0KKyAgICB2aXJ0dWFsIHZvaWQgc2V0Rm9yY2VFbmFibGVQYWdlU2Nh
bGVGYWN0b3IoYm9vbCk7CiAKICAgICBib29sIHNob3dGUFNDb3VudGVyKCkgY29uc3QgeyByZXR1
cm4gbV9zaG93RlBTQ291bnRlcjsgfQogICAgIGJvb2wgc2hvd1BsYXRmb3JtTGF5ZXJUcmVlKCkg
Y29uc3QgeyByZXR1cm4gbV9zaG93UGxhdGZvcm1MYXllclRyZWU7IH0KICAgICBib29sIHNob3dQ
YWludFJlY3RzKCkgY29uc3QgeyByZXR1cm4gbV9zaG93UGFpbnRSZWN0czsgfQogICAgIGJvb2wg
YXBwbHlEZWZhdWx0RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSBjb25zdCB7IHJldHVy
biBtX2FwcGx5RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yOyB9CisgICAgYm9v
bCBmb3JjZUVuYWJsZVBhZ2VTY2FsZUZhY3RvcigpIGNvbnN0IHsgcmV0dXJuIG1fZm9yY2VFbmFi
bGVQYWdlU2NhbGVGYWN0b3I7IH0KICAgICBXZWJTaXplIGRlZmF1bHRUaWxlU2l6ZSgpIGNvbnN0
IHsgcmV0dXJuIG1fZGVmYXVsdFRpbGVTaXplOyB9CiAgICAgV2ViU2l6ZSBtYXhVbnRpbGVkTGF5
ZXJTaXplKCkgY29uc3QgeyByZXR1cm4gbV9tYXhVbnRpbGVkTGF5ZXJTaXplOyB9CiAKQEAgLTE2
MCw2ICsxNjIsNyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9zaG93UGFpbnRSZWN0czsKICAgICBi
b29sIG1fdmlld3BvcnRFbmFibGVkOwogICAgIGJvb2wgbV9hcHBseURlZmF1bHREZXZpY2VTY2Fs
ZUZhY3RvckluQ29tcG9zaXRvcjsKKyAgICBib29sIG1fZm9yY2VFbmFibGVQYWdlU2NhbGVGYWN0
b3I7CiAgICAgV2ViU2l6ZSBtX2RlZmF1bHRUaWxlU2l6ZTsKICAgICBXZWJTaXplIG1fbWF4VW50
aWxlZExheWVyU2l6ZTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Ny
Yy9XZWJWaWV3SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1w
bC5jcHAKaW5kZXggM2M0MjAyMzljNzBkN2JlNmI4YTMyMDk3MTYxMTUwMWMzNzhjMThjMy4uNTVh
NDM4ZjJkYjI5N2JlNmQzMjlmZDc2M2I3ODNiMDUwODgxYmYyNSAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcApAQCAtMzQ2MCw3ICszNDYwLDggQEAgdm9pZCBX
ZWJWaWV3SW1wbDo6c2V0SXNBY2NlbGVyYXRlZENvbXBvc2l0aW5nQWN0aXZlKGJvb2wgYWN0aXZl
KQogICAgICAgICAgICAgc2V0RGV2aWNlU2NhbGVGYWN0b3IobV9kZXZpY2VTY2FsZUluQ29tcG9z
aXRvcik7CiAgICAgICAgICAgICAvLyBXaGVuIGFwcGx5aW5nIGEgc2NhbGUgZmFjdG9yIGluIHRo
ZSBjb21wb3NpdG9yLCB3ZSBkaXNhbGxvdyBwYWdlCiAgICAgICAgICAgICAvLyBzY2FsaW5nIGFz
IHRoZXkgYXJlIGN1cnJlbnRseSBpbmNvbXBhdGlibGUuCi0gICAgICAgICAgICBzZXRQYWdlU2Nh
bGVGYWN0b3JMaW1pdHMoMSwgMSk7CisgICAgICAgICAgICBpZiAoIW1fd2ViU2V0dGluZ3MtPmZv
cmNlRW5hYmxlUGFnZVNjYWxlRmFjdG9yKCkpCisgICAgICAgICAgICAgICAgc2V0UGFnZVNjYWxl
RmFjdG9yTGltaXRzKDEsIDEpOwogICAgICAgICB9CiAKICAgICAgICAgbV9sYXllclRyZWVWaWV3
LmluaXRpYWxpemUodGhpcywgbV9yb290TGF5ZXIsIGxheWVyVHJlZVZpZXdTZXR0aW5ncyk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>143890</attachid>
            <date>2012-05-24 13:56:10 -0700</date>
            <delta_ts>2012-05-24 15:00:57 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-87415-20120524165609.patch</filename>
            <type>text/plain</type>
            <size>5005</size>
            <attacher name="Sadrul Habib Chowdhury">sadrul</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE4NDA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDY1MDhjNmUzOWRjNWQzMWQyMWVjM2M4OGIzMmYzNmNjYjA3NzU1ZTAuLjMwOTNkOGQxZjdlNTY5
ODVlYjcxZjRhMDQyN2FhMzNlMjZmNTNiOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMjUgQEAKKzIwMTItMDUtMjQgIFNhZHJ1bCBIYWJpYiBDaG93ZGh1cnkgIDxzYWRy
dWxAY2hyb21pdW0ub3JnPgorCisgICAgICAgIEFkZCBhIGZsYWcgZm9yIGVuYWJsaW5nIHBhZ2Ut
c2NhbGUtZmFjdG9yIGV2ZW4gd2hlbiBkZXZpY2Utc2NhbGUtZmFjdG9yIGlzIHVzZWQgaW4gdGhl
IGNvbXBvc2l0b3IuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD04NzQxNQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIEFkZGluZyBhIGZsYWcgdG8gZW5hYmxlIHBhZ2Utc2NhbGUtZmFjdG9yIGV2ZW4gd2hlbiBk
ZXZpY2Utc2NhbGUtZmFjdG9yIGlzCisgICAgICAgIHVzZWQgaW4gdGhlIGNvbXBvc2l0b3Igd2ls
bCBlbmFibGUgZGV2ZWxvcGVycyB0byBmaW5kIGFuZCBmaXggdmFyaW91cyBidWdzCisgICAgICAg
IHRoYXQgc2hvdyB1cC4KKworICAgICAgICAqIHB1YmxpYy9XZWJTZXR0aW5ncy5oOgorICAgICAg
ICAqIHNyYy9XZWJTZXR0aW5nc0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0OjpXZWJTZXR0aW5n
c0ltcGw6OldlYlNldHRpbmdzSW1wbCk6CisgICAgICAgIChXZWJLaXQ6OldlYlNldHRpbmdzSW1w
bDo6c2V0Rm9yY2VFbmFibGVQYWdlU2NhbGVGYWN0b3IpOgorICAgICAgICAoV2ViS2l0KToKKyAg
ICAgICAgKiBzcmMvV2ViU2V0dGluZ3NJbXBsLmg6CisgICAgICAgIChXZWJTZXR0aW5nc0ltcGwp
OgorICAgICAgICAoV2ViS2l0OjpXZWJTZXR0aW5nc0ltcGw6OmZvcmNlRW5hYmxlUGFnZVNjYWxl
RmFjdG9yKToKKyAgICAgICAgKiBzcmMvV2ViVmlld0ltcGwuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJWaWV3SW1wbDo6c2V0SXNBY2NlbGVyYXRlZENvbXBvc2l0aW5nQWN0aXZlKToKKwogMjAx
Mi0wNS0yNCAgSm9obiBNZWxsb3IgIDxqb2hubWVAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIEZv
bnQgQm9vc3Rpbmc6IEFkZCBjb21waWxlIGZsYWcgYW5kIHJ1bnRpbWUgc2V0dGluZwpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMvV2ViU2V0dGluZ3MuaCBiL1NvdXJj
ZS9XZWJLaXQvY2hyb21pdW0vcHVibGljL1dlYlNldHRpbmdzLmgKaW5kZXggMzA4OWIwYmRjNGZh
NWM4ZWYwYzU2ZDM3Y2UyZGEyZmExZjMwYTIxNi4uMzIwNGJhNzM3OTk4NWI5MjUwNjczODBkZWUx
OTFlMzdhOTU0M2UzNCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9wdWJsaWMv
V2ViU2V0dGluZ3MuaAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3B1YmxpYy9XZWJTZXR0
aW5ncy5oCkBAIC0xNTMsNyArMTUzLDcgQEAgcHVibGljOgogICAgIHZpcnR1YWwgdm9pZCBzZXRE
ZWZhdWx0VGlsZVNpemUoV2ViU2l6ZSkgPSAwOwogICAgIHZpcnR1YWwgdm9pZCBzZXRNYXhVbnRp
bGVkTGF5ZXJTaXplKFdlYlNpemUpID0gMDsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Rml4ZWRQb3Np
dGlvbkNyZWF0ZXNTdGFja2luZ0NvbnRleHQoYm9vbCkgPSAwOwotCisgICAgdmlydHVhbCB2b2lk
IHNldEZvcmNlRW5hYmxlUGFnZVNjYWxlRmFjdG9yKGJvb2wpID0gMDsKIAogcHJvdGVjdGVkOgog
ICAgIH5XZWJTZXR0aW5ncygpIHsgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1
bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcCBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dl
YlNldHRpbmdzSW1wbC5jcHAKaW5kZXggNzg3NzBhOTVjMDg5NmExNmU4MmQ0ZWExNzc1ZDQxNjgy
ZWI4N2NlYi4uY2QxODY1MDdhMjdjNTk0ODEyNzI4OTkwMjQ5NTdmMzE5YzE2YTA0OCAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJTZXR0aW5nc0ltcGwuY3BwCkBAIC01Miw2
ICs1Miw3IEBAIFdlYlNldHRpbmdzSW1wbDo6V2ViU2V0dGluZ3NJbXBsKFNldHRpbmdzKiBzZXR0
aW5ncykKICAgICAsIG1fc2hvd1BhaW50UmVjdHMoZmFsc2UpCiAgICAgLCBtX3ZpZXdwb3J0RW5h
YmxlZChmYWxzZSkKICAgICAsIG1fYXBwbHlEZWZhdWx0RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBv
c2l0b3IoZmFsc2UpCisgICAgLCBtX2ZvcmNlRW5hYmxlUGFnZVNjYWxlRmFjdG9yKGZhbHNlKQog
ICAgICwgbV9kZWZhdWx0VGlsZVNpemUoV2ViU2l6ZSgyNTYsIDI1NikpCiAgICAgLCBtX21heFVu
dGlsZWRMYXllclNpemUoV2ViU2l6ZSg1MTIsIDUxMikpCiB7CkBAIC02MTEsNCArNjEyLDkgQEAg
dm9pZCBXZWJTZXR0aW5nc0ltcGw6OnNldE1heFVudGlsZWRMYXllclNpemUoV2ViU2l6ZSBzaXpl
KQogICAgIG1fbWF4VW50aWxlZExheWVyU2l6ZSA9IHNpemU7CiB9CiAKK3ZvaWQgV2ViU2V0dGlu
Z3NJbXBsOjpzZXRGb3JjZUVuYWJsZVBhZ2VTY2FsZUZhY3Rvcihib29sIGVuYWJsZSkKK3sKKyAg
ICBtX2ZvcmNlRW5hYmxlUGFnZVNjYWxlRmFjdG9yID0gZW5hYmxlOworfQorCiB9IC8vIG5hbWVz
cGFjZSBXZWJLaXQKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vc3JjL1dlYlNl
dHRpbmdzSW1wbC5oIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBs
LmgKaW5kZXggMWMzYjBlN2UyOWVlOWY0NDViMWRlM2YxZGRiZDJmZDlmNjdlY2Y4Ny4uOTEwMWNk
OTlkM2Q4ODU0MTFjZDBiMmNiOGQ3ZGIwOTQ2ZDJmMzAyZCAxMDA2NDQKLS0tIGEvU291cmNlL1dl
YktpdC9jaHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKKysrIGIvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViU2V0dGluZ3NJbXBsLmgKQEAgLTE0NywxMSArMTQ3LDEzIEBAIHB1Ymxp
YzoKICAgICB2aXJ0dWFsIHZvaWQgc2V0Vmlld3BvcnRFbmFibGVkKGJvb2wpOwogICAgIHZpcnR1
YWwgdm9pZCBzZXRNZWRpYVBsYXliYWNrUmVxdWlyZXNVc2VyR2VzdHVyZShib29sKTsKICAgICB2
aXJ0dWFsIGJvb2wgdmlld3BvcnRFbmFibGVkKCkgY29uc3QgeyByZXR1cm4gbV92aWV3cG9ydEVu
YWJsZWQ7IH0KKyAgICB2aXJ0dWFsIHZvaWQgc2V0Rm9yY2VFbmFibGVQYWdlU2NhbGVGYWN0b3Io
Ym9vbCk7CiAKICAgICBib29sIHNob3dGUFNDb3VudGVyKCkgY29uc3QgeyByZXR1cm4gbV9zaG93
RlBTQ291bnRlcjsgfQogICAgIGJvb2wgc2hvd1BsYXRmb3JtTGF5ZXJUcmVlKCkgY29uc3QgeyBy
ZXR1cm4gbV9zaG93UGxhdGZvcm1MYXllclRyZWU7IH0KICAgICBib29sIHNob3dQYWludFJlY3Rz
KCkgY29uc3QgeyByZXR1cm4gbV9zaG93UGFpbnRSZWN0czsgfQogICAgIGJvb2wgYXBwbHlEZWZh
dWx0RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IoKSBjb25zdCB7IHJldHVybiBtX2FwcGx5
RGVmYXVsdERldmljZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yOyB9CisgICAgYm9vbCBmb3JjZUVu
YWJsZVBhZ2VTY2FsZUZhY3RvcigpIGNvbnN0IHsgcmV0dXJuIG1fZm9yY2VFbmFibGVQYWdlU2Nh
bGVGYWN0b3I7IH0KICAgICBXZWJTaXplIGRlZmF1bHRUaWxlU2l6ZSgpIGNvbnN0IHsgcmV0dXJu
IG1fZGVmYXVsdFRpbGVTaXplOyB9CiAgICAgV2ViU2l6ZSBtYXhVbnRpbGVkTGF5ZXJTaXplKCkg
Y29uc3QgeyByZXR1cm4gbV9tYXhVbnRpbGVkTGF5ZXJTaXplOyB9CiAKQEAgLTE2Miw2ICsxNjQs
NyBAQCBwcml2YXRlOgogICAgIGJvb2wgbV9zaG93UGFpbnRSZWN0czsKICAgICBib29sIG1fdmll
d3BvcnRFbmFibGVkOwogICAgIGJvb2wgbV9hcHBseURlZmF1bHREZXZpY2VTY2FsZUZhY3Rvcklu
Q29tcG9zaXRvcjsKKyAgICBib29sIG1fZm9yY2VFbmFibGVQYWdlU2NhbGVGYWN0b3I7CiAgICAg
V2ViU2l6ZSBtX2RlZmF1bHRUaWxlU2l6ZTsKICAgICBXZWJTaXplIG1fbWF4VW50aWxlZExheWVy
U2l6ZTsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3
SW1wbC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKaW5k
ZXggYTQ3Y2IyODUwODA1NjVjYTA2NDRkNDUwZmY5YzIyOWZjZmZlZTNiZi4uZDRmZTY4MTI0MDI1
NTQ4ZTc1YTI0Nzk5YTIyZGNmZjQ4YmVhN2Y4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9j
aHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0v
c3JjL1dlYlZpZXdJbXBsLmNwcApAQCAtMzQ2MCw3ICszNDYwLDggQEAgdm9pZCBXZWJWaWV3SW1w
bDo6c2V0SXNBY2NlbGVyYXRlZENvbXBvc2l0aW5nQWN0aXZlKGJvb2wgYWN0aXZlKQogICAgICAg
ICAgICAgc2V0RGV2aWNlU2NhbGVGYWN0b3IobV9kZXZpY2VTY2FsZUluQ29tcG9zaXRvcik7CiAg
ICAgICAgICAgICAvLyBXaGVuIGFwcGx5aW5nIGEgc2NhbGUgZmFjdG9yIGluIHRoZSBjb21wb3Np
dG9yLCB3ZSBkaXNhbGxvdyBwYWdlCiAgICAgICAgICAgICAvLyBzY2FsaW5nIGFzIHRoZXkgYXJl
IGN1cnJlbnRseSBpbmNvbXBhdGlibGUuCi0gICAgICAgICAgICBzZXRQYWdlU2NhbGVGYWN0b3JM
aW1pdHMoMSwgMSk7CisgICAgICAgICAgICBpZiAoIW1fd2ViU2V0dGluZ3MtPmZvcmNlRW5hYmxl
UGFnZVNjYWxlRmFjdG9yKCkpCisgICAgICAgICAgICAgICAgc2V0UGFnZVNjYWxlRmFjdG9yTGlt
aXRzKDEsIDEpOwogICAgICAgICB9CiAKICAgICAgICAgbV9sYXllclRyZWVWaWV3LmluaXRpYWxp
emUodGhpcywgbV9yb290TGF5ZXIsIGxheWVyVHJlZVZpZXdTZXR0aW5ncyk7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>143903</attachid>
            <date>2012-05-24 15:01:04 -0700</date>
            <delta_ts>2012-05-24 16:02:47 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-87415-20120524180103.patch</filename>
            <type>text/plain</type>
            <size>2739</size>
            <attacher name="Sadrul Habib Chowdhury">sadrul</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE4NDA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDY1MDhjNmUzOWRjNWQzMWQyMWVjM2M4OGIzMmYzNmNjYjA3NzU1ZTAuLjkzZGYxMzNkZGYyNzE3
NDgwZmU3OGY3ODIxYjRjNDUyNzkxY2VmOTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTMgQEAKKzIwMTItMDUtMjQgIFNhZHJ1bCBIYWJpYiBDaG93ZGh1cnkgIDxzYWRy
dWxAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJlc2V0IG1pbmltdW0vbWF4aW11bSBwYWdlIHNj
YWxlIGZhY3RvcnMgd2hlbiBwYWdlLXNjYWxlLWZhY3RvciBsaW1pdHMgYXJlIHVuc2V0LgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODc0MTUKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHNyYy9XZWJWaWV3
SW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZXdJbXBsOjpjb21wdXRlUGFnZVNjYWxl
RmFjdG9yTGltaXRzKToKKwogMjAxMi0wNS0yNCAgSm9obiBNZWxsb3IgIDxqb2hubWVAY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIEZvbnQgQm9vc3Rpbmc6IEFkZCBjb21waWxlIGZsYWcgYW5kIHJ1
bnRpbWUgc2V0dGluZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
Vmlld0ltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3Bw
CmluZGV4IGE0N2NiMjg1MDgwNTY1Y2EwNjQ0ZDQ1MGZmOWMyMjlmY2ZmZWUzYmYuLjM1ODBkZWZm
NmM1YjZjZDA4ZmU0ZjZiNDVhZDAxYmNkYTU0NTYzNWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKQEAgLTI1MTEsMTQgKzI1MTEsMTkgQEAgdm9pZCBXZWJW
aWV3SW1wbDo6c2V0UGFnZVNjYWxlRmFjdG9yTGltaXRzKGZsb2F0IG1pblBhZ2VTY2FsZSwgZmxv
YXQgbWF4UGFnZVNjYWwKIAogYm9vbCBXZWJWaWV3SW1wbDo6Y29tcHV0ZVBhZ2VTY2FsZUZhY3Rv
ckxpbWl0cygpCiB7Ci0gICAgaWYgKG1fcGFnZURlZmluZWRNaW5pbXVtUGFnZVNjYWxlRmFjdG9y
ID09IC0xIHx8IG1fcGFnZURlZmluZWRNYXhpbXVtUGFnZVNjYWxlRmFjdG9yID09IC0xKQorICAg
IGlmICgobV9wYWdlRGVmaW5lZE1pbmltdW1QYWdlU2NhbGVGYWN0b3IgPT0gLTEgfHwgbV9wYWdl
RGVmaW5lZE1heGltdW1QYWdlU2NhbGVGYWN0b3IgPT0gLTEpICYmIG1fbWluaW11bVBhZ2VTY2Fs
ZUZhY3RvciA9PSBtaW5QYWdlU2NhbGVGYWN0b3IgJiYgbV9tYXhpbXVtUGFnZVNjYWxlRmFjdG9y
ID09IG1heFBhZ2VTY2FsZUZhY3RvcikKICAgICAgICAgcmV0dXJuIGZhbHNlOwogCiAgICAgaWYg
KCFtYWluRnJhbWUoKSB8fCAhcGFnZSgpIHx8ICFwYWdlKCktPm1haW5GcmFtZSgpIHx8ICFwYWdl
KCktPm1haW5GcmFtZSgpLT52aWV3KCkpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIG1f
bWluaW11bVBhZ2VTY2FsZUZhY3RvciA9IG1pbihtYXgobV9wYWdlRGVmaW5lZE1pbmltdW1QYWdl
U2NhbGVGYWN0b3IsIG1pblBhZ2VTY2FsZUZhY3RvciksIG1heFBhZ2VTY2FsZUZhY3RvcikgKiAo
ZGV2aWNlU2NhbGVGYWN0b3IoKSAvIG1fZGV2aWNlU2NhbGVJbkNvbXBvc2l0b3IpOwotICAgIG1f
bWF4aW11bVBhZ2VTY2FsZUZhY3RvciA9IG1heChtaW4obV9wYWdlRGVmaW5lZE1heGltdW1QYWdl
U2NhbGVGYWN0b3IsIG1heFBhZ2VTY2FsZUZhY3RvciksIG1pblBhZ2VTY2FsZUZhY3RvcikgKiAo
ZGV2aWNlU2NhbGVGYWN0b3IoKSAvIG1fZGV2aWNlU2NhbGVJbkNvbXBvc2l0b3IpOworICAgIGlm
IChtX3BhZ2VEZWZpbmVkTWluaW11bVBhZ2VTY2FsZUZhY3RvciA9PSAtMSB8fCBtX3BhZ2VEZWZp
bmVkTWF4aW11bVBhZ2VTY2FsZUZhY3RvciA9PSAtMSkgeworICAgICAgICBtX21pbmltdW1QYWdl
U2NhbGVGYWN0b3IgPSBtaW5QYWdlU2NhbGVGYWN0b3I7CisgICAgICAgIG1fbWF4aW11bVBhZ2VT
Y2FsZUZhY3RvciA9IG1heFBhZ2VTY2FsZUZhY3RvcjsKKyAgICB9IGVsc2UgeworICAgICAgICBt
X21pbmltdW1QYWdlU2NhbGVGYWN0b3IgPSBtaW4obWF4KG1fcGFnZURlZmluZWRNaW5pbXVtUGFn
ZVNjYWxlRmFjdG9yLCBtaW5QYWdlU2NhbGVGYWN0b3IpLCBtYXhQYWdlU2NhbGVGYWN0b3IpICog
KGRldmljZVNjYWxlRmFjdG9yKCkgLyBtX2RldmljZVNjYWxlSW5Db21wb3NpdG9yKTsKKyAgICAg
ICAgbV9tYXhpbXVtUGFnZVNjYWxlRmFjdG9yID0gbWF4KG1pbihtX3BhZ2VEZWZpbmVkTWF4aW11
bVBhZ2VTY2FsZUZhY3RvciwgbWF4UGFnZVNjYWxlRmFjdG9yKSwgbWluUGFnZVNjYWxlRmFjdG9y
KSAqIChkZXZpY2VTY2FsZUZhY3RvcigpIC8gbV9kZXZpY2VTY2FsZUluQ29tcG9zaXRvcik7Cisg
ICAgfQogCiAgICAgaW50IHZpZXdXaWR0aE5vdEluY2x1ZGluZ1Njcm9sbGJhcnMgPSBwYWdlKCkt
Pm1haW5GcmFtZSgpLT52aWV3KCktPnZpc2libGVDb250ZW50UmVjdChmYWxzZSkud2lkdGgoKTsK
ICAgICBpbnQgY29udGVudHNXaWR0aCA9IG1haW5GcmFtZSgpLT5jb250ZW50c1NpemUoKS53aWR0
aDsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>143913</attachid>
            <date>2012-05-24 16:02:52 -0700</date>
            <delta_ts>2012-05-29 21:28:11 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-87415-20120524190251.patch</filename>
            <type>text/plain</type>
            <size>2813</size>
            <attacher name="Sadrul Habib Chowdhury">sadrul</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE4NDA5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4
IDY1MDhjNmUzOWRjNWQzMWQyMWVjM2M4OGIzMmYzNmNjYjA3NzU1ZTAuLjkzZGYxMzNkZGYyNzE3
NDgwZmU3OGY3ODIxYjRjNDUyNzkxY2VmOTAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBA
IC0xLDMgKzEsMTMgQEAKKzIwMTItMDUtMjQgIFNhZHJ1bCBIYWJpYiBDaG93ZGh1cnkgIDxzYWRy
dWxAY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJlc2V0IG1pbmltdW0vbWF4aW11bSBwYWdlIHNj
YWxlIGZhY3RvcnMgd2hlbiBwYWdlLXNjYWxlLWZhY3RvciBsaW1pdHMgYXJlIHVuc2V0LgorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODc0MTUKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHNyYy9XZWJWaWV3
SW1wbC5jcHA6CisgICAgICAgIChXZWJLaXQ6OldlYlZpZXdJbXBsOjpjb21wdXRlUGFnZVNjYWxl
RmFjdG9yTGltaXRzKToKKwogMjAxMi0wNS0yNCAgSm9obiBNZWxsb3IgIDxqb2hubWVAY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIEZvbnQgQm9vc3Rpbmc6IEFkZCBjb21waWxlIGZsYWcgYW5kIHJ1
bnRpbWUgc2V0dGluZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2Vi
Vmlld0ltcGwuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9zcmMvV2ViVmlld0ltcGwuY3Bw
CmluZGV4IGE0N2NiMjg1MDgwNTY1Y2EwNjQ0ZDQ1MGZmOWMyMjlmY2ZmZWUzYmYuLmJhYzI3Zjg5
OGUwMmMxMGNkYWRmMWNkZjEyMTVlNGEwZjUxYzg1YTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vc3JjL1dlYlZpZXdJbXBsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2Nocm9t
aXVtL3NyYy9XZWJWaWV3SW1wbC5jcHAKQEAgLTI1MTEsMTQgKzI1MTEsMjEgQEAgdm9pZCBXZWJW
aWV3SW1wbDo6c2V0UGFnZVNjYWxlRmFjdG9yTGltaXRzKGZsb2F0IG1pblBhZ2VTY2FsZSwgZmxv
YXQgbWF4UGFnZVNjYWwKIAogYm9vbCBXZWJWaWV3SW1wbDo6Y29tcHV0ZVBhZ2VTY2FsZUZhY3Rv
ckxpbWl0cygpCiB7Ci0gICAgaWYgKG1fcGFnZURlZmluZWRNaW5pbXVtUGFnZVNjYWxlRmFjdG9y
ID09IC0xIHx8IG1fcGFnZURlZmluZWRNYXhpbXVtUGFnZVNjYWxlRmFjdG9yID09IC0xKQorICAg
IGJvb2wgY3VycmVudExpbWl0c0FyZURlZmF1bHRzID0gbV9taW5pbXVtUGFnZVNjYWxlRmFjdG9y
ID09IG1pblBhZ2VTY2FsZUZhY3RvciAmJiBtX21heGltdW1QYWdlU2NhbGVGYWN0b3IgPT0gbWF4
UGFnZVNjYWxlRmFjdG9yOworICAgIGJvb2wgcGFnZURlZmluZWRMaW1pdHNBcmVEZWZhdWx0cyA9
IG1fcGFnZURlZmluZWRNaW5pbXVtUGFnZVNjYWxlRmFjdG9yID09IC0xIHx8IG1fcGFnZURlZmlu
ZWRNYXhpbXVtUGFnZVNjYWxlRmFjdG9yID09IC0xOworICAgIGlmIChwYWdlRGVmaW5lZExpbWl0
c0FyZURlZmF1bHRzICYmIGN1cnJlbnRMaW1pdHNBcmVEZWZhdWx0cykKICAgICAgICAgcmV0dXJu
IGZhbHNlOwogCiAgICAgaWYgKCFtYWluRnJhbWUoKSB8fCAhcGFnZSgpIHx8ICFwYWdlKCktPm1h
aW5GcmFtZSgpIHx8ICFwYWdlKCktPm1haW5GcmFtZSgpLT52aWV3KCkpCiAgICAgICAgIHJldHVy
biBmYWxzZTsKIAotICAgIG1fbWluaW11bVBhZ2VTY2FsZUZhY3RvciA9IG1pbihtYXgobV9wYWdl
RGVmaW5lZE1pbmltdW1QYWdlU2NhbGVGYWN0b3IsIG1pblBhZ2VTY2FsZUZhY3RvciksIG1heFBh
Z2VTY2FsZUZhY3RvcikgKiAoZGV2aWNlU2NhbGVGYWN0b3IoKSAvIG1fZGV2aWNlU2NhbGVJbkNv
bXBvc2l0b3IpOwotICAgIG1fbWF4aW11bVBhZ2VTY2FsZUZhY3RvciA9IG1heChtaW4obV9wYWdl
RGVmaW5lZE1heGltdW1QYWdlU2NhbGVGYWN0b3IsIG1heFBhZ2VTY2FsZUZhY3RvciksIG1pblBh
Z2VTY2FsZUZhY3RvcikgKiAoZGV2aWNlU2NhbGVGYWN0b3IoKSAvIG1fZGV2aWNlU2NhbGVJbkNv
bXBvc2l0b3IpOworICAgIGlmIChwYWdlRGVmaW5lZExpbWl0c0FyZURlZmF1bHRzKSB7CisgICAg
ICAgIG1fbWluaW11bVBhZ2VTY2FsZUZhY3RvciA9IG1pblBhZ2VTY2FsZUZhY3RvcjsKKyAgICAg
ICAgbV9tYXhpbXVtUGFnZVNjYWxlRmFjdG9yID0gbWF4UGFnZVNjYWxlRmFjdG9yOworICAgIH0g
ZWxzZSB7CisgICAgICAgIG1fbWluaW11bVBhZ2VTY2FsZUZhY3RvciA9IG1pbihtYXgobV9wYWdl
RGVmaW5lZE1pbmltdW1QYWdlU2NhbGVGYWN0b3IsIG1pblBhZ2VTY2FsZUZhY3RvciksIG1heFBh
Z2VTY2FsZUZhY3RvcikgKiAoZGV2aWNlU2NhbGVGYWN0b3IoKSAvIG1fZGV2aWNlU2NhbGVJbkNv
bXBvc2l0b3IpOworICAgICAgICBtX21heGltdW1QYWdlU2NhbGVGYWN0b3IgPSBtYXgobWluKG1f
cGFnZURlZmluZWRNYXhpbXVtUGFnZVNjYWxlRmFjdG9yLCBtYXhQYWdlU2NhbGVGYWN0b3IpLCBt
aW5QYWdlU2NhbGVGYWN0b3IpICogKGRldmljZVNjYWxlRmFjdG9yKCkgLyBtX2RldmljZVNjYWxl
SW5Db21wb3NpdG9yKTsKKyAgICB9CiAKICAgICBpbnQgdmlld1dpZHRoTm90SW5jbHVkaW5nU2Ny
b2xsYmFycyA9IHBhZ2UoKS0+bWFpbkZyYW1lKCktPnZpZXcoKS0+dmlzaWJsZUNvbnRlbnRSZWN0
KGZhbHNlKS53aWR0aCgpOwogICAgIGludCBjb250ZW50c1dpZHRoID0gbWFpbkZyYW1lKCktPmNv
bnRlbnRzU2l6ZSgpLndpZHRoOwo=
</data>
<flag name="review"
          id="150606"
          type_id="1"
          status="-"
          setter="jamesr"
    />
          </attachment>
      

    </bug>

</bugzilla>