<?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>108888</bug_id>
          
          <creation_ts>2013-02-04 18:59:30 -0800</creation_ts>
          <short_desc>Make ScrollView::paint() clip by visibleContentRect</short_desc>
          <delta_ts>2013-02-07 11:05:11 -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>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</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>1</everconfirmed>
          <reporter name="Alexandre Elias">aelias</reporter>
          <assigned_to name="Alexandre Elias">aelias</assigned_to>
          <cc>aelias</cc>
    
    <cc>buildbot</cc>
    
    <cc>dglazkov</cc>
    
    <cc>mikhail.pozdnyakov</cc>
    
    <cc>rniwa</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>825021</commentid>
    <comment_count>0</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-02-04 18:59:30 -0800</bug_when>
    <thetext>Make ScrollView::paint() clip by visibleContentRect</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825022</commentid>
    <comment_count>1</comment_count>
      <attachid>186524</attachid>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-02-04 19:02:55 -0800</bug_when>
    <thetext>Created attachment 186524
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825030</commentid>
    <comment_count>2</comment_count>
      <attachid>186524</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2013-02-04 19:26:38 -0800</bug_when>
    <thetext>Comment on attachment 186524
Patch

Attachment 186524 did not pass mac-wk2-ews (mac-wk2):
Output: http://queues.webkit.org/results/16365611

New failing tests:
fast/media/viewport-media-query.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825040</commentid>
    <comment_count>3</comment_count>
      <attachid>186524</attachid>
    <who name="Rafael Brandao">rafael.lobo</who>
    <bug_when>2013-02-04 19:36:55 -0800</bug_when>
    <thetext>Comment on attachment 186524
Patch

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

I don&apos;t understand enough of this code, but is this going to affect the painting on WebPage::drawRect? What if I want to paint tiles that are outside the visible contents rect, can I still do it? My concern here is that on CoordinatedGraphics, there are heuristics to keep around tiles of non-visible areas (but still valid areas if you think in the frame itself) around the viewport so we can do scrolling on the UI while we get more tiles from uncovered areas in the meantime.

&gt; Source/WebCore/ChangeLog:9
&gt; +        are used, frameRect() and visibleContentRect(true).size() are

What is the later on in the end? You should probably try to name it and put into a function so places where this is used will be more readable.

&gt; Source/WebCore/platform/ScrollView.cpp:1055
&gt; +    documentDirtyRect.intersect(IntRect(IntPoint(), visibleContentRect(false).size()));

For example, here, what means this rect you&apos;re using? Using an auxiliary function would increase the legibility a lot.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825045</commentid>
    <comment_count>4</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-02-04 19:43:56 -0800</bug_when>
    <thetext>This change is supposed to be a no-op for most platforms.  This method was already clipping by the visible area, I just changed it to a slightly different definition of visible area.  If you examine what visibleContentRect does, it ends being sized the same as the frameRect() in the typical case (since width() calls frameRect().width()).

I&apos;ll edit for clarity.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825107</commentid>
    <comment_count>5</comment_count>
      <attachid>186524</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-04 21:19:02 -0800</bug_when>
    <thetext>Comment on attachment 186524
Patch

Attachment 186524 did not pass chromium-ews (chromium-xvfb):
Output: http://queues.webkit.org/results/16368512

New failing tests:
css2.1/20110323/replaced-intrinsic-ratio-001.htm
fast/frames/calculate-order.html
editing/execCommand/paste-2.html
editing/execCommand/find-after-replace.html
editing/selection/iframe.html
compositing/iframes/iframe-in-composited-layer.html
editing/selection/drag-to-contenteditable-iframe.html
editing/selection/4776665.html
fast/dom/Window/open-existing-pop-up-blocking.html
editing/selection/select-all-iframe.html
fast/dom/HTMLDocument/frameless-location-bugzilla10837.html
editing/pasteboard/drag-image-to-contenteditable-in-iframe.html
fast/frames/calculate-percentage.html
fast/frames/calculate-fixed.html
http/tests/misc/frame-access-during-load.html
editing/execCommand/paste-1.html
editing/pasteboard/subframe-dragndrop-1.html
fast/block/basic/013.html
editing/selection/4975120.html
compositing/iframes/iframe-copy-on-scroll.html
fast/frames/calculate-round.html
fast/frames/calculate-relative.html
fast/block/positioning/window-height-change.html
http/tests/navigation/javascriptlink-frames.html
compositing/iframes/scroll-grandchild-iframe.html
http/tests/misc/favicon-as-image.html
http/tests/navigation/error404-subframeload.html
fast/events/standalone-image-drag-to-editable.html</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825152</commentid>
    <comment_count>6</comment_count>
      <attachid>186549</attachid>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-02-04 22:44:31 -0800</bug_when>
    <thetext>Created attachment 186549
Patch

Switch origin to location() and add named variables</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825153</commentid>
    <comment_count>7</comment_count>
      <attachid>186550</attachid>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-02-04 22:45:56 -0800</bug_when>
    <thetext>Created attachment 186550
Patch

Fix scrollbar clip</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>825670</commentid>
    <comment_count>8</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-02-05 11:35:49 -0800</bug_when>
    <thetext>Levi, could you take a look?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>826813</commentid>
    <comment_count>9</comment_count>
      <attachid>186550</attachid>
    <who name="Levi Weintraub">leviw</who>
    <bug_when>2013-02-06 15:39:41 -0800</bug_when>
    <thetext>Comment on attachment 186550
Patch

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

&gt; Source/WebCore/platform/ScrollView.cpp:1056
&gt; +    IntRect visibleAreaWithoutScrollbars(location(), visibleContentRect(false).size());
&gt; +    documentDirtyRect.intersect(visibleAreaWithoutScrollbars);

Way cleaner, though I wish visibleContentRect took a named paramater instead of a boolean so this was clearer :-/</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>826822</commentid>
    <comment_count>10</comment_count>
      <attachid>186550</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-06 15:48:53 -0800</bug_when>
    <thetext>Comment on attachment 186550
Patch

Clearing flags on attachment: 186550

Committed r142045: &lt;http://trac.webkit.org/changeset/142045&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>826823</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-02-06 15:48:57 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827435</commentid>
    <comment_count>12</comment_count>
    <who name="Mikhail Pozdnyakov">mikhail.pozdnyakov</who>
    <bug_when>2013-02-07 06:36:01 -0800</bug_when>
    <thetext>This has broken qt and efl ports
https://bugs.webkit.org/show_bug.cgi?id=109185</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>827725</commentid>
    <comment_count>13</comment_count>
    <who name="Alexandre Elias">aelias</who>
    <bug_when>2013-02-07 11:05:11 -0800</bug_when>
    <thetext>Sorry about that.  Looks like you landed the correct fix that works for all ports in the other bug, thanks.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186524</attachid>
            <date>2013-02-04 19:02:55 -0800</date>
            <delta_ts>2013-02-04 22:44:29 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108888-20130204185933.patch</filename>
            <type>text/plain</type>
            <size>6602</size>
            <attacher name="Alexandre Elias">aelias</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNTc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWU4NzljZDNhOGY4M2Vl
MGRmZTM5OGJhMDc0ZTIwYzM3ODQyNDFlNC4uNjE1NDIxZWQ3OTNmNjM2ZTU1M2FmMzE3YWY2ZTVj
ZTkzODZjYjNhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEzLTAyLTA0ICBBbGV4
YW5kcmUgRWxpYXMgIDxhZWxpYXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIE1ha2UgU2Nyb2xs
Vmlldzo6cGFpbnQoKSBjbGlwIGJ5IHZpc2libGVDb250ZW50UmVjdAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA4ODg4CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hlbiBhcHBseVBhZ2VTY2FsZUZhY3Rv
ckluQ29tcG9zaXRvciBvciBmaXhlZFZpc2libGVDb250ZW50UmVjdAorICAgICAgICBhcmUgdXNl
ZCwgZnJhbWVSZWN0KCkgYW5kIHZpc2libGVDb250ZW50UmVjdCh0cnVlKS5zaXplKCkgYXJlCisg
ICAgICAgIG5vIGxvbmdlciBzeW5vbnltcywgYW5kIHRoZSBsYXR0ZXIgaXMgdGhlIG9uZSB0aGF0
IHNob3VsZCBiZQorICAgICAgICB1c2VkIGZvciBjbGlwcGluZyBwYWludHMuCisKKyAgICAgICAg
TmV3IFdlYkZyYW1lVGVzdDogcGFnZVNjYWxlRmFjdG9yU2NhbGVzUGFpbnRDbGlwLgorCisgICAg
ICAgICogcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxW
aWV3OjpwYWludCk6CisKIDIwMTMtMDItMDEgIEtlbnRhcm8gSGFyYSAgPGhhcmFrZW5AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxNDE1NDguCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDJmZGVlNzc3MmQyM2QyMWI0MWFmNDZiNDljOTViNTUx
NDgxMWY1YzguLmIzM2E4ZDY3ZGM5NDE1MWQ3Y2I2NmQ4YjFhYmNmNDVjZjYwOWJiNGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTMtMDItMDQgIEFsZXhh
bmRyZSBFbGlhcyAgPGFlbGlhc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgTWFrZSBTY3JvbGxW
aWV3OjpwYWludCgpIGNsaXAgYnkgdmlzaWJsZUNvbnRlbnRSZWN0CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDg4ODgKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIGFwcGx5UGFnZVNjYWxlRmFjdG9y
SW5Db21wb3NpdG9yIG9yIGZpeGVkVmlzaWJsZUNvbnRlbnRSZWN0CisgICAgICAgIGFyZSB1c2Vk
LCBmcmFtZVJlY3QoKSBhbmQgdmlzaWJsZUNvbnRlbnRSZWN0KHRydWUpLnNpemUoKSBhcmUKKyAg
ICAgICAgbm8gbG9uZ2VyIHN5bm9ueW1zLCBhbmQgdGhlIGxhdHRlciBpcyB0aGUgb25lIHRoYXQg
c2hvdWxkIGJlCisgICAgICAgIHVzZWQgZm9yIGNsaXBwaW5nIHBhaW50cy4KKworICAgICAgICBO
ZXcgV2ViRnJhbWVUZXN0OiBwYWdlU2NhbGVGYWN0b3JTY2FsZXNQYWludENsaXAuCisKKyAgICAg
ICAgKiB0ZXN0cy9XZWJGcmFtZVRlc3QuY3BwOgorCiAyMDEzLTAyLTAxICBLZW4gS2FuaWEgIDxr
a2FuaWFAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IEFkZCBzdXBwb3J0
IGZvciBoYW5kbGluZyBtb2RhbCBkaWFsb2dzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxWaWV3LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZp
ZXcuY3BwCmluZGV4IGE3MjdjNGFlNDY1MDcxMGY0YjkwOTlkNDUxYzVhZGYyNzQyZDExOTYuLmEw
YjFhMzU3N2UxZTZkZjdlMjViNDFhMzNmMmFlMGI5YzI2YjAwZTIgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1Njcm9sbFZpZXcuY3BwCkBAIC0xMDUxLDE0ICsxMDUxLDggQEAgdm9pZCBTY3JvbGxW
aWV3OjpwYWludChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEludFJlY3QmIHJlY3Qp
CiAKICAgICBub3RpZnlQYWdlVGhhdENvbnRlbnRBcmVhV2lsbFBhaW50KCk7CiAKLSAgICBJbnRS
ZWN0IGNsaXBSZWN0ID0gZnJhbWVSZWN0KCk7Ci0gICAgaWYgKHZlcnRpY2FsU2Nyb2xsYmFyKCkg
JiYgIXZlcnRpY2FsU2Nyb2xsYmFyKCktPmlzT3ZlcmxheVNjcm9sbGJhcigpKQotICAgICAgICBj
bGlwUmVjdC5zZXRXaWR0aChjbGlwUmVjdC53aWR0aCgpIC0gdmVydGljYWxTY3JvbGxiYXIoKS0+
d2lkdGgoKSk7Ci0gICAgaWYgKGhvcml6b250YWxTY3JvbGxiYXIoKSAmJiAhaG9yaXpvbnRhbFNj
cm9sbGJhcigpLT5pc092ZXJsYXlTY3JvbGxiYXIoKSkKLSAgICAgICAgY2xpcFJlY3Quc2V0SGVp
Z2h0KGNsaXBSZWN0LmhlaWdodCgpIC0gaG9yaXpvbnRhbFNjcm9sbGJhcigpLT5oZWlnaHQoKSk7
Ci0KICAgICBJbnRSZWN0IGRvY3VtZW50RGlydHlSZWN0ID0gcmVjdDsKLSAgICBkb2N1bWVudERp
cnR5UmVjdC5pbnRlcnNlY3QoY2xpcFJlY3QpOworICAgIGRvY3VtZW50RGlydHlSZWN0LmludGVy
c2VjdChJbnRSZWN0KEludFBvaW50KCksIHZpc2libGVDb250ZW50UmVjdChmYWxzZSkuc2l6ZSgp
KSk7CiAKICAgICBpZiAoIWRvY3VtZW50RGlydHlSZWN0LmlzRW1wdHkoKSkgewogICAgICAgICBH
cmFwaGljc0NvbnRleHRTdGF0ZVNhdmVyIHN0YXRlU2F2ZXIoKmNvbnRleHQpOwpAQCAtMTA4Nyw3
ICsxMDgxLDcgQEAgdm9pZCBTY3JvbGxWaWV3OjpwYWludChHcmFwaGljc0NvbnRleHQqIGNvbnRl
eHQsIGNvbnN0IEludFJlY3QmIHJlY3QpCiAgICAgaWYgKCFtX3Njcm9sbGJhcnNTdXBwcmVzc2Vk
ICYmIChtX2hvcml6b250YWxTY3JvbGxiYXIgfHwgbV92ZXJ0aWNhbFNjcm9sbGJhcikpIHsKICAg
ICAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZlciBzdGF0ZVNhdmVyKCpjb250ZXh0KTsKICAg
ICAgICAgSW50UmVjdCBzY3JvbGxWaWV3RGlydHlSZWN0ID0gcmVjdDsKLSAgICAgICAgc2Nyb2xs
Vmlld0RpcnR5UmVjdC5pbnRlcnNlY3QoZnJhbWVSZWN0KCkpOworICAgICAgICBzY3JvbGxWaWV3
RGlydHlSZWN0LmludGVyc2VjdChJbnRSZWN0KEludFBvaW50KCksIHZpc2libGVDb250ZW50UmVj
dCh0cnVlKS5zaXplKCkpKTsKICAgICAgICAgY29udGV4dC0+dHJhbnNsYXRlKHgoKSwgeSgpKTsK
ICAgICAgICAgc2Nyb2xsVmlld0RpcnR5UmVjdC5tb3ZlQnkoLWxvY2F0aW9uKCkpOwogCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAgYi9T
b3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAKaW5kZXggZDdlOGIw
ZGY4YTYzODZhYzMwNzFmYjFlYjgwN2VkZmQzN2M4NWQyNC4uNTRkYzdjYTIzOWEwNzVkMTIxZThk
ODMyOGYxMmFmZWVhNjdjYjczYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90
ZXN0cy9XZWJGcmFtZVRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMv
V2ViRnJhbWVUZXN0LmNwcApAQCAtMzYsMTAgKzM2LDEzIEBACiAjaW5jbHVkZSAiRnJhbWUuaCIK
ICNpbmNsdWRlICJGcmFtZVRlc3RIZWxwZXJzLmgiCiAjaW5jbHVkZSAiRnJhbWVWaWV3LmgiCisj
aW5jbHVkZSAiUGxhdGZvcm1Db250ZXh0U2tpYS5oIgogI2luY2x1ZGUgIlJhbmdlLmgiCiAjaW5j
bHVkZSAiUmVuZGVyVmlldy5oIgogI2luY2x1ZGUgIlJlc291cmNlRXJyb3IuaCIKICNpbmNsdWRl
ICJTZXR0aW5ncy5oIgorI2luY2x1ZGUgIlNrQml0bWFwLmgiCisjaW5jbHVkZSAiU2tDYW52YXMu
aCIKICNpbmNsdWRlICJVUkxUZXN0SGVscGVycy5oIgogI2luY2x1ZGUgIldlYkRhdGFTb3VyY2Uu
aCIKICNpbmNsdWRlICJXZWJEb2N1bWVudC5oIgpAQCAtNzAsNiArNzMsMTIgQEAgdXNpbmcgV2Vi
S2l0OjpVUkxUZXN0SGVscGVyczo6dG9LVVJMOwogCiBuYW1lc3BhY2UgewogCisjZGVmaW5lIEVY
UEVDVF9FUV9SRUNUKGEsIGIpIFwKKyAgICBFWFBFQ1RfRVEoYS54KCksIGIueCgpKTsgXAorICAg
IEVYUEVDVF9FUShhLnkoKSwgYi55KCkpOyBcCisgICAgRVhQRUNUX0VRKGEud2lkdGgoKSwgYi53
aWR0aCgpKTsgXAorICAgIEVYUEVDVF9FUShhLmhlaWdodCgpLCBiLmhlaWdodCgpKTsKKwogY2xh
c3MgV2ViRnJhbWVUZXN0IDogcHVibGljIHRlc3Rpbmc6OlRlc3QgewogcHVibGljOgogICAgIFdl
YkZyYW1lVGVzdCgpCkBAIC00NDksNiArNDU4LDQ5IEBAIFRFU1RfRihXZWJGcmFtZVRlc3QsIHBh
Z2VTY2FsZUZhY3RvckRvZXNOb3RBcHBseUNzc1RyYW5zZm9ybSkKIH0KICNlbmRpZgogCitURVNU
X0YoV2ViRnJhbWVUZXN0LCBwYWdlU2NhbGVGYWN0b3JTY2FsZXNQYWludENsaXApCit7CisgICAg
cmVnaXN0ZXJNb2NrZWRIdHRwVVJMTG9hZCgiZml4ZWRfbGF5b3V0Lmh0bWwiKTsKKworICAgIEZp
eGVkTGF5b3V0VGVzdFdlYlZpZXdDbGllbnQgY2xpZW50OworICAgIGNsaWVudC5tX3NjcmVlbklu
Zm8uZGV2aWNlU2NhbGVGYWN0b3IgPSAxOworICAgIGludCB2aWV3cG9ydFdpZHRoID0gNTA7Cisg
ICAgaW50IHZpZXdwb3J0SGVpZ2h0ID0gNTA7CisKKyAgICBXZWJWaWV3SW1wbCogd2ViVmlld0lt
cGwgPSBzdGF0aWNfY2FzdDxXZWJWaWV3SW1wbCo+KEZyYW1lVGVzdEhlbHBlcnM6OmNyZWF0ZVdl
YlZpZXdBbmRMb2FkKG1fYmFzZVVSTCArICJmaXhlZF9sYXlvdXQuaHRtbCIsIHRydWUsIDAsICZj
bGllbnQpKTsKKyAgICB3ZWJWaWV3SW1wbC0+c2V0dGluZ3MoKS0+c2V0QXBwbHlEZXZpY2VTY2Fs
ZUZhY3RvckluQ29tcG9zaXRvcih0cnVlKTsKKyAgICB3ZWJWaWV3SW1wbC0+c2V0dGluZ3MoKS0+
c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IodHJ1ZSk7CisgICAgd2ViVmlld0lt
cGwtPmVuYWJsZUZpeGVkTGF5b3V0TW9kZSh0cnVlKTsKKyAgICB3ZWJWaWV3SW1wbC0+c2V0dGlu
Z3MoKS0+c2V0Vmlld3BvcnRFbmFibGVkKHRydWUpOworICAgIHdlYlZpZXdJbXBsLT5yZXNpemUo
V2ViU2l6ZSh2aWV3cG9ydFdpZHRoLCB2aWV3cG9ydEhlaWdodCkpOworICAgIHdlYlZpZXdJbXBs
LT5sYXlvdXQoKTsKKworICAgIC8vIFNldCA8MSBwYWdlIHNjYWxlIHNvIHRoYXQgdGhlIGNsaXAg
cmVjdCBzaG91bGQgYmUgbGFyZ2VyIHRoYW4KKyAgICAvLyB0aGUgdmlld3BvcnQgc2l6ZSBhcyBw
YXNzZWQgaW50byByZXNpemUoKS4KKyAgICB3ZWJWaWV3SW1wbC0+c2V0UGFnZVNjYWxlRmFjdG9y
KDAuNSwgV2ViUG9pbnQoKSk7CisKKyAgICBTa0JpdG1hcCBiaXRtYXA7CisgICAgYml0bWFwLnNl
dENvbmZpZyhTa0JpdG1hcDo6a0FSR0JfODg4OF9Db25maWcsIDIwMCwgMjAwKTsKKyAgICBiaXRt
YXAuYWxsb2NQaXhlbHMoKTsKKyAgICBiaXRtYXAuZXJhc2VDb2xvcigwKTsKKyAgICBTa0NhbnZh
cyBjYW52YXMoYml0bWFwKTsKKworICAgIFdlYkNvcmU6OlBsYXRmb3JtQ29udGV4dFNraWEgcGxh
dGZvcm1Db250ZXh0KCZjYW52YXMpOworICAgIHBsYXRmb3JtQ29udGV4dC5zZXRUcmFja09wYXF1
ZVJlZ2lvbih0cnVlKTsKKyAgICBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQgY29udGV4dCgmcGxh
dGZvcm1Db250ZXh0KTsKKworICAgIEVYUEVDVF9FUV9SRUNUKFdlYkNvcmU6OkludFJlY3QoMCwg
MCwgMCwgMCksIHBsYXRmb3JtQ29udGV4dC5vcGFxdWVSZWdpb24oKS5hc1JlY3QoKSk7CisKKyAg
ICBXZWJDb3JlOjpGcmFtZVZpZXcqIHZpZXcgPSB3ZWJWaWV3SW1wbC0+bWFpbkZyYW1lSW1wbCgp
LT5mcmFtZVZpZXcoKTsKKyAgICBXZWJDb3JlOjpJbnRSZWN0IHBhaW50UmVjdCgwLCAwLCAyMDAs
IDIwMCk7CisgICAgdmlldy0+cGFpbnQoJmNvbnRleHQsIHBhaW50UmVjdCk7CisKKyAgICBpbnQg
dmlld3BvcnRXaWR0aE1pbnVzU2Nyb2xsYmFyID0gNTAgLSAodmlldy0+dmVydGljYWxTY3JvbGxi
YXIoKS0+aXNPdmVybGF5U2Nyb2xsYmFyKCkgPyAwIDogMTUpOworICAgIGludCB2aWV3cG9ydEhl
aWdodE1pbnVzU2Nyb2xsYmFyID0gNTAgLSAodmlldy0+aG9yaXpvbnRhbFNjcm9sbGJhcigpLT5p
c092ZXJsYXlTY3JvbGxiYXIoKSA/IDAgOiAxNSk7CisgICAgV2ViQ29yZTo6SW50UmVjdCBjbGlw
cGVkUmVjdCgwLCAwLCB2aWV3cG9ydFdpZHRoTWludXNTY3JvbGxiYXIgKiAyLCB2aWV3cG9ydEhl
aWdodE1pbnVzU2Nyb2xsYmFyICogMik7CisgICAgRVhQRUNUX0VRX1JFQ1QoY2xpcHBlZFJlY3Qs
IHBsYXRmb3JtQ29udGV4dC5vcGFxdWVSZWdpb24oKS5hc1JlY3QoKSk7Cit9CisKIFRFU1RfRihX
ZWJGcmFtZVRlc3QsIENhbk92ZXJyaWRlTWF4aW11bVNjYWxlRmFjdG9yKQogewogICAgIHJlZ2lz
dGVyTW9ja2VkSHR0cFVSTExvYWQoIm5vX3NjYWxlX2Zvcl95b3UuaHRtbCIpOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186549</attachid>
            <date>2013-02-04 22:44:31 -0800</date>
            <delta_ts>2013-02-04 22:45:54 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108888-20130204224110.patch</filename>
            <type>text/plain</type>
            <size>6729</size>
            <attacher name="Alexandre Elias">aelias</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNTc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWU4NzljZDNhOGY4M2Vl
MGRmZTM5OGJhMDc0ZTIwYzM3ODQyNDFlNC4uNjE1NDIxZWQ3OTNmNjM2ZTU1M2FmMzE3YWY2ZTVj
ZTkzODZjYjNhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEzLTAyLTA0ICBBbGV4
YW5kcmUgRWxpYXMgIDxhZWxpYXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIE1ha2UgU2Nyb2xs
Vmlldzo6cGFpbnQoKSBjbGlwIGJ5IHZpc2libGVDb250ZW50UmVjdAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA4ODg4CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hlbiBhcHBseVBhZ2VTY2FsZUZhY3Rv
ckluQ29tcG9zaXRvciBvciBmaXhlZFZpc2libGVDb250ZW50UmVjdAorICAgICAgICBhcmUgdXNl
ZCwgZnJhbWVSZWN0KCkgYW5kIHZpc2libGVDb250ZW50UmVjdCh0cnVlKS5zaXplKCkgYXJlCisg
ICAgICAgIG5vIGxvbmdlciBzeW5vbnltcywgYW5kIHRoZSBsYXR0ZXIgaXMgdGhlIG9uZSB0aGF0
IHNob3VsZCBiZQorICAgICAgICB1c2VkIGZvciBjbGlwcGluZyBwYWludHMuCisKKyAgICAgICAg
TmV3IFdlYkZyYW1lVGVzdDogcGFnZVNjYWxlRmFjdG9yU2NhbGVzUGFpbnRDbGlwLgorCisgICAg
ICAgICogcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxW
aWV3OjpwYWludCk6CisKIDIwMTMtMDItMDEgIEtlbnRhcm8gSGFyYSAgPGhhcmFrZW5AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxNDE1NDguCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDJmZGVlNzc3MmQyM2QyMWI0MWFmNDZiNDljOTViNTUx
NDgxMWY1YzguLmIzM2E4ZDY3ZGM5NDE1MWQ3Y2I2NmQ4YjFhYmNmNDVjZjYwOWJiNGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTMtMDItMDQgIEFsZXhh
bmRyZSBFbGlhcyAgPGFlbGlhc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgTWFrZSBTY3JvbGxW
aWV3OjpwYWludCgpIGNsaXAgYnkgdmlzaWJsZUNvbnRlbnRSZWN0CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDg4ODgKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIGFwcGx5UGFnZVNjYWxlRmFjdG9y
SW5Db21wb3NpdG9yIG9yIGZpeGVkVmlzaWJsZUNvbnRlbnRSZWN0CisgICAgICAgIGFyZSB1c2Vk
LCBmcmFtZVJlY3QoKSBhbmQgdmlzaWJsZUNvbnRlbnRSZWN0KHRydWUpLnNpemUoKSBhcmUKKyAg
ICAgICAgbm8gbG9uZ2VyIHN5bm9ueW1zLCBhbmQgdGhlIGxhdHRlciBpcyB0aGUgb25lIHRoYXQg
c2hvdWxkIGJlCisgICAgICAgIHVzZWQgZm9yIGNsaXBwaW5nIHBhaW50cy4KKworICAgICAgICBO
ZXcgV2ViRnJhbWVUZXN0OiBwYWdlU2NhbGVGYWN0b3JTY2FsZXNQYWludENsaXAuCisKKyAgICAg
ICAgKiB0ZXN0cy9XZWJGcmFtZVRlc3QuY3BwOgorCiAyMDEzLTAyLTAxICBLZW4gS2FuaWEgIDxr
a2FuaWFAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IEFkZCBzdXBwb3J0
IGZvciBoYW5kbGluZyBtb2RhbCBkaWFsb2dzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxWaWV3LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZp
ZXcuY3BwCmluZGV4IGE3MjdjNGFlNDY1MDcxMGY0YjkwOTlkNDUxYzVhZGYyNzQyZDExOTYuLmQ5
Mzk4OTZiNzQ3YWU2Y2M3MTdjYTI1NDA5MDEwY2U0MjA0NTYwZTkgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1Njcm9sbFZpZXcuY3BwCkBAIC0xMDUxLDE0ICsxMDUxLDkgQEAgdm9pZCBTY3JvbGxW
aWV3OjpwYWludChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEludFJlY3QmIHJlY3Qp
CiAKICAgICBub3RpZnlQYWdlVGhhdENvbnRlbnRBcmVhV2lsbFBhaW50KCk7CiAKLSAgICBJbnRS
ZWN0IGNsaXBSZWN0ID0gZnJhbWVSZWN0KCk7Ci0gICAgaWYgKHZlcnRpY2FsU2Nyb2xsYmFyKCkg
JiYgIXZlcnRpY2FsU2Nyb2xsYmFyKCktPmlzT3ZlcmxheVNjcm9sbGJhcigpKQotICAgICAgICBj
bGlwUmVjdC5zZXRXaWR0aChjbGlwUmVjdC53aWR0aCgpIC0gdmVydGljYWxTY3JvbGxiYXIoKS0+
d2lkdGgoKSk7Ci0gICAgaWYgKGhvcml6b250YWxTY3JvbGxiYXIoKSAmJiAhaG9yaXpvbnRhbFNj
cm9sbGJhcigpLT5pc092ZXJsYXlTY3JvbGxiYXIoKSkKLSAgICAgICAgY2xpcFJlY3Quc2V0SGVp
Z2h0KGNsaXBSZWN0LmhlaWdodCgpIC0gaG9yaXpvbnRhbFNjcm9sbGJhcigpLT5oZWlnaHQoKSk7
Ci0KICAgICBJbnRSZWN0IGRvY3VtZW50RGlydHlSZWN0ID0gcmVjdDsKLSAgICBkb2N1bWVudERp
cnR5UmVjdC5pbnRlcnNlY3QoY2xpcFJlY3QpOworICAgIEludFJlY3QgdmlzaWJsZUFyZWFXaXRo
b3V0U2Nyb2xsYmFycyhsb2NhdGlvbigpLCB2aXNpYmxlQ29udGVudFJlY3QoZmFsc2UpLnNpemUo
KSk7CisgICAgZG9jdW1lbnREaXJ0eVJlY3QuaW50ZXJzZWN0KHZpc2libGVBcmVhV2l0aG91dFNj
cm9sbGJhcnMpOwogCiAgICAgaWYgKCFkb2N1bWVudERpcnR5UmVjdC5pc0VtcHR5KCkpIHsKICAg
ICAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZlciBzdGF0ZVNhdmVyKCpjb250ZXh0KTsKQEAg
LTEwODcsNyArMTA4Miw4IEBAIHZvaWQgU2Nyb2xsVmlldzo6cGFpbnQoR3JhcGhpY3NDb250ZXh0
KiBjb250ZXh0LCBjb25zdCBJbnRSZWN0JiByZWN0KQogICAgIGlmICghbV9zY3JvbGxiYXJzU3Vw
cHJlc3NlZCAmJiAobV9ob3Jpem9udGFsU2Nyb2xsYmFyIHx8IG1fdmVydGljYWxTY3JvbGxiYXIp
KSB7CiAgICAgICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlU2F2ZXIgc3RhdGVTYXZlcigqY29udGV4
dCk7CiAgICAgICAgIEludFJlY3Qgc2Nyb2xsVmlld0RpcnR5UmVjdCA9IHJlY3Q7Ci0gICAgICAg
IHNjcm9sbFZpZXdEaXJ0eVJlY3QuaW50ZXJzZWN0KGZyYW1lUmVjdCgpKTsKKyAgICAgICAgSW50
UmVjdCB2aXNpYmxlQXJlYVdpdGhTY3JvbGxiYXJzKGxvY2F0aW9uKCksIHZpc2libGVDb250ZW50
UmVjdChmYWxzZSkuc2l6ZSgpKTsKKyAgICAgICAgc2Nyb2xsVmlld0RpcnR5UmVjdC5pbnRlcnNl
Y3QodmlzaWJsZUFyZWFXaXRoU2Nyb2xsYmFycyk7CiAgICAgICAgIGNvbnRleHQtPnRyYW5zbGF0
ZSh4KCksIHkoKSk7CiAgICAgICAgIHNjcm9sbFZpZXdEaXJ0eVJlY3QubW92ZUJ5KC1sb2NhdGlv
bigpKTsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFt
ZVRlc3QuY3BwIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3Bw
CmluZGV4IGQ3ZThiMGRmOGE2Mzg2YWMzMDcxZmIxZWI4MDdlZGZkMzdjODVkMjQuLjU0ZGM3Y2Ey
MzlhMDc1ZDEyMWU4ZDgzMjhmMTJhZmVlYTY3Y2I3M2IgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0L2No
cm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAKQEAgLTM2LDEwICszNiwxMyBAQAogI2luY2x1
ZGUgIkZyYW1lLmgiCiAjaW5jbHVkZSAiRnJhbWVUZXN0SGVscGVycy5oIgogI2luY2x1ZGUgIkZy
YW1lVmlldy5oIgorI2luY2x1ZGUgIlBsYXRmb3JtQ29udGV4dFNraWEuaCIKICNpbmNsdWRlICJS
YW5nZS5oIgogI2luY2x1ZGUgIlJlbmRlclZpZXcuaCIKICNpbmNsdWRlICJSZXNvdXJjZUVycm9y
LmgiCiAjaW5jbHVkZSAiU2V0dGluZ3MuaCIKKyNpbmNsdWRlICJTa0JpdG1hcC5oIgorI2luY2x1
ZGUgIlNrQ2FudmFzLmgiCiAjaW5jbHVkZSAiVVJMVGVzdEhlbHBlcnMuaCIKICNpbmNsdWRlICJX
ZWJEYXRhU291cmNlLmgiCiAjaW5jbHVkZSAiV2ViRG9jdW1lbnQuaCIKQEAgLTcwLDYgKzczLDEy
IEBAIHVzaW5nIFdlYktpdDo6VVJMVGVzdEhlbHBlcnM6OnRvS1VSTDsKIAogbmFtZXNwYWNlIHsK
IAorI2RlZmluZSBFWFBFQ1RfRVFfUkVDVChhLCBiKSBcCisgICAgRVhQRUNUX0VRKGEueCgpLCBi
LngoKSk7IFwKKyAgICBFWFBFQ1RfRVEoYS55KCksIGIueSgpKTsgXAorICAgIEVYUEVDVF9FUShh
LndpZHRoKCksIGIud2lkdGgoKSk7IFwKKyAgICBFWFBFQ1RfRVEoYS5oZWlnaHQoKSwgYi5oZWln
aHQoKSk7CisKIGNsYXNzIFdlYkZyYW1lVGVzdCA6IHB1YmxpYyB0ZXN0aW5nOjpUZXN0IHsKIHB1
YmxpYzoKICAgICBXZWJGcmFtZVRlc3QoKQpAQCAtNDQ5LDYgKzQ1OCw0OSBAQCBURVNUX0YoV2Vi
RnJhbWVUZXN0LCBwYWdlU2NhbGVGYWN0b3JEb2VzTm90QXBwbHlDc3NUcmFuc2Zvcm0pCiB9CiAj
ZW5kaWYKIAorVEVTVF9GKFdlYkZyYW1lVGVzdCwgcGFnZVNjYWxlRmFjdG9yU2NhbGVzUGFpbnRD
bGlwKQoreworICAgIHJlZ2lzdGVyTW9ja2VkSHR0cFVSTExvYWQoImZpeGVkX2xheW91dC5odG1s
Iik7CisKKyAgICBGaXhlZExheW91dFRlc3RXZWJWaWV3Q2xpZW50IGNsaWVudDsKKyAgICBjbGll
bnQubV9zY3JlZW5JbmZvLmRldmljZVNjYWxlRmFjdG9yID0gMTsKKyAgICBpbnQgdmlld3BvcnRX
aWR0aCA9IDUwOworICAgIGludCB2aWV3cG9ydEhlaWdodCA9IDUwOworCisgICAgV2ViVmlld0lt
cGwqIHdlYlZpZXdJbXBsID0gc3RhdGljX2Nhc3Q8V2ViVmlld0ltcGwqPihGcmFtZVRlc3RIZWxw
ZXJzOjpjcmVhdGVXZWJWaWV3QW5kTG9hZChtX2Jhc2VVUkwgKyAiZml4ZWRfbGF5b3V0Lmh0bWwi
LCB0cnVlLCAwLCAmY2xpZW50KSk7CisgICAgd2ViVmlld0ltcGwtPnNldHRpbmdzKCktPnNldEFw
cGx5RGV2aWNlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IodHJ1ZSk7CisgICAgd2ViVmlld0ltcGwt
PnNldHRpbmdzKCktPnNldEFwcGx5UGFnZVNjYWxlRmFjdG9ySW5Db21wb3NpdG9yKHRydWUpOwor
ICAgIHdlYlZpZXdJbXBsLT5lbmFibGVGaXhlZExheW91dE1vZGUodHJ1ZSk7CisgICAgd2ViVmll
d0ltcGwtPnNldHRpbmdzKCktPnNldFZpZXdwb3J0RW5hYmxlZCh0cnVlKTsKKyAgICB3ZWJWaWV3
SW1wbC0+cmVzaXplKFdlYlNpemUodmlld3BvcnRXaWR0aCwgdmlld3BvcnRIZWlnaHQpKTsKKyAg
ICB3ZWJWaWV3SW1wbC0+bGF5b3V0KCk7CisKKyAgICAvLyBTZXQgPDEgcGFnZSBzY2FsZSBzbyB0
aGF0IHRoZSBjbGlwIHJlY3Qgc2hvdWxkIGJlIGxhcmdlciB0aGFuCisgICAgLy8gdGhlIHZpZXdw
b3J0IHNpemUgYXMgcGFzc2VkIGludG8gcmVzaXplKCkuCisgICAgd2ViVmlld0ltcGwtPnNldFBh
Z2VTY2FsZUZhY3RvcigwLjUsIFdlYlBvaW50KCkpOworCisgICAgU2tCaXRtYXAgYml0bWFwOwor
ICAgIGJpdG1hcC5zZXRDb25maWcoU2tCaXRtYXA6OmtBUkdCXzg4ODhfQ29uZmlnLCAyMDAsIDIw
MCk7CisgICAgYml0bWFwLmFsbG9jUGl4ZWxzKCk7CisgICAgYml0bWFwLmVyYXNlQ29sb3IoMCk7
CisgICAgU2tDYW52YXMgY2FudmFzKGJpdG1hcCk7CisKKyAgICBXZWJDb3JlOjpQbGF0Zm9ybUNv
bnRleHRTa2lhIHBsYXRmb3JtQ29udGV4dCgmY2FudmFzKTsKKyAgICBwbGF0Zm9ybUNvbnRleHQu
c2V0VHJhY2tPcGFxdWVSZWdpb24odHJ1ZSk7CisgICAgV2ViQ29yZTo6R3JhcGhpY3NDb250ZXh0
IGNvbnRleHQoJnBsYXRmb3JtQ29udGV4dCk7CisKKyAgICBFWFBFQ1RfRVFfUkVDVChXZWJDb3Jl
OjpJbnRSZWN0KDAsIDAsIDAsIDApLCBwbGF0Zm9ybUNvbnRleHQub3BhcXVlUmVnaW9uKCkuYXNS
ZWN0KCkpOworCisgICAgV2ViQ29yZTo6RnJhbWVWaWV3KiB2aWV3ID0gd2ViVmlld0ltcGwtPm1h
aW5GcmFtZUltcGwoKS0+ZnJhbWVWaWV3KCk7CisgICAgV2ViQ29yZTo6SW50UmVjdCBwYWludFJl
Y3QoMCwgMCwgMjAwLCAyMDApOworICAgIHZpZXctPnBhaW50KCZjb250ZXh0LCBwYWludFJlY3Qp
OworCisgICAgaW50IHZpZXdwb3J0V2lkdGhNaW51c1Njcm9sbGJhciA9IDUwIC0gKHZpZXctPnZl
cnRpY2FsU2Nyb2xsYmFyKCktPmlzT3ZlcmxheVNjcm9sbGJhcigpID8gMCA6IDE1KTsKKyAgICBp
bnQgdmlld3BvcnRIZWlnaHRNaW51c1Njcm9sbGJhciA9IDUwIC0gKHZpZXctPmhvcml6b250YWxT
Y3JvbGxiYXIoKS0+aXNPdmVybGF5U2Nyb2xsYmFyKCkgPyAwIDogMTUpOworICAgIFdlYkNvcmU6
OkludFJlY3QgY2xpcHBlZFJlY3QoMCwgMCwgdmlld3BvcnRXaWR0aE1pbnVzU2Nyb2xsYmFyICog
Miwgdmlld3BvcnRIZWlnaHRNaW51c1Njcm9sbGJhciAqIDIpOworICAgIEVYUEVDVF9FUV9SRUNU
KGNsaXBwZWRSZWN0LCBwbGF0Zm9ybUNvbnRleHQub3BhcXVlUmVnaW9uKCkuYXNSZWN0KCkpOwor
fQorCiBURVNUX0YoV2ViRnJhbWVUZXN0LCBDYW5PdmVycmlkZU1heGltdW1TY2FsZUZhY3RvcikK
IHsKICAgICByZWdpc3Rlck1vY2tlZEh0dHBVUkxMb2FkKCJub19zY2FsZV9mb3JfeW91Lmh0bWwi
KTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>186550</attachid>
            <date>2013-02-04 22:45:56 -0800</date>
            <delta_ts>2013-02-06 15:48:53 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108888-20130204224235.patch</filename>
            <type>text/plain</type>
            <size>6728</size>
            <attacher name="Alexandre Elias">aelias</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNTc3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMWU4NzljZDNhOGY4M2Vl
MGRmZTM5OGJhMDc0ZTIwYzM3ODQyNDFlNC4uNjE1NDIxZWQ3OTNmNjM2ZTU1M2FmMzE3YWY2ZTVj
ZTkzODZjYjNhNSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDEzLTAyLTA0ICBBbGV4
YW5kcmUgRWxpYXMgIDxhZWxpYXNAY2hyb21pdW0ub3JnPgorCisgICAgICAgIE1ha2UgU2Nyb2xs
Vmlldzo6cGFpbnQoKSBjbGlwIGJ5IHZpc2libGVDb250ZW50UmVjdAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTA4ODg4CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgV2hlbiBhcHBseVBhZ2VTY2FsZUZhY3Rv
ckluQ29tcG9zaXRvciBvciBmaXhlZFZpc2libGVDb250ZW50UmVjdAorICAgICAgICBhcmUgdXNl
ZCwgZnJhbWVSZWN0KCkgYW5kIHZpc2libGVDb250ZW50UmVjdCh0cnVlKS5zaXplKCkgYXJlCisg
ICAgICAgIG5vIGxvbmdlciBzeW5vbnltcywgYW5kIHRoZSBsYXR0ZXIgaXMgdGhlIG9uZSB0aGF0
IHNob3VsZCBiZQorICAgICAgICB1c2VkIGZvciBjbGlwcGluZyBwYWludHMuCisKKyAgICAgICAg
TmV3IFdlYkZyYW1lVGVzdDogcGFnZVNjYWxlRmFjdG9yU2NhbGVzUGFpbnRDbGlwLgorCisgICAg
ICAgICogcGxhdGZvcm0vU2Nyb2xsVmlldy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpTY3JvbGxW
aWV3OjpwYWludCk6CisKIDIwMTMtMDItMDEgIEtlbnRhcm8gSGFyYSAgPGhhcmFrZW5AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFVucmV2aWV3ZWQsIHJvbGxpbmcgb3V0IHIxNDE1NDguCmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQv
Y2hyb21pdW0vQ2hhbmdlTG9nCmluZGV4IDJmZGVlNzc3MmQyM2QyMWI0MWFmNDZiNDljOTViNTUx
NDgxMWY1YzguLmIzM2E4ZDY3ZGM5NDE1MWQ3Y2I2NmQ4YjFhYmNmNDVjZjYwOWJiNGQgMTAwNjQ0
Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQvY2hyb21pdW0vQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkgQEAKKzIwMTMtMDItMDQgIEFsZXhh
bmRyZSBFbGlhcyAgPGFlbGlhc0BjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgTWFrZSBTY3JvbGxW
aWV3OjpwYWludCgpIGNsaXAgYnkgdmlzaWJsZUNvbnRlbnRSZWN0CisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDg4ODgKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBXaGVuIGFwcGx5UGFnZVNjYWxlRmFjdG9y
SW5Db21wb3NpdG9yIG9yIGZpeGVkVmlzaWJsZUNvbnRlbnRSZWN0CisgICAgICAgIGFyZSB1c2Vk
LCBmcmFtZVJlY3QoKSBhbmQgdmlzaWJsZUNvbnRlbnRSZWN0KHRydWUpLnNpemUoKSBhcmUKKyAg
ICAgICAgbm8gbG9uZ2VyIHN5bm9ueW1zLCBhbmQgdGhlIGxhdHRlciBpcyB0aGUgb25lIHRoYXQg
c2hvdWxkIGJlCisgICAgICAgIHVzZWQgZm9yIGNsaXBwaW5nIHBhaW50cy4KKworICAgICAgICBO
ZXcgV2ViRnJhbWVUZXN0OiBwYWdlU2NhbGVGYWN0b3JTY2FsZXNQYWludENsaXAuCisKKyAgICAg
ICAgKiB0ZXN0cy9XZWJGcmFtZVRlc3QuY3BwOgorCiAyMDEzLTAyLTAxICBLZW4gS2FuaWEgIDxr
a2FuaWFAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IEFkZCBzdXBwb3J0
IGZvciBoYW5kbGluZyBtb2RhbCBkaWFsb2dzCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9TY3JvbGxWaWV3LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZp
ZXcuY3BwCmluZGV4IGE3MjdjNGFlNDY1MDcxMGY0YjkwOTlkNDUxYzVhZGYyNzQyZDExOTYuLmY3
ZmU2M2VjOGFhMjlhMzdlNjYxNmU1OWFmNzRkMGY5NzI4YWZjNWEgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL1Njcm9sbFZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL1Njcm9sbFZpZXcuY3BwCkBAIC0xMDUxLDE0ICsxMDUxLDkgQEAgdm9pZCBTY3JvbGxW
aWV3OjpwYWludChHcmFwaGljc0NvbnRleHQqIGNvbnRleHQsIGNvbnN0IEludFJlY3QmIHJlY3Qp
CiAKICAgICBub3RpZnlQYWdlVGhhdENvbnRlbnRBcmVhV2lsbFBhaW50KCk7CiAKLSAgICBJbnRS
ZWN0IGNsaXBSZWN0ID0gZnJhbWVSZWN0KCk7Ci0gICAgaWYgKHZlcnRpY2FsU2Nyb2xsYmFyKCkg
JiYgIXZlcnRpY2FsU2Nyb2xsYmFyKCktPmlzT3ZlcmxheVNjcm9sbGJhcigpKQotICAgICAgICBj
bGlwUmVjdC5zZXRXaWR0aChjbGlwUmVjdC53aWR0aCgpIC0gdmVydGljYWxTY3JvbGxiYXIoKS0+
d2lkdGgoKSk7Ci0gICAgaWYgKGhvcml6b250YWxTY3JvbGxiYXIoKSAmJiAhaG9yaXpvbnRhbFNj
cm9sbGJhcigpLT5pc092ZXJsYXlTY3JvbGxiYXIoKSkKLSAgICAgICAgY2xpcFJlY3Quc2V0SGVp
Z2h0KGNsaXBSZWN0LmhlaWdodCgpIC0gaG9yaXpvbnRhbFNjcm9sbGJhcigpLT5oZWlnaHQoKSk7
Ci0KICAgICBJbnRSZWN0IGRvY3VtZW50RGlydHlSZWN0ID0gcmVjdDsKLSAgICBkb2N1bWVudERp
cnR5UmVjdC5pbnRlcnNlY3QoY2xpcFJlY3QpOworICAgIEludFJlY3QgdmlzaWJsZUFyZWFXaXRo
b3V0U2Nyb2xsYmFycyhsb2NhdGlvbigpLCB2aXNpYmxlQ29udGVudFJlY3QoZmFsc2UpLnNpemUo
KSk7CisgICAgZG9jdW1lbnREaXJ0eVJlY3QuaW50ZXJzZWN0KHZpc2libGVBcmVhV2l0aG91dFNj
cm9sbGJhcnMpOwogCiAgICAgaWYgKCFkb2N1bWVudERpcnR5UmVjdC5pc0VtcHR5KCkpIHsKICAg
ICAgICAgR3JhcGhpY3NDb250ZXh0U3RhdGVTYXZlciBzdGF0ZVNhdmVyKCpjb250ZXh0KTsKQEAg
LTEwODcsNyArMTA4Miw4IEBAIHZvaWQgU2Nyb2xsVmlldzo6cGFpbnQoR3JhcGhpY3NDb250ZXh0
KiBjb250ZXh0LCBjb25zdCBJbnRSZWN0JiByZWN0KQogICAgIGlmICghbV9zY3JvbGxiYXJzU3Vw
cHJlc3NlZCAmJiAobV9ob3Jpem9udGFsU2Nyb2xsYmFyIHx8IG1fdmVydGljYWxTY3JvbGxiYXIp
KSB7CiAgICAgICAgIEdyYXBoaWNzQ29udGV4dFN0YXRlU2F2ZXIgc3RhdGVTYXZlcigqY29udGV4
dCk7CiAgICAgICAgIEludFJlY3Qgc2Nyb2xsVmlld0RpcnR5UmVjdCA9IHJlY3Q7Ci0gICAgICAg
IHNjcm9sbFZpZXdEaXJ0eVJlY3QuaW50ZXJzZWN0KGZyYW1lUmVjdCgpKTsKKyAgICAgICAgSW50
UmVjdCB2aXNpYmxlQXJlYVdpdGhTY3JvbGxiYXJzKGxvY2F0aW9uKCksIHZpc2libGVDb250ZW50
UmVjdCh0cnVlKS5zaXplKCkpOworICAgICAgICBzY3JvbGxWaWV3RGlydHlSZWN0LmludGVyc2Vj
dCh2aXNpYmxlQXJlYVdpdGhTY3JvbGxiYXJzKTsKICAgICAgICAgY29udGV4dC0+dHJhbnNsYXRl
KHgoKSwgeSgpKTsKICAgICAgICAgc2Nyb2xsVmlld0RpcnR5UmVjdC5tb3ZlQnkoLWxvY2F0aW9u
KCkpOwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1dlYkZyYW1l
VGVzdC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVtL3Rlc3RzL1dlYkZyYW1lVGVzdC5jcHAK
aW5kZXggZDdlOGIwZGY4YTYzODZhYzMwNzFmYjFlYjgwN2VkZmQzN2M4NWQyNC4uNTRkYzdjYTIz
OWEwNzVkMTIxZThkODMyOGYxMmFmZWVhNjdjYjczYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktp
dC9jaHJvbWl1bS90ZXN0cy9XZWJGcmFtZVRlc3QuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQvY2hy
b21pdW0vdGVzdHMvV2ViRnJhbWVUZXN0LmNwcApAQCAtMzYsMTAgKzM2LDEzIEBACiAjaW5jbHVk
ZSAiRnJhbWUuaCIKICNpbmNsdWRlICJGcmFtZVRlc3RIZWxwZXJzLmgiCiAjaW5jbHVkZSAiRnJh
bWVWaWV3LmgiCisjaW5jbHVkZSAiUGxhdGZvcm1Db250ZXh0U2tpYS5oIgogI2luY2x1ZGUgIlJh
bmdlLmgiCiAjaW5jbHVkZSAiUmVuZGVyVmlldy5oIgogI2luY2x1ZGUgIlJlc291cmNlRXJyb3Iu
aCIKICNpbmNsdWRlICJTZXR0aW5ncy5oIgorI2luY2x1ZGUgIlNrQml0bWFwLmgiCisjaW5jbHVk
ZSAiU2tDYW52YXMuaCIKICNpbmNsdWRlICJVUkxUZXN0SGVscGVycy5oIgogI2luY2x1ZGUgIldl
YkRhdGFTb3VyY2UuaCIKICNpbmNsdWRlICJXZWJEb2N1bWVudC5oIgpAQCAtNzAsNiArNzMsMTIg
QEAgdXNpbmcgV2ViS2l0OjpVUkxUZXN0SGVscGVyczo6dG9LVVJMOwogCiBuYW1lc3BhY2Ugewog
CisjZGVmaW5lIEVYUEVDVF9FUV9SRUNUKGEsIGIpIFwKKyAgICBFWFBFQ1RfRVEoYS54KCksIGIu
eCgpKTsgXAorICAgIEVYUEVDVF9FUShhLnkoKSwgYi55KCkpOyBcCisgICAgRVhQRUNUX0VRKGEu
d2lkdGgoKSwgYi53aWR0aCgpKTsgXAorICAgIEVYUEVDVF9FUShhLmhlaWdodCgpLCBiLmhlaWdo
dCgpKTsKKwogY2xhc3MgV2ViRnJhbWVUZXN0IDogcHVibGljIHRlc3Rpbmc6OlRlc3QgewogcHVi
bGljOgogICAgIFdlYkZyYW1lVGVzdCgpCkBAIC00NDksNiArNDU4LDQ5IEBAIFRFU1RfRihXZWJG
cmFtZVRlc3QsIHBhZ2VTY2FsZUZhY3RvckRvZXNOb3RBcHBseUNzc1RyYW5zZm9ybSkKIH0KICNl
bmRpZgogCitURVNUX0YoV2ViRnJhbWVUZXN0LCBwYWdlU2NhbGVGYWN0b3JTY2FsZXNQYWludENs
aXApCit7CisgICAgcmVnaXN0ZXJNb2NrZWRIdHRwVVJMTG9hZCgiZml4ZWRfbGF5b3V0Lmh0bWwi
KTsKKworICAgIEZpeGVkTGF5b3V0VGVzdFdlYlZpZXdDbGllbnQgY2xpZW50OworICAgIGNsaWVu
dC5tX3NjcmVlbkluZm8uZGV2aWNlU2NhbGVGYWN0b3IgPSAxOworICAgIGludCB2aWV3cG9ydFdp
ZHRoID0gNTA7CisgICAgaW50IHZpZXdwb3J0SGVpZ2h0ID0gNTA7CisKKyAgICBXZWJWaWV3SW1w
bCogd2ViVmlld0ltcGwgPSBzdGF0aWNfY2FzdDxXZWJWaWV3SW1wbCo+KEZyYW1lVGVzdEhlbHBl
cnM6OmNyZWF0ZVdlYlZpZXdBbmRMb2FkKG1fYmFzZVVSTCArICJmaXhlZF9sYXlvdXQuaHRtbCIs
IHRydWUsIDAsICZjbGllbnQpKTsKKyAgICB3ZWJWaWV3SW1wbC0+c2V0dGluZ3MoKS0+c2V0QXBw
bHlEZXZpY2VTY2FsZUZhY3RvckluQ29tcG9zaXRvcih0cnVlKTsKKyAgICB3ZWJWaWV3SW1wbC0+
c2V0dGluZ3MoKS0+c2V0QXBwbHlQYWdlU2NhbGVGYWN0b3JJbkNvbXBvc2l0b3IodHJ1ZSk7Cisg
ICAgd2ViVmlld0ltcGwtPmVuYWJsZUZpeGVkTGF5b3V0TW9kZSh0cnVlKTsKKyAgICB3ZWJWaWV3
SW1wbC0+c2V0dGluZ3MoKS0+c2V0Vmlld3BvcnRFbmFibGVkKHRydWUpOworICAgIHdlYlZpZXdJ
bXBsLT5yZXNpemUoV2ViU2l6ZSh2aWV3cG9ydFdpZHRoLCB2aWV3cG9ydEhlaWdodCkpOworICAg
IHdlYlZpZXdJbXBsLT5sYXlvdXQoKTsKKworICAgIC8vIFNldCA8MSBwYWdlIHNjYWxlIHNvIHRo
YXQgdGhlIGNsaXAgcmVjdCBzaG91bGQgYmUgbGFyZ2VyIHRoYW4KKyAgICAvLyB0aGUgdmlld3Bv
cnQgc2l6ZSBhcyBwYXNzZWQgaW50byByZXNpemUoKS4KKyAgICB3ZWJWaWV3SW1wbC0+c2V0UGFn
ZVNjYWxlRmFjdG9yKDAuNSwgV2ViUG9pbnQoKSk7CisKKyAgICBTa0JpdG1hcCBiaXRtYXA7Cisg
ICAgYml0bWFwLnNldENvbmZpZyhTa0JpdG1hcDo6a0FSR0JfODg4OF9Db25maWcsIDIwMCwgMjAw
KTsKKyAgICBiaXRtYXAuYWxsb2NQaXhlbHMoKTsKKyAgICBiaXRtYXAuZXJhc2VDb2xvcigwKTsK
KyAgICBTa0NhbnZhcyBjYW52YXMoYml0bWFwKTsKKworICAgIFdlYkNvcmU6OlBsYXRmb3JtQ29u
dGV4dFNraWEgcGxhdGZvcm1Db250ZXh0KCZjYW52YXMpOworICAgIHBsYXRmb3JtQ29udGV4dC5z
ZXRUcmFja09wYXF1ZVJlZ2lvbih0cnVlKTsKKyAgICBXZWJDb3JlOjpHcmFwaGljc0NvbnRleHQg
Y29udGV4dCgmcGxhdGZvcm1Db250ZXh0KTsKKworICAgIEVYUEVDVF9FUV9SRUNUKFdlYkNvcmU6
OkludFJlY3QoMCwgMCwgMCwgMCksIHBsYXRmb3JtQ29udGV4dC5vcGFxdWVSZWdpb24oKS5hc1Jl
Y3QoKSk7CisKKyAgICBXZWJDb3JlOjpGcmFtZVZpZXcqIHZpZXcgPSB3ZWJWaWV3SW1wbC0+bWFp
bkZyYW1lSW1wbCgpLT5mcmFtZVZpZXcoKTsKKyAgICBXZWJDb3JlOjpJbnRSZWN0IHBhaW50UmVj
dCgwLCAwLCAyMDAsIDIwMCk7CisgICAgdmlldy0+cGFpbnQoJmNvbnRleHQsIHBhaW50UmVjdCk7
CisKKyAgICBpbnQgdmlld3BvcnRXaWR0aE1pbnVzU2Nyb2xsYmFyID0gNTAgLSAodmlldy0+dmVy
dGljYWxTY3JvbGxiYXIoKS0+aXNPdmVybGF5U2Nyb2xsYmFyKCkgPyAwIDogMTUpOworICAgIGlu
dCB2aWV3cG9ydEhlaWdodE1pbnVzU2Nyb2xsYmFyID0gNTAgLSAodmlldy0+aG9yaXpvbnRhbFNj
cm9sbGJhcigpLT5pc092ZXJsYXlTY3JvbGxiYXIoKSA/IDAgOiAxNSk7CisgICAgV2ViQ29yZTo6
SW50UmVjdCBjbGlwcGVkUmVjdCgwLCAwLCB2aWV3cG9ydFdpZHRoTWludXNTY3JvbGxiYXIgKiAy
LCB2aWV3cG9ydEhlaWdodE1pbnVzU2Nyb2xsYmFyICogMik7CisgICAgRVhQRUNUX0VRX1JFQ1Qo
Y2xpcHBlZFJlY3QsIHBsYXRmb3JtQ29udGV4dC5vcGFxdWVSZWdpb24oKS5hc1JlY3QoKSk7Cit9
CisKIFRFU1RfRihXZWJGcmFtZVRlc3QsIENhbk92ZXJyaWRlTWF4aW11bVNjYWxlRmFjdG9yKQog
ewogICAgIHJlZ2lzdGVyTW9ja2VkSHR0cFVSTExvYWQoIm5vX3NjYWxlX2Zvcl95b3UuaHRtbCIp
Owo=
</data>

          </attachment>
      

    </bug>

</bugzilla>