<?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>80368</bug_id>
          
          <creation_ts>2012-03-05 19:45:40 -0800</creation_ts>
          <short_desc>pinch-to-zoom and double-tap flicker when using the new scrolling model</short_desc>
          <delta_ts>2012-03-05 20:35:12 -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="Anders Carlsson">andersca</reporter>
          <assigned_to name="Anders Carlsson">andersca</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>571384</commentid>
    <comment_count>0</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-03-05 19:45:40 -0800</bug_when>
    <thetext>pinch-to-zoom and double-tap flicker when using the new scrolling model</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571392</commentid>
    <comment_count>1</comment_count>
      <attachid>130271</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-03-05 19:55:39 -0800</bug_when>
    <thetext>Created attachment 130271
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571407</commentid>
    <comment_count>2</comment_count>
      <attachid>130271</attachid>
    <who name="Build Bot">buildbot</who>
    <bug_when>2012-03-05 20:17:33 -0800</bug_when>
    <thetext>Comment on attachment 130271
Patch

Attachment 130271 did not pass mac-ews (mac):
Output: http://queues.webkit.org/results/11834148</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571414</commentid>
    <comment_count>3</comment_count>
      <attachid>130275</attachid>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-03-05 20:23:03 -0800</bug_when>
    <thetext>Created attachment 130275
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571421</commentid>
    <comment_count>4</comment_count>
      <attachid>130275</attachid>
    <who name="Sam Weinig">sam</who>
    <bug_when>2012-03-05 20:28:40 -0800</bug_when>
    <thetext>Comment on attachment 130275
Patch

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

&gt; Source/WebKit2/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:141
&gt; +static void dispatchBackToMainThread(uint64_t webPageID, uint64_t callbackID)

Please consider renaming this to dispatchForceRepaintBackToMainThread or something like that.  Or just add a fixme about adding barriers/fences.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571425</commentid>
    <comment_count>5</comment_count>
    <who name="Anders Carlsson">andersca</who>
    <bug_when>2012-03-05 20:33:58 -0800</bug_when>
    <thetext>Committed r109843: &lt;http://trac.webkit.org/changeset/109843&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>571427</commentid>
    <comment_count>6</comment_count>
      <attachid>130275</attachid>
    <who name="">mitz</who>
    <bug_when>2012-03-05 20:35:12 -0800</bug_when>
    <thetext>Comment on attachment 130275
Patch

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

&gt; Source/WebCore/platform/graphics/ca/mac/TileCache.mm:95
&gt; +    IntRect scaledRect = rect;
&gt; +    scaledRect.scale(m_scale);

IntRect::scale() truncates the origin and the size. I think this can cause problems.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130271</attachid>
            <date>2012-03-05 19:55:39 -0800</date>
            <delta_ts>2012-03-05 20:23:00 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80368-20120305195607.patch</filename>
            <type>text/plain</type>
            <size>13989</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5ODM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGEyNzdlMzc5ZTlhN2M0
MDQ4NDk5MGU3MDM5MDIyMmI3YTc3YTRjOC4uODZjNjQzYTJmZTgxZTRlOGM5MTU4NTc4M2IxZDc1
YmVjMzIxMWVjZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQyIEBACisyMDEyLTAzLTA1ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgcGluY2gtdG8tem9v
bSBhbmQgZG91YmxlLXRhcCBmbGlja2VyIHdoZW4gdXNpbmcgdGhlIG5ldyBzY3JvbGxpbmcgbW9k
ZWwKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMzY4
CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xMDg2NjIyMT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbiBvcmRlciB0byB3b3JrIGJldHRlciB3aXRo
IHpvb21pbmcsIG1ha2UgdGhlIHRpbGUgY2FjaGUgdW5kbyB0aGUgc2NhbGUgdHJhbnNmb3JtYXRp
b24KKyAgICAgICAgYW5kIGhhbmRsZSB0aGUgc2NhbGluZyBtYW51YWxseS4gVGhpcyBhdm9pZHMg
Y3JlYXRpbmcgaHVnZSB0aWxlIGJhY2tpbmcgc3RvcmVzIHdoZW4gem9vbWVkIGluLgorCisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1RpbGVDYWNoZS5tbToKKyAgICAgICAgKFdl
YkNvcmU6OlRpbGVDYWNoZTo6VGlsZUNhY2hlKToKKyAgICAgICAgSW5pdGlhbGl6ZSBtX3NjYWxl
IHRvIDEuCisKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVDYWNoZTo6c2V0TmVlZHNEaXNwbGF5SW5S
ZWN0KToKKyAgICAgICAgU2NhbGUgdGhlIGdpdmVuIHJlY3QgYXBwcm9wcmlhdGVseS4KKworICAg
ICAgICAoV2ViQ29yZTo6VGlsZUNhY2hlOjpkcmF3TGF5ZXIpOgorICAgICAgICBBcHBseSBhIHNj
YWxlIGNvbnRleHQgdHJhbnNmb3JtLgorCisgICAgICAgIChXZWJDb3JlOjpUaWxlQ2FjaGU6OnNl
dFNjYWxlKToKKyAgICAgICAgTm8gbG9uZ2VyIHNldCB0aGUgY29udGVudHMgc2NhbGUuIEluc3Rl
YWQsIHVwZGF0ZSB0aGUgc2NhbGUgYW5kIHJldmFsaWRhdGUgdGhlIHRpbGVzLgorCisgICAgICAg
IChXZWJDb3JlOjpUaWxlQ2FjaGU6OmdldFRpbGVJbmRleFJhbmdlRm9yUmVjdCk6CisgICAgICAg
IEFwcGx5IHRoZSBzY2FsZSB0byB0aGUgYm91bmRzLgorCisgICAgICAgIChXZWJDb3JlOjpUaWxl
Q2FjaGU6OmNyZWF0ZVRpbGVMYXllcik6CisgICAgICAgIERvbid0IHNldCB0aGUgY29udGVudHMg
c2NhbGUuCisKKyAgICAgICAgKiBwbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvV2ViVGlsZUNhY2hl
TGF5ZXIubW06CisgICAgICAgICgtW1dlYlRpbGVDYWNoZUxheWVyIHNldENvbnRlbnRzU2NhbGU6
XSk6CisgICAgICAgIENhbGwgVGlsZUNhY2hlOjpzZXRTY2FsZS4KKworICAgICAgICAqIHJlbmRl
cmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6UmVuZGVyTGF5
ZXJCYWNraW5nOjp1cGRhdGVDb21wb3NpdGVkQm91bmRzKToKKyAgICAgICAgTWFrZSBzdXJlIHRv
IGdpdmUgdGhlIHRpbGUgY2FjaGUgbGF5ZXIgc2FuZSBjb21wb3NpdGVkIGJvdW5kcywgZXZlbiBp
ZiB0aGUgcGFnZSBoYXMgYWJzb2x1dGVseSBwb3NpdGlvbmVkCisgICAgICAgIGVsZW1lbnRzIHRo
YXQgYXJlIG91dHNpZGUgb2YgdGhlIHBhZ2UuCisKIDIwMTItMDMtMDUgIExldmkgV2VpbnRyYXVi
ICA8bGV2aXdAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFVwZGF0ZSB1c2FnZSBvZiBMYXlvdXRV
bml0cyBpbiBSZW5kZXJCb3gKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBi
L1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZwppbmRleCBiNmQzMWQ2Y2QwYjA4NjQxNjI3ODU5NGYx
ZjIzMzBlNjNlMzc0ZmYzLi5mZDZhMWJkM2QyZTNmZmY3Zjk5MDhjODMwOWZlZmQzYzcyZjJmZjJk
IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktp
dDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzUgQEAKKzIwMTItMDMtMDUgIEFuZGVycyBDYXJsc3Nv
biAgPGFuZGVyc2NhQGFwcGxlLmNvbT4KKworICAgICAgICBwaW5jaC10by16b29tIGFuZCBkb3Vi
bGUtdGFwIGZsaWNrZXIgd2hlbiB1c2luZyB0aGUgbmV3IHNjcm9sbGluZyBtb2RlbAorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9ODAzNjgKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzEwODY2MjIxPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIEFkZCBhIHdheSBmb3IgZHJhd2luZyBhcmVhcyB0byByZXNwb25k
IHRvIGNhbGxiYWNrIGJhc2VkIGZvcmNlIHJlcGFpbnQgcmVxdWVzdHMgYXN5bmNocm9ub3VzbHku
CisgICAgICAgIFRoaXMgaXMgY3VycmVudGx5IG5lZWRlZCBmb3IgdGhlIHRpbGVkIGRyYXdpbmcg
YXJlYSB3aGVuIHRoZXJlIG1pZ2h0IGJlIG91dHN0YW5kaW5nIHNjcm9sbCB1cGRhdGVzCisgICAg
ICAgIHRoYXQgYXJlIHNlbnQgZnJvbSB0aGUgc2Nyb2xsaW5nIHRocmVhZCB0byB0aGUgbWFpbiB0
aHJlYWQgYW5kIHdlIG5lZWQgdG8gZW5zdXJlIHRoYXQgdGhleSdyZSBwcm9jZXNzZWQKKyAgICAg
ICAgYmVmb3JlIHNlbmRpbmcgYSBtZXNzYWdlIGJhY2suCisKKyAgICAgICAgKiBXZWJQcm9jZXNz
L1dlYlBhZ2UvRHJhd2luZ0FyZWEuaDoKKyAgICAgICAgKFdlYktpdDo6RHJhd2luZ0FyZWE6OmZv
cmNlUmVwYWludEFzeW5jKToKKyAgICAgICAgQWRkIG5ldyBtZW1iZXIgZnVuY3Rpb24uCisKKyAg
ICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHA6CisgICAgICAgIChXZWJLaXQ6
OldlYlBhZ2U6OmZvcmNlUmVwYWludCk6CisgICAgICAgIFRyeSBmb3JjZVJlcGFpbnRBc3luYyBm
aXJzdC4KKworICAgICAgICAqIFdlYlByb2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0
aW9uRHJhd2luZ0FyZWEubW06CisgICAgICAgIChXZWJLaXQ6OmZvcmNlUmVwYWludEFuZFNlbmRN
ZXNzYWdlKToKKyAgICAgICAgRm9yY2UgdGhlIHJlcGFpbnQgYW5kIHNlbmQgdGhlIG1lc3NhZ2Uu
CisKKyAgICAgICAgKFdlYktpdDo6ZGlzcGF0Y2hCYWNrVG9NYWluVGhyZWFkKToKKyAgICAgICAg
RGlzcGF0Y2ggYSBjYWxsIHRvIGZvcmNlUmVwYWludEFuZFNlbmRNZXNzYWdlIHRvIHRoZSBtYWlu
IHRocmVhZC4KKworICAgICAgICAoV2ViS2l0OjpUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJl
YTo6Zm9yY2VSZXBhaW50QXN5bmMpOgorICAgICAgICBEaXNwYXRjaCBhIGZ1bmN0aW9uIG9uIHRo
ZSBzY3JvbGxpbmcgdGhyZWFkLiBJdHMgc29sZSBwdXJwb3NlIGlzIHRvIGRpc3BhdGNoIGEgZnVu
Y3Rpb24gYmFjayB0byB0aGUKKyAgICAgICAgbWFpbiB0aHJlYWQsIGVuc3VyaW5nIHRoYXQgYWxs
IHByZXZpb3VzbHkgZGlzcGF0Y2hlZCBmdW5jdGlvbnMgaGF2ZSBiZWVuIGV4ZWN1dGVkLgorCiAy
MDEyLTAzLTA1ICBFbnJpY2EgQ2FzdWNjaSAgPGVucmljYUBhcHBsZS5jb20+CiAKICAgICAgICAg
Q2FuJ3QgdHlwZSBvbiBzb21lIHdlYnNpdGVzIChwbHVnLWlucyBzdGVhbCBrZXkgZXZlbnRzKS4K
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9UaWxl
Q2FjaGUuaCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9UaWxlQ2Fj
aGUuaAppbmRleCBmMjhhMmQzNzM2Zjk1NGFkMGYyY2IwNzY0MDgzNmY4NzllNDJlNjI4Li43MTRk
M2M5MGIwNDMxNTQzZDcyNjU2MGQ5ZTEwZjBlYTRhNWNhZDc0IDEwMDY0NAotLS0gYS9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvVGlsZUNhY2hlLmgKKysrIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1RpbGVDYWNoZS5oCkBAIC01Niw3ICs1
Niw4IEBAIHB1YmxpYzoKICAgICB2b2lkIHNldE5lZWRzRGlzcGxheSgpOwogICAgIHZvaWQgc2V0
TmVlZHNEaXNwbGF5SW5SZWN0KGNvbnN0IEludFJlY3QmKTsKICAgICB2b2lkIGRyYXdMYXllcihX
ZWJUaWxlTGF5ZXIqLCBDR0NvbnRleHRSZWYpOwotICAgIHZvaWQgc2V0Q29udGVudHNTY2FsZShD
R0Zsb2F0KTsKKworICAgIHZvaWQgc2V0U2NhbGUoQ0dGbG9hdCk7CiAKICAgICBib29sIGFjY2Vs
ZXJhdGVzRHJhd2luZygpIGNvbnN0IHsgcmV0dXJuIG1fYWNjZWxlcmF0ZXNEcmF3aW5nOyB9CiAg
ICAgdm9pZCBzZXRBY2NlbGVyYXRlc0RyYXdpbmcoYm9vbCk7CkBAIC05OSw2ICsxMDAsOCBAQCBw
cml2YXRlOgogICAgIFRpbWVyPFRpbGVDYWNoZT4gbV90aWxlUmV2YWxpZGF0aW9uVGltZXI7CiAg
ICAgSW50UmVjdCBtX3RpbGVDb3ZlcmFnZVJlY3Q7CiAKKyAgICBDR0Zsb2F0IG1fc2NhbGU7CisK
ICAgICBib29sIG1fYWNjZWxlcmF0ZXNEcmF3aW5nOwogCiAgICAgUmV0YWluUHRyPENHQ29sb3JS
ZWY+IG1fdGlsZURlYnVnQm9yZGVyQ29sb3I7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvVGlsZUNhY2hlLm1tIGIvU291cmNlL1dlYkNvcmUvcGxh
dGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1RpbGVDYWNoZS5tbQppbmRleCA4YjU3N2IyOWJkNTFiY2Fl
YWQxZGUyZDM1OWZlYWFkYTllOTYzNDcwLi44YTNiMWJkMzMwOGNmM2ViZjYzOGVmNzY2OTc3ZmIw
M2U1Y2FiMGJmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9j
YS9tYWMvVGlsZUNhY2hlLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L2NhL21hYy9UaWxlQ2FjaGUubW0KQEAgLTU0LDYgKzU0LDcgQEAgVGlsZUNhY2hlOjpUaWxlQ2Fj
aGUoV2ViVGlsZUNhY2hlTGF5ZXIqIHRpbGVDYWNoZUxheWVyLCBjb25zdCBJbnRTaXplJiB0aWxl
U2l6ZSkKICAgICAsIG1fdGlsZUNvbnRhaW5lckxheWVyKGFkb3B0Q0YoW1tDQUxheWVyIGFsbG9j
XSBpbml0XSkpCiAgICAgLCBtX3RpbGVTaXplKHRpbGVTaXplKQogICAgICwgbV90aWxlUmV2YWxp
ZGF0aW9uVGltZXIodGhpcywgJlRpbGVDYWNoZTo6dGlsZVJldmFsaWRhdGlvblRpbWVyRmlyZWQp
CisgICAgLCBtX3NjYWxlKDEpCiAgICAgLCBtX2FjY2VsZXJhdGVzRHJhd2luZyhmYWxzZSkKICAg
ICAsIG1fdGlsZURlYnVnQm9yZGVyV2lkdGgoMCkKIHsKQEAgLTkwLDEwICs5MSwxMyBAQCB2b2lk
IFRpbGVDYWNoZTo6c2V0TmVlZHNEaXNwbGF5SW5SZWN0KGNvbnN0IEludFJlY3QmIHJlY3QpCiAg
ICAgaWYgKG1fdGlsZXMuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47CiAKKyAgICBJbnRSZWN0
IHNjYWxlZFJlY3QgPSByZWN0OworICAgIHNjYWxlZFJlY3Quc2NhbGUobV9zY2FsZSk7CisKICAg
ICAvLyBGaW5kIHRoZSB0aWxlcyB0aGF0IG5lZWQgdG8gYmUgaW52YWxpZGF0ZWQuCiAgICAgVGls
ZUluZGV4IHRvcExlZnQ7CiAgICAgVGlsZUluZGV4IGJvdHRvbVJpZ2h0OwotICAgIGdldFRpbGVJ
bmRleFJhbmdlRm9yUmVjdChpbnRlcnNlY3Rpb24ocmVjdCwgbV90aWxlQ292ZXJhZ2VSZWN0KSwg
dG9wTGVmdCwgYm90dG9tUmlnaHQpOworICAgIGdldFRpbGVJbmRleFJhbmdlRm9yUmVjdChpbnRl
cnNlY3Rpb24oc2NhbGVkUmVjdCwgbV90aWxlQ292ZXJhZ2VSZWN0KSwgdG9wTGVmdCwgYm90dG9t
UmlnaHQpOwogCiAgICAgZm9yIChpbnQgeSA9IHRvcExlZnQueSgpOyB5IDw9IGJvdHRvbVJpZ2h0
LnkoKTsgKyt5KSB7CiAgICAgICAgIGZvciAoaW50IHggPSB0b3BMZWZ0LngoKTsgeCA8PSBib3R0
b21SaWdodC54KCk7ICsreCkgewpAQCAtMTI2LDYgKzEzMCw3IEBAIHZvaWQgVGlsZUNhY2hlOjpk
cmF3TGF5ZXIoV2ViVGlsZUxheWVyKiBsYXllciwgQ0dDb250ZXh0UmVmIGNvbnRleHQpCiAKICAg
ICBDR1BvaW50IGxheWVyT3JpZ2luID0gW2xheWVyIGZyYW1lXS5vcmlnaW47CiAgICAgQ0dDb250
ZXh0VHJhbnNsYXRlQ1RNKGNvbnRleHQsIC1sYXllck9yaWdpbi54LCAtbGF5ZXJPcmlnaW4ueSk7
CisgICAgQ0dDb250ZXh0U2NhbGVDVE0oY29udGV4dCwgbV9zY2FsZSwgbV9zY2FsZSk7CiAgICAg
ZHJhd0xheWVyQ29udGVudHMoY29udGV4dCwgbGF5ZXIsIHBsYXRmb3JtTGF5ZXIpOwogCiAgICAg
Q0dDb250ZXh0UmVzdG9yZUdTdGF0ZShjb250ZXh0KTsKQEAgLTE2MiwxNyArMTY3LDIyIEBAIHZv
aWQgVGlsZUNhY2hlOjpkcmF3TGF5ZXIoV2ViVGlsZUxheWVyKiBsYXllciwgQ0dDb250ZXh0UmVm
IGNvbnRleHQpCiAgICAgQ0dDb250ZXh0UmVzdG9yZUdTdGF0ZShjb250ZXh0KTsKIH0KIAotdm9p
ZCBUaWxlQ2FjaGU6OnNldENvbnRlbnRzU2NhbGUoQ0dGbG9hdCBjb250ZW50c1NjYWxlKQordm9p
ZCBUaWxlQ2FjaGU6OnNldFNjYWxlKENHRmxvYXQgc2NhbGUpCiB7CisgICAgaWYgKG1fc2NhbGUg
PT0gc2NhbGUpCisgICAgICAgIHJldHVybjsKKwogI2lmICFkZWZpbmVkKEJVSUxESU5HX09OX0xF
T1BBUkQpICYmICFkZWZpbmVkKEJVSUxESU5HX09OX1NOT1dfTEVPUEFSRCkKLSAgICBmb3IgKFRp
bGVNYXA6OmNvbnN0X2l0ZXJhdG9yIGl0ID0gbV90aWxlcy5iZWdpbigpLCBlbmQgPSBtX3RpbGVz
LmVuZCgpOyBpdCAhPSBlbmQ7ICsraXQpIHsKLSAgICAgICAgW2l0LT5zZWNvbmQuZ2V0KCkgc2V0
Q29udGVudHNTY2FsZTpjb250ZW50c1NjYWxlXTsKKyAgICBtX3NjYWxlID0gc2NhbGU7CisgICAg
W21fdGlsZUNvbnRhaW5lckxheWVyLmdldCgpIHNldFRyYW5zZm9ybTpDQVRyYW5zZm9ybTNETWFr
ZVNjYWxlKDEgLyBtX3NjYWxlLCAxIC8gbV9zY2FsZSwgMSldOworICAgIAorICAgIHJldmFsaWRh
dGVUaWxlcygpOworCisgICAgZm9yIChUaWxlTWFwOjpjb25zdF9pdGVyYXRvciBpdCA9IG1fdGls
ZXMuYmVnaW4oKSwgZW5kID0gbV90aWxlcy5lbmQoKTsgaXQgIT0gZW5kOyArK2l0KQogICAgICAg
ICBbaXQtPnNlY29uZC5nZXQoKSBzZXROZWVkc0Rpc3BsYXldOwotICAgIH0KIAogICAgIFBsYXRm
b3JtQ0FMYXllciogcGxhdGZvcm1MYXllciA9IFBsYXRmb3JtQ0FMYXllcjo6cGxhdGZvcm1DQUxh
eWVyKG1fdGlsZUNhY2hlTGF5ZXIpOwogICAgIHBsYXRmb3JtTGF5ZXItPm93bmVyKCktPnBsYXRm
b3JtQ0FMYXllckRpZENyZWF0ZVRpbGVzKCk7Ci0gICAgcmV2YWxpZGF0ZVRpbGVzKCk7CiAjZWxz
ZQogICAgIFVOVVNFRF9QQVJBTShjb250ZW50c1NjYWxlKTsKICNlbmRpZgpAQCAtMjM0LDcgKzI0
NCw5IEBAIEludFJlY3QgVGlsZUNhY2hlOjpyZWN0Rm9yVGlsZUluZGV4KGNvbnN0IFRpbGVJbmRl
eCYgdGlsZUluZGV4KSBjb25zdAogCiB2b2lkIFRpbGVDYWNoZTo6Z2V0VGlsZUluZGV4UmFuZ2VG
b3JSZWN0KGNvbnN0IEludFJlY3QmIHJlY3QsIFRpbGVJbmRleCYgdG9wTGVmdCwgVGlsZUluZGV4
JiBib3R0b21SaWdodCkKIHsKLSAgICBJbnRSZWN0IGNsYW1wZWRSZWN0ID0gaW50ZXJzZWN0aW9u
KHJlY3QsIGJvdW5kcygpKTsKKyAgICBJbnRSZWN0IGNsYW1wZWRSZWN0ID0gYm91bmRzKCk7Cisg
ICAgY2xhbXBlZFJlY3Quc2NhbGUobV9zY2FsZSk7CisgICAgY2xhbXBlZFJlY3QuaW50ZXJzZWN0
KHJlY3QpOwogCiAgICAgdG9wTGVmdC5zZXRYKG1heChjbGFtcGVkUmVjdC54KCkgLyBtX3RpbGVT
aXplLndpZHRoKCksIDApKTsKICAgICB0b3BMZWZ0LnNldFkobWF4KGNsYW1wZWRSZWN0LnkoKSAv
IG1fdGlsZVNpemUuaGVpZ2h0KCksIDApKTsKQEAgLTM1MSw3ICszNjMsNiBAQCBSZXRhaW5QdHI8
V2ViVGlsZUxheWVyPiBUaWxlQ2FjaGU6OmNyZWF0ZVRpbGVMYXllcigpCiAgICAgW2xheWVyLmdl
dCgpIHNldEVkZ2VBbnRpYWxpYXNpbmdNYXNrOjBdOwogCiAjaWYgIWRlZmluZWQoQlVJTERJTkdf
T05fTEVPUEFSRCkgJiYgIWRlZmluZWQoQlVJTERJTkdfT05fU05PV19MRU9QQVJEKQotICAgIFts
YXllci5nZXQoKSBzZXRDb250ZW50c1NjYWxlOlttX3RpbGVDYWNoZUxheWVyIGNvbnRlbnRzU2Nh
bGVdXTsKICAgICBbbGF5ZXIuZ2V0KCkgc2V0QWNjZWxlcmF0ZXNEcmF3aW5nOm1fYWNjZWxlcmF0
ZXNEcmF3aW5nXTsKICNlbmRpZgogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9y
bS9ncmFwaGljcy9jYS9tYWMvV2ViVGlsZUNhY2hlTGF5ZXIubW0gYi9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvV2ViVGlsZUNhY2hlTGF5ZXIubW0KaW5kZXggNjk1YzQ3
OGUyMDhkNDk4YWI2NGQ5YmM2MThkNzAzNzNmZWIxZjYyNC4uODNhYmI3MmE4MzM0ZTM4ZjM0Yzgy
MzUxNGM2YmJjNzBmODBkMjc2OSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2EvbWFjL1dlYlRpbGVDYWNoZUxheWVyLm1tCisrKyBiL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9XZWJUaWxlQ2FjaGVMYXllci5tbQpAQCAtMTAzLDE2
ICsxMDMsNyBAQCB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKIAogLSAodm9pZClzZXRDb250ZW50
c1NjYWxlOihDR0Zsb2F0KWNvbnRlbnRzU2NhbGUKIHsKLSNpZiAhZGVmaW5lZChCVUlMRElOR19P
Tl9MRU9QQVJEKSAmJiAhZGVmaW5lZChCVUlMRElOR19PTl9TTk9XX0xFT1BBUkQpCi0gICAgQ0dG
bG9hdCBvbGRDb250ZW50c1NjYWxlID0gW3NlbGYgY29udGVudHNTY2FsZV07Ci0KLSAgICBbc3Vw
ZXIgc2V0Q29udGVudHNTY2FsZTpjb250ZW50c1NjYWxlXTsKLQotICAgIGlmIChjb250ZW50c1Nj
YWxlICE9IG9sZENvbnRlbnRzU2NhbGUpCi0gICAgICAgIF90aWxlQ2FjaGUtPnNldENvbnRlbnRz
U2NhbGUoY29udGVudHNTY2FsZSk7Ci0jZWxzZQotICAgIFVOVVNFRF9QQVJBTShjb250ZW50c1Nj
YWxlKTsKLSNlbmRpZgorICAgIF90aWxlQ2FjaGUtPnNldFNjYWxlKGNvbnRlbnRzU2NhbGUpOwog
fQogCiAtIChDQUxheWVyICopdGlsZUNvbnRhaW5lckxheWVyCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcCBiL1NvdXJjZS9XZWJDb3Jl
L3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tpbmcuY3BwCmluZGV4IGY1NTk5NzBiNDlmY2EzNzdl
YzhkY2QxNmIzOTc4M2U3MDU4MzYwYmYuLmJlZmQ3NGM1NTg5OTdiMzNkOTJmNjMzNTlhM2ZmMDJi
ZWVhMzM3YTggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXll
ckJhY2tpbmcuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJh
Y2tpbmcuY3BwCkBAIC0yMzYsNyArMjM2LDcgQEAgdm9pZCBSZW5kZXJMYXllckJhY2tpbmc6OnVw
ZGF0ZUNvbXBvc2l0ZWRCb3VuZHMoKQogICAgIC8vIFdlJ2QgbmVlZCBSZW5kZXJPYmplY3Q6OmNv
bnZlcnRDb250YWluZXJUb0xvY2FsUXVhZCgpLCB3aGljaCBkb2Vzbid0IHlldCBleGlzdC4gIElm
IHRoaXMKICAgICAvLyBpcyBhIGZ1bGxzY3JlZW4gcmVuZGVyZXIsIGRvbid0IGNsaXAgdG8gdGhl
IHZpZXdwb3J0LCBhcyB0aGUgcmVuZGVyZXIgd2lsbCBiZSBhc2tlZCB0bwogICAgIC8vIGRpc3Bs
YXkgb3V0c2lkZSBvZiB0aGUgdmlld3BvcnQgYm91bmRzLgotICAgIGlmIChjb21wb3NpdG9yKCkt
PmNvbXBvc2l0aW5nQ29uc3VsdHNPdmVybGFwKCkgJiYgIWxheWVyT3JBbmNlc3RvcklzVHJhbnNm
b3JtZWQobV9vd25pbmdMYXllcikgCisgICAgaWYgKGNvbXBvc2l0b3IoKS0+Y29tcG9zaXRpbmdD
b25zdWx0c092ZXJsYXAoKSAmJiAoIWxheWVyT3JBbmNlc3RvcklzVHJhbnNmb3JtZWQobV9vd25p
bmdMYXllcikgfHwgbV91c2luZ1RpbGVkQ2FjaGVMYXllcikKICNpZiBFTkFCTEUoRlVMTFNDUkVF
Tl9BUEkpCiAgICAgICAgICYmICFsYXllck9yQW5jZXN0b3JJc0Z1bGxTY3JlZW4obV9vd25pbmdM
YXllcikKICNlbmRpZgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL0RyYXdpbmdBcmVhLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJh
d2luZ0FyZWEuaAppbmRleCAyZmEzNTk4YTc3YTYzODY0MmQzNTY0YWJlNzRhZWRlZjMwNzI2NWE1
Li4yZWU2NTU3ZWFiYjViMzkzYjkxMjEzMDM5MmQ3YTA2YzNjMzc3NjJmIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWEuaAorKysgYi9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWEuaApAQCAtNjYsNiArNjYs
NyBAQCBwdWJsaWM6CiAgICAgLy8gRklYTUU6IFRoZXNlIHNob3VsZCBiZSBwdXJlIHZpcnR1YWwu
CiAgICAgdmlydHVhbCB2b2lkIHBhZ2VCYWNrZ3JvdW5kVHJhbnNwYXJlbmN5Q2hhbmdlZCgpIHsg
fQogICAgIHZpcnR1YWwgdm9pZCBmb3JjZVJlcGFpbnQoKSB7IH0KKyAgICB2aXJ0dWFsIGJvb2wg
Zm9yY2VSZXBhaW50QXN5bmModWludDY0X3QgY2FsbGJhY2tJRCkgeyByZXR1cm4gZmFsc2U7IH0K
ICAgICB2aXJ0dWFsIHZvaWQgc2V0TGF5ZXJUcmVlU3RhdGVJc0Zyb3plbihib29sKSB7IH0KICAg
ICB2aXJ0dWFsIGJvb2wgbGF5ZXJUcmVlU3RhdGVJc0Zyb3plbigpIGNvbnN0IHsgcmV0dXJuIGZh
bHNlOyB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9X
ZWJQYWdlLmNwcCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cAppbmRleCAxYzg3MTczNzhlMTJiYjRjMDdhNWU0YjUzMTk3NmE4NTQzZDUwMThlLi5hNjlmMGQ3
MTcwOTZhZTgyOGVhZDVhMGExNjM4ZTIxOTdjNzRmNjk5IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
S2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKKysrIGIvU291cmNlL1dlYktpdDIv
V2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCkBAIC0xODIxLDYgKzE4MjEsOSBAQCB2b2lk
IFdlYlBhZ2U6OmZvcmNlUmVwYWludFdpdGhvdXRDYWxsYmFjaygpCiAKIHZvaWQgV2ViUGFnZTo6
Zm9yY2VSZXBhaW50KHVpbnQ2NF90IGNhbGxiYWNrSUQpCiB7CisgICAgaWYgKG1fZHJhd2luZ0Fy
ZWEtPmZvcmNlUmVwYWludEFzeW5jKGNhbGxiYWNrSUQpKQorICAgICAgICByZXR1cm47CisKICAg
ICBmb3JjZVJlcGFpbnRXaXRob3V0Q2FsbGJhY2soKTsKICAgICBzZW5kKE1lc3NhZ2VzOjpXZWJQ
YWdlUHJveHk6OlZvaWRDYWxsYmFjayhjYWxsYmFja0lEKSk7CiB9CmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdp
bmdBcmVhLmggYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29y
ZUFuaW1hdGlvbkRyYXdpbmdBcmVhLmgKaW5kZXggM2I4OTJiZjZhNDJmYzZkZjZhOWRhMjgxMjUx
ZDA0OWFhNThmYTYzYi4uYTg2NDEzZjJmM2Y5ZWQxZWY1OThhODdmZmE1ODY4N2IwZjYwYjBlZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENv
cmVBbmltYXRpb25EcmF3aW5nQXJlYS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3Mv
V2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEuaApAQCAtNTMsNiArNTMs
NyBAQCBwcml2YXRlOgogICAgIHZpcnR1YWwgdm9pZCBzY3JvbGwoY29uc3QgV2ViQ29yZTo6SW50
UmVjdCYgc2Nyb2xsUmVjdCwgY29uc3QgV2ViQ29yZTo6SW50U2l6ZSYgc2Nyb2xsT2Zmc2V0KSBP
VkVSUklERTsKIAogICAgIHZpcnR1YWwgdm9pZCBmb3JjZVJlcGFpbnQoKSBPVkVSUklERTsKKyAg
ICB2aXJ0dWFsIGJvb2wgZm9yY2VSZXBhaW50QXN5bmModWludDY0X3QgY2FsbGJhY2tJRCkgT1ZF
UlJJREU7CiAgICAgdmlydHVhbCB2b2lkIHNldExheWVyVHJlZVN0YXRlSXNGcm96ZW4oYm9vbCkg
T1ZFUlJJREU7CiAgICAgdmlydHVhbCBib29sIGxheWVyVHJlZVN0YXRlSXNGcm96ZW4oKSBjb25z
dCBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0Um9vdENvbXBvc2l0aW5nTGF5ZXIoV2Vi
Q29yZTo6R3JhcGhpY3NMYXllciopIE9WRVJSSURFOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5t
bSBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0
aW9uRHJhd2luZ0FyZWEubW0KaW5kZXggY2U2ZTIxZDhjY2U5MjNiYTgyNTVjNTRhZjgwOWZkZTE5
NjBmOTc2Ny4uMGM4Yjg2ZGQ0NGU5ZDgxZmEzMDJlZTFkNmY2YTJmNWU4NTQ1Y2FhMyAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmlt
YXRpb25EcmF3aW5nQXJlYS5tbQorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBh
Z2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhLm1tCkBAIC0zMSw2ICszMSw3IEBA
CiAjaW1wb3J0ICJMYXllckhvc3RpbmdDb250ZXh0LmgiCiAjaW1wb3J0ICJMYXllclRyZWVDb250
ZXh0LmgiCiAjaW1wb3J0ICJXZWJQYWdlLmgiCisjaW1wb3J0ICJXZWJQYWdlUHJveHlNZXNzYWdl
cy5oIgogI2ltcG9ydCAiV2ViUHJvY2Vzcy5oIgogI2ltcG9ydCA8UXVhcnR6Q29yZS9RdWFydHpD
b3JlLmg+CiAjaW1wb3J0IDxXZWJDb3JlL0ZyYW1lLmg+CkBAIC00MCw3ICs0MSw5IEBACiAjaW1w
b3J0IDxXZWJDb3JlL1JlbmRlckxheWVyQ29tcG9zaXRvci5oPgogI2ltcG9ydCA8V2ViQ29yZS9S
ZW5kZXJWaWV3Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1Njcm9sbGluZ0Nvb3JkaW5hdG9yLmg+Cisj
aW1wb3J0IDxXZWJDb3JlL1Njcm9sbGluZ1RocmVhZC5oPgogI2ltcG9ydCA8V2ViQ29yZS9TZXR0
aW5ncy5oPgorI2ltcG9ydCA8SmF2YVNjcmlwdENvcmUvTWFpblRocmVhZC5oPgogCiBAaW50ZXJm
YWNlIENBVHJhbnNhY3Rpb24gKERldGFpbHMpCiArICh2b2lkKXN5bmNocm9uaXplOwpAQCAtMTI1
LDYgKzEyOCwzMCBAQCB2b2lkIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhOjpmb3JjZVJl
cGFpbnQoKQogICAgIFtDQVRyYW5zYWN0aW9uIHN5bmNocm9uaXplXTsKIH0KIAorc3RhdGljIHZv
aWQgZm9yY2VSZXBhaW50QW5kU2VuZE1lc3NhZ2UodWludDY0X3Qgd2ViUGFnZUlELCB1aW50NjRf
dCBjYWxsYmFja0lEKQoreworICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBXZWJQcm9jZXNzOjpzaGFy
ZWQoKS53ZWJQYWdlKHdlYlBhZ2VJRCk7CisgICAgaWYgKCF3ZWJQYWdlKQorICAgICAgICByZXR1
cm47CisKKyAgICB3ZWJQYWdlLT5kcmF3aW5nQXJlYSgpLT5mb3JjZVJlcGFpbnQoKTsKKyAgICB3
ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlZvaWRDYWxsYmFjayhjYWxsYmFj
a0lEKSk7Cit9CisKK3N0YXRpYyB2b2lkIGRpc3BhdGNoQmFja1RvTWFpblRocmVhZCh1aW50NjRf
dCB3ZWJQYWdlSUQsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCit7CisgICAgY2FsbE9uTWFpblRocmVh
ZChiaW5kKGZvcmNlUmVwYWludEFuZFNlbmRNZXNzYWdlLCB3ZWJQYWdlSUQsIGNhbGxiYWNrSUQp
KTsKK30KKworYm9vbCBUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYTo6Zm9yY2VSZXBhaW50
QXN5bmModWludDY0X3QgY2FsbGJhY2tJRCkKK3sKKyAgICBpZiAobV9sYXllclRyZWVTdGF0ZUlz
RnJvemVuKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBTY3JvbGxpbmdUaHJlYWQ6OmRp
c3BhdGNoKGJpbmQoZGlzcGF0Y2hCYWNrVG9NYWluVGhyZWFkLCBtX3dlYlBhZ2UtPnBhZ2VJRCgp
LCBjYWxsYmFja0lEKSk7CisgICAgcmV0dXJuIHRydWU7Cit9CisKIHZvaWQgVGlsZWRDb3JlQW5p
bWF0aW9uRHJhd2luZ0FyZWE6OnNldExheWVyVHJlZVN0YXRlSXNGcm96ZW4oYm9vbCBsYXllclRy
ZWVTdGF0ZUlzRnJvemVuKQogewogICAgIGlmIChtX2xheWVyVHJlZVN0YXRlSXNGcm96ZW4gPT0g
bGF5ZXJUcmVlU3RhdGVJc0Zyb3plbikK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>130275</attachid>
            <date>2012-03-05 20:23:03 -0800</date>
            <delta_ts>2012-03-05 20:35:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-80368-20120305202331.patch</filename>
            <type>text/plain</type>
            <size>14400</size>
            <attacher name="Anders Carlsson">andersca</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA5ODM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZGEyNzdlMzc5ZTlhN2M0
MDQ4NDk5MGU3MDM5MDIyMmI3YTc3YTRjOC4uNTAwM2QxMGIzMzhiZDA4MGVjMmE1MWUzNTMyZDcx
MTI2MzhkZTdhYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDQ1IEBACisyMDEyLTAzLTA1ICBBbmRl
cnMgQ2FybHNzb24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgcGluY2gtdG8tem9v
bSBhbmQgZG91YmxlLXRhcCBmbGlja2VyIHdoZW4gdXNpbmcgdGhlIG5ldyBzY3JvbGxpbmcgbW9k
ZWwKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMzY4
CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8xMDg2NjIyMT4KKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbiBvcmRlciB0byB3b3JrIGJldHRlciB3aXRo
IHpvb21pbmcsIG1ha2UgdGhlIHRpbGUgY2FjaGUgdW5kbyB0aGUgc2NhbGUgdHJhbnNmb3JtYXRp
b24KKyAgICAgICAgYW5kIGhhbmRsZSB0aGUgc2NhbGluZyBtYW51YWxseS4gVGhpcyBhdm9pZHMg
Y3JlYXRpbmcgaHVnZSB0aWxlIGJhY2tpbmcgc3RvcmVzIHdoZW4gem9vbWVkIGluLgorCisgICAg
ICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1RpbGVDYWNoZS5tbToKKyAgICAgICAgKFdl
YkNvcmU6OlRpbGVDYWNoZTo6VGlsZUNhY2hlKToKKyAgICAgICAgSW5pdGlhbGl6ZSBtX3NjYWxl
IHRvIDEuCisKKyAgICAgICAgKFdlYkNvcmU6OlRpbGVDYWNoZTo6c2V0TmVlZHNEaXNwbGF5SW5S
ZWN0KToKKyAgICAgICAgU2NhbGUgdGhlIGdpdmVuIHJlY3QgYXBwcm9wcmlhdGVseS4KKworICAg
ICAgICAoV2ViQ29yZTo6VGlsZUNhY2hlOjpkcmF3TGF5ZXIpOgorICAgICAgICBBcHBseSBhIHNj
YWxlIGNvbnRleHQgdHJhbnNmb3JtLgorCisgICAgICAgIChXZWJDb3JlOjpUaWxlQ2FjaGU6OnNl
dFNjYWxlKToKKyAgICAgICAgTm8gbG9uZ2VyIHNldCB0aGUgY29udGVudHMgc2NhbGUuIEluc3Rl
YWQsIHVwZGF0ZSB0aGUgc2NhbGUgYW5kIHJldmFsaWRhdGUgdGhlIHRpbGVzLgorCisgICAgICAg
IChXZWJDb3JlOjpUaWxlQ2FjaGU6OnJldmFsaWRhdGVUaWxlcyk6CisgICAgICAgIFJldHVybiBl
YXJseSBpZiB0aGUgYm91bmRzIGFyZSBlbXB0eS4gVGhpcyBhdm9pZHMgc2hvd2luZyBhIHNpbmds
ZSB0aWxlIGlmIHRoYXQgaGFwcGVucyBkdWUgdG8gYSByYWNlIGNvbmRpdGlvbi4KKworICAgICAg
ICAoV2ViQ29yZTo6VGlsZUNhY2hlOjpnZXRUaWxlSW5kZXhSYW5nZUZvclJlY3QpOgorICAgICAg
ICBBcHBseSB0aGUgc2NhbGUgdG8gdGhlIGJvdW5kcy4KKworICAgICAgICAoV2ViQ29yZTo6VGls
ZUNhY2hlOjpjcmVhdGVUaWxlTGF5ZXIpOgorICAgICAgICBEb24ndCBzZXQgdGhlIGNvbnRlbnRz
IHNjYWxlLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1dlYlRpbGVDYWNo
ZUxheWVyLm1tOgorICAgICAgICAoLVtXZWJUaWxlQ2FjaGVMYXllciBzZXRDb250ZW50c1NjYWxl
Ol0pOgorICAgICAgICBDYWxsIFRpbGVDYWNoZTo6c2V0U2NhbGUuCisKKyAgICAgICAgKiByZW5k
ZXJpbmcvUmVuZGVyTGF5ZXJCYWNraW5nLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OlJlbmRlckxh
eWVyQmFja2luZzo6dXBkYXRlQ29tcG9zaXRlZEJvdW5kcyk6CisgICAgICAgIE1ha2Ugc3VyZSB0
byBnaXZlIHRoZSB0aWxlIGNhY2hlIGxheWVyIHNhbmUgY29tcG9zaXRlZCBib3VuZHMsIGV2ZW4g
aWYgdGhlIHBhZ2UgaGFzIGFic29sdXRlbHkgcG9zaXRpb25lZAorICAgICAgICBlbGVtZW50cyB0
aGF0IGFyZSBvdXRzaWRlIG9mIHRoZSBwYWdlLgorCiAyMDEyLTAzLTA1ICBMZXZpIFdlaW50cmF1
YiAgPGxldml3QGNocm9taXVtLm9yZz4KIAogICAgICAgICBVcGRhdGUgdXNhZ2Ugb2YgTGF5b3V0
VW5pdHMgaW4gUmVuZGVyQm94CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cg
Yi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYjZkMzFkNmNkMGIwODY0MTYyNzg1OTRm
MWYyMzMwZTYzZTM3NGZmMy4uZmQ2YTFiZDNkMmUzZmZmN2Y5OTA4YzgzMDlmZWZkM2M3MmYyZmYy
ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJL
aXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDM1IEBACisyMDEyLTAzLTA1ICBBbmRlcnMgQ2FybHNz
b24gIDxhbmRlcnNjYUBhcHBsZS5jb20+CisKKyAgICAgICAgcGluY2gtdG8tem9vbSBhbmQgZG91
YmxlLXRhcCBmbGlja2VyIHdoZW4gdXNpbmcgdGhlIG5ldyBzY3JvbGxpbmcgbW9kZWwKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTgwMzY4CisgICAgICAg
IDxyZGFyOi8vcHJvYmxlbS8xMDg2NjIyMT4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkg
KE9PUFMhKS4KKworICAgICAgICBBZGQgYSB3YXkgZm9yIGRyYXdpbmcgYXJlYXMgdG8gcmVzcG9u
ZCB0byBjYWxsYmFjayBiYXNlZCBmb3JjZSByZXBhaW50IHJlcXVlc3RzIGFzeW5jaHJvbm91c2x5
LgorICAgICAgICBUaGlzIGlzIGN1cnJlbnRseSBuZWVkZWQgZm9yIHRoZSB0aWxlZCBkcmF3aW5n
IGFyZWEgd2hlbiB0aGVyZSBtaWdodCBiZSBvdXRzdGFuZGluZyBzY3JvbGwgdXBkYXRlcworICAg
ICAgICB0aGF0IGFyZSBzZW50IGZyb20gdGhlIHNjcm9sbGluZyB0aHJlYWQgdG8gdGhlIG1haW4g
dGhyZWFkIGFuZCB3ZSBuZWVkIHRvIGVuc3VyZSB0aGF0IHRoZXkncmUgcHJvY2Vzc2VkCisgICAg
ICAgIGJlZm9yZSBzZW5kaW5nIGEgbWVzc2FnZSBiYWNrLgorCisgICAgICAgICogV2ViUHJvY2Vz
cy9XZWJQYWdlL0RyYXdpbmdBcmVhLmg6CisgICAgICAgIChXZWJLaXQ6OkRyYXdpbmdBcmVhOjpm
b3JjZVJlcGFpbnRBc3luYyk6CisgICAgICAgIEFkZCBuZXcgbWVtYmVyIGZ1bmN0aW9uLgorCisg
ICAgICAgICogV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwOgorICAgICAgICAoV2ViS2l0
OjpXZWJQYWdlOjpmb3JjZVJlcGFpbnQpOgorICAgICAgICBUcnkgZm9yY2VSZXBhaW50QXN5bmMg
Zmlyc3QuCisKKyAgICAgICAgKiBXZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29yZUFuaW1h
dGlvbkRyYXdpbmdBcmVhLm1tOgorICAgICAgICAoV2ViS2l0Ojpmb3JjZVJlcGFpbnRBbmRTZW5k
TWVzc2FnZSk6CisgICAgICAgIEZvcmNlIHRoZSByZXBhaW50IGFuZCBzZW5kIHRoZSBtZXNzYWdl
LgorCisgICAgICAgIChXZWJLaXQ6OmRpc3BhdGNoQmFja1RvTWFpblRocmVhZCk6CisgICAgICAg
IERpc3BhdGNoIGEgY2FsbCB0byBmb3JjZVJlcGFpbnRBbmRTZW5kTWVzc2FnZSB0byB0aGUgbWFp
biB0aHJlYWQuCisKKyAgICAgICAgKFdlYktpdDo6VGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0Fy
ZWE6OmZvcmNlUmVwYWludEFzeW5jKToKKyAgICAgICAgRGlzcGF0Y2ggYSBmdW5jdGlvbiBvbiB0
aGUgc2Nyb2xsaW5nIHRocmVhZC4gSXRzIHNvbGUgcHVycG9zZSBpcyB0byBkaXNwYXRjaCBhIGZ1
bmN0aW9uIGJhY2sgdG8gdGhlCisgICAgICAgIG1haW4gdGhyZWFkLCBlbnN1cmluZyB0aGF0IGFs
bCBwcmV2aW91c2x5IGRpc3BhdGNoZWQgZnVuY3Rpb25zIGhhdmUgYmVlbiBleGVjdXRlZC4KKwog
MjAxMi0wMy0wNSAgRW5yaWNhIENhc3VjY2kgIDxlbnJpY2FAYXBwbGUuY29tPgogCiAgICAgICAg
IENhbid0IHR5cGUgb24gc29tZSB3ZWJzaXRlcyAocGx1Zy1pbnMgc3RlYWwga2V5IGV2ZW50cyku
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvVGls
ZUNhY2hlLmggYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvVGlsZUNh
Y2hlLmgKaW5kZXggZjI4YTJkMzczNmY5NTRhZDBmMmNiMDc2NDA4MzZmODc5ZTQyZTYyOC4uNzE0
ZDNjOTBiMDQzMTU0M2Q3MjY1NjBkOWUxMGYwZWE0YTVjYWQ3NCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1RpbGVDYWNoZS5oCisrKyBiL1NvdXJj
ZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9UaWxlQ2FjaGUuaApAQCAtNTYsNyAr
NTYsOCBAQCBwdWJsaWM6CiAgICAgdm9pZCBzZXROZWVkc0Rpc3BsYXkoKTsKICAgICB2b2lkIHNl
dE5lZWRzRGlzcGxheUluUmVjdChjb25zdCBJbnRSZWN0Jik7CiAgICAgdm9pZCBkcmF3TGF5ZXIo
V2ViVGlsZUxheWVyKiwgQ0dDb250ZXh0UmVmKTsKLSAgICB2b2lkIHNldENvbnRlbnRzU2NhbGUo
Q0dGbG9hdCk7CisKKyAgICB2b2lkIHNldFNjYWxlKENHRmxvYXQpOwogCiAgICAgYm9vbCBhY2Nl
bGVyYXRlc0RyYXdpbmcoKSBjb25zdCB7IHJldHVybiBtX2FjY2VsZXJhdGVzRHJhd2luZzsgfQog
ICAgIHZvaWQgc2V0QWNjZWxlcmF0ZXNEcmF3aW5nKGJvb2wpOwpAQCAtOTksNiArMTAwLDggQEAg
cHJpdmF0ZToKICAgICBUaW1lcjxUaWxlQ2FjaGU+IG1fdGlsZVJldmFsaWRhdGlvblRpbWVyOwog
ICAgIEludFJlY3QgbV90aWxlQ292ZXJhZ2VSZWN0OwogCisgICAgQ0dGbG9hdCBtX3NjYWxlOwor
CiAgICAgYm9vbCBtX2FjY2VsZXJhdGVzRHJhd2luZzsKIAogICAgIFJldGFpblB0cjxDR0NvbG9y
UmVmPiBtX3RpbGVEZWJ1Z0JvcmRlckNvbG9yOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1RpbGVDYWNoZS5tbSBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL2NhL21hYy9UaWxlQ2FjaGUubW0KaW5kZXggOGI1NzdiMjliZDUxYmNh
ZWFkMWRlMmQzNTlmZWFhZGE5ZTk2MzQ3MC4uN2QyMTE4NDViZmQyMTBlNGQ3ZTgyNGZlNjViYmI5
MGJjNThiMWU1NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
Y2EvbWFjL1RpbGVDYWNoZS5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGlj
cy9jYS9tYWMvVGlsZUNhY2hlLm1tCkBAIC01NCw2ICs1NCw3IEBAIFRpbGVDYWNoZTo6VGlsZUNh
Y2hlKFdlYlRpbGVDYWNoZUxheWVyKiB0aWxlQ2FjaGVMYXllciwgY29uc3QgSW50U2l6ZSYgdGls
ZVNpemUpCiAgICAgLCBtX3RpbGVDb250YWluZXJMYXllcihhZG9wdENGKFtbQ0FMYXllciBhbGxv
Y10gaW5pdF0pKQogICAgICwgbV90aWxlU2l6ZSh0aWxlU2l6ZSkKICAgICAsIG1fdGlsZVJldmFs
aWRhdGlvblRpbWVyKHRoaXMsICZUaWxlQ2FjaGU6OnRpbGVSZXZhbGlkYXRpb25UaW1lckZpcmVk
KQorICAgICwgbV9zY2FsZSgxKQogICAgICwgbV9hY2NlbGVyYXRlc0RyYXdpbmcoZmFsc2UpCiAg
ICAgLCBtX3RpbGVEZWJ1Z0JvcmRlcldpZHRoKDApCiB7CkBAIC05MCwxMCArOTEsMTMgQEAgdm9p
ZCBUaWxlQ2FjaGU6OnNldE5lZWRzRGlzcGxheUluUmVjdChjb25zdCBJbnRSZWN0JiByZWN0KQog
ICAgIGlmIChtX3RpbGVzLmlzRW1wdHkoKSkKICAgICAgICAgcmV0dXJuOwogCisgICAgSW50UmVj
dCBzY2FsZWRSZWN0ID0gcmVjdDsKKyAgICBzY2FsZWRSZWN0LnNjYWxlKG1fc2NhbGUpOworCiAg
ICAgLy8gRmluZCB0aGUgdGlsZXMgdGhhdCBuZWVkIHRvIGJlIGludmFsaWRhdGVkLgogICAgIFRp
bGVJbmRleCB0b3BMZWZ0OwogICAgIFRpbGVJbmRleCBib3R0b21SaWdodDsKLSAgICBnZXRUaWxl
SW5kZXhSYW5nZUZvclJlY3QoaW50ZXJzZWN0aW9uKHJlY3QsIG1fdGlsZUNvdmVyYWdlUmVjdCks
IHRvcExlZnQsIGJvdHRvbVJpZ2h0KTsKKyAgICBnZXRUaWxlSW5kZXhSYW5nZUZvclJlY3QoaW50
ZXJzZWN0aW9uKHNjYWxlZFJlY3QsIG1fdGlsZUNvdmVyYWdlUmVjdCksIHRvcExlZnQsIGJvdHRv
bVJpZ2h0KTsKIAogICAgIGZvciAoaW50IHkgPSB0b3BMZWZ0LnkoKTsgeSA8PSBib3R0b21SaWdo
dC55KCk7ICsreSkgewogICAgICAgICBmb3IgKGludCB4ID0gdG9wTGVmdC54KCk7IHggPD0gYm90
dG9tUmlnaHQueCgpOyArK3gpIHsKQEAgLTEyNiw2ICsxMzAsNyBAQCB2b2lkIFRpbGVDYWNoZTo6
ZHJhd0xheWVyKFdlYlRpbGVMYXllciogbGF5ZXIsIENHQ29udGV4dFJlZiBjb250ZXh0KQogCiAg
ICAgQ0dQb2ludCBsYXllck9yaWdpbiA9IFtsYXllciBmcmFtZV0ub3JpZ2luOwogICAgIENHQ29u
dGV4dFRyYW5zbGF0ZUNUTShjb250ZXh0LCAtbGF5ZXJPcmlnaW4ueCwgLWxheWVyT3JpZ2luLnkp
OworICAgIENHQ29udGV4dFNjYWxlQ1RNKGNvbnRleHQsIG1fc2NhbGUsIG1fc2NhbGUpOwogICAg
IGRyYXdMYXllckNvbnRlbnRzKGNvbnRleHQsIGxheWVyLCBwbGF0Zm9ybUxheWVyKTsKIAogICAg
IENHQ29udGV4dFJlc3RvcmVHU3RhdGUoY29udGV4dCk7CkBAIC0xNjIsMTcgKzE2NywyMiBAQCB2
b2lkIFRpbGVDYWNoZTo6ZHJhd0xheWVyKFdlYlRpbGVMYXllciogbGF5ZXIsIENHQ29udGV4dFJl
ZiBjb250ZXh0KQogICAgIENHQ29udGV4dFJlc3RvcmVHU3RhdGUoY29udGV4dCk7CiB9CiAKLXZv
aWQgVGlsZUNhY2hlOjpzZXRDb250ZW50c1NjYWxlKENHRmxvYXQgY29udGVudHNTY2FsZSkKK3Zv
aWQgVGlsZUNhY2hlOjpzZXRTY2FsZShDR0Zsb2F0IHNjYWxlKQogeworICAgIGlmIChtX3NjYWxl
ID09IHNjYWxlKQorICAgICAgICByZXR1cm47CisKICNpZiAhZGVmaW5lZChCVUlMRElOR19PTl9M
RU9QQVJEKSAmJiAhZGVmaW5lZChCVUlMRElOR19PTl9TTk9XX0xFT1BBUkQpCi0gICAgZm9yIChU
aWxlTWFwOjpjb25zdF9pdGVyYXRvciBpdCA9IG1fdGlsZXMuYmVnaW4oKSwgZW5kID0gbV90aWxl
cy5lbmQoKTsgaXQgIT0gZW5kOyArK2l0KSB7Ci0gICAgICAgIFtpdC0+c2Vjb25kLmdldCgpIHNl
dENvbnRlbnRzU2NhbGU6Y29udGVudHNTY2FsZV07CisgICAgbV9zY2FsZSA9IHNjYWxlOworICAg
IFttX3RpbGVDb250YWluZXJMYXllci5nZXQoKSBzZXRUcmFuc2Zvcm06Q0FUcmFuc2Zvcm0zRE1h
a2VTY2FsZSgxIC8gbV9zY2FsZSwgMSAvIG1fc2NhbGUsIDEpXTsKKworICAgIHJldmFsaWRhdGVU
aWxlcygpOworCisgICAgZm9yIChUaWxlTWFwOjpjb25zdF9pdGVyYXRvciBpdCA9IG1fdGlsZXMu
YmVnaW4oKSwgZW5kID0gbV90aWxlcy5lbmQoKTsgaXQgIT0gZW5kOyArK2l0KQogICAgICAgICBb
aXQtPnNlY29uZC5nZXQoKSBzZXROZWVkc0Rpc3BsYXldOwotICAgIH0KIAogICAgIFBsYXRmb3Jt
Q0FMYXllciogcGxhdGZvcm1MYXllciA9IFBsYXRmb3JtQ0FMYXllcjo6cGxhdGZvcm1DQUxheWVy
KG1fdGlsZUNhY2hlTGF5ZXIpOwogICAgIHBsYXRmb3JtTGF5ZXItPm93bmVyKCktPnBsYXRmb3Jt
Q0FMYXllckRpZENyZWF0ZVRpbGVzKCk7Ci0gICAgcmV2YWxpZGF0ZVRpbGVzKCk7CiAjZWxzZQog
ICAgIFVOVVNFRF9QQVJBTShjb250ZW50c1NjYWxlKTsKICNlbmRpZgpAQCAtMjM0LDcgKzI0NCw5
IEBAIEludFJlY3QgVGlsZUNhY2hlOjpyZWN0Rm9yVGlsZUluZGV4KGNvbnN0IFRpbGVJbmRleCYg
dGlsZUluZGV4KSBjb25zdAogCiB2b2lkIFRpbGVDYWNoZTo6Z2V0VGlsZUluZGV4UmFuZ2VGb3JS
ZWN0KGNvbnN0IEludFJlY3QmIHJlY3QsIFRpbGVJbmRleCYgdG9wTGVmdCwgVGlsZUluZGV4JiBi
b3R0b21SaWdodCkKIHsKLSAgICBJbnRSZWN0IGNsYW1wZWRSZWN0ID0gaW50ZXJzZWN0aW9uKHJl
Y3QsIGJvdW5kcygpKTsKKyAgICBJbnRSZWN0IGNsYW1wZWRSZWN0ID0gYm91bmRzKCk7CisgICAg
Y2xhbXBlZFJlY3Quc2NhbGUobV9zY2FsZSk7CisgICAgY2xhbXBlZFJlY3QuaW50ZXJzZWN0KHJl
Y3QpOwogCiAgICAgdG9wTGVmdC5zZXRYKG1heChjbGFtcGVkUmVjdC54KCkgLyBtX3RpbGVTaXpl
LndpZHRoKCksIDApKTsKICAgICB0b3BMZWZ0LnNldFkobWF4KGNsYW1wZWRSZWN0LnkoKSAvIG1f
dGlsZVNpemUuaGVpZ2h0KCksIDApKTsKQEAgLTI2Myw3ICsyNzUsNyBAQCB2b2lkIFRpbGVDYWNo
ZTo6cmV2YWxpZGF0ZVRpbGVzKCkKICAgICBpZiAoIXBsYXRmb3JtTGF5ZXIpCiAgICAgICAgIHJl
dHVybjsKIAotICAgIGlmIChtX3Zpc2libGVSZWN0LmlzRW1wdHkoKSkKKyAgICBpZiAobV92aXNp
YmxlUmVjdC5pc0VtcHR5KCkgfHwgYm91bmRzKCkuaXNFbXB0eSgpKQogICAgICAgICByZXR1cm47
CiAKICAgICBJbnRSZWN0IHRpbGVDb3ZlcmFnZVJlY3QgPSBtX3Zpc2libGVSZWN0OwpAQCAtMzUx
LDcgKzM2Myw2IEBAIFJldGFpblB0cjxXZWJUaWxlTGF5ZXI+IFRpbGVDYWNoZTo6Y3JlYXRlVGls
ZUxheWVyKCkKICAgICBbbGF5ZXIuZ2V0KCkgc2V0RWRnZUFudGlhbGlhc2luZ01hc2s6MF07CiAK
ICNpZiAhZGVmaW5lZChCVUlMRElOR19PTl9MRU9QQVJEKSAmJiAhZGVmaW5lZChCVUlMRElOR19P
Tl9TTk9XX0xFT1BBUkQpCi0gICAgW2xheWVyLmdldCgpIHNldENvbnRlbnRzU2NhbGU6W21fdGls
ZUNhY2hlTGF5ZXIgY29udGVudHNTY2FsZV1dOwogICAgIFtsYXllci5nZXQoKSBzZXRBY2NlbGVy
YXRlc0RyYXdpbmc6bV9hY2NlbGVyYXRlc0RyYXdpbmddOwogI2VuZGlmCiAKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9XZWJUaWxlQ2FjaGVMYXll
ci5tbSBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2NhL21hYy9XZWJUaWxlQ2Fj
aGVMYXllci5tbQppbmRleCA2OTVjNDc4ZTIwOGQ0OThhYjY0ZDliYzYxOGQ3MDM3M2ZlYjFmNjI0
Li44M2FiYjcyYTgzMzRlMzhmMzRjODIzNTE0YzZiYmM3MGY4MGQyNzY5IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jYS9tYWMvV2ViVGlsZUNhY2hlTGF5ZXIu
bW0KKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2EvbWFjL1dlYlRpbGVD
YWNoZUxheWVyLm1tCkBAIC0xMDMsMTYgKzEwMyw3IEBAIHVzaW5nIG5hbWVzcGFjZSBXZWJDb3Jl
OwogCiAtICh2b2lkKXNldENvbnRlbnRzU2NhbGU6KENHRmxvYXQpY29udGVudHNTY2FsZQogewot
I2lmICFkZWZpbmVkKEJVSUxESU5HX09OX0xFT1BBUkQpICYmICFkZWZpbmVkKEJVSUxESU5HX09O
X1NOT1dfTEVPUEFSRCkKLSAgICBDR0Zsb2F0IG9sZENvbnRlbnRzU2NhbGUgPSBbc2VsZiBjb250
ZW50c1NjYWxlXTsKLQotICAgIFtzdXBlciBzZXRDb250ZW50c1NjYWxlOmNvbnRlbnRzU2NhbGVd
OwotCi0gICAgaWYgKGNvbnRlbnRzU2NhbGUgIT0gb2xkQ29udGVudHNTY2FsZSkKLSAgICAgICAg
X3RpbGVDYWNoZS0+c2V0Q29udGVudHNTY2FsZShjb250ZW50c1NjYWxlKTsKLSNlbHNlCi0gICAg
VU5VU0VEX1BBUkFNKGNvbnRlbnRzU2NhbGUpOwotI2VuZGlmCisgICAgX3RpbGVDYWNoZS0+c2V0
U2NhbGUoY29udGVudHNTY2FsZSk7CiB9CiAKIC0gKENBTGF5ZXIgKil0aWxlQ29udGFpbmVyTGF5
ZXIKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJMYXllckJhY2tp
bmcuY3BwIGIvU291cmNlL1dlYkNvcmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAK
aW5kZXggZjU1OTk3MGI0OWZjYTM3N2VjOGRjZDE2YjM5NzgzZTcwNTgzNjBiZi4uYmVmZDc0YzU1
ODk5N2IzM2Q5MmY2MzM1OWEzZmYwMmJlZWEzMzdhOCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvcmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlckxheWVyQmFja2luZy5jcHAKQEAgLTIzNiw3ICsyMzYsNyBAQCB2b2lk
IFJlbmRlckxheWVyQmFja2luZzo6dXBkYXRlQ29tcG9zaXRlZEJvdW5kcygpCiAgICAgLy8gV2Un
ZCBuZWVkIFJlbmRlck9iamVjdDo6Y29udmVydENvbnRhaW5lclRvTG9jYWxRdWFkKCksIHdoaWNo
IGRvZXNuJ3QgeWV0IGV4aXN0LiAgSWYgdGhpcwogICAgIC8vIGlzIGEgZnVsbHNjcmVlbiByZW5k
ZXJlciwgZG9uJ3QgY2xpcCB0byB0aGUgdmlld3BvcnQsIGFzIHRoZSByZW5kZXJlciB3aWxsIGJl
IGFza2VkIHRvCiAgICAgLy8gZGlzcGxheSBvdXRzaWRlIG9mIHRoZSB2aWV3cG9ydCBib3VuZHMu
Ci0gICAgaWYgKGNvbXBvc2l0b3IoKS0+Y29tcG9zaXRpbmdDb25zdWx0c092ZXJsYXAoKSAmJiAh
bGF5ZXJPckFuY2VzdG9ySXNUcmFuc2Zvcm1lZChtX293bmluZ0xheWVyKSAKKyAgICBpZiAoY29t
cG9zaXRvcigpLT5jb21wb3NpdGluZ0NvbnN1bHRzT3ZlcmxhcCgpICYmICghbGF5ZXJPckFuY2Vz
dG9ySXNUcmFuc2Zvcm1lZChtX293bmluZ0xheWVyKSB8fCBtX3VzaW5nVGlsZWRDYWNoZUxheWVy
KQogI2lmIEVOQUJMRShGVUxMU0NSRUVOX0FQSSkKICAgICAgICAgJiYgIWxheWVyT3JBbmNlc3Rv
cklzRnVsbFNjcmVlbihtX293bmluZ0xheWVyKQogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3VyY2Uv
V2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvRHJhd2luZ0FyZWEuaCBiL1NvdXJjZS9XZWJLaXQy
L1dlYlByb2Nlc3MvV2ViUGFnZS9EcmF3aW5nQXJlYS5oCmluZGV4IDJmYTM1OThhNzdhNjM4NjQy
ZDM1NjRhYmU3NGFlZGVmMzA3MjY1YTUuLjJlZTY1NTdlYWJiNWIzOTNiOTEyMTMwMzkyZDdhMDZj
M2MzNzc2MmYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9E
cmF3aW5nQXJlYS5oCisrKyBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9EcmF3
aW5nQXJlYS5oCkBAIC02Niw2ICs2Niw3IEBAIHB1YmxpYzoKICAgICAvLyBGSVhNRTogVGhlc2Ug
c2hvdWxkIGJlIHB1cmUgdmlydHVhbC4KICAgICB2aXJ0dWFsIHZvaWQgcGFnZUJhY2tncm91bmRU
cmFuc3BhcmVuY3lDaGFuZ2VkKCkgeyB9CiAgICAgdmlydHVhbCB2b2lkIGZvcmNlUmVwYWludCgp
IHsgfQorICAgIHZpcnR1YWwgYm9vbCBmb3JjZVJlcGFpbnRBc3luYyh1aW50NjRfdCBjYWxsYmFj
a0lEKSB7IHJldHVybiBmYWxzZTsgfQogICAgIHZpcnR1YWwgdm9pZCBzZXRMYXllclRyZWVTdGF0
ZUlzRnJvemVuKGJvb2wpIHsgfQogICAgIHZpcnR1YWwgYm9vbCBsYXllclRyZWVTdGF0ZUlzRnJv
emVuKCkgY29uc3QgeyByZXR1cm4gZmFsc2U7IH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktp
dDIvV2ViUHJvY2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwIGIvU291cmNlL1dlYktpdDIvV2ViUHJv
Y2Vzcy9XZWJQYWdlL1dlYlBhZ2UuY3BwCmluZGV4IDFjODcxNzM3OGUxMmJiNGMwN2E1ZTRiNTMx
OTc2YTg1NDNkNTAxOGUuLmE2OWYwZDcxNzA5NmFlODI4ZWFkNWEwYTE2MzhlMjE5N2M3NGY2OTkg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9XZWJQYWdlLmNw
cAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvV2ViUGFnZS5jcHAKQEAg
LTE4MjEsNiArMTgyMSw5IEBAIHZvaWQgV2ViUGFnZTo6Zm9yY2VSZXBhaW50V2l0aG91dENhbGxi
YWNrKCkKIAogdm9pZCBXZWJQYWdlOjpmb3JjZVJlcGFpbnQodWludDY0X3QgY2FsbGJhY2tJRCkK
IHsKKyAgICBpZiAobV9kcmF3aW5nQXJlYS0+Zm9yY2VSZXBhaW50QXN5bmMoY2FsbGJhY2tJRCkp
CisgICAgICAgIHJldHVybjsKKwogICAgIGZvcmNlUmVwYWludFdpdGhvdXRDYWxsYmFjaygpOwog
ICAgIHNlbmQoTWVzc2FnZXM6OldlYlBhZ2VQcm94eTo6Vm9pZENhbGxiYWNrKGNhbGxiYWNrSUQp
KTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMv
VGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEuaCBiL1NvdXJjZS9XZWJLaXQyL1dlYlByb2Nl
c3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWEuaAppbmRleCAzYjg5
MmJmNmE0MmZjNmRmNmE5ZGEyODEyNTFkMDQ5YWE1OGZhNjNiLi5hODY0MTNmMmYzZjllZDFlZjU5
OGE4N2ZmYTU4Njg3YjBmNjBiMGVlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9j
ZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhLmgKKysrIGIvU291
cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQYWdlL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3
aW5nQXJlYS5oCkBAIC01Myw2ICs1Myw3IEBAIHByaXZhdGU6CiAgICAgdmlydHVhbCB2b2lkIHNj
cm9sbChjb25zdCBXZWJDb3JlOjpJbnRSZWN0JiBzY3JvbGxSZWN0LCBjb25zdCBXZWJDb3JlOjpJ
bnRTaXplJiBzY3JvbGxPZmZzZXQpIE9WRVJSSURFOwogCiAgICAgdmlydHVhbCB2b2lkIGZvcmNl
UmVwYWludCgpIE9WRVJSSURFOworICAgIHZpcnR1YWwgYm9vbCBmb3JjZVJlcGFpbnRBc3luYyh1
aW50NjRfdCBjYWxsYmFja0lEKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIHZvaWQgc2V0TGF5ZXJU
cmVlU3RhdGVJc0Zyb3plbihib29sKSBPVkVSUklERTsKICAgICB2aXJ0dWFsIGJvb2wgbGF5ZXJU
cmVlU3RhdGVJc0Zyb3plbigpIGNvbnN0IE9WRVJSSURFOwogICAgIHZpcnR1YWwgdm9pZCBzZXRS
b290Q29tcG9zaXRpbmdMYXllcihXZWJDb3JlOjpHcmFwaGljc0xheWVyKikgT1ZFUlJJREU7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dlYlBhZ2UvbWFjL1RpbGVkQ29y
ZUFuaW1hdGlvbkRyYXdpbmdBcmVhLm1tIGIvU291cmNlL1dlYktpdDIvV2ViUHJvY2Vzcy9XZWJQ
YWdlL21hYy9UaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYS5tbQppbmRleCBjZTZlMjFkOGNj
ZTkyM2JhODI1NWM1NGFmODA5ZmRlMTk2MGY5NzY3Li4xNDNkNmM4YjY4MjhjOTFmMWEzODFkOTk4
MjRmOGYzNTZmN2YxNDJlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9XZWJQcm9jZXNzL1dl
YlBhZ2UvbWFjL1RpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdBcmVhLm1tCisrKyBiL1NvdXJjZS9X
ZWJLaXQyL1dlYlByb2Nlc3MvV2ViUGFnZS9tYWMvVGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0Fy
ZWEubW0KQEAgLTMxLDYgKzMxLDcgQEAKICNpbXBvcnQgIkxheWVySG9zdGluZ0NvbnRleHQuaCIK
ICNpbXBvcnQgIkxheWVyVHJlZUNvbnRleHQuaCIKICNpbXBvcnQgIldlYlBhZ2UuaCIKKyNpbXBv
cnQgIldlYlBhZ2VQcm94eU1lc3NhZ2VzLmgiCiAjaW1wb3J0ICJXZWJQcm9jZXNzLmgiCiAjaW1w
b3J0IDxRdWFydHpDb3JlL1F1YXJ0ekNvcmUuaD4KICNpbXBvcnQgPFdlYkNvcmUvRnJhbWUuaD4K
QEAgLTQwLDcgKzQxLDkgQEAKICNpbXBvcnQgPFdlYkNvcmUvUmVuZGVyTGF5ZXJDb21wb3NpdG9y
Lmg+CiAjaW1wb3J0IDxXZWJDb3JlL1JlbmRlclZpZXcuaD4KICNpbXBvcnQgPFdlYkNvcmUvU2Ny
b2xsaW5nQ29vcmRpbmF0b3IuaD4KKyNpbXBvcnQgPFdlYkNvcmUvU2Nyb2xsaW5nVGhyZWFkLmg+
CiAjaW1wb3J0IDxXZWJDb3JlL1NldHRpbmdzLmg+CisjaW1wb3J0IDx3dGYvTWFpblRocmVhZC5o
PgogCiBAaW50ZXJmYWNlIENBVHJhbnNhY3Rpb24gKERldGFpbHMpCiArICh2b2lkKXN5bmNocm9u
aXplOwpAQCAtMTI1LDYgKzEyOCwzMCBAQCB2b2lkIFRpbGVkQ29yZUFuaW1hdGlvbkRyYXdpbmdB
cmVhOjpmb3JjZVJlcGFpbnQoKQogICAgIFtDQVRyYW5zYWN0aW9uIHN5bmNocm9uaXplXTsKIH0K
IAorc3RhdGljIHZvaWQgZm9yY2VSZXBhaW50QW5kU2VuZE1lc3NhZ2UodWludDY0X3Qgd2ViUGFn
ZUlELCB1aW50NjRfdCBjYWxsYmFja0lEKQoreworICAgIFdlYlBhZ2UqIHdlYlBhZ2UgPSBXZWJQ
cm9jZXNzOjpzaGFyZWQoKS53ZWJQYWdlKHdlYlBhZ2VJRCk7CisgICAgaWYgKCF3ZWJQYWdlKQor
ICAgICAgICByZXR1cm47CisKKyAgICB3ZWJQYWdlLT5kcmF3aW5nQXJlYSgpLT5mb3JjZVJlcGFp
bnQoKTsKKyAgICB3ZWJQYWdlLT5zZW5kKE1lc3NhZ2VzOjpXZWJQYWdlUHJveHk6OlZvaWRDYWxs
YmFjayhjYWxsYmFja0lEKSk7Cit9CisKK3N0YXRpYyB2b2lkIGRpc3BhdGNoQmFja1RvTWFpblRo
cmVhZCh1aW50NjRfdCB3ZWJQYWdlSUQsIHVpbnQ2NF90IGNhbGxiYWNrSUQpCit7CisgICAgY2Fs
bE9uTWFpblRocmVhZChiaW5kKGZvcmNlUmVwYWludEFuZFNlbmRNZXNzYWdlLCB3ZWJQYWdlSUQs
IGNhbGxiYWNrSUQpKTsKK30KKworYm9vbCBUaWxlZENvcmVBbmltYXRpb25EcmF3aW5nQXJlYTo6
Zm9yY2VSZXBhaW50QXN5bmModWludDY0X3QgY2FsbGJhY2tJRCkKK3sKKyAgICBpZiAobV9sYXll
clRyZWVTdGF0ZUlzRnJvemVuKQorICAgICAgICByZXR1cm4gZmFsc2U7CisKKyAgICBTY3JvbGxp
bmdUaHJlYWQ6OmRpc3BhdGNoKGJpbmQoZGlzcGF0Y2hCYWNrVG9NYWluVGhyZWFkLCBtX3dlYlBh
Z2UtPnBhZ2VJRCgpLCBjYWxsYmFja0lEKSk7CisgICAgcmV0dXJuIHRydWU7Cit9CisKIHZvaWQg
VGlsZWRDb3JlQW5pbWF0aW9uRHJhd2luZ0FyZWE6OnNldExheWVyVHJlZVN0YXRlSXNGcm96ZW4o
Ym9vbCBsYXllclRyZWVTdGF0ZUlzRnJvemVuKQogewogICAgIGlmIChtX2xheWVyVHJlZVN0YXRl
SXNGcm96ZW4gPT0gbGF5ZXJUcmVlU3RhdGVJc0Zyb3plbikK
</data>
<flag name="review"
          id="133235"
          type_id="1"
          status="+"
          setter="sam"
    />
          </attachment>
      

    </bug>

</bugzilla>