<?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>76735</bug_id>
          
          <creation_ts>2012-01-20 13:48:57 -0800</creation_ts>
          <short_desc>[chromium] Tiled layers that get skipped once never get to draw again</short_desc>
          <delta_ts>2012-01-24 19:28:26 -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>Layout and Rendering</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="Vangelis Kokkevis">vangelis</reporter>
          <assigned_to name="Vangelis Kokkevis">vangelis</assigned_to>
          <cc>cc-bugs</cc>
    
    <cc>enne</cc>
    
    <cc>jamesr</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>539766</commentid>
    <comment_count>0</comment_count>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2012-01-20 13:48:57 -0800</bug_when>
    <thetext>If m_skipsDraw is set on a tiled layer because it&apos;s been unable to reserve a texture, the flag will stick with it for as long as the layer is around.  The issue is that TiledLayerChromium::drawsContent() will return false and the layer will never end up in a RS&apos;s layer list.  As a result, prepareToUpdate() will never be called on it and m_skipsDraw won&apos;t be reset.

This is a big issue for root layers as they stick around even after reloading the page.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539770</commentid>
    <comment_count>1</comment_count>
      <attachid>123372</attachid>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2012-01-20 13:57:24 -0800</bug_when>
    <thetext>Created attachment 123372
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539772</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-20 14:00:33 -0800</bug_when>
    <thetext>Attachment 123372 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/check-webkit-style&apos;, &apos;--diff-files&apos;, u&apos;Source/WebCore/ChangeLog&apos;, u&apos;Source/WebCor...&quot; exit_code: 1

Source/WebKit/chromium/tests/TiledLayerChromiumTest.cpp:35:  Alphabetical sorting problem.  [build/include_order] [4]
Total errors found: 1 in 5 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539870</commentid>
    <comment_count>3</comment_count>
      <attachid>123372</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-01-20 15:55:56 -0800</bug_when>
    <thetext>Comment on attachment 123372
Patch

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

Nice catch! I guess this must have regressed when I changed which layers got added to render surface layer lists.

&gt; Source/WebKit/chromium/tests/TiledLayerChromiumTest.cpp:416
&gt; +    // Neet to set the max limit again as it gets ovewritten by updateLayers().

nit: typos.

Also, it&apos;s really too bad you have to do this.  Maybe when we separate out the texture manager&apos;s responsibilities more it&apos;ll be possible to have a test interact with it more reasonably.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539885</commentid>
    <comment_count>4</comment_count>
      <attachid>123401</attachid>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2012-01-20 16:10:19 -0800</bug_when>
    <thetext>Created attachment 123401
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539887</commentid>
    <comment_count>5</comment_count>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2012-01-20 16:10:57 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; Created an attachment (id=123401) [details]
&gt; Patch

Fixed typos (oops!) and order of include files.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539889</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-01-20 16:11:56 -0800</bug_when>
    <thetext>Attachment 123401 did not pass style-queue:

Failed to run &quot;[&apos;Tools/Scripts/update-webkit&apos;]&quot; exit_code: 9

Updating OpenSource
From git://git.webkit.org/WebKit
 + baa86bc...bf9dada master     -&gt; origin/master  (forced update)
	M	Source/WebKit/chromium/ChangeLog
	M	Source/WebKit/chromium/DEPS
	M	Source/WebKit/mac/Plugins/WebNetscapePluginView.mm
	M	Source/WebKit/mac/Plugins/Hosted/WebHostedNetscapePluginView.mm
	M	Source/WebKit/mac/Plugins/WebBasePluginPackage.mm
	M	Source/WebKit/mac/Plugins/WebBaseNetscapePluginView.mm
	M	Source/WebKit/mac/WebCoreSupport/WebFrameLoaderClient.mm
	M	Source/WebKit/mac/WebCoreSupport/WebEditorClient.mm
	M	Source/WebKit/mac/ChangeLog
	M	Source/WebKit/mac/Misc/WebElementDictionary.mm
	M	Source/WebKit/mac/Misc/WebIconDatabase.mm
	M	Source/WebKit/mac/History/WebHistoryItem.mm
	M	Source/WebKit/mac/History/WebBackForwardList.mm
	M	Source/WebKit/mac/Carbon/CarbonWindowAdapter.mm
	M	Source/WebKit/mac/WebView/WebArchive.mm
	M	Source/WebKit/mac/WebView/WebViewData.mm
	M	Source/WebKit/mac/WebView/WebView.mm
	M	Source/WebKit/mac/WebView/WebResource.mm
	M	Source/WebKit/mac/WebView/WebDataSource.mm
	M	Source/WebKit/mac/WebView/WebTextIterator.mm
	M	Source/WebKit/mac/WebView/WebHTMLView.mm
	M	Source/WebCore/ChangeLog
	M	Source/WebCore/page/DOMWindow.cpp
	M	Source/WebCore/platform/RunLoop.cpp
	M	Source/WebCore/platform/mac/RunLoopMac.mm
	M	Source/WebCore/platform/RunLoop.h
r105554 = 507f56cd2ce6237ed37916e4d44446183ee0a24d (refs/remotes/origin/master)
First, rewinding head to replay your work on top of it...
Applying: Make WebCore RunLoop work for WebKit1
Using index info to reconstruct a base tree...
&lt;stdin&gt;:41: trailing whitespace.
        
warning: 1 line adds whitespace errors.
Falling back to patching base and 3-way merge...
Auto-merging Source/WebCore/ChangeLog
CONFLICT (content): Merge conflict in Source/WebCore/ChangeLog
Failed to merge in the changes.
Patch failed at 0001 Make WebCore RunLoop work for WebKit1

When you have resolved this problem run &quot;git rebase --continue&quot;.
If you would prefer to skip this patch, instead run &quot;git rebase --skip&quot;.
To restore the original branch and stop rebasing run &quot;git rebase --abort&quot;.

rebase refs/remotes/origin/master: command returned error: 1

Died at Tools/Scripts/update-webkit line 170.


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>539981</commentid>
    <comment_count>7</comment_count>
      <attachid>123422</attachid>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2012-01-20 18:14:37 -0800</bug_when>
    <thetext>Created attachment 123422
Resync-ed and resolved conflicts</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>540756</commentid>
    <comment_count>8</comment_count>
      <attachid>123422</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-01-23 12:52:07 -0800</bug_when>
    <thetext>Comment on attachment 123422
Resync-ed and resolved conflicts

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        with the layer for the remainign of its lifetime.

typo: remainign -&gt; remainder

&gt; Source/WebKit/chromium/tests/TiledLayerChromiumTest.cpp:99
&gt; +class FakeCCLayerTreeHostClient : public CCLayerTreeHostClient {

this is very nearly the same thing as FakeCCLayerTreeHostClient in LayerChromiumTest.cpp. Could you unify them and put it in a shared location? Seems like a quite handy thing to have for unit tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>541965</commentid>
    <comment_count>9</comment_count>
    <who name="Vangelis Kokkevis">vangelis</who>
    <bug_when>2012-01-24 19:28:26 -0800</bug_when>
    <thetext>Committed r105845: &lt;http://trac.webkit.org/changeset/105845&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>123372</attachid>
            <date>2012-01-20 13:57:24 -0800</date>
            <delta_ts>2012-01-20 16:10:16 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-76735-20120120135529.patch</filename>
            <type>text/plain</type>
            <size>7955</size>
            <attacher name="Vangelis Kokkevis">vangelis</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNTU0MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDEyLTAxLTIwICBWYW5nZWxp
cyBLb2trZXZpcyAgPHZhbmdlbGlzQGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1d
IElnbm9yZSBtX3NraXBzRHJhdyBpbiBUaWxlZExheWVyQ2hyb21pdW06OmRyYXdzQ29udGVudCgp
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NjczNQor
CisgICAgICAgIFRoaXMgaXMgdG8gYWRkIHNraXBwZWQgbGF5ZXJzIHRvIHRoZWlyIFJlbmRlclN1
cmZhY2UncyBsYXllciBsaXN0IHNvIHRoYXQgdGhleQorICAgICAgICBhcmUgY29uc2lkZXJlZCBp
biB0aGUgbmV4dCB1cGRhdGUuIFdpdGhvdXQgdGhpcyBjaGFuZ2UsIG1fc2tpcHNEcmF3ID0gZmFs
c2Ugc3RpY2tzCisgICAgICAgIHdpdGggdGhlIGxheWVyIGZvciB0aGUgcmVtYWluaWduIG9mIGl0
cyBsaWZldGltZS4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUZXN0czogVW5pdCB0ZXN0IChUaWxlZExheWVyQ2hyb21pdW1UZXN0LmNwcCkKKworICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OmRyYXdzQ29udGVudCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmg6
CisgICAgICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnNraXBzRHJhdyk6CisKIDIw
MTItMDEtMjAgIE1hcmMtQW5kcmUgRGVjb3N0ZSAgPG1hZEBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgQWRkIHByb3BlciBvZmZzZXQgdG8gcG9zaXRpb24gcmlnaHQgY2xpY2sgdG8gc2ltdWxhdGUg
YSBjb250ZXh0IG1lbnUgaW52b2NhdGlvbi4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9t
aXVtLmNwcAkocmV2aXNpb24gMTA1NDc4KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MTYwLDcgKzE2MCw3IEBAIGJvb2wgVGlsZWRMYXllckNocm9taXVtOjpkcmF3c0NvbnRlbnQoKQog
ICAgIGlmIChtX3RpbGluZ09wdGlvbiA9PSBOZXZlclRpbGUgJiYgbV90aWxlci0+bnVtVGlsZXMo
KSA+IDEpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIHJldHVybiAhbV9za2lwc0RyYXc7
CisgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgVGlsZWRMYXllckNocm9taXVtOjpuZWVkc0Nv
bnRlbnRzU2NhbGUoKSBjb25zdApJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmgJKHJl
dmlzaW9uIDEwNTQ3OCkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5oCSh3b3JraW5nIGNvcHkpCkBAIC04OCw2ICs4OCw4IEBA
IHByb3RlY3RlZDoKICAgICAvLyBBZnRlciBwcmVwYXJpbmcgYW4gdXBkYXRlLCByZXR1cm5zIHRy
dWUgaWYgbW9yZSBwcmUtcGFpbnRpbmcgaXMgbmVlZGVkLgogICAgIGJvb2wgbmVlZHNJZGxlUGFp
bnQoY29uc3QgSW50UmVjdCYgbGF5ZXJSZWN0KTsKIAorICAgIGJvb2wgc2tpcHNEcmF3KCkgY29u
c3QgeyByZXR1cm4gbV9za2lwc0RyYXc7IH0KKwogICAgIHZpcnR1YWwgdm9pZCBwcm90ZWN0Vmlz
aWJsZVRpbGVUZXh0dXJlcygpOwogCiAgICAgdmlydHVhbCBUZXh0dXJlTWFuYWdlciogdGV4dHVy
ZU1hbmFnZXIoKSBjb25zdDsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9n
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lv
biAxMDU1NDApCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDI0IEBACisyMDEyLTAxLTIwICBWYW5nZWxpcyBLb2trZXZpcyAgPHZh
bmdlbGlzQGNocm9taXVtLm9yZz4KKworICAgICAgICBBZGRpbmcgYSB0ZXN0IHRvIHZlcmlmeSB0
aGF0IG1fc2tpcHNEcmF3IGdldHMgcmVzZXQgYmV0d2VlbiBmcmFtZXMgZm9yCisgICAgICAgIHRp
bGVkIGxheWVycy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTc2NzM1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiB0ZXN0cy9UaWxlZExheWVyQ2hyb21pdW1UZXN0LmNwcDoKKyAgICAgICAgKFdURjo6RmFr
ZUNDTGF5ZXJUcmVlSG9zdENsaWVudDo6dXBkYXRlQW5pbWF0aW9ucyk6CisgICAgICAgIChXVEY6
OkZha2VDQ0xheWVyVHJlZUhvc3RDbGllbnQ6OmxheW91dCk6CisgICAgICAgIChXVEY6OkZha2VD
Q0xheWVyVHJlZUhvc3RDbGllbnQ6OmFwcGx5U2Nyb2xsQW5kU2NhbGUpOgorICAgICAgICAoV1RG
OjpGYWtlQ0NMYXllclRyZWVIb3N0Q2xpZW50OjpjcmVhdGVMYXllclRyZWVIb3N0Q29udGV4dDNE
KToKKyAgICAgICAgKFdURjo6RmFrZUNDTGF5ZXJUcmVlSG9zdENsaWVudDo6ZGlkUmVjcmVhdGVH
cmFwaGljc0NvbnRleHQpOgorICAgICAgICAoV1RGOjpGYWtlQ0NMYXllclRyZWVIb3N0Q2xpZW50
OjpkaWRDb21taXRBbmREcmF3RnJhbWUpOgorICAgICAgICAoV1RGOjpGYWtlQ0NMYXllclRyZWVI
b3N0Q2xpZW50OjpkaWRDb21wbGV0ZVN3YXBCdWZmZXJzKToKKyAgICAgICAgKFdURjo6RmFrZUND
TGF5ZXJUcmVlSG9zdENsaWVudDo6c2NoZWR1bGVDb21wb3NpdGUpOgorICAgICAgICAoV1RGOjpG
YWtlVGlsZWRMYXllckNocm9taXVtOjpza2lwc0RyYXcpOgorICAgICAgICAoV1RGOjpGYWtlVGls
ZWRMYXllckNocm9taXVtOjpwYWludENvbnRlbnRzSWZEaXJ0eSk6CisgICAgICAgIChXVEY6OlRF
U1QpOgorCiAyMDEyLTAxLTIwICBTYWRydWwgSGFiaWIgQ2hvd2RodXJ5ICA8c2FkcnVsQGNocm9t
aXVtLm9yZz4KIAogICAgICAgICBbY2hyb21pdW1dIFJldmVydCBhIGNvdXBsZSBvZiBjaGFuZ2Vz
IGluIGZpbGVhcGkvIHRoYXQgYnJlYWsgdGVzdHMgaW4gY2hyb21lb3MuCkluZGV4OiBTb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3Rlc3RzL1RpbGVkTGF5ZXJDaHJvbWl1bVRlc3QuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvVGlsZWRMYXllckNocm9taXVtVGVz
dC5jcHAJKHJldmlzaW9uIDEwNTQ3OCkKKysrIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMv
VGlsZWRMYXllckNocm9taXVtVGVzdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDExICsyNiwx
NCBAQAogCiAjaW5jbHVkZSAiVGlsZWRMYXllckNocm9taXVtLmgiCiAKKyNpbmNsdWRlICJDb21w
b3NpdG9yRmFrZUdyYXBoaWNzQ29udGV4dDNELmgiCiAjaW5jbHVkZSAiTGF5ZXJUZXh0dXJlVXBk
YXRlci5oIgogI2luY2x1ZGUgIlRleHR1cmVNYW5hZ2VyLmgiCiAjaW5jbHVkZSAiY2MvQ0NTaW5n
bGVUaHJlYWRQcm94eS5oIiAvLyBGb3IgRGVidWdTY29wZWRTZXRJbXBsVGhyZWFkCiAjaW5jbHVk
ZSAiY2MvQ0NUZXh0dXJlVXBkYXRlci5oIgogI2luY2x1ZGUgImNjL0NDVGlsZWRMYXllckltcGwu
aCIKKyNpbmNsdWRlICJXZWJDb21wb3NpdG9yLmgiCisKICNpbmNsdWRlIDxndGVzdC9ndGVzdC5o
PgogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKQEAgLTkzLDYgKzk2LDI0IEBAIHB1YmxpYzoK
ICAgICB9CiB9OwogCitjbGFzcyBGYWtlQ0NMYXllclRyZWVIb3N0Q2xpZW50IDogcHVibGljIEND
TGF5ZXJUcmVlSG9zdENsaWVudCB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHVwZGF0ZUFu
aW1hdGlvbnMoZG91YmxlIGZyYW1lQmVnaW5UaW1lKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgbGF5
b3V0KCkgeyB9CisgICAgdmlydHVhbCB2b2lkIGFwcGx5U2Nyb2xsQW5kU2NhbGUoY29uc3QgSW50
U2l6ZSYgc2Nyb2xsRGVsdGEsIGZsb2F0IHBhZ2VTY2FsZSkgeyB9CisgICAgdmlydHVhbCBQYXNz
UmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjcmVhdGVMYXllclRyZWVIb3N0Q29udGV4dDNEKCkK
KyAgICB7CisgICAgICAgIEdyYXBoaWNzQ29udGV4dDNEOjpBdHRyaWJ1dGVzIGF0dHJzOworICAg
ICAgICByZXR1cm4gY3JlYXRlQ29tcG9zaXRvck1vY2tHcmFwaGljc0NvbnRleHQzRChhdHRycyk7
CisgICAgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNyZWF0ZUdyYXBoaWNzQ29udGV4dChib29s
IHN1Y2Nlc3MpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRDb21taXRBbmREcmF3RnJhbWUoKSB7
IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkQ29tcGxldGVTd2FwQnVmZmVycygpIHsgfQorCisgICAg
Ly8gVXNlZCBvbmx5IGluIHRoZSBzaW5nbGUtdGhyZWFkZWQgcGF0aC4KKyAgICB2aXJ0dWFsIHZv
aWQgc2NoZWR1bGVDb21wb3NpdGUoKSB7IH0KK307CisKIGNsYXNzIEZha2VUaWxlZExheWVyQ2hy
b21pdW0gOiBwdWJsaWMgVGlsZWRMYXllckNocm9taXVtIHsKIHB1YmxpYzoKICAgICBleHBsaWNp
dCBGYWtlVGlsZWRMYXllckNocm9taXVtKFRleHR1cmVNYW5hZ2VyKiB0ZXh0dXJlTWFuYWdlcikK
QEAgLTEyNywxMCArMTQ4LDIwIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIFRpbGVkTGF5ZXJD
aHJvbWl1bTo6bmVlZHNJZGxlUGFpbnQocmVjdCk7CiAgICAgfQogCisgICAgYm9vbCBza2lwc0Ry
YXcoKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIFRpbGVkTGF5ZXJDaHJvbWl1bTo6c2tp
cHNEcmF3KCk7CisgICAgfQorCiAgICAgRmFrZUxheWVyVGV4dHVyZVVwZGF0ZXIqIGZha2VMYXll
clRleHR1cmVVcGRhdGVyKCkgeyByZXR1cm4gbV9mYWtlVGV4dHVyZVVwZGF0ZXIuZ2V0KCk7IH0K
IAogICAgIHZpcnR1YWwgVGV4dHVyZU1hbmFnZXIqIHRleHR1cmVNYW5hZ2VyKCkgY29uc3QgeyBy
ZXR1cm4gbV90ZXh0dXJlTWFuYWdlcjsgfQogCisgICAgdmlydHVhbCB2b2lkIHBhaW50Q29udGVu
dHNJZkRpcnR5KCkKKyAgICB7CisgICAgICAgIHByZXBhcmVUb1VwZGF0ZSh2aXNpYmxlTGF5ZXJS
ZWN0KCkpOworICAgIH0KKwogcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgY3JlYXRlVGV4dHVy
ZVVwZGF0ZXIoY29uc3QgQ0NMYXllclRyZWVIb3N0KikgeyB9CiAKQEAgLTMzOSw0ICszNzAsNTQg
QEAgVEVTVChUaWxlZExheWVyQ2hyb21pdW1UZXN0LCBpbnZhbGlkYXRlRgogICAgIEVYUEVDVF9F
USgxLCBsYXllci0+ZmFrZUxheWVyVGV4dHVyZVVwZGF0ZXIoKS0+cHJlcGFyZUNvdW50KCkpOwog
fQogCitURVNUKFRpbGVkTGF5ZXJDaHJvbWl1bVRlc3QsIHNraXBzRHJhd0dldHNSZXNldCkKK3sK
KyAgICAvLyBJbml0aWFsaXplIHdpdGhvdXQgdGhyZWFkaW5nIHN1cHBvcnQuCisgICAgV2ViS2l0
OjpXZWJDb21wb3NpdG9yOjppbml0aWFsaXplKDApOworICAgIEZha2VDQ0xheWVyVHJlZUhvc3RD
bGllbnQgZmFrZUNDTGF5ZXJUcmVlSG9zdENsaWVudDsKKyAgICBSZWZQdHI8Q0NMYXllclRyZWVI
b3N0PiBjY0xheWVyVHJlZUhvc3QgPSBDQ0xheWVyVHJlZUhvc3Q6OmNyZWF0ZSgmZmFrZUNDTGF5
ZXJUcmVlSG9zdENsaWVudCwgQ0NTZXR0aW5ncygpKTsKKworICAgIC8vIENyZWF0ZSB0d28gMzAw
IHggMzAwIHRpbGVkIGxheWVycy4KKyAgICBJbnRTaXplIGNvbnRlbnRCb3VuZHMoMzAwLCAzMDAp
OworICAgIEludFJlY3QgY29udGVudFJlY3QoSW50UG9pbnQ6Onplcm8oKSwgY29udGVudEJvdW5k
cyk7CisKKyAgICBSZWZQdHI8RmFrZVRpbGVkTGF5ZXJDaHJvbWl1bT4gcm9vdExheWVyID0gYWRv
cHRSZWYobmV3IEZha2VUaWxlZExheWVyQ2hyb21pdW0oY2NMYXllclRyZWVIb3N0LT5jb250ZW50
c1RleHR1cmVNYW5hZ2VyKCkpKTsKKyAgICBSZWZQdHI8RmFrZVRpbGVkTGF5ZXJDaHJvbWl1bT4g
Y2hpbGRMYXllciA9IGFkb3B0UmVmKG5ldyBGYWtlVGlsZWRMYXllckNocm9taXVtKGNjTGF5ZXJU
cmVlSG9zdC0+Y29udGVudHNUZXh0dXJlTWFuYWdlcigpKSk7CisgICAgcm9vdExheWVyLT5hZGRD
aGlsZChjaGlsZExheWVyKTsKKworICAgIHJvb3RMYXllci0+c2V0Qm91bmRzKGNvbnRlbnRCb3Vu
ZHMpOworICAgIHJvb3RMYXllci0+c2V0UG9zaXRpb24oRmxvYXRQb2ludCgxNTAsIDE1MCkpOwor
ICAgIGNoaWxkTGF5ZXItPnNldEJvdW5kcyhjb250ZW50Qm91bmRzKTsKKyAgICBjaGlsZExheWVy
LT5zZXRQb3NpdGlvbihGbG9hdFBvaW50KDE1MCwgMTUwKSk7CisgICAgcm9vdExheWVyLT5pbnZh
bGlkYXRlUmVjdChjb250ZW50UmVjdCk7CisgICAgY2hpbGRMYXllci0+aW52YWxpZGF0ZVJlY3Qo
Y29udGVudFJlY3QpOworCisgICAgLy8gV2UgaGF2ZSBlbm91Z2ggbWVtb3J5IGZvciBvbmx5IG9u
ZSBvZiB0aGUgdHdvIGxheWVycy4KKyAgICBpbnQgbWVtb3J5TGltaXQgPSA0ICogMzAwICogMzAw
OyAvLyA0IGJ5dGVzIHBlciBwaXhlbC4KKworICAgIEZha2VUZXh0dXJlQWxsb2NhdG9yIHRleHR1
cmVBbGxvY2F0b3I7CisgICAgQ0NUZXh0dXJlVXBkYXRlciB1cGRhdGVyKCZ0ZXh0dXJlQWxsb2Nh
dG9yKTsKKworICAgIGNjTGF5ZXJUcmVlSG9zdC0+c2V0Um9vdExheWVyKHJvb3RMYXllcik7Cisg
ICAgY2NMYXllclRyZWVIb3N0LT5zZXRWaWV3cG9ydFNpemUoSW50U2l6ZSgzMDAsIDMwMCkpOwor
ICAgIGNjTGF5ZXJUcmVlSG9zdC0+Y29udGVudHNUZXh0dXJlTWFuYWdlcigpLT5zZXRNYXhNZW1v
cnlMaW1pdEJ5dGVzKG1lbW9yeUxpbWl0KTsKKyAgICBjY0xheWVyVHJlZUhvc3QtPnVwZGF0ZUxh
eWVycygpOworICAgIGNjTGF5ZXJUcmVlSG9zdC0+dXBkYXRlQ29tcG9zaXRvclJlc291cmNlcyhj
Y0xheWVyVHJlZUhvc3QtPmNvbnRleHQoKSwgdXBkYXRlcik7CisKKyAgICAvLyBXZSdsbCBza2lw
IHRoZSByb290IGxheWVyLgorICAgIEVYUEVDVF9UUlVFKHJvb3RMYXllci0+c2tpcHNEcmF3KCkp
OworICAgIEVYUEVDVF9GQUxTRShjaGlsZExheWVyLT5za2lwc0RyYXcoKSk7CisKKyAgICBjY0xh
eWVyVHJlZUhvc3QtPmNvbW1pdENvbXBsZXRlKCk7CisKKyAgICAvLyBSZW1vdmUgdGhlIGNoaWxk
IGxheWVyLgorICAgIHJvb3RMYXllci0+cmVtb3ZlQWxsQ2hpbGRyZW4oKTsKKworICAgIC8vIE5l
ZXQgdG8gc2V0IHRoZSBtYXggbGltaXQgYWdhaW4gYXMgaXQgZ2V0cyBvdmV3cml0dGVuIGJ5IHVw
ZGF0ZUxheWVycygpLgorICAgIGNjTGF5ZXJUcmVlSG9zdC0+Y29udGVudHNUZXh0dXJlTWFuYWdl
cigpLT5zZXRNYXhNZW1vcnlMaW1pdEJ5dGVzKG1lbW9yeUxpbWl0KTsKKyAgICBjY0xheWVyVHJl
ZUhvc3QtPnVwZGF0ZUxheWVycygpOworICAgIEVYUEVDVF9GQUxTRShyb290TGF5ZXItPnNraXBz
RHJhdygpKTsKK30KKworCiB9IC8vIG5hbWVzcGFjZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>123401</attachid>
            <date>2012-01-20 16:10:19 -0800</date>
            <delta_ts>2012-01-20 18:14:33 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-76735-20120120160824.patch</filename>
            <type>text/plain</type>
            <size>7956</size>
            <attacher name="Vangelis Kokkevis">vangelis</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNTU0MCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDEyLTAxLTIwICBWYW5nZWxp
cyBLb2trZXZpcyAgPHZhbmdlbGlzQGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1d
IElnbm9yZSBtX3NraXBzRHJhdyBpbiBUaWxlZExheWVyQ2hyb21pdW06OmRyYXdzQ29udGVudCgp
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NjczNQor
CisgICAgICAgIFRoaXMgaXMgdG8gYWRkIHNraXBwZWQgbGF5ZXJzIHRvIHRoZWlyIFJlbmRlclN1
cmZhY2UncyBsYXllciBsaXN0IHNvIHRoYXQgdGhleQorICAgICAgICBhcmUgY29uc2lkZXJlZCBp
biB0aGUgbmV4dCB1cGRhdGUuIFdpdGhvdXQgdGhpcyBjaGFuZ2UsIG1fc2tpcHNEcmF3ID0gZmFs
c2Ugc3RpY2tzCisgICAgICAgIHdpdGggdGhlIGxheWVyIGZvciB0aGUgcmVtYWluaWduIG9mIGl0
cyBsaWZldGltZS4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUZXN0czogVW5pdCB0ZXN0IChUaWxlZExheWVyQ2hyb21pdW1UZXN0LmNwcCkKKworICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OmRyYXdzQ29udGVudCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmg6
CisgICAgICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnNraXBzRHJhdyk6CisKIDIw
MTItMDEtMjAgIE1hcmMtQW5kcmUgRGVjb3N0ZSAgPG1hZEBjaHJvbWl1bS5vcmc+CiAKICAgICAg
ICAgQWRkIHByb3BlciBvZmZzZXQgdG8gcG9zaXRpb24gcmlnaHQgY2xpY2sgdG8gc2ltdWxhdGUg
YSBjb250ZXh0IG1lbnUgaW52b2NhdGlvbi4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3Jt
L2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9t
aXVtLmNwcAkocmV2aXNpb24gMTA1NDc4KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Jh
cGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmNwcAkod29ya2luZyBjb3B5KQpAQCAt
MTYwLDcgKzE2MCw3IEBAIGJvb2wgVGlsZWRMYXllckNocm9taXVtOjpkcmF3c0NvbnRlbnQoKQog
ICAgIGlmIChtX3RpbGluZ09wdGlvbiA9PSBOZXZlclRpbGUgJiYgbV90aWxlci0+bnVtVGlsZXMo
KSA+IDEpCiAgICAgICAgIHJldHVybiBmYWxzZTsKIAotICAgIHJldHVybiAhbV9za2lwc0RyYXc7
CisgICAgcmV0dXJuIHRydWU7CiB9CiAKIGJvb2wgVGlsZWRMYXllckNocm9taXVtOjpuZWVkc0Nv
bnRlbnRzU2NhbGUoKSBjb25zdApJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmgJKHJl
dmlzaW9uIDEwNTQ3OCkKKysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5oCSh3b3JraW5nIGNvcHkpCkBAIC04OCw2ICs4OCw4IEBA
IHByb3RlY3RlZDoKICAgICAvLyBBZnRlciBwcmVwYXJpbmcgYW4gdXBkYXRlLCByZXR1cm5zIHRy
dWUgaWYgbW9yZSBwcmUtcGFpbnRpbmcgaXMgbmVlZGVkLgogICAgIGJvb2wgbmVlZHNJZGxlUGFp
bnQoY29uc3QgSW50UmVjdCYgbGF5ZXJSZWN0KTsKIAorICAgIGJvb2wgc2tpcHNEcmF3KCkgY29u
c3QgeyByZXR1cm4gbV9za2lwc0RyYXc7IH0KKwogICAgIHZpcnR1YWwgdm9pZCBwcm90ZWN0Vmlz
aWJsZVRpbGVUZXh0dXJlcygpOwogCiAgICAgdmlydHVhbCBUZXh0dXJlTWFuYWdlciogdGV4dHVy
ZU1hbmFnZXIoKSBjb25zdDsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9n
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lv
biAxMDU1NDApCisrKyBTb3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBj
b3B5KQpAQCAtMSwzICsxLDI0IEBACisyMDEyLTAxLTIwICBWYW5nZWxpcyBLb2trZXZpcyAgPHZh
bmdlbGlzQGNocm9taXVtLm9yZz4KKworICAgICAgICBBZGRpbmcgYSB0ZXN0IHRvIHZlcmlmeSB0
aGF0IG1fc2tpcHNEcmF3IGdldHMgcmVzZXQgYmV0d2VlbiBmcmFtZXMgZm9yCisgICAgICAgIHRp
bGVkIGxheWVycy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTc2NzM1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiB0ZXN0cy9UaWxlZExheWVyQ2hyb21pdW1UZXN0LmNwcDoKKyAgICAgICAgKFdURjo6RmFr
ZUNDTGF5ZXJUcmVlSG9zdENsaWVudDo6dXBkYXRlQW5pbWF0aW9ucyk6CisgICAgICAgIChXVEY6
OkZha2VDQ0xheWVyVHJlZUhvc3RDbGllbnQ6OmxheW91dCk6CisgICAgICAgIChXVEY6OkZha2VD
Q0xheWVyVHJlZUhvc3RDbGllbnQ6OmFwcGx5U2Nyb2xsQW5kU2NhbGUpOgorICAgICAgICAoV1RG
OjpGYWtlQ0NMYXllclRyZWVIb3N0Q2xpZW50OjpjcmVhdGVMYXllclRyZWVIb3N0Q29udGV4dDNE
KToKKyAgICAgICAgKFdURjo6RmFrZUNDTGF5ZXJUcmVlSG9zdENsaWVudDo6ZGlkUmVjcmVhdGVH
cmFwaGljc0NvbnRleHQpOgorICAgICAgICAoV1RGOjpGYWtlQ0NMYXllclRyZWVIb3N0Q2xpZW50
OjpkaWRDb21taXRBbmREcmF3RnJhbWUpOgorICAgICAgICAoV1RGOjpGYWtlQ0NMYXllclRyZWVI
b3N0Q2xpZW50OjpkaWRDb21wbGV0ZVN3YXBCdWZmZXJzKToKKyAgICAgICAgKFdURjo6RmFrZUND
TGF5ZXJUcmVlSG9zdENsaWVudDo6c2NoZWR1bGVDb21wb3NpdGUpOgorICAgICAgICAoV1RGOjpG
YWtlVGlsZWRMYXllckNocm9taXVtOjpza2lwc0RyYXcpOgorICAgICAgICAoV1RGOjpGYWtlVGls
ZWRMYXllckNocm9taXVtOjpwYWludENvbnRlbnRzSWZEaXJ0eSk6CisgICAgICAgIChXVEY6OlRF
U1QpOgorCiAyMDEyLTAxLTIwICBTYWRydWwgSGFiaWIgQ2hvd2RodXJ5ICA8c2FkcnVsQGNocm9t
aXVtLm9yZz4KIAogICAgICAgICBbY2hyb21pdW1dIFJldmVydCBhIGNvdXBsZSBvZiBjaGFuZ2Vz
IGluIGZpbGVhcGkvIHRoYXQgYnJlYWsgdGVzdHMgaW4gY2hyb21lb3MuCkluZGV4OiBTb3VyY2Uv
V2ViS2l0L2Nocm9taXVtL3Rlc3RzL1RpbGVkTGF5ZXJDaHJvbWl1bVRlc3QuY3BwCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvVGlsZWRMYXllckNocm9taXVtVGVz
dC5jcHAJKHJldmlzaW9uIDEwNTQ3OCkKKysrIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMv
VGlsZWRMYXllckNocm9taXVtVGVzdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDExICsyNiwx
NCBAQAogCiAjaW5jbHVkZSAiVGlsZWRMYXllckNocm9taXVtLmgiCiAKKyNpbmNsdWRlICJDb21w
b3NpdG9yRmFrZUdyYXBoaWNzQ29udGV4dDNELmgiCiAjaW5jbHVkZSAiTGF5ZXJUZXh0dXJlVXBk
YXRlci5oIgogI2luY2x1ZGUgIlRleHR1cmVNYW5hZ2VyLmgiCisjaW5jbHVkZSAiV2ViQ29tcG9z
aXRvci5oIgogI2luY2x1ZGUgImNjL0NDU2luZ2xlVGhyZWFkUHJveHkuaCIgLy8gRm9yIERlYnVn
U2NvcGVkU2V0SW1wbFRocmVhZAogI2luY2x1ZGUgImNjL0NDVGV4dHVyZVVwZGF0ZXIuaCIKICNp
bmNsdWRlICJjYy9DQ1RpbGVkTGF5ZXJJbXBsLmgiCisKICNpbmNsdWRlIDxndGVzdC9ndGVzdC5o
PgogCiB1c2luZyBuYW1lc3BhY2UgV2ViQ29yZTsKQEAgLTkzLDYgKzk2LDI0IEBAIHB1YmxpYzoK
ICAgICB9CiB9OwogCitjbGFzcyBGYWtlQ0NMYXllclRyZWVIb3N0Q2xpZW50IDogcHVibGljIEND
TGF5ZXJUcmVlSG9zdENsaWVudCB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHVwZGF0ZUFu
aW1hdGlvbnMoZG91YmxlIGZyYW1lQmVnaW5UaW1lKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgbGF5
b3V0KCkgeyB9CisgICAgdmlydHVhbCB2b2lkIGFwcGx5U2Nyb2xsQW5kU2NhbGUoY29uc3QgSW50
U2l6ZSYgc2Nyb2xsRGVsdGEsIGZsb2F0IHBhZ2VTY2FsZSkgeyB9CisgICAgdmlydHVhbCBQYXNz
UmVmUHRyPEdyYXBoaWNzQ29udGV4dDNEPiBjcmVhdGVMYXllclRyZWVIb3N0Q29udGV4dDNEKCkK
KyAgICB7CisgICAgICAgIEdyYXBoaWNzQ29udGV4dDNEOjpBdHRyaWJ1dGVzIGF0dHJzOworICAg
ICAgICByZXR1cm4gY3JlYXRlQ29tcG9zaXRvck1vY2tHcmFwaGljc0NvbnRleHQzRChhdHRycyk7
CisgICAgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNyZWF0ZUdyYXBoaWNzQ29udGV4dChib29s
IHN1Y2Nlc3MpIHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRDb21taXRBbmREcmF3RnJhbWUoKSB7
IH0KKyAgICB2aXJ0dWFsIHZvaWQgZGlkQ29tcGxldGVTd2FwQnVmZmVycygpIHsgfQorCisgICAg
Ly8gVXNlZCBvbmx5IGluIHRoZSBzaW5nbGUtdGhyZWFkZWQgcGF0aC4KKyAgICB2aXJ0dWFsIHZv
aWQgc2NoZWR1bGVDb21wb3NpdGUoKSB7IH0KK307CisKIGNsYXNzIEZha2VUaWxlZExheWVyQ2hy
b21pdW0gOiBwdWJsaWMgVGlsZWRMYXllckNocm9taXVtIHsKIHB1YmxpYzoKICAgICBleHBsaWNp
dCBGYWtlVGlsZWRMYXllckNocm9taXVtKFRleHR1cmVNYW5hZ2VyKiB0ZXh0dXJlTWFuYWdlcikK
QEAgLTEyNywxMCArMTQ4LDIwIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIFRpbGVkTGF5ZXJD
aHJvbWl1bTo6bmVlZHNJZGxlUGFpbnQocmVjdCk7CiAgICAgfQogCisgICAgYm9vbCBza2lwc0Ry
YXcoKSBjb25zdAorICAgIHsKKyAgICAgICAgcmV0dXJuIFRpbGVkTGF5ZXJDaHJvbWl1bTo6c2tp
cHNEcmF3KCk7CisgICAgfQorCiAgICAgRmFrZUxheWVyVGV4dHVyZVVwZGF0ZXIqIGZha2VMYXll
clRleHR1cmVVcGRhdGVyKCkgeyByZXR1cm4gbV9mYWtlVGV4dHVyZVVwZGF0ZXIuZ2V0KCk7IH0K
IAogICAgIHZpcnR1YWwgVGV4dHVyZU1hbmFnZXIqIHRleHR1cmVNYW5hZ2VyKCkgY29uc3QgeyBy
ZXR1cm4gbV90ZXh0dXJlTWFuYWdlcjsgfQogCisgICAgdmlydHVhbCB2b2lkIHBhaW50Q29udGVu
dHNJZkRpcnR5KCkKKyAgICB7CisgICAgICAgIHByZXBhcmVUb1VwZGF0ZSh2aXNpYmxlTGF5ZXJS
ZWN0KCkpOworICAgIH0KKwogcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgY3JlYXRlVGV4dHVy
ZVVwZGF0ZXIoY29uc3QgQ0NMYXllclRyZWVIb3N0KikgeyB9CiAKQEAgLTMzOSw0ICszNzAsNTQg
QEAgVEVTVChUaWxlZExheWVyQ2hyb21pdW1UZXN0LCBpbnZhbGlkYXRlRgogICAgIEVYUEVDVF9F
USgxLCBsYXllci0+ZmFrZUxheWVyVGV4dHVyZVVwZGF0ZXIoKS0+cHJlcGFyZUNvdW50KCkpOwog
fQogCitURVNUKFRpbGVkTGF5ZXJDaHJvbWl1bVRlc3QsIHNraXBzRHJhd0dldHNSZXNldCkKK3sK
KyAgICAvLyBJbml0aWFsaXplIHdpdGhvdXQgdGhyZWFkaW5nIHN1cHBvcnQuCisgICAgV2ViS2l0
OjpXZWJDb21wb3NpdG9yOjppbml0aWFsaXplKDApOworICAgIEZha2VDQ0xheWVyVHJlZUhvc3RD
bGllbnQgZmFrZUNDTGF5ZXJUcmVlSG9zdENsaWVudDsKKyAgICBSZWZQdHI8Q0NMYXllclRyZWVI
b3N0PiBjY0xheWVyVHJlZUhvc3QgPSBDQ0xheWVyVHJlZUhvc3Q6OmNyZWF0ZSgmZmFrZUNDTGF5
ZXJUcmVlSG9zdENsaWVudCwgQ0NTZXR0aW5ncygpKTsKKworICAgIC8vIENyZWF0ZSB0d28gMzAw
IHggMzAwIHRpbGVkIGxheWVycy4KKyAgICBJbnRTaXplIGNvbnRlbnRCb3VuZHMoMzAwLCAzMDAp
OworICAgIEludFJlY3QgY29udGVudFJlY3QoSW50UG9pbnQ6Onplcm8oKSwgY29udGVudEJvdW5k
cyk7CisKKyAgICBSZWZQdHI8RmFrZVRpbGVkTGF5ZXJDaHJvbWl1bT4gcm9vdExheWVyID0gYWRv
cHRSZWYobmV3IEZha2VUaWxlZExheWVyQ2hyb21pdW0oY2NMYXllclRyZWVIb3N0LT5jb250ZW50
c1RleHR1cmVNYW5hZ2VyKCkpKTsKKyAgICBSZWZQdHI8RmFrZVRpbGVkTGF5ZXJDaHJvbWl1bT4g
Y2hpbGRMYXllciA9IGFkb3B0UmVmKG5ldyBGYWtlVGlsZWRMYXllckNocm9taXVtKGNjTGF5ZXJU
cmVlSG9zdC0+Y29udGVudHNUZXh0dXJlTWFuYWdlcigpKSk7CisgICAgcm9vdExheWVyLT5hZGRD
aGlsZChjaGlsZExheWVyKTsKKworICAgIHJvb3RMYXllci0+c2V0Qm91bmRzKGNvbnRlbnRCb3Vu
ZHMpOworICAgIHJvb3RMYXllci0+c2V0UG9zaXRpb24oRmxvYXRQb2ludCgxNTAsIDE1MCkpOwor
ICAgIGNoaWxkTGF5ZXItPnNldEJvdW5kcyhjb250ZW50Qm91bmRzKTsKKyAgICBjaGlsZExheWVy
LT5zZXRQb3NpdGlvbihGbG9hdFBvaW50KDE1MCwgMTUwKSk7CisgICAgcm9vdExheWVyLT5pbnZh
bGlkYXRlUmVjdChjb250ZW50UmVjdCk7CisgICAgY2hpbGRMYXllci0+aW52YWxpZGF0ZVJlY3Qo
Y29udGVudFJlY3QpOworCisgICAgLy8gV2UgaGF2ZSBlbm91Z2ggbWVtb3J5IGZvciBvbmx5IG9u
ZSBvZiB0aGUgdHdvIGxheWVycy4KKyAgICBpbnQgbWVtb3J5TGltaXQgPSA0ICogMzAwICogMzAw
OyAvLyA0IGJ5dGVzIHBlciBwaXhlbC4KKworICAgIEZha2VUZXh0dXJlQWxsb2NhdG9yIHRleHR1
cmVBbGxvY2F0b3I7CisgICAgQ0NUZXh0dXJlVXBkYXRlciB1cGRhdGVyKCZ0ZXh0dXJlQWxsb2Nh
dG9yKTsKKworICAgIGNjTGF5ZXJUcmVlSG9zdC0+c2V0Um9vdExheWVyKHJvb3RMYXllcik7Cisg
ICAgY2NMYXllclRyZWVIb3N0LT5zZXRWaWV3cG9ydFNpemUoSW50U2l6ZSgzMDAsIDMwMCkpOwor
ICAgIGNjTGF5ZXJUcmVlSG9zdC0+Y29udGVudHNUZXh0dXJlTWFuYWdlcigpLT5zZXRNYXhNZW1v
cnlMaW1pdEJ5dGVzKG1lbW9yeUxpbWl0KTsKKyAgICBjY0xheWVyVHJlZUhvc3QtPnVwZGF0ZUxh
eWVycygpOworICAgIGNjTGF5ZXJUcmVlSG9zdC0+dXBkYXRlQ29tcG9zaXRvclJlc291cmNlcyhj
Y0xheWVyVHJlZUhvc3QtPmNvbnRleHQoKSwgdXBkYXRlcik7CisKKyAgICAvLyBXZSdsbCBza2lw
IHRoZSByb290IGxheWVyLgorICAgIEVYUEVDVF9UUlVFKHJvb3RMYXllci0+c2tpcHNEcmF3KCkp
OworICAgIEVYUEVDVF9GQUxTRShjaGlsZExheWVyLT5za2lwc0RyYXcoKSk7CisKKyAgICBjY0xh
eWVyVHJlZUhvc3QtPmNvbW1pdENvbXBsZXRlKCk7CisKKyAgICAvLyBSZW1vdmUgdGhlIGNoaWxk
IGxheWVyLgorICAgIHJvb3RMYXllci0+cmVtb3ZlQWxsQ2hpbGRyZW4oKTsKKworICAgIC8vIE5l
ZWQgdG8gc2V0IHRoZSBtYXggbGltaXQgYWdhaW4gYXMgaXQgZ2V0cyBvdmVyd3JpdHRlbiBieSB1
cGRhdGVMYXllcnMoKS4KKyAgICBjY0xheWVyVHJlZUhvc3QtPmNvbnRlbnRzVGV4dHVyZU1hbmFn
ZXIoKS0+c2V0TWF4TWVtb3J5TGltaXRCeXRlcyhtZW1vcnlMaW1pdCk7CisgICAgY2NMYXllclRy
ZWVIb3N0LT51cGRhdGVMYXllcnMoKTsKKyAgICBFWFBFQ1RfRkFMU0Uocm9vdExheWVyLT5za2lw
c0RyYXcoKSk7Cit9CisKKwogfSAvLyBuYW1lc3BhY2UK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>123422</attachid>
            <date>2012-01-20 18:14:37 -0800</date>
            <delta_ts>2012-01-23 12:52:06 -0800</delta_ts>
            <desc>Resync-ed and resolved conflicts</desc>
            <filename>bug-76735-20120120181242.patch</filename>
            <type>text/plain</type>
            <size>7890</size>
            <attacher name="Vangelis Kokkevis">vangelis</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDEwNTU1NCkKKysrIFNvdXJjZS9XZWJDb3JlL0NoYW5n
ZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDIxIEBACisyMDEyLTAxLTIwICBWYW5nZWxp
cyBLb2trZXZpcyAgPHZhbmdlbGlzQGNocm9taXVtLm9yZz4KKworICAgICAgICBbY2hyb21pdW1d
IElnbm9yZSBtX3NraXBzRHJhdyBpbiBUaWxlZExheWVyQ2hyb21pdW06OmRyYXdzQ29udGVudCgp
CisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD03NjczNQor
CisgICAgICAgIFRoaXMgaXMgdG8gYWRkIHNraXBwZWQgbGF5ZXJzIHRvIHRoZWlyIFJlbmRlclN1
cmZhY2UncyBsYXllciBsaXN0IHNvIHRoYXQgdGhleQorICAgICAgICBhcmUgY29uc2lkZXJlZCBp
biB0aGUgbmV4dCB1cGRhdGUuIFdpdGhvdXQgdGhpcyBjaGFuZ2UsIG1fc2tpcHNEcmF3ID0gZmFs
c2Ugc3RpY2tzCisgICAgICAgIHdpdGggdGhlIGxheWVyIGZvciB0aGUgcmVtYWluaWduIG9mIGl0
cyBsaWZldGltZS4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBUZXN0czogVW5pdCB0ZXN0IChUaWxlZExheWVyQ2hyb21pdW1UZXN0LmNwcCkKKworICAg
ICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHA6
CisgICAgICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OmRyYXdzQ29udGVudCk6Cisg
ICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmg6
CisgICAgICAgIChXZWJDb3JlOjpUaWxlZExheWVyQ2hyb21pdW06OnNraXBzRHJhdyk6CisKIDIw
MTItMDEtMjAgIEFsZXhleSBQcm9za3VyeWFrb3YgIDxhcEBhcHBsZS5jb20+CiAKICAgICAgICAg
V2ViQ29yZSBzaG91bGQgbm90IHNlbmQgaW52YWxpZCBVUkxzIHRvIGNsaWVudCBjcmVhdGVXaW5k
b3cgbWV0aG9kcy4KSW5kZXg6IFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9t
aXVtL1RpbGVkTGF5ZXJDaHJvbWl1bS5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmNwcAkocmV2aXNp
b24gMTA1NTU0KQorKysgU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
VGlsZWRMYXllckNocm9taXVtLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMTYwLDcgKzE2MCw3IEBA
IGJvb2wgVGlsZWRMYXllckNocm9taXVtOjpkcmF3c0NvbnRlbnQoKQogICAgIGlmIChtX3RpbGlu
Z09wdGlvbiA9PSBOZXZlclRpbGUgJiYgbV90aWxlci0+bnVtVGlsZXMoKSA+IDEpCiAgICAgICAg
IHJldHVybiBmYWxzZTsKIAotICAgIHJldHVybiAhbV9za2lwc0RyYXc7CisgICAgcmV0dXJuIHRy
dWU7CiB9CiAKIGJvb2wgVGlsZWRMYXllckNocm9taXVtOjpuZWVkc0NvbnRlbnRzU2NhbGUoKSBj
b25zdApJbmRleDogU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vVGls
ZWRMYXllckNocm9taXVtLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL1dlYkNvcmUvcGxhdGZvcm0v
Z3JhcGhpY3MvY2hyb21pdW0vVGlsZWRMYXllckNocm9taXVtLmgJKHJldmlzaW9uIDEwNTU1NCkK
KysrIFNvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1RpbGVkTGF5ZXJD
aHJvbWl1bS5oCSh3b3JraW5nIGNvcHkpCkBAIC04OCw2ICs4OCw4IEBAIHByb3RlY3RlZDoKICAg
ICAvLyBBZnRlciBwcmVwYXJpbmcgYW4gdXBkYXRlLCByZXR1cm5zIHRydWUgaWYgbW9yZSBwcmUt
cGFpbnRpbmcgaXMgbmVlZGVkLgogICAgIGJvb2wgbmVlZHNJZGxlUGFpbnQoY29uc3QgSW50UmVj
dCYgbGF5ZXJSZWN0KTsKIAorICAgIGJvb2wgc2tpcHNEcmF3KCkgY29uc3QgeyByZXR1cm4gbV9z
a2lwc0RyYXc7IH0KKwogICAgIHZpcnR1YWwgdm9pZCBwcm90ZWN0VmlzaWJsZVRpbGVUZXh0dXJl
cygpOwogCiAgICAgdmlydHVhbCBUZXh0dXJlTWFuYWdlciogdGV4dHVyZU1hbmFnZXIoKSBjb25z
dDsKSW5kZXg6IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCj09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0t
IFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9nCShyZXZpc2lvbiAxMDU1NTQpCisrKyBT
b3VyY2UvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsx
LDI0IEBACisyMDEyLTAxLTIwICBWYW5nZWxpcyBLb2trZXZpcyAgPHZhbmdlbGlzQGNocm9taXVt
Lm9yZz4KKworICAgICAgICBBZGRpbmcgYSB0ZXN0IHRvIHZlcmlmeSB0aGF0IG1fc2tpcHNEcmF3
IGdldHMgcmVzZXQgYmV0d2VlbiBmcmFtZXMgZm9yCisgICAgICAgIHRpbGVkIGxheWVycy4KKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTc2NzM1CisKKyAg
ICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB0ZXN0cy9UaWxl
ZExheWVyQ2hyb21pdW1UZXN0LmNwcDoKKyAgICAgICAgKFdURjo6RmFrZUNDTGF5ZXJUcmVlSG9z
dENsaWVudDo6dXBkYXRlQW5pbWF0aW9ucyk6CisgICAgICAgIChXVEY6OkZha2VDQ0xheWVyVHJl
ZUhvc3RDbGllbnQ6OmxheW91dCk6CisgICAgICAgIChXVEY6OkZha2VDQ0xheWVyVHJlZUhvc3RD
bGllbnQ6OmFwcGx5U2Nyb2xsQW5kU2NhbGUpOgorICAgICAgICAoV1RGOjpGYWtlQ0NMYXllclRy
ZWVIb3N0Q2xpZW50OjpjcmVhdGVMYXllclRyZWVIb3N0Q29udGV4dDNEKToKKyAgICAgICAgKFdU
Rjo6RmFrZUNDTGF5ZXJUcmVlSG9zdENsaWVudDo6ZGlkUmVjcmVhdGVHcmFwaGljc0NvbnRleHQp
OgorICAgICAgICAoV1RGOjpGYWtlQ0NMYXllclRyZWVIb3N0Q2xpZW50OjpkaWRDb21taXRBbmRE
cmF3RnJhbWUpOgorICAgICAgICAoV1RGOjpGYWtlQ0NMYXllclRyZWVIb3N0Q2xpZW50OjpkaWRD
b21wbGV0ZVN3YXBCdWZmZXJzKToKKyAgICAgICAgKFdURjo6RmFrZUNDTGF5ZXJUcmVlSG9zdENs
aWVudDo6c2NoZWR1bGVDb21wb3NpdGUpOgorICAgICAgICAoV1RGOjpGYWtlVGlsZWRMYXllckNo
cm9taXVtOjpza2lwc0RyYXcpOgorICAgICAgICAoV1RGOjpGYWtlVGlsZWRMYXllckNocm9taXVt
OjpwYWludENvbnRlbnRzSWZEaXJ0eSk6CisgICAgICAgIChXVEY6OlRFU1QpOgorCiAyMDEyLTAx
LTIwICBSeW9zdWtlIE5pd2EgIDxybml3YUB3ZWJraXQub3JnPgogCiAgICAgICAgIFJvbGwgQ2hy
b21pdW0gREVQUyBmcm9tIDExODI5MSB0byAxMTg0OTMuCkluZGV4OiBTb3VyY2UvV2ViS2l0L2No
cm9taXVtL3Rlc3RzL1RpbGVkTGF5ZXJDaHJvbWl1bVRlc3QuY3BwCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNv
dXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvVGlsZWRMYXllckNocm9taXVtVGVzdC5jcHAJKHJl
dmlzaW9uIDEwNTU1NCkKKysrIFNvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvVGlsZWRMYXll
ckNocm9taXVtVGVzdC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTI2LDExICsyNiwxNCBAQAogCiAj
aW5jbHVkZSAiVGlsZWRMYXllckNocm9taXVtLmgiCiAKKyNpbmNsdWRlICJDb21wb3NpdG9yRmFr
ZUdyYXBoaWNzQ29udGV4dDNELmgiCiAjaW5jbHVkZSAiTGF5ZXJUZXh0dXJlVXBkYXRlci5oIgog
I2luY2x1ZGUgIlRleHR1cmVNYW5hZ2VyLmgiCisjaW5jbHVkZSAiV2ViQ29tcG9zaXRvci5oIgog
I2luY2x1ZGUgImNjL0NDU2luZ2xlVGhyZWFkUHJveHkuaCIgLy8gRm9yIERlYnVnU2NvcGVkU2V0
SW1wbFRocmVhZAogI2luY2x1ZGUgImNjL0NDVGV4dHVyZVVwZGF0ZXIuaCIKICNpbmNsdWRlICJj
Yy9DQ1RpbGVkTGF5ZXJJbXBsLmgiCisKICNpbmNsdWRlIDxndGVzdC9ndGVzdC5oPgogCiB1c2lu
ZyBuYW1lc3BhY2UgV2ViQ29yZTsKQEAgLTkzLDYgKzk2LDI0IEBAIHB1YmxpYzoKICAgICB9CiB9
OwogCitjbGFzcyBGYWtlQ0NMYXllclRyZWVIb3N0Q2xpZW50IDogcHVibGljIENDTGF5ZXJUcmVl
SG9zdENsaWVudCB7CitwdWJsaWM6CisgICAgdmlydHVhbCB2b2lkIHVwZGF0ZUFuaW1hdGlvbnMo
ZG91YmxlIGZyYW1lQmVnaW5UaW1lKSB7IH0KKyAgICB2aXJ0dWFsIHZvaWQgbGF5b3V0KCkgeyB9
CisgICAgdmlydHVhbCB2b2lkIGFwcGx5U2Nyb2xsQW5kU2NhbGUoY29uc3QgSW50U2l6ZSYgc2Ny
b2xsRGVsdGEsIGZsb2F0IHBhZ2VTY2FsZSkgeyB9CisgICAgdmlydHVhbCBQYXNzUmVmUHRyPEdy
YXBoaWNzQ29udGV4dDNEPiBjcmVhdGVMYXllclRyZWVIb3N0Q29udGV4dDNEKCkKKyAgICB7Cisg
ICAgICAgIEdyYXBoaWNzQ29udGV4dDNEOjpBdHRyaWJ1dGVzIGF0dHJzOworICAgICAgICByZXR1
cm4gY3JlYXRlQ29tcG9zaXRvck1vY2tHcmFwaGljc0NvbnRleHQzRChhdHRycyk7CisgICAgfQor
ICAgIHZpcnR1YWwgdm9pZCBkaWRSZWNyZWF0ZUdyYXBoaWNzQ29udGV4dChib29sIHN1Y2Nlc3Mp
IHsgfQorICAgIHZpcnR1YWwgdm9pZCBkaWRDb21taXRBbmREcmF3RnJhbWUoKSB7IH0KKyAgICB2
aXJ0dWFsIHZvaWQgZGlkQ29tcGxldGVTd2FwQnVmZmVycygpIHsgfQorCisgICAgLy8gVXNlZCBv
bmx5IGluIHRoZSBzaW5nbGUtdGhyZWFkZWQgcGF0aC4KKyAgICB2aXJ0dWFsIHZvaWQgc2NoZWR1
bGVDb21wb3NpdGUoKSB7IH0KK307CisKIGNsYXNzIEZha2VUaWxlZExheWVyQ2hyb21pdW0gOiBw
dWJsaWMgVGlsZWRMYXllckNocm9taXVtIHsKIHB1YmxpYzoKICAgICBleHBsaWNpdCBGYWtlVGls
ZWRMYXllckNocm9taXVtKFRleHR1cmVNYW5hZ2VyKiB0ZXh0dXJlTWFuYWdlcikKQEAgLTEyNywx
MCArMTQ4LDIwIEBAIHB1YmxpYzoKICAgICAgICAgcmV0dXJuIFRpbGVkTGF5ZXJDaHJvbWl1bTo6
bmVlZHNJZGxlUGFpbnQocmVjdCk7CiAgICAgfQogCisgICAgYm9vbCBza2lwc0RyYXcoKSBjb25z
dAorICAgIHsKKyAgICAgICAgcmV0dXJuIFRpbGVkTGF5ZXJDaHJvbWl1bTo6c2tpcHNEcmF3KCk7
CisgICAgfQorCiAgICAgRmFrZUxheWVyVGV4dHVyZVVwZGF0ZXIqIGZha2VMYXllclRleHR1cmVV
cGRhdGVyKCkgeyByZXR1cm4gbV9mYWtlVGV4dHVyZVVwZGF0ZXIuZ2V0KCk7IH0KIAogICAgIHZp
cnR1YWwgVGV4dHVyZU1hbmFnZXIqIHRleHR1cmVNYW5hZ2VyKCkgY29uc3QgeyByZXR1cm4gbV90
ZXh0dXJlTWFuYWdlcjsgfQogCisgICAgdmlydHVhbCB2b2lkIHBhaW50Q29udGVudHNJZkRpcnR5
KCkKKyAgICB7CisgICAgICAgIHByZXBhcmVUb1VwZGF0ZSh2aXNpYmxlTGF5ZXJSZWN0KCkpOwor
ICAgIH0KKwogcHJpdmF0ZToKICAgICB2aXJ0dWFsIHZvaWQgY3JlYXRlVGV4dHVyZVVwZGF0ZXIo
Y29uc3QgQ0NMYXllclRyZWVIb3N0KikgeyB9CiAKQEAgLTMzOSw0ICszNzAsNTQgQEAgVEVTVChU
aWxlZExheWVyQ2hyb21pdW1UZXN0LCBpbnZhbGlkYXRlRgogICAgIEVYUEVDVF9FUSgxLCBsYXll
ci0+ZmFrZUxheWVyVGV4dHVyZVVwZGF0ZXIoKS0+cHJlcGFyZUNvdW50KCkpOwogfQogCitURVNU
KFRpbGVkTGF5ZXJDaHJvbWl1bVRlc3QsIHNraXBzRHJhd0dldHNSZXNldCkKK3sKKyAgICAvLyBJ
bml0aWFsaXplIHdpdGhvdXQgdGhyZWFkaW5nIHN1cHBvcnQuCisgICAgV2ViS2l0OjpXZWJDb21w
b3NpdG9yOjppbml0aWFsaXplKDApOworICAgIEZha2VDQ0xheWVyVHJlZUhvc3RDbGllbnQgZmFr
ZUNDTGF5ZXJUcmVlSG9zdENsaWVudDsKKyAgICBSZWZQdHI8Q0NMYXllclRyZWVIb3N0PiBjY0xh
eWVyVHJlZUhvc3QgPSBDQ0xheWVyVHJlZUhvc3Q6OmNyZWF0ZSgmZmFrZUNDTGF5ZXJUcmVlSG9z
dENsaWVudCwgQ0NTZXR0aW5ncygpKTsKKworICAgIC8vIENyZWF0ZSB0d28gMzAwIHggMzAwIHRp
bGVkIGxheWVycy4KKyAgICBJbnRTaXplIGNvbnRlbnRCb3VuZHMoMzAwLCAzMDApOworICAgIElu
dFJlY3QgY29udGVudFJlY3QoSW50UG9pbnQ6Onplcm8oKSwgY29udGVudEJvdW5kcyk7CisKKyAg
ICBSZWZQdHI8RmFrZVRpbGVkTGF5ZXJDaHJvbWl1bT4gcm9vdExheWVyID0gYWRvcHRSZWYobmV3
IEZha2VUaWxlZExheWVyQ2hyb21pdW0oY2NMYXllclRyZWVIb3N0LT5jb250ZW50c1RleHR1cmVN
YW5hZ2VyKCkpKTsKKyAgICBSZWZQdHI8RmFrZVRpbGVkTGF5ZXJDaHJvbWl1bT4gY2hpbGRMYXll
ciA9IGFkb3B0UmVmKG5ldyBGYWtlVGlsZWRMYXllckNocm9taXVtKGNjTGF5ZXJUcmVlSG9zdC0+
Y29udGVudHNUZXh0dXJlTWFuYWdlcigpKSk7CisgICAgcm9vdExheWVyLT5hZGRDaGlsZChjaGls
ZExheWVyKTsKKworICAgIHJvb3RMYXllci0+c2V0Qm91bmRzKGNvbnRlbnRCb3VuZHMpOworICAg
IHJvb3RMYXllci0+c2V0UG9zaXRpb24oRmxvYXRQb2ludCgxNTAsIDE1MCkpOworICAgIGNoaWxk
TGF5ZXItPnNldEJvdW5kcyhjb250ZW50Qm91bmRzKTsKKyAgICBjaGlsZExheWVyLT5zZXRQb3Np
dGlvbihGbG9hdFBvaW50KDE1MCwgMTUwKSk7CisgICAgcm9vdExheWVyLT5pbnZhbGlkYXRlUmVj
dChjb250ZW50UmVjdCk7CisgICAgY2hpbGRMYXllci0+aW52YWxpZGF0ZVJlY3QoY29udGVudFJl
Y3QpOworCisgICAgLy8gV2UgaGF2ZSBlbm91Z2ggbWVtb3J5IGZvciBvbmx5IG9uZSBvZiB0aGUg
dHdvIGxheWVycy4KKyAgICBpbnQgbWVtb3J5TGltaXQgPSA0ICogMzAwICogMzAwOyAvLyA0IGJ5
dGVzIHBlciBwaXhlbC4KKworICAgIEZha2VUZXh0dXJlQWxsb2NhdG9yIHRleHR1cmVBbGxvY2F0
b3I7CisgICAgQ0NUZXh0dXJlVXBkYXRlciB1cGRhdGVyKCZ0ZXh0dXJlQWxsb2NhdG9yKTsKKwor
ICAgIGNjTGF5ZXJUcmVlSG9zdC0+c2V0Um9vdExheWVyKHJvb3RMYXllcik7CisgICAgY2NMYXll
clRyZWVIb3N0LT5zZXRWaWV3cG9ydFNpemUoSW50U2l6ZSgzMDAsIDMwMCkpOworICAgIGNjTGF5
ZXJUcmVlSG9zdC0+Y29udGVudHNUZXh0dXJlTWFuYWdlcigpLT5zZXRNYXhNZW1vcnlMaW1pdEJ5
dGVzKG1lbW9yeUxpbWl0KTsKKyAgICBjY0xheWVyVHJlZUhvc3QtPnVwZGF0ZUxheWVycygpOwor
ICAgIGNjTGF5ZXJUcmVlSG9zdC0+dXBkYXRlQ29tcG9zaXRvclJlc291cmNlcyhjY0xheWVyVHJl
ZUhvc3QtPmNvbnRleHQoKSwgdXBkYXRlcik7CisKKyAgICAvLyBXZSdsbCBza2lwIHRoZSByb290
IGxheWVyLgorICAgIEVYUEVDVF9UUlVFKHJvb3RMYXllci0+c2tpcHNEcmF3KCkpOworICAgIEVY
UEVDVF9GQUxTRShjaGlsZExheWVyLT5za2lwc0RyYXcoKSk7CisKKyAgICBjY0xheWVyVHJlZUhv
c3QtPmNvbW1pdENvbXBsZXRlKCk7CisKKyAgICAvLyBSZW1vdmUgdGhlIGNoaWxkIGxheWVyLgor
ICAgIHJvb3RMYXllci0+cmVtb3ZlQWxsQ2hpbGRyZW4oKTsKKworICAgIC8vIE5lZWQgdG8gc2V0
IHRoZSBtYXggbGltaXQgYWdhaW4gYXMgaXQgZ2V0cyBvdmVyd3JpdHRlbiBieSB1cGRhdGVMYXll
cnMoKS4KKyAgICBjY0xheWVyVHJlZUhvc3QtPmNvbnRlbnRzVGV4dHVyZU1hbmFnZXIoKS0+c2V0
TWF4TWVtb3J5TGltaXRCeXRlcyhtZW1vcnlMaW1pdCk7CisgICAgY2NMYXllclRyZWVIb3N0LT51
cGRhdGVMYXllcnMoKTsKKyAgICBFWFBFQ1RfRkFMU0Uocm9vdExheWVyLT5za2lwc0RyYXcoKSk7
Cit9CisKKwogfSAvLyBuYW1lc3BhY2UK
</data>
<flag name="review"
          id="124478"
          type_id="1"
          status="+"
          setter="jamesr"
    />
    <flag name="commit-queue"
          id="124479"
          type_id="3"
          status="-"
          setter="jamesr"
    />
          </attachment>
      

    </bug>

</bugzilla>