<?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>87912</bug_id>
          
          <creation_ts>2012-05-30 17:47:27 -0700</creation_ts>
          <short_desc>[chromium] Assertion failures during compositor startup in lost context situations</short_desc>
          <delta_ts>2012-05-31 15:43:35 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>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>
          <dependson>87913</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kenneth Russell">kbr</reporter>
          <assigned_to name="James Robinson">jamesr</assigned_to>
          <cc>cc-bugs</cc>
    
    <cc>enne</cc>
    
    <cc>gman</cc>
    
    <cc>jamesr</cc>
    
    <cc>jbauman</cc>
    
    <cc>nduca</cc>
    
    <cc>vangelis</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>637871</commentid>
    <comment_count>0</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2012-05-30 17:47:27 -0700</bug_when>
    <thetext>Chromium bug http://code.google.com/p/chromium/issues/detail?id=121780 illustrates a situation where forcing a lost context provokes an assertion failure in the compositor during the next frame. Here is the stack trace:

ERROR: Failed to create vertex shader
/Users/kbr/src/chrome.git/src/third_party/WebKit/Source/WebCore/WebCore.gyp/../platform/graphics/chromium/ProgramBinding.cpp(94) : unsigned int WebCore::ProgramBindingBase::createShaderProgram(WebCore::GraphicsContext3D *, const WTF::String &amp;, const WTF::String &amp;)
ASSERTION FAILED: m_program
/Users/kbr/src/chrome.git/src/third_party/WebKit/Source/WebCore/WebCore.gyp/../platform/graphics/chromium/ProgramBinding.cpp(56) : void WebCore::ProgramBindingBase::init(WebCore::GraphicsContext3D *, const WTF::String &amp;, const WTF::String &amp;)
1   0x43db936 WebCore::ProgramBindingBase::init(WebCore::GraphicsContext3D*, WTF::String const&amp;, WTF::String const&amp;)
2   0x43cf8a9 WebCore::ProgramBinding&lt;WebCore::VertexShaderPosTexTransform, WebCore::FragmentShaderRGBATexFlipAlpha&gt;::ProgramBinding(WebCore::GraphicsContext3D*)
3   0x43ccde9 WebCore::ProgramBinding&lt;WebCore::VertexShaderPosTexTransform, WebCore::FragmentShaderRGBATexFlipAlpha&gt;::ProgramBinding(WebCore::GraphicsContext3D*)
4   0x43c0e8c WebCore::LayerRendererChromium::textureProgramFlip()
5   0x43bb438 WebCore::LayerRendererChromium::drawTextureQuad(WebCore::CCTextureDrawQuad const*)
6   0x43ba156 WebCore::LayerRendererChromium::drawQuad(WebCore::CCDrawQuad const*, WebCore::FloatRect const&amp;)
7   0x43b9cb2 WebCore::LayerRendererChromium::drawRenderPass(WebCore::CCRenderPass const*)
8   0x445e42f WebCore::CCLayerTreeHostImpl::drawLayers(WebCore::CCLayerTreeHostImpl::FrameData const&amp;)
9   0x44923cb WebCore::CCSingleThreadProxy::doComposite()
10  0x449052e WebCore::CCSingleThreadProxy::commitAndComposite()
11  0x449213e WebCore::CCSingleThreadProxy::compositeImmediately()
12  0x44463f6 WebCore::CCLayerTreeHost::composite()
13  0x3966833 WebKit::WebLayerTreeView::composite()
14  0x39c04d4 WebKit::WebViewImpl::composite(bool)
15  0x771c1ed RenderWidget::DoDeferredUpdate()
16  0x77202ee RenderWidget::DoDeferredUpdateAndSendInputAck()
17  0x772202c RenderWidget::AnimationCallback()

I don&apos;t know the best way to reliably reproduce this. I&apos;m in the process of adding LayoutTests/platform/chromium/compositing/webgl-loses-compositor-context-2.html which used to provoke it in debug builds when run on MacBook Pros supporting dynamic GPU switching in Chrome (Early 2011 and later); however, it looks like the fix for http://code.google.com/p/chromium/issues/detail?id=121780 makes the assertion failure stop happening. Commenting out the fix for that bug may be the simplest way to reproduce the assertion on the affected hardware. Separately, we need to be able to test the lost context code path better on all hardware.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>637876</commentid>
    <comment_count>1</comment_count>
    <who name="Kenneth Russell">kbr</who>
    <bug_when>2012-05-30 17:50:51 -0700</bug_when>
    <thetext>I was wrong; the assertion failure is still happening even with the fix for http://code.google.com/p/chromium/issues/detail?id=121780 , so this is still an outstanding issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>637932</commentid>
    <comment_count>2</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-05-30 19:17:05 -0700</bug_when>
    <thetext>We could quite easily simulate this with a unit test that went through the compositor initialization with a mock GraphicsContext3D that lost its context at various points through the startup sequence.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>638758</commentid>
    <comment_count>3</comment_count>
      <attachid>145168</attachid>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-05-31 15:30:27 -0700</bug_when>
    <thetext>Created attachment 145168
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>638761</commentid>
    <comment_count>4</comment_count>
      <attachid>145168</attachid>
    <who name="Adrienne Walker">enne</who>
    <bug_when>2012-05-31 15:32:45 -0700</bug_when>
    <thetext>Comment on attachment 145168
Patch

Oh, nice.  R=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>638772</commentid>
    <comment_count>5</comment_count>
    <who name="James Robinson">jamesr</who>
    <bug_when>2012-05-31 15:43:35 -0700</bug_when>
    <thetext>Committed r119160: &lt;http://trac.webkit.org/changeset/119160&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>145168</attachid>
            <date>2012-05-31 15:30:27 -0700</date>
            <delta_ts>2012-05-31 15:32:45 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-87912-20120531153026.patch</filename>
            <type>text/plain</type>
            <size>6517</size>
            <attacher name="James Robinson">jamesr</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTE4OTQxCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMjhiNzViNzI5ZjM0MTAw
MDQ5ZDhhNTFlYTJiMTY1OTdjOWZmMWJkMS4uMDUwZTU3NDI4ZDZjYjI1ZDhhYjk3ZmIxNmRlYWNk
YTZkZDZjZjc5ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIxIEBACisyMDEyLTA1LTMxICBKYW1l
cyBSb2JpbnNvbiAgPGphbWVzckBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgW2Nocm9taXVtXSBB
c3NlcnRpb24gZmFpbHVyZXMgZHVyaW5nIGNvbXBvc2l0b3Igc3RhcnR1cCBpbiBsb3N0IGNvbnRl
eHQgc2l0dWF0aW9ucworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5j
Z2k/aWQ9ODc5MTIKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICBnZXRTaGFkZXJpdiBhbmQgZ2V0UHJvZ3JhbWl2IG1heSByZXR1cm4gMCBpZiB0aGUgY29u
dGV4dCBpcyBsb3N0LiBXZSBjb3JyZWN0bHkgcmVjb3ZlciBpbiB0aGlzIGNhc2UsIHNvIGl0J3MK
KyAgICAgICAgYm9ndXMgdG8gZmFpbCBhbiBBU1NFUlQgaW4gZGVidWcgaW4gdGhpcyBjYXNlLgor
CisgICAgICAgIEFkZGVkIG5ldyB1bml0IHRlc3QgaW4gTGF5ZXJSZW5kZXJlckNocm9taXVtVGVz
dCB0byBjb3ZlciB0aGlzLgorCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0v
UHJvZ3JhbUJpbmRpbmcuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Y29udGV4dExvc3QpOgorICAg
ICAgICAoV2ViQ29yZSk6CisgICAgICAgIChXZWJDb3JlOjpQcm9ncmFtQmluZGluZ0Jhc2U6Omlu
aXQpOgorICAgICAgICAoV2ViQ29yZTo6UHJvZ3JhbUJpbmRpbmdCYXNlOjpjcmVhdGVTaGFkZXJQ
cm9ncmFtKToKKwogMjAxMi0wNS0zMCAgWHVlcWluZyBIdWFuZyAgPGh1YW5neHVlcWluZ0BiYWlk
dS5jb20+CiAKICAgICAgICAgZXZlbnRTZW5kZXIuYmVnaW5EcmFnV2l0aEZpbGVzIHNob3VsZCBi
ZSBpbXBsZW1lbnRlZCBpbiBXaW5kb3dzLCB3aGljaCBibG9ja2VkIGRyYWcgYW5kIGRyb3AgcmVs
YXRlZCB0ZXN0cy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vQ2hhbmdlTG9n
IGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKaW5kZXggM2RiOThmN2YwOTg4NWU3
N2UzZWY2ZGQzYThmMmUxMzExN2JkMzhhOS4uMDVlZjhkNTQyYTY5NmJmMTY2NGRhMjUyMzc2OWVl
OGE5OGZmZjBjMiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cK
KysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxOCBAQAor
MjAxMi0wNS0zMSAgSmFtZXMgUm9iaW5zb24gIDxqYW1lc3JAY2hyb21pdW0ub3JnPgorCisgICAg
ICAgIFtjaHJvbWl1bV0gQXNzZXJ0aW9uIGZhaWx1cmVzIGR1cmluZyBjb21wb3NpdG9yIHN0YXJ0
dXAgaW4gbG9zdCBjb250ZXh0IHNpdHVhdGlvbnMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTg3OTEyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgQWRkcyBhIHVuaXQgdGVzdCB2ZXJpZnlpbmcgdGhhdCBldmVu
IGlmIHdlIGxvc2Ugb3VyIGNvbnRleHQgZHVyaW5nIG9yIGJlZm9yZSBpbml0aWFsaXphdGlvbiB3
ZSBnZXQgdGhyb3VnaCB0aGUKKyAgICAgICAgcmVzdCBvZiB0aGUgcGF0aCB3aXRob3V0IGZhaWxp
bmcgQVNTRVJUKClzLgorCisgICAgICAgICogdGVzdHMvTGF5ZXJSZW5kZXJlckNocm9taXVtVGVz
dC5jcHA6CisgICAgICAgIChMb3NlQ29udGV4dE9uRmlyc3RHZXRDb250ZXh0KToKKyAgICAgICAg
KExvc2VDb250ZXh0T25GaXJzdEdldENvbnRleHQ6Okxvc2VDb250ZXh0T25GaXJzdEdldENvbnRl
eHQpOgorICAgICAgICAoVEVTVCk6CisKIDIwMTItMDUtMzAgIEpvY2hlbiBFaXNpbmdlciAgPGpv
Y2hlbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgTWF0Y2ggRmlyZWZveCByZXN0cmljdGlvbnMg
dG8gd2luZG93LmJsdXIgYW5kIHdpbmRvdy5mb2N1cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vUHJvZ3JhbUJpbmRpbmcuY3BwIGIvU291cmNl
L1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvY2hyb21pdW0vUHJvZ3JhbUJpbmRpbmcuY3BwCmlu
ZGV4IDI2N2UwMTk1NzcyNjk3ZTVlNzQyNTA0MTY0ZWQ0ZWNkN2Q0ZjZkNDcuLjM3NjQzNGU2MmJm
YjRkMWRiNDFmZmUwNjg3N2M4OWM3MDc4Y2FkNTYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L3BsYXRmb3JtL2dyYXBoaWNzL2Nocm9taXVtL1Byb2dyYW1CaW5kaW5nLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9jaHJvbWl1bS9Qcm9ncmFtQmluZGluZy5jcHAK
QEAgLTI5LDYgKzI5LDcgQEAKIAogI2luY2x1ZGUgIlByb2dyYW1CaW5kaW5nLmgiCiAKKyNpbmNs
dWRlICJFeHRlbnNpb25zM0QuaCIKICNpbmNsdWRlICJHZW9tZXRyeUJpbmRpbmcuaCIKICNpbmNs
dWRlICJHcmFwaGljc0NvbnRleHQuaCIKICNpbmNsdWRlICJHcmFwaGljc0NvbnRleHQzRC5oIgpA
QCAtNTAsMTAgKzUxLDE2IEBAIFByb2dyYW1CaW5kaW5nQmFzZTo6flByb2dyYW1CaW5kaW5nQmFz
ZSgpCiAgICAgQVNTRVJUKCFtX2luaXRpYWxpemVkKTsKIH0KIAorc3RhdGljIGJvb2wgY29udGV4
dExvc3QoR3JhcGhpY3NDb250ZXh0M0QqIGNvbnRleHQpCit7CisgICAgcmV0dXJuIChjb250ZXh0
LT5nZXRFeHRlbnNpb25zKCktPmdldEdyYXBoaWNzUmVzZXRTdGF0dXNBUkIoKSAhPSBHcmFwaGlj
c0NvbnRleHQzRDo6Tk9fRVJST1IpOworfQorCisKIHZvaWQgUHJvZ3JhbUJpbmRpbmdCYXNlOjpp
bml0KEdyYXBoaWNzQ29udGV4dDNEKiBjb250ZXh0LCBjb25zdCBTdHJpbmcmIHZlcnRleFNoYWRl
ciwgY29uc3QgU3RyaW5nJiBmcmFnbWVudFNoYWRlcikKIHsKICAgICBtX3Byb2dyYW0gPSBjcmVh
dGVTaGFkZXJQcm9ncmFtKGNvbnRleHQsIHZlcnRleFNoYWRlciwgZnJhZ21lbnRTaGFkZXIpOwot
ICAgIEFTU0VSVChtX3Byb2dyYW0pOworICAgIEFTU0VSVChtX3Byb2dyYW0gfHwgY29udGV4dExv
c3QoY29udGV4dCkpOwogfQogCiB2b2lkIFByb2dyYW1CaW5kaW5nQmFzZTo6Y2xlYW51cChHcmFw
aGljc0NvbnRleHQzRCogY29udGV4dCkKQEAgLTkxLDIwICs5OCwyMyBAQCB1bnNpZ25lZCBQcm9n
cmFtQmluZGluZ0Jhc2U6OmNyZWF0ZVNoYWRlclByb2dyYW0oR3JhcGhpY3NDb250ZXh0M0QqIGNv
bnRleHQsIGNvbgogICAgIFRSQUNFX0VWRU5UKCJQcm9ncmFtQmluZGluZ0Jhc2U6OmNyZWF0ZVNo
YWRlclByb2dyYW0iLCB0aGlzLCAwKTsKICAgICB1bnNpZ25lZCB2ZXJ0ZXhTaGFkZXIgPSBsb2Fk
U2hhZGVyKGNvbnRleHQsIEdyYXBoaWNzQ29udGV4dDNEOjpWRVJURVhfU0hBREVSLCB2ZXJ0ZXhT
aGFkZXJTb3VyY2UpOwogICAgIGlmICghdmVydGV4U2hhZGVyKSB7Ci0gICAgICAgIExPR19FUlJP
UigiRmFpbGVkIHRvIGNyZWF0ZSB2ZXJ0ZXggc2hhZGVyIik7CisgICAgICAgIGlmICghY29udGV4
dExvc3QoY29udGV4dCkpCisgICAgICAgICAgICBMT0dfRVJST1IoIkZhaWxlZCB0byBjcmVhdGUg
dmVydGV4IHNoYWRlciIpOwogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAKICAgICB1bnNpZ25l
ZCBmcmFnbWVudFNoYWRlciA9IGxvYWRTaGFkZXIoY29udGV4dCwgR3JhcGhpY3NDb250ZXh0M0Q6
OkZSQUdNRU5UX1NIQURFUiwgZnJhZ21lbnRTaGFkZXJTb3VyY2UpOwogICAgIGlmICghZnJhZ21l
bnRTaGFkZXIpIHsKICAgICAgICAgR0xDKGNvbnRleHQsIGNvbnRleHQtPmRlbGV0ZVNoYWRlcih2
ZXJ0ZXhTaGFkZXIpKTsKLSAgICAgICAgTE9HX0VSUk9SKCJGYWlsZWQgdG8gY3JlYXRlIGZyYWdt
ZW50IHNoYWRlciIpOworICAgICAgICBpZiAoIWNvbnRleHRMb3N0KGNvbnRleHQpKQorICAgICAg
ICAgICAgTE9HX0VSUk9SKCJGYWlsZWQgdG8gY3JlYXRlIGZyYWdtZW50IHNoYWRlciIpOwogICAg
ICAgICByZXR1cm4gMDsKICAgICB9CiAKICAgICB1bnNpZ25lZCBwcm9ncmFtT2JqZWN0ID0gY29u
dGV4dC0+Y3JlYXRlUHJvZ3JhbSgpOwogICAgIGlmICghcHJvZ3JhbU9iamVjdCkgewotICAgICAg
ICBMT0dfRVJST1IoIkZhaWxlZCB0byBjcmVhdGUgc2hhZGVyIHByb2dyYW0iKTsKKyAgICAgICAg
aWYgKCFjb250ZXh0TG9zdChjb250ZXh0KSkKKyAgICAgICAgICAgIExPR19FUlJPUigiRmFpbGVk
IHRvIGNyZWF0ZSBzaGFkZXIgcHJvZ3JhbSIpOwogICAgICAgICByZXR1cm4gMDsKICAgICB9CiAK
QEAgLTEyMCw3ICsxMzAsOCBAQCB1bnNpZ25lZCBQcm9ncmFtQmluZGluZ0Jhc2U6OmNyZWF0ZVNo
YWRlclByb2dyYW0oR3JhcGhpY3NDb250ZXh0M0QqIGNvbnRleHQsIGNvbgogICAgIGludCBsaW5r
ZWQgPSAwOwogICAgIEdMQyhjb250ZXh0LCBjb250ZXh0LT5nZXRQcm9ncmFtaXYocHJvZ3JhbU9i
amVjdCwgR3JhcGhpY3NDb250ZXh0M0Q6OkxJTktfU1RBVFVTLCAmbGlua2VkKSk7CiAgICAgaWYg
KCFsaW5rZWQpIHsKLSAgICAgICAgTE9HX0VSUk9SKCJGYWlsZWQgdG8gbGluayBzaGFkZXIgcHJv
Z3JhbSIpOworICAgICAgICBpZiAoIWNvbnRleHRMb3N0KGNvbnRleHQpKQorICAgICAgICAgICAg
TE9HX0VSUk9SKCJGYWlsZWQgdG8gbGluayBzaGFkZXIgcHJvZ3JhbSIpOwogICAgICAgICBHTEMo
Y29udGV4dCwgY29udGV4dC0+ZGVsZXRlUHJvZ3JhbShwcm9ncmFtT2JqZWN0KSk7CiAgICAgICAg
IHJldHVybiAwOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVz
dHMvTGF5ZXJSZW5kZXJlckNocm9taXVtVGVzdC5jcHAgYi9Tb3VyY2UvV2ViS2l0L2Nocm9taXVt
L3Rlc3RzL0xheWVyUmVuZGVyZXJDaHJvbWl1bVRlc3QuY3BwCmluZGV4IDg0NDVmZWJhNzYwMGE0
MjE4ZWNjOTRmNGY3NTY5MDFjMWQ4NjEzZDEuLjRlZDM1OTg2Y2MxZTg5NTkyYjJjYWVjMjIxNDE2
YjJmZWVkNDlmYzcgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQvY2hyb21pdW0vdGVzdHMvTGF5
ZXJSZW5kZXJlckNocm9taXVtVGVzdC5jcHAKKysrIGIvU291cmNlL1dlYktpdC9jaHJvbWl1bS90
ZXN0cy9MYXllclJlbmRlcmVyQ2hyb21pdW1UZXN0LmNwcApAQCAtMjc1LDMgKzI3NSw0NCBAQCBU
RVNUKExheWVyUmVuZGVyZXJDaHJvbWl1bVRlc3QyLCBpbml0aWFsaXphdGlvbkRvZXNOb3RNYWtl
U3luY2hyb25vdXNDYWxscykKIAogICAgIEVYUEVDVF9UUlVFKGxheWVyUmVuZGVyZXJDaHJvbWl1
bS5pbml0aWFsaXplKCkpOwogfQorCitjbGFzcyBMb3NlQ29udGV4dE9uRmlyc3RHZXRDb250ZXh0
IDogcHVibGljIEZha2VXZWJHcmFwaGljc0NvbnRleHQzRCB7CitwdWJsaWM6CisgICAgTG9zZUNv
bnRleHRPbkZpcnN0R2V0Q29udGV4dCgpCisgICAgICAgIDogbV9jb250ZXh0TG9zdChmYWxzZSkK
KyAgICB7CisgICAgfQorCisgICAgdmlydHVhbCBib29sIG1ha2VDb250ZXh0Q3VycmVudCgpIE9W
RVJSSURFCisgICAgeworICAgICAgICByZXR1cm4gIW1fY29udGV4dExvc3Q7CisgICAgfQorCisg
ICAgdmlydHVhbCB2b2lkIGdldFByb2dyYW1pdihXZWJHTElkIHByb2dyYW0sIFdHQzNEZW51bSBw
bmFtZSwgV0dDM0RpbnQqIHZhbHVlKSBPVkVSUklERQorICAgIHsKKyAgICAgICAgbV9jb250ZXh0
TG9zdCA9IHRydWU7CisgICAgICAgICp2YWx1ZSA9IDA7CisgICAgfQorCisgICAgdmlydHVhbCB2
b2lkIGdldFNoYWRlcml2KFdlYkdMSWQgc2hhZGVyLCBXR0MzRGVudW0gcG5hbWUsIFdHQzNEaW50
KiB2YWx1ZSkgT1ZFUlJJREUKKyAgICB7CisgICAgICAgIG1fY29udGV4dExvc3QgPSB0cnVlOwor
ICAgICAgICAqdmFsdWUgPSAwOworICAgIH0KKworICAgIHZpcnR1YWwgV0dDM0RlbnVtIGdldEdy
YXBoaWNzUmVzZXRTdGF0dXNBUkIoKSBPVkVSUklERQorICAgIHsKKyAgICAgICAgcmV0dXJuIG1f
Y29udGV4dExvc3QgPyAxIDogMDsKKyAgICB9CisKK3ByaXZhdGU6CisgICAgYm9vbCBtX2NvbnRl
eHRMb3N0OworfTsKKworVEVTVChMYXllclJlbmRlcmVyQ2hyb21pdW1UZXN0MiwgaW5pdGlhbGl6
YXRpb25XaXRoUXVpY2tseUxvc3RDb250ZXh0RG9lc05vdEFzc2VydCkKK3sKKyAgICBGYWtlTGF5
ZXJSZW5kZXJlckNocm9taXVtQ2xpZW50IG1vY2tDbGllbnQ7CisgICAgRmFrZUxheWVyUmVuZGVy
ZXJDaHJvbWl1bSBsYXllclJlbmRlcmVyQ2hyb21pdW0oJm1vY2tDbGllbnQsIEdyYXBoaWNzQ29u
dGV4dDNEUHJpdmF0ZTo6Y3JlYXRlR3JhcGhpY3NDb250ZXh0RnJvbVdlYkNvbnRleHQoYWRvcHRQ
dHIobmV3IExvc2VDb250ZXh0T25GaXJzdEdldENvbnRleHQpLCBHcmFwaGljc0NvbnRleHQzRDo6
UmVuZGVyRGlyZWN0bHlUb0hvc3RXaW5kb3cpKTsKKworICAgIGxheWVyUmVuZGVyZXJDaHJvbWl1
bS5pbml0aWFsaXplKCk7Cit9Cg==
</data>
<flag name="review"
          id="152221"
          type_id="1"
          status="+"
          setter="enne"
    />
          </attachment>
      

    </bug>

</bugzilla>