<?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>95556</bug_id>
          
          <creation_ts>2012-08-31 04:38:08 -0700</creation_ts>
          <short_desc>Build of OpenGLShims.cpp against EGL/GLES2 platforms is broken</short_desc>
          <delta_ts>2015-04-20 14:01:16 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Qt</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>
          
          <blocked>90879</blocked>
    
    <blocked>95466</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Milian Wolff">milian.wolff</reporter>
          <assigned_to name="Milian Wolff">milian.wolff</assigned_to>
          <cc>hausmann</cc>
    
    <cc>jturcotte</cc>
    
    <cc>noam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>709487</commentid>
    <comment_count>0</comment_count>
    <who name="Milian Wolff">milian.wolff</who>
    <bug_when>2012-08-31 04:38:08 -0700</bug_when>
    <thetext>When trying to build QtWebKit with OpenGL support for QNX (see bug 95466), you will run into compilation errors in OpenGLShims.cpp:

/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/OpenGLShims.cpp: In function &apos;bool WebCore::initializeOpenGLShims()&apos;:
/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/OpenGLShims.cpp:117: error: expected id-expression before numeric constant
/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/OpenGLShims.cpp:117: error: expected &apos;;&apos; before numeric constant
/home/milian/projects/qt5/qtwebkit/Source/WebCore/platform/graphics/OpenGLShims.cpp:173: error: &apos;::glRenderbufferStorageMultisampleAPPLE&apos; has not been declared

The reason is that OpenGLShims.h includes qopenglfunctions.h which is the khronos official header that includes all possible extensions. According to a colleague of mine, consumers should be doing runtime checks in addition to compile time checks. An easier fix for QNX at least though would be the following: Undefining the defines that are known to be non-existant on QNX, in our case: GL_ANGLE_framebuffer_blit, GL_APPLE_framebuffer_multisample and GL_ANGLE_framebuffer_multisample.

Unrelated to this, I think the following line is completely wrong:

openGLFunctionTable()-&gt;glBlitFramebuffer = ::GL_ANGLE_framebuffer_blit;

GL_ANGLE_framebuffer_blit is a define of &quot;1&quot; and not a function pointer. I *think* the correct version would be

openGLFunctionTable()-&gt;glBlitFramebuffer = ::glBlitFramebufferANGLE;

Anyhow, I&apos;ll include this in a patch and you can decide on whether that should be included as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>709488</commentid>
    <comment_count>1</comment_count>
      <attachid>161664</attachid>
    <who name="Milian Wolff">milian.wolff</who>
    <bug_when>2012-08-31 04:41:27 -0700</bug_when>
    <thetext>Created attachment 161664
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>709541</commentid>
    <comment_count>2</comment_count>
      <attachid>161664</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-08-31 05:56:28 -0700</bug_when>
    <thetext>Comment on attachment 161664
Patch

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

&gt; Source/WebCore/platform/graphics/OpenGLShims.cpp:34
&gt; +#if OS(QNX)
&gt; +// undefine known unimplemented extensions, see https://bugs.webkit.org/show_bug.cgi?id=95556
&gt; +#undef GL_ANGLE_framebuffer_blit
&gt; +#undef GL_APPLE_framebuffer_multisample
&gt; +#undef GL_ANGLE_framebuffer_multisample
&gt; +#endif

Hm, does this mean that there are angle headers clashing with QNX GLES headers?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>709562</commentid>
    <comment_count>3</comment_count>
    <who name="Milian Wolff">milian.wolff</who>
    <bug_when>2012-08-31 06:14:00 -0700</bug_when>
    <thetext>No, the ANGLE headers are not included here at all (at least the headers in ANGLE/include/{GLES2,KHR,EGL}). See also bug 95560.

The issue here is the code in WebKit, it assumes that e.g. GL_APPLE_framebuffer_multisample is only defined if the function glRenderbufferStorageMultisampleAPPLE exists. This is not the case, as you can see by looking at $(qmake -query QT_INSTALL_HEADERS)/Qt/qopengles2ext.h (sorry, I mentioned qopenglfunctions.h but meant qopengles2ext.h which is included by qopengl.h which is included by qopenglfunctions.h). qopengles2ext.h is what I said above:

&quot;the khronos official header that includes all possible extensions. According to a colleague of mine, consumers should be doing runtime checks in addition to compile time checks&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714198</commentid>
    <comment_count>4</comment_count>
      <attachid>161664</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-09-07 00:08:13 -0700</bug_when>
    <thetext>Comment on attachment 161664
Patch

I think you&apos;re right in the sense that functions like glBlitFramebufferANGLE and other extensions should only be looked up at run-time. That means we should _not_ try to access ::glBlitFramebufferANGLE directly and we should _not_ #undef GL_ANGLE_framebuffer_blit but instead use ASSIGN_FUNCTION_TABLE_ENTRY() to look it up. If there is a fallback for example, then we should fall back.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714424</commentid>
    <comment_count>5</comment_count>
      <attachid>162748</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-09-07 05:17:36 -0700</bug_when>
    <thetext>Created attachment 162748
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714456</commentid>
    <comment_count>6</comment_count>
      <attachid>162748</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-07 06:32:02 -0700</bug_when>
    <thetext>Comment on attachment 162748
Patch

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

&gt; Source/WebCore/ChangeLog:20
&gt; +        Qt (and there it it breaks the Windows build)

&quot;it it&quot;

&gt; Source/WebCore/ChangeLog:23
&gt; +        This patch implements the dynamic lookup of glBlitFramebufferANGLE
&gt; +        (used in GraphicsContext3DOpenGLES.cpp) as well as the dynamic lookup of the

Humm couldn&apos;t find it in GraphicsContext3DOpenGLES.cpp, no glBlitFramebuffer there.

&gt; Source/WebCore/platform/graphics/OpenGLShims.cpp:105
&gt; +#define ASSIGN_FUNCTION_TABLE_ENTRY_EXT(FunctionName, ExtensionName) \
&gt; +    openGLFunctionTable()-&gt;FunctionName = reinterpret_cast&lt;FunctionName##Type&gt;(getProcAddress(ExtensionName))

It would be nice to get a success parameter like the other macro, and set it to false if getProcAddress returns 0;
It would also be nice if ExtensionName was concatenated to FunctionName and just pass &quot;EXT&quot;, &quot;ANGLE&quot; or &quot;APPLE&quot; instead of duplicating the function name and risk copy-paste bugs.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714462</commentid>
    <comment_count>7</comment_count>
      <attachid>162748</attachid>
    <who name="Jocelyn Turcotte">jturcotte</who>
    <bug_when>2012-09-07 06:44:18 -0700</bug_when>
    <thetext>Comment on attachment 162748
Patch

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

&gt;&gt; Source/WebCore/platform/graphics/OpenGLShims.cpp:105
&gt;&gt; +    openGLFunctionTable()-&gt;FunctionName = reinterpret_cast&lt;FunctionName##Type&gt;(getProcAddress(ExtensionName))
&gt; 
&gt; It would be nice to get a success parameter like the other macro, and set it to false if getProcAddress returns 0;
&gt; It would also be nice if ExtensionName was concatenated to FunctionName and just pass &quot;EXT&quot;, &quot;ANGLE&quot; or &quot;APPLE&quot; instead of duplicating the function name and risk copy-paste bugs.

Since you only want a separate macro to allow using compile-time resolving, maybe you could also just add &quot;ANGLE&quot; to the list of tested suffixes in lookupOpenGLFunctionAddress and let ASSIGN_FUNCTION_TABLE_ENTRY_EXT use lookupOpenGLFunctionAddress too.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714488</commentid>
    <comment_count>8</comment_count>
      <attachid>162748</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-09-07 07:10:01 -0700</bug_when>
    <thetext>Comment on attachment 162748
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:20
&gt;&gt; +        Qt (and there it it breaks the Windows build)
&gt; 
&gt; &quot;it it&quot;

Ooops, will fix.

&gt;&gt; Source/WebCore/ChangeLog:23
&gt;&gt; +        (used in GraphicsContext3DOpenGLES.cpp) as well as the dynamic lookup of the
&gt; 
&gt; Humm couldn&apos;t find it in GraphicsContext3DOpenGLES.cpp, no glBlitFramebuffer there.

For fun it&apos;s redefined to glBlitFramebufferEXT in OpenGLESShims.h.

The shims stuff is quite messy ;(

&gt;&gt;&gt; Source/WebCore/platform/graphics/OpenGLShims.cpp:105
&gt;&gt;&gt; +    openGLFunctionTable()-&gt;FunctionName = reinterpret_cast&lt;FunctionName##Type&gt;(getProcAddress(ExtensionName))
&gt;&gt; 
&gt;&gt; It would be nice to get a success parameter like the other macro, and set it to false if getProcAddress returns 0;
&gt;&gt; It would also be nice if ExtensionName was concatenated to FunctionName and just pass &quot;EXT&quot;, &quot;ANGLE&quot; or &quot;APPLE&quot; instead of duplicating the function name and risk copy-paste bugs.
&gt; 
&gt; Since you only want a separate macro to allow using compile-time resolving, maybe you could also just add &quot;ANGLE&quot; to the list of tested suffixes in lookupOpenGLFunctionAddress and let ASSIGN_FUNCTION_TABLE_ENTRY_EXT use lookupOpenGLFunctionAddress too.

Hmm, it&apos;s tempting to do so. Hmmm. OK!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714522</commentid>
    <comment_count>9</comment_count>
      <attachid>162773</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-09-07 07:59:01 -0700</bug_when>
    <thetext>Created attachment 162773
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714532</commentid>
    <comment_count>10</comment_count>
      <attachid>162776</attachid>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-09-07 08:11:28 -0700</bug_when>
    <thetext>Created attachment 162776
Patch

Updated patch with doc fixes</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714577</commentid>
    <comment_count>11</comment_count>
    <who name="Simon Hausmann">hausmann</who>
    <bug_when>2012-09-07 09:05:25 -0700</bug_when>
    <thetext>Committed r127874: &lt;http://trac.webkit.org/changeset/127874&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1086896</commentid>
    <comment_count>12</comment_count>
      <attachid>162776</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2015-04-20 14:01:16 -0700</bug_when>
    <thetext>Comment on attachment 162776
Patch

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

&gt; Source/WebCore/platform/graphics/OpenGLShims.cpp:86
&gt;      fullFunctionName.append(&quot;EXT&quot;);
&gt;      target = getProcAddress(fullFunctionName.utf8().data());
&gt;  
&gt; +#if defined(GL_ES_VERSION_2_0)
&gt; +    fullFunctionName = functionName;
&gt; +    fullFunctionName.append(&quot;ANGLE&quot;);
&gt; +    target = getProcAddress(fullFunctionName.utf8().data());

Looks like this will always overwrite the &quot;target&quot; assigned in line 81. I&apos;ll file a new bug about cleaning this up.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>161664</attachid>
            <date>2012-08-31 04:41:27 -0700</date>
            <delta_ts>2012-09-07 05:17:30 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95556-20120831134114.patch</filename>
            <type>text/plain</type>
            <size>2025</size>
            <attacher name="Milian Wolff">milian.wolff</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI3MjQwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMTQ0NGY5MGM4MGM1NTEx
YThlN2EwZjIyOGU0YTRkYjZhYTVhZDQ5OC4uYjllMGQ4ZWE2Yzc5M2EzMTk2ZDBiZmY0N2Y4Nzcx
ZDYxYmJhOTg1ZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE4IEBACisyMDEyLTA4LTMxICBNaWxp
YW4gV29sZmYgIDxtaWxpYW4ud29sZmZAa2RhYi5jb20+CisKKyAgICAgICAgW1F0XSBRTlggT3Bl
bkdMIGVuYWJsZWQgYnVpbGQgZmFpbHMgaW4gT3BlbkdMU2hpbXMuY3BwCisgICAgICAgIGh0dHBz
Oi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NTU1NgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFVuZGVmaW5lIGtub3duIHVuaW1wbGVt
ZW50ZWQgR0wgZXh0ZW5zaW9ucyB0byBmaXggY29tcGlsYXRpb24gZXJyb3JzLgorICAgICAgICBG
dXJ0aGVybW9yZSBmaXggdGhlIGFzc2lnbm1lbnQgb2YgZ2xCbGl0RnJhbWVidWZmZXIgZnVuY3Rp
b24gcG9pbnRlciwKKyAgICAgICAgR0xfQU5HTEVfZnJhbWVidWZmZXJfYmxpdCBpcyBvbmx5IGEg
ZGVmaW5lIG9mICIxIiB3aGlsZSBnbEJsaXRGcmFtZWJ1ZmZlckFuZ2xlCisgICAgICAgIGlzIHRo
ZSBmdW5jdGlvbi4KKworICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL09wZW5HTFNoaW1zLmNw
cDoKKyAgICAgICAgKFdlYkNvcmU6OmluaXRpYWxpemVPcGVuR0xTaGltcyk6CisKIDIwMTItMDgt
MzAgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2Vi
IEluc3BlY3RvcjogcmVuZGVyIGJveCBtb2RlbCBlbGVtZW50cyBhbmQgZ3JpZCBvbiBpbnNwZWN0
b3Igb3ZlcmxheQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3Mv
T3BlbkdMU2hpbXMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdM
U2hpbXMuY3BwCmluZGV4IDhlNTRlZTQ1MmI5M2U4YzQ3ZGU3NWQ0YzlkMDIzMzBiMTJhOWIxYTEu
LjkzMWQ4ZDFjMzI0ODdjOWE2MDc4MDdkMjJjZmIxMjM4M2ViMmI4ODcgMTAwNjQ0Ci0tLSBhL1Nv
dXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL09wZW5HTFNoaW1zLmNwcAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5jcHAKQEAgLTI2LDYgKzI2
LDEzIEBACiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0
L1dURlN0cmluZy5oPgogCisjaWYgT1MoUU5YKQorLy8gdW5kZWZpbmUga25vd24gdW5pbXBsZW1l
bnRlZCBleHRlbnNpb25zLCBzZWUgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTk1NTU2CisjdW5kZWYgR0xfQU5HTEVfZnJhbWVidWZmZXJfYmxpdAorI3VuZGVmIEdMX0FQ
UExFX2ZyYW1lYnVmZmVyX211bHRpc2FtcGxlCisjdW5kZWYgR0xfQU5HTEVfZnJhbWVidWZmZXJf
bXVsdGlzYW1wbGUKKyNlbmRpZgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIE9wZW5HTEZ1bmN0
aW9uVGFibGUqIG9wZW5HTEZ1bmN0aW9uVGFibGUoKQpAQCAtMTE0LDcgKzEyMSw3IEBAIGJvb2wg
aW5pdGlhbGl6ZU9wZW5HTFNoaW1zKCkKICNpZiBkZWZpbmVkKEdMX0VTX1ZFUlNJT05fMl8wKQog
CiAjaWYgZGVmaW5lZChHTF9BTkdMRV9mcmFtZWJ1ZmZlcl9ibGl0KQotICAgIG9wZW5HTEZ1bmN0
aW9uVGFibGUoKS0+Z2xCbGl0RnJhbWVidWZmZXIgPSA6OkdMX0FOR0xFX2ZyYW1lYnVmZmVyX2Js
aXQ7CisgICAgb3BlbkdMRnVuY3Rpb25UYWJsZSgpLT5nbEJsaXRGcmFtZWJ1ZmZlciA9IDo6Z2xC
bGl0RnJhbWVidWZmZXJBTkdMRTsKICNlbHNlCiAgICAgb3BlbkdMRnVuY3Rpb25UYWJsZSgpLT5n
bEJsaXRGcmFtZWJ1ZmZlciA9IDA7CiAjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162748</attachid>
            <date>2012-09-07 05:17:36 -0700</date>
            <delta_ts>2012-09-07 07:58:55 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95556-20120907141917.patch</filename>
            <type>text/plain</type>
            <size>4968</size>
            <attacher name="Simon Hausmann">hausmann</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI3ODU1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggNzk4YWI4ZDlmZTNkNDAw
ZmU1NWM1ZjZmN2VhYzBiZTRkMjMzMzI5Ny4uZjMwZTNmNTYwMDllYWJhN2Y5ZTA0ZWIxNDBlNWQ3
Y2FjNWRjNjdiYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEyLTA5LTA3ICBTaW1v
biBIYXVzbWFubiAgPHNpbW9uLmhhdXNtYW5uQG5va2lhLmNvbT4KKworICAgICAgICBCdWlsZCBv
ZiBPcGVuR0xTaGltcy5jcHAgYWdhaW5zdCBFR0wvR0xFUzIgcGxhdGZvcm1zIGlzIGJyb2tlbgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU1NTYKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGVyZSB3ZXJl
IGEgZmV3IHByb2JsZW1zOgorCisgICAgICAgIDEpIEdMX0FOR0xFX2ZyYW1lYnVmZmVyX2JsaXQg
aXMgdGhlIG5hbWUgb2YgdGhlIG1hY3JvIGluZGljYXRpbmcgdGhlCisgICAgICAgIGF2YWlsYWJp
bGl0eSBvZiB0aGUgX2RlY2xhcmF0aW9uXyBvZiB0aGF0IEFOR0xFIGV4dGVuc2lvbi4gSXQgaXMg
bm90IHRoZQorICAgICAgICBuYW1lIG9mIHRoZSBhY3R1YWwgZnVuY3Rpb24sIHdoaWNoIGlzIGds
QmxpdEZyYW1lYnVmZmVyQU5HTEUuCisKKyAgICAgICAgMikgVGhlIHByZXNlbmNlIG9mIHRoZSBw
cmVwcm9jZXNzb3IgbWFjcm9zIGluZGljYXRpbmcgdGhlIGF2YWlsYWJpbGl0eQorICAgICAgICBv
ZiB0aGUgZGVjbGFyYXRpb24gb2YgdGhlIGV4dGVuc2lvbiBkb2VzIG5vdCBpbXBseSBwcmVzZW5j
ZSBvZiB0aGUgZXh0ZW5zaW9uCisgICAgICAgIHByb3RvdHlwZXMgYXQgbGluayB0aW1lLiBJbnN0
ZWFkIGV4dGVuc2lvbnMgbmVlZCB0byBiZSBsb29rZWQgdXAgZHluYW1pY2FsbHkKKyAgICAgICAg
YXQgcnVuLXRpbWUuCisKKyAgICAgICAgMykgZGxmY24uaCB3YXMgdW5jb25kaXRpb25hbGx5IGlu
Y2x1ZGVkLiBXZSBkbyBub3QgbmVlZCBpdCB3aGVuIGJ1aWxkaW5nIGFnYWluc3QKKyAgICAgICAg
UXQgKGFuZCB0aGVyZSBpdCBpdCBicmVha3MgdGhlIFdpbmRvd3MgYnVpbGQpCisKKyAgICAgICAg
VGhpcyBwYXRjaCBpbXBsZW1lbnRzIHRoZSBkeW5hbWljIGxvb2t1cCBvZiBnbEJsaXRGcmFtZWJ1
ZmZlckFOR0xFCisgICAgICAgICh1c2VkIGluIEdyYXBoaWNzQ29udGV4dDNET3BlbkdMRVMuY3Bw
KSBhcyB3ZWxsIGFzIHRoZSBkeW5hbWljIGxvb2t1cCBvZiB0aGUKKyAgICAgICAgQW5nbGUgYW5k
IEFwcGxlIHJlbmRlcmJ1ZmZlciBtdWx0aXNhbXBsaW5nIGV4dGVuc2lvbnMuCisKKyAgICAgICAg
KiBwbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5jcHA6CisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKFdlYkNvcmU6OmluaXRpYWxpemVPcGVuR0xTaGltcyk6CisKIDIwMTItMDktMDYg
IFZzZXZvbG9kIFZsYXNvdiAgPHZzZXZpa0BjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgV2ViIElu
c3BlY3RvcjogTWlncmF0ZSBJbmRleGVkREIgdG8gYXN5bmMgcHJvdG9jb2wgY29tbWFuZHMuCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5jcHAKaW5k
ZXggOGU1NGVlNDUyYjkzZThjNDdkZTc1ZDRjOWQwMjMzMGIxMmE5YjFhMS4uOWYzOWM0YzFlYjY1
ZTBkNzg5NWVhMDE5MTgwNDcyZWRlMGNjMzA0YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
cGxhdGZvcm0vZ3JhcGhpY3MvT3BlbkdMU2hpbXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3Bs
YXRmb3JtL2dyYXBoaWNzL09wZW5HTFNoaW1zLmNwcApAQCAtMjIsNyArMjIsMTAgQEAKICNkZWZp
bmUgRElTQUJMRV9TSElNUwogI2luY2x1ZGUgIk9wZW5HTFNoaW1zLmgiCiAKKyNpZiAhUExBVEZP
Uk0oUVQpCiAjaW5jbHVkZSA8ZGxmY24uaD4KKyNlbmRpZgorCiAjaW5jbHVkZSA8d3RmL3RleHQv
Q1N0cmluZy5oPgogI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC0zNCwxMSAr
MzcsNiBAQCBPcGVuR0xGdW5jdGlvblRhYmxlKiBvcGVuR0xGdW5jdGlvblRhYmxlKCkKICAgICBy
ZXR1cm4gJnRhYmxlOwogfQogCi0jaWYgUExBVEZPUk0oUVQpICYmIGRlZmluZWQoUVRfT1BFTkdM
X0VTXzIpCi0jZGVmaW5lIEFTU0lHTl9GVU5DVElPTl9UQUJMRV9FTlRSWShGdW5jdGlvbk5hbWUs
IHN1Y2Nlc3MpIFwKLSAgICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPkZ1bmN0aW9uTmFtZSA9IDo6
RnVuY3Rpb25OYW1lCi0jZWxzZQotCiAjaWYgUExBVEZPUk0oUVQpCiBzdGF0aWMgdm9pZCogZ2V0
UHJvY0FkZHJlc3MoY29uc3QgY2hhciogcHJvY05hbWUpCiB7CkBAIC04OSwxMCArODcsMjMgQEAg
c3RhdGljIHZvaWQqIGxvb2t1cE9wZW5HTEZ1bmN0aW9uQWRkcmVzcyhjb25zdCBjaGFyKiBmdW5j
dGlvbk5hbWUsIGJvb2wmIHN1Y2Nlc3MKICAgICByZXR1cm4gdGFyZ2V0OwogfQogCisjaWYgUExB
VEZPUk0oUVQpICYmIGRlZmluZWQoUVRfT1BFTkdMX0VTXzIpCisKKy8vIEFuZ2xlJ3MgRUdMIGlt
cGxlbWVudGF0aW9uIHByb3ZpZGVzIG9ubHkgYWNjZXNzIHRvIEVHTCBhbmQgR0xFUzIgZXh0ZW5z
aW9ucyB2aWEgZWdsR2V0UHJvY0FkZHJlc3MsCisvLyB0aGUgcmVtYWluaW5nIEdMRVMyIEFQSSBp
cyBub3QgYXZhaWxhYmxlIHRocm91Z2ggZHluYW1pYyBsb29rdXBzLgorI2RlZmluZSBBU1NJR05f
RlVOQ1RJT05fVEFCTEVfRU5UUlkoRnVuY3Rpb25OYW1lLCBzdWNjZXNzKSBcCisgICAgb3BlbkdM
RnVuY3Rpb25UYWJsZSgpLT5GdW5jdGlvbk5hbWUgPSA6OkZ1bmN0aW9uTmFtZQorCisjZWxzZQor
CiAjZGVmaW5lIEFTU0lHTl9GVU5DVElPTl9UQUJMRV9FTlRSWShGdW5jdGlvbk5hbWUsIHN1Y2Nl
c3MpIFwKICAgICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPkZ1bmN0aW9uTmFtZSA9IHJlaW50ZXJw
cmV0X2Nhc3Q8RnVuY3Rpb25OYW1lIyNUeXBlPihsb29rdXBPcGVuR0xGdW5jdGlvbkFkZHJlc3Mo
I0Z1bmN0aW9uTmFtZSwgc3VjY2VzcykpCisKICNlbmRpZgogCisjZGVmaW5lIEFTU0lHTl9GVU5D
VElPTl9UQUJMRV9FTlRSWV9FWFQoRnVuY3Rpb25OYW1lLCBFeHRlbnNpb25OYW1lKSBcCisgICAg
b3BlbkdMRnVuY3Rpb25UYWJsZSgpLT5GdW5jdGlvbk5hbWUgPSByZWludGVycHJldF9jYXN0PEZ1
bmN0aW9uTmFtZSMjVHlwZT4oZ2V0UHJvY0FkZHJlc3MoRXh0ZW5zaW9uTmFtZSkpCisKIGJvb2wg
aW5pdGlhbGl6ZU9wZW5HTFNoaW1zKCkKIHsKICAgICBzdGF0aWMgYm9vbCBzdWNjZXNzID0gdHJ1
ZTsKQEAgLTExMiwxMyArMTIzLDcgQEAgYm9vbCBpbml0aWFsaXplT3BlbkdMU2hpbXMoKQogICAg
IEFTU0lHTl9GVU5DVElPTl9UQUJMRV9FTlRSWShnbEJsZW5kRXF1YXRpb25TZXBhcmF0ZSwgc3Vj
Y2Vzcyk7CiAgICAgQVNTSUdOX0ZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsQmxlbmRGdW5jU2VwYXJh
dGUsIHN1Y2Nlc3MpOwogI2lmIGRlZmluZWQoR0xfRVNfVkVSU0lPTl8yXzApCi0KLSNpZiBkZWZp
bmVkKEdMX0FOR0xFX2ZyYW1lYnVmZmVyX2JsaXQpCi0gICAgb3BlbkdMRnVuY3Rpb25UYWJsZSgp
LT5nbEJsaXRGcmFtZWJ1ZmZlciA9IDo6R0xfQU5HTEVfZnJhbWVidWZmZXJfYmxpdDsKLSNlbHNl
Ci0gICAgb3BlbkdMRnVuY3Rpb25UYWJsZSgpLT5nbEJsaXRGcmFtZWJ1ZmZlciA9IDA7Ci0jZW5k
aWYKLQorICAgIEFTU0lHTl9GVU5DVElPTl9UQUJMRV9FTlRSWV9FWFQoZ2xCbGl0RnJhbWVidWZm
ZXIsICJnbEJsaXRGcmFtZWJ1ZmZlckFOR0xFIik7CiAjZWxzZQogICAgIEFTU0lHTl9GVU5DVElP
Tl9UQUJMRV9FTlRSWShnbEJsaXRGcmFtZWJ1ZmZlciwgc3VjY2Vzcyk7CiAjZW5kaWYKQEAgLTE2
OCwxNSArMTczLDkgQEAgYm9vbCBpbml0aWFsaXplT3BlbkdMU2hpbXMoKQogICAgIEFTU0lHTl9G
VU5DVElPTl9UQUJMRV9FTlRSWShnbExpbmtQcm9ncmFtLCBzdWNjZXNzKTsKICAgICBBU1NJR05f
RlVOQ1RJT05fVEFCTEVfRU5UUlkoZ2xSZW5kZXJidWZmZXJTdG9yYWdlLCBzdWNjZXNzKTsKICNp
ZiBkZWZpbmVkKEdMX0VTX1ZFUlNJT05fMl8wKQotCi0jaWYgZGVmaW5lZChHTF9BUFBMRV9mcmFt
ZWJ1ZmZlcl9tdWx0aXNhbXBsZSkKLSAgICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPmdsUmVuZGVy
YnVmZmVyU3RvcmFnZU11bHRpc2FtcGxlID0gOjpnbFJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNh
bXBsZUFQUExFOwotI2VsaWYgZGVmaW5lZChHTF9BTkdMRV9mcmFtZWJ1ZmZlcl9tdWx0aXNhbXBs
ZSkKLSAgICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPmdsUmVuZGVyYnVmZmVyU3RvcmFnZU11bHRp
c2FtcGxlID0gOjpnbFJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZUFOR0xFOwotI2Vsc2UK
LSAgICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPmdsUmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2Ft
cGxlID0gMDsKLSNlbmRpZgotCisgICAgQVNTSUdOX0ZVTkNUSU9OX1RBQkxFX0VOVFJZX0VYVChn
bFJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZSwgImdsUmVuZGVyYnVmZmVyU3RvcmFnZU11
bHRpc2FtcGxlQU5HTEUiKTsKKyAgICBpZiAoIW9wZW5HTEZ1bmN0aW9uVGFibGUoKS0+Z2xSZW5k
ZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUpCisgICAgICAgIEFTU0lHTl9GVU5DVElPTl9UQUJM
RV9FTlRSWV9FWFQoZ2xSZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUsICJnbFJlbmRlcmJ1
ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZUFQUExFIik7CiAjZWxzZQogICAgIEFTU0lHTl9GVU5DVElP
Tl9UQUJMRV9FTlRSWShnbFJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZSwgc3VjY2Vzcyk7
CiAjZW5kaWYK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162773</attachid>
            <date>2012-09-07 07:59:01 -0700</date>
            <delta_ts>2012-09-07 08:11:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95556-20120907170042.patch</filename>
            <type>text/plain</type>
            <size>6037</size>
            <attacher name="Simon Hausmann">hausmann</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI3ODY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDhiMzQ2NmQwMjYwMzlm
NmE3NmExNDcxMWEyZDc3YjdlZjFkZWNhZi4uYTg1MmI3YmYxNzI4NjQxNTNjMTI1ZjY2MGNlYTdh
NTI3NjgwNWNkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEyLTA5LTA3ICBTaW1v
biBIYXVzbWFubiAgPHNpbW9uLmhhdXNtYW5uQG5va2lhLmNvbT4KKworICAgICAgICBCdWlsZCBv
ZiBPcGVuR0xTaGltcy5jcHAgYWdhaW5zdCBFR0wvR0xFUzIgcGxhdGZvcm1zIGlzIGJyb2tlbgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU1NTYKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGVyZSB3ZXJl
IGEgZmV3IHByb2JsZW1zOgorCisgICAgICAgIDEpIEdMX0FOR0xFX2ZyYW1lYnVmZmVyX2JsaXQg
aXMgdGhlIG5hbWUgb2YgdGhlIG1hY3JvIGluZGljYXRpbmcgdGhlCisgICAgICAgIGF2YWlsYWJp
bGl0eSBvZiB0aGUgX2RlY2xhcmF0aW9uXyBvZiB0aGF0IEFOR0xFIGV4dGVuc2lvbi4gSXQgaXMg
bm90IHRoZQorICAgICAgICBuYW1lIG9mIHRoZSBhY3R1YWwgZnVuY3Rpb24sIHdoaWNoIGlzIGds
QmxpdEZyYW1lYnVmZmVyQU5HTEUuCisKKyAgICAgICAgMikgVGhlIHByZXNlbmNlIG9mIHRoZSBw
cmVwcm9jZXNzb3IgbWFjcm9zIGluZGljYXRpbmcgdGhlIGF2YWlsYWJpbGl0eQorICAgICAgICBv
ZiB0aGUgZGVjbGFyYXRpb24gb2YgdGhlIGV4dGVuc2lvbiBkb2VzIG5vdCBpbXBseSBwcmVzZW5j
ZSBvZiB0aGUgZXh0ZW5zaW9uCisgICAgICAgIHByb3RvdHlwZXMgYXQgbGluayB0aW1lLiBJbnN0
ZWFkIGV4dGVuc2lvbnMgbmVlZCB0byBiZSBsb29rZWQgdXAgZHluYW1pY2FsbHkKKyAgICAgICAg
YXQgcnVuLXRpbWUuCisKKyAgICAgICAgMykgZGxmY24uaCB3YXMgdW5jb25kaXRpb25hbGx5IGlu
Y2x1ZGVkLiBXZSBkbyBub3QgbmVlZCBpdCB3aGVuIGJ1aWxkaW5nIGFnYWluc3QKKyAgICAgICAg
UXQgKGFuZCB0aGVyZSBpdCBicmVha3MgdGhlIFdpbmRvd3MgYnVpbGQpCisKKyAgICAgICAgVGhp
cyBwYXRjaCBpbXBsZW1lbnRzIHRoZSBkeW5hbWljIGxvb2t1cCBvZiBnbEJsaXRGcmFtZWJ1ZmZl
ckFOR0xFCisgICAgICAgICh1c2VkIGluIEdyYXBoaWNzQ29udGV4dDNET3BlbkdMRVMuY3BwKSBh
cyB3ZWxsIGFzIHRoZSBkeW5hbWljIGxvb2t1cCBvZiB0aGUKKyAgICAgICAgQW5nbGUgYW5kIEFw
cGxlIHJlbmRlcmJ1ZmZlciBtdWx0aXNhbXBsaW5nIGV4dGVuc2lvbnMuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5jcHA6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OmluaXRpYWxpemVPcGVuR0xTaGltcyk6CisKIDIwMTItMDktMDcgIFNo
ZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21haWwuY29tPgogCiAgICAgICAgIFVucmV2
aWV3ZWQsIHJvbGxpbmcgb3V0IHIxMjc3ODAgYW5kIHIxMjc4NTkuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5jcHAKaW5kZXggOGU1NGVlNDUyYjkz
ZThjNDdkZTc1ZDRjOWQwMjMzMGIxMmE5YjFhMS4uMThkYTBhNzA3NjQ0MWYxYTYzMjU4N2UwMDVj
NmVmMDFlYzQ0YTUyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvT3BlbkdMU2hpbXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L09wZW5HTFNoaW1zLmNwcApAQCAtMjIsNyArMjIsMTAgQEAKICNkZWZpbmUgRElTQUJMRV9TSElN
UwogI2luY2x1ZGUgIk9wZW5HTFNoaW1zLmgiCiAKKyNpZiAhUExBVEZPUk0oUVQpCiAjaW5jbHVk
ZSA8ZGxmY24uaD4KKyNlbmRpZgorCiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC0zNCwxMSArMzcsNiBAQCBPcGVuR0xG
dW5jdGlvblRhYmxlKiBvcGVuR0xGdW5jdGlvblRhYmxlKCkKICAgICByZXR1cm4gJnRhYmxlOwog
fQogCi0jaWYgUExBVEZPUk0oUVQpICYmIGRlZmluZWQoUVRfT1BFTkdMX0VTXzIpCi0jZGVmaW5l
IEFTU0lHTl9GVU5DVElPTl9UQUJMRV9FTlRSWShGdW5jdGlvbk5hbWUsIHN1Y2Nlc3MpIFwKLSAg
ICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPkZ1bmN0aW9uTmFtZSA9IDo6RnVuY3Rpb25OYW1lCi0j
ZWxzZQotCiAjaWYgUExBVEZPUk0oUVQpCiBzdGF0aWMgdm9pZCogZ2V0UHJvY0FkZHJlc3MoY29u
c3QgY2hhciogcHJvY05hbWUpCiB7CkBAIC02Myw5ICs2MSw5IEBAIHN0YXRpYyB2b2lkKiBnZXRQ
cm9jQWRkcmVzcyhjb25zdCBjaGFyKiBwcm9jTmFtZSkKIH0KICNlbmRpZgogCi1zdGF0aWMgdm9p
ZCogbG9va3VwT3BlbkdMRnVuY3Rpb25BZGRyZXNzKGNvbnN0IGNoYXIqIGZ1bmN0aW9uTmFtZSwg
Ym9vbCYgc3VjY2VzcykKK3N0YXRpYyB2b2lkKiBsb29rdXBPcGVuR0xGdW5jdGlvbkFkZHJlc3Mo
Y29uc3QgY2hhciogZnVuY3Rpb25OYW1lLCBib29sKiBzdWNjZXNzID0gMCkKIHsKLSAgICBpZiAo
IXN1Y2Nlc3MpCisgICAgaWYgKHN1Y2Nlc3MgJiYgISpzdWNjZXNzKQogICAgICAgICByZXR1cm4g
MDsKIAogICAgIHZvaWQqIHRhcmdldCA9IGdldFByb2NBZGRyZXNzKGZ1bmN0aW9uTmFtZSk7CkBA
IC04MiwxNyArODAsNDAgQEAgc3RhdGljIHZvaWQqIGxvb2t1cE9wZW5HTEZ1bmN0aW9uQWRkcmVz
cyhjb25zdCBjaGFyKiBmdW5jdGlvbk5hbWUsIGJvb2wmIHN1Y2Nlc3MKICAgICBmdWxsRnVuY3Rp
b25OYW1lLmFwcGVuZCgiRVhUIik7CiAgICAgdGFyZ2V0ID0gZ2V0UHJvY0FkZHJlc3MoZnVsbEZ1
bmN0aW9uTmFtZS51dGY4KCkuZGF0YSgpKTsKIAorI2lmIGRlZmluZWQoR0xfRVNfVkVSU0lPTl8y
XzApCisgICAgZnVsbEZ1bmN0aW9uTmFtZSA9IGZ1bmN0aW9uTmFtZTsKKyAgICBmdWxsRnVuY3Rp
b25OYW1lLmFwcGVuZCgiQU5HTEUiKTsKKyAgICB0YXJnZXQgPSBnZXRQcm9jQWRkcmVzcyhmdWxs
RnVuY3Rpb25OYW1lLnV0ZjgoKS5kYXRhKCkpOworCisgICAgZnVsbEZ1bmN0aW9uTmFtZSA9IGZ1
bmN0aW9uTmFtZTsKKyAgICBmdWxsRnVuY3Rpb25OYW1lLmFwcGVuZCgiQVBQTEUiKTsKKyAgICB0
YXJnZXQgPSBnZXRQcm9jQWRkcmVzcyhmdWxsRnVuY3Rpb25OYW1lLnV0ZjgoKS5kYXRhKCkpOwor
I2VuZGlmCisKICAgICAvLyBBIG51bGwgYWRkcmVzcyBpcyBzdGlsbCBhIGZhaWx1cmUgY2FzZS4K
LSAgICBpZiAoIXRhcmdldCkKLSAgICAgICAgc3VjY2VzcyA9IGZhbHNlOworICAgIGlmICghdGFy
Z2V0ICYmIHN1Y2Nlc3MpCisgICAgICAgICpzdWNjZXNzID0gZmFsc2U7CiAKICAgICByZXR1cm4g
dGFyZ2V0OwogfQogCisjaWYgUExBVEZPUk0oUVQpICYmIGRlZmluZWQoUVRfT1BFTkdMX0VTXzIp
CisKKy8vIEFuZ2xlJ3MgRUdMIGltcGxlbWVudGF0aW9uIHByb3ZpZGVzIG9ubHkgYWNjZXNzIHRv
IEVHTCBhbmQgR0xFUzIgZXh0ZW5zaW9ucyB2aWEgZWdsR2V0UHJvY0FkZHJlc3MsCisvLyB0aGUg
cmVtYWluaW5nIEdMRVMyIEFQSSBpcyBub3QgYXZhaWxhYmxlIHRocm91Z2ggZHluYW1pYyBsb29r
dXBzLgorI2RlZmluZSBBU1NJR05fRlVOQ1RJT05fVEFCTEVfRU5UUlkoRnVuY3Rpb25OYW1lLCBz
dWNjZXNzKSBcCisgICAgb3BlbkdMRnVuY3Rpb25UYWJsZSgpLT5GdW5jdGlvbk5hbWUgPSA6OkZ1
bmN0aW9uTmFtZQorCisjZWxzZQorCiAjZGVmaW5lIEFTU0lHTl9GVU5DVElPTl9UQUJMRV9FTlRS
WShGdW5jdGlvbk5hbWUsIHN1Y2Nlc3MpIFwKLSAgICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPkZ1
bmN0aW9uTmFtZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8RnVuY3Rpb25OYW1lIyNUeXBlPihsb29rdXBP
cGVuR0xGdW5jdGlvbkFkZHJlc3MoI0Z1bmN0aW9uTmFtZSwgc3VjY2VzcykpCisgICAgb3BlbkdM
RnVuY3Rpb25UYWJsZSgpLT5GdW5jdGlvbk5hbWUgPSByZWludGVycHJldF9jYXN0PEZ1bmN0aW9u
TmFtZSMjVHlwZT4obG9va3VwT3BlbkdMRnVuY3Rpb25BZGRyZXNzKCNGdW5jdGlvbk5hbWUsICZz
dWNjZXNzKSkKKwogI2VuZGlmCiAKKyNkZWZpbmUgQVNTSUdOX0ZVTkNUSU9OX1RBQkxFX0VOVFJZ
X0VYVChGdW5jdGlvbk5hbWUpIFwKKyAgICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPkZ1bmN0aW9u
TmFtZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8RnVuY3Rpb25OYW1lIyNUeXBlPihsb29rdXBPcGVuR0xG
dW5jdGlvbkFkZHJlc3MoI0Z1bmN0aW9uTmFtZSkpCisKIGJvb2wgaW5pdGlhbGl6ZU9wZW5HTFNo
aW1zKCkKIHsKICAgICBzdGF0aWMgYm9vbCBzdWNjZXNzID0gdHJ1ZTsKQEAgLTExMSwxNCArMTMy
LDkgQEAgYm9vbCBpbml0aWFsaXplT3BlbkdMU2hpbXMoKQogICAgIEFTU0lHTl9GVU5DVElPTl9U
QUJMRV9FTlRSWShnbEJsZW5kRXF1YXRpb24sIHN1Y2Nlc3MpOwogICAgIEFTU0lHTl9GVU5DVElP
Tl9UQUJMRV9FTlRSWShnbEJsZW5kRXF1YXRpb25TZXBhcmF0ZSwgc3VjY2Vzcyk7CiAgICAgQVNT
SUdOX0ZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsQmxlbmRGdW5jU2VwYXJhdGUsIHN1Y2Nlc3MpOwor
ICAgIC8vIFRoZXJlIGlzIGFuIEFOR0xFIGV4dGVuc2lvbiBmb3IgZ2xCbGl0RnJhbWVidWZmZXIK
ICNpZiBkZWZpbmVkKEdMX0VTX1ZFUlNJT05fMl8wKQotCi0jaWYgZGVmaW5lZChHTF9BTkdMRV9m
cmFtZWJ1ZmZlcl9ibGl0KQotICAgIG9wZW5HTEZ1bmN0aW9uVGFibGUoKS0+Z2xCbGl0RnJhbWVi
dWZmZXIgPSA6OkdMX0FOR0xFX2ZyYW1lYnVmZmVyX2JsaXQ7Ci0jZWxzZQotICAgIG9wZW5HTEZ1
bmN0aW9uVGFibGUoKS0+Z2xCbGl0RnJhbWVidWZmZXIgPSAwOwotI2VuZGlmCi0KKyAgICBBU1NJ
R05fRlVOQ1RJT05fVEFCTEVfRU5UUllfRVhUKGdsQmxpdEZyYW1lYnVmZmVyKTsKICNlbHNlCiAg
ICAgQVNTSUdOX0ZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsQmxpdEZyYW1lYnVmZmVyLCBzdWNjZXNz
KTsKICNlbmRpZgpAQCAtMTY3LDE2ICsxODMsOSBAQCBib29sIGluaXRpYWxpemVPcGVuR0xTaGlt
cygpCiAgICAgQVNTSUdOX0ZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsSXNTaGFkZXIsIHN1Y2Nlc3Mp
OwogICAgIEFTU0lHTl9GVU5DVElPTl9UQUJMRV9FTlRSWShnbExpbmtQcm9ncmFtLCBzdWNjZXNz
KTsKICAgICBBU1NJR05fRlVOQ1RJT05fVEFCTEVfRU5UUlkoZ2xSZW5kZXJidWZmZXJTdG9yYWdl
LCBzdWNjZXNzKTsKKyAgICAvLyBUaGVyZSBhcmUgQU5HTEUgYW5kIEFQUExFIGV4dGVuc2lvbnMg
Zm9yIGdsUmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2FtcGxlCiAjaWYgZGVmaW5lZChHTF9FU19W
RVJTSU9OXzJfMCkKLQotI2lmIGRlZmluZWQoR0xfQVBQTEVfZnJhbWVidWZmZXJfbXVsdGlzYW1w
bGUpCi0gICAgb3BlbkdMRnVuY3Rpb25UYWJsZSgpLT5nbFJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0
aXNhbXBsZSA9IDo6Z2xSZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGVBUFBMRTsKLSNlbGlm
IGRlZmluZWQoR0xfQU5HTEVfZnJhbWVidWZmZXJfbXVsdGlzYW1wbGUpCi0gICAgb3BlbkdMRnVu
Y3Rpb25UYWJsZSgpLT5nbFJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZSA9IDo6Z2xSZW5k
ZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGVBTkdMRTsKLSNlbHNlCi0gICAgb3BlbkdMRnVuY3Rp
b25UYWJsZSgpLT5nbFJlbmRlcmJ1ZmZlclN0b3JhZ2VNdWx0aXNhbXBsZSA9IDA7Ci0jZW5kaWYK
LQorICAgIEFTU0lHTl9GVU5DVElPTl9UQUJMRV9FTlRSWV9FWFQoZ2xSZW5kZXJidWZmZXJTdG9y
YWdlTXVsdGlzYW1wbGUpOwogI2Vsc2UKICAgICBBU1NJR05fRlVOQ1RJT05fVEFCTEVfRU5UUlko
Z2xSZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUsIHN1Y2Nlc3MpOwogI2VuZGlmCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162776</attachid>
            <date>2012-09-07 08:11:28 -0700</date>
            <delta_ts>2012-09-07 08:16:38 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-95556-20120907171310.patch</filename>
            <type>text/plain</type>
            <size>6023</size>
            <attacher name="Simon Hausmann">hausmann</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTI3ODY3CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDhiMzQ2NmQwMjYwMzlm
NmE3NmExNDcxMWEyZDc3YjdlZjFkZWNhZi4uYTg1MmI3YmYxNzI4NjQxNTNjMTI1ZjY2MGNlYTdh
NTI3NjgwNWNkYSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMyIEBACisyMDEyLTA5LTA3ICBTaW1v
biBIYXVzbWFubiAgPHNpbW9uLmhhdXNtYW5uQG5va2lhLmNvbT4KKworICAgICAgICBCdWlsZCBv
ZiBPcGVuR0xTaGltcy5jcHAgYWdhaW5zdCBFR0wvR0xFUzIgcGxhdGZvcm1zIGlzIGJyb2tlbgor
ICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTU1NTYKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBUaGVyZSB3ZXJl
IGEgZmV3IHByb2JsZW1zOgorCisgICAgICAgIDEpIEdMX0FOR0xFX2ZyYW1lYnVmZmVyX2JsaXQg
aXMgdGhlIG5hbWUgb2YgdGhlIG1hY3JvIGluZGljYXRpbmcgdGhlCisgICAgICAgIGF2YWlsYWJp
bGl0eSBvZiB0aGUgX2RlY2xhcmF0aW9uXyBvZiB0aGF0IEFOR0xFIGV4dGVuc2lvbi4gSXQgaXMg
bm90IHRoZQorICAgICAgICBuYW1lIG9mIHRoZSBhY3R1YWwgZnVuY3Rpb24sIHdoaWNoIGlzIGds
QmxpdEZyYW1lYnVmZmVyQU5HTEUuCisKKyAgICAgICAgMikgVGhlIHByZXNlbmNlIG9mIHRoZSBw
cmVwcm9jZXNzb3IgbWFjcm9zIGluZGljYXRpbmcgdGhlIGF2YWlsYWJpbGl0eQorICAgICAgICBv
ZiB0aGUgZGVjbGFyYXRpb24gb2YgdGhlIGV4dGVuc2lvbiBkb2VzIG5vdCBpbXBseSBwcmVzZW5j
ZSBvZiB0aGUgZXh0ZW5zaW9uCisgICAgICAgIHByb3RvdHlwZXMgYXQgbGluayB0aW1lLiBJbnN0
ZWFkIGV4dGVuc2lvbnMgbmVlZCB0byBiZSBsb29rZWQgdXAgZHluYW1pY2FsbHkKKyAgICAgICAg
YXQgcnVuLXRpbWUuCisKKyAgICAgICAgMykgZGxmY24uaCB3YXMgdW5jb25kaXRpb25hbGx5IGlu
Y2x1ZGVkLiBXZSBkbyBub3QgbmVlZCBpdCB3aGVuIGJ1aWxkaW5nIGFnYWluc3QKKyAgICAgICAg
UXQgKGFuZCB0aGVyZSBpdCBicmVha3MgdGhlIFdpbmRvd3MgYnVpbGQpCisKKyAgICAgICAgVGhp
cyBwYXRjaCBpbXBsZW1lbnRzIHRoZSBkeW5hbWljIGxvb2t1cCBvZiBnbEJsaXRGcmFtZWJ1ZmZl
ckFOR0xFCisgICAgICAgICh1c2VkIGluIEdyYXBoaWNzQ29udGV4dDNET3BlbkdMRVMuY3BwKSBh
cyB3ZWxsIGFzIHRoZSBkeW5hbWljIGxvb2t1cCBvZiB0aGUKKyAgICAgICAgQW5nbGUgYW5kIEFw
cGxlIHJlbmRlcmJ1ZmZlciBtdWx0aXNhbXBsaW5nIGV4dGVuc2lvbnMuCisKKyAgICAgICAgKiBw
bGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5jcHA6CisgICAgICAgIChXZWJDb3JlKToKKyAg
ICAgICAgKFdlYkNvcmU6OmluaXRpYWxpemVPcGVuR0xTaGltcyk6CisKIDIwMTItMDktMDcgIFNo
ZXJpZmYgQm90ICA8d2Via2l0LnJldmlldy5ib3RAZ21haWwuY29tPgogCiAgICAgICAgIFVucmV2
aWV3ZWQsIHJvbGxpbmcgb3V0IHIxMjc3ODAgYW5kIHIxMjc4NTkuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5jcHAgYi9Tb3VyY2UvV2Vi
Q29yZS9wbGF0Zm9ybS9ncmFwaGljcy9PcGVuR0xTaGltcy5jcHAKaW5kZXggOGU1NGVlNDUyYjkz
ZThjNDdkZTc1ZDRjOWQwMjMzMGIxMmE5YjFhMS4uMWJkZTRhODUwYjc3ZjVlZTcyNzVkM2U0ZmVh
MjdhNmE1ZGNlMmRiNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhp
Y3MvT3BlbkdMU2hpbXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNz
L09wZW5HTFNoaW1zLmNwcApAQCAtMjIsNyArMjIsMTAgQEAKICNkZWZpbmUgRElTQUJMRV9TSElN
UwogI2luY2x1ZGUgIk9wZW5HTFNoaW1zLmgiCiAKKyNpZiAhUExBVEZPUk0oUVQpCiAjaW5jbHVk
ZSA8ZGxmY24uaD4KKyNlbmRpZgorCiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5oPgogI2lu
Y2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCkBAIC0zNCwxMSArMzcsNiBAQCBPcGVuR0xG
dW5jdGlvblRhYmxlKiBvcGVuR0xGdW5jdGlvblRhYmxlKCkKICAgICByZXR1cm4gJnRhYmxlOwog
fQogCi0jaWYgUExBVEZPUk0oUVQpICYmIGRlZmluZWQoUVRfT1BFTkdMX0VTXzIpCi0jZGVmaW5l
IEFTU0lHTl9GVU5DVElPTl9UQUJMRV9FTlRSWShGdW5jdGlvbk5hbWUsIHN1Y2Nlc3MpIFwKLSAg
ICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPkZ1bmN0aW9uTmFtZSA9IDo6RnVuY3Rpb25OYW1lCi0j
ZWxzZQotCiAjaWYgUExBVEZPUk0oUVQpCiBzdGF0aWMgdm9pZCogZ2V0UHJvY0FkZHJlc3MoY29u
c3QgY2hhciogcHJvY05hbWUpCiB7CkBAIC02Myw5ICs2MSw5IEBAIHN0YXRpYyB2b2lkKiBnZXRQ
cm9jQWRkcmVzcyhjb25zdCBjaGFyKiBwcm9jTmFtZSkKIH0KICNlbmRpZgogCi1zdGF0aWMgdm9p
ZCogbG9va3VwT3BlbkdMRnVuY3Rpb25BZGRyZXNzKGNvbnN0IGNoYXIqIGZ1bmN0aW9uTmFtZSwg
Ym9vbCYgc3VjY2VzcykKK3N0YXRpYyB2b2lkKiBsb29rdXBPcGVuR0xGdW5jdGlvbkFkZHJlc3Mo
Y29uc3QgY2hhciogZnVuY3Rpb25OYW1lLCBib29sKiBzdWNjZXNzID0gMCkKIHsKLSAgICBpZiAo
IXN1Y2Nlc3MpCisgICAgaWYgKHN1Y2Nlc3MgJiYgISpzdWNjZXNzKQogICAgICAgICByZXR1cm4g
MDsKIAogICAgIHZvaWQqIHRhcmdldCA9IGdldFByb2NBZGRyZXNzKGZ1bmN0aW9uTmFtZSk7CkBA
IC04MiwxNyArODAsMzkgQEAgc3RhdGljIHZvaWQqIGxvb2t1cE9wZW5HTEZ1bmN0aW9uQWRkcmVz
cyhjb25zdCBjaGFyKiBmdW5jdGlvbk5hbWUsIGJvb2wmIHN1Y2Nlc3MKICAgICBmdWxsRnVuY3Rp
b25OYW1lLmFwcGVuZCgiRVhUIik7CiAgICAgdGFyZ2V0ID0gZ2V0UHJvY0FkZHJlc3MoZnVsbEZ1
bmN0aW9uTmFtZS51dGY4KCkuZGF0YSgpKTsKIAorI2lmIGRlZmluZWQoR0xfRVNfVkVSU0lPTl8y
XzApCisgICAgZnVsbEZ1bmN0aW9uTmFtZSA9IGZ1bmN0aW9uTmFtZTsKKyAgICBmdWxsRnVuY3Rp
b25OYW1lLmFwcGVuZCgiQU5HTEUiKTsKKyAgICB0YXJnZXQgPSBnZXRQcm9jQWRkcmVzcyhmdWxs
RnVuY3Rpb25OYW1lLnV0ZjgoKS5kYXRhKCkpOworCisgICAgZnVsbEZ1bmN0aW9uTmFtZSA9IGZ1
bmN0aW9uTmFtZTsKKyAgICBmdWxsRnVuY3Rpb25OYW1lLmFwcGVuZCgiQVBQTEUiKTsKKyAgICB0
YXJnZXQgPSBnZXRQcm9jQWRkcmVzcyhmdWxsRnVuY3Rpb25OYW1lLnV0ZjgoKS5kYXRhKCkpOwor
I2VuZGlmCisKICAgICAvLyBBIG51bGwgYWRkcmVzcyBpcyBzdGlsbCBhIGZhaWx1cmUgY2FzZS4K
LSAgICBpZiAoIXRhcmdldCkKLSAgICAgICAgc3VjY2VzcyA9IGZhbHNlOworICAgIGlmICghdGFy
Z2V0ICYmIHN1Y2Nlc3MpCisgICAgICAgICpzdWNjZXNzID0gZmFsc2U7CiAKICAgICByZXR1cm4g
dGFyZ2V0OwogfQogCisjaWYgUExBVEZPUk0oUVQpICYmIGRlZmluZWQoUVRfT1BFTkdMX0VTXzIp
CisKKy8vIFdpdGggQW5nbGUgb25seSBFR0wvR0xFUzIgZXh0ZW5zaW9ucyBhcmUgYXZhaWxhYmxl
IHRocm91Z2ggZWdsR2V0UHJvY0FkZHJlc3MsIG5vdCB0aGUgcmVndWxhciBzdGFuZGFyZGl6ZWQg
ZnVuY3Rpb25zLgorI2RlZmluZSBBU1NJR05fRlVOQ1RJT05fVEFCTEVfRU5UUlkoRnVuY3Rpb25O
YW1lLCBzdWNjZXNzKSBcCisgICAgb3BlbkdMRnVuY3Rpb25UYWJsZSgpLT5GdW5jdGlvbk5hbWUg
PSA6OkZ1bmN0aW9uTmFtZQorCisjZWxzZQorCiAjZGVmaW5lIEFTU0lHTl9GVU5DVElPTl9UQUJM
RV9FTlRSWShGdW5jdGlvbk5hbWUsIHN1Y2Nlc3MpIFwKLSAgICBvcGVuR0xGdW5jdGlvblRhYmxl
KCktPkZ1bmN0aW9uTmFtZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8RnVuY3Rpb25OYW1lIyNUeXBlPihs
b29rdXBPcGVuR0xGdW5jdGlvbkFkZHJlc3MoI0Z1bmN0aW9uTmFtZSwgc3VjY2VzcykpCisgICAg
b3BlbkdMRnVuY3Rpb25UYWJsZSgpLT5GdW5jdGlvbk5hbWUgPSByZWludGVycHJldF9jYXN0PEZ1
bmN0aW9uTmFtZSMjVHlwZT4obG9va3VwT3BlbkdMRnVuY3Rpb25BZGRyZXNzKCNGdW5jdGlvbk5h
bWUsICZzdWNjZXNzKSkKKwogI2VuZGlmCiAKKyNkZWZpbmUgQVNTSUdOX0ZVTkNUSU9OX1RBQkxF
X0VOVFJZX0VYVChGdW5jdGlvbk5hbWUpIFwKKyAgICBvcGVuR0xGdW5jdGlvblRhYmxlKCktPkZ1
bmN0aW9uTmFtZSA9IHJlaW50ZXJwcmV0X2Nhc3Q8RnVuY3Rpb25OYW1lIyNUeXBlPihsb29rdXBP
cGVuR0xGdW5jdGlvbkFkZHJlc3MoI0Z1bmN0aW9uTmFtZSkpCisKIGJvb2wgaW5pdGlhbGl6ZU9w
ZW5HTFNoaW1zKCkKIHsKICAgICBzdGF0aWMgYm9vbCBzdWNjZXNzID0gdHJ1ZTsKQEAgLTExMSwx
NCArMTMxLDkgQEAgYm9vbCBpbml0aWFsaXplT3BlbkdMU2hpbXMoKQogICAgIEFTU0lHTl9GVU5D
VElPTl9UQUJMRV9FTlRSWShnbEJsZW5kRXF1YXRpb24sIHN1Y2Nlc3MpOwogICAgIEFTU0lHTl9G
VU5DVElPTl9UQUJMRV9FTlRSWShnbEJsZW5kRXF1YXRpb25TZXBhcmF0ZSwgc3VjY2Vzcyk7CiAg
ICAgQVNTSUdOX0ZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsQmxlbmRGdW5jU2VwYXJhdGUsIHN1Y2Nl
c3MpOworICAgIC8vIEluIEdMRVMyIHRoZXJlIGlzIG9wdGlvbmFsIGFuIEFOR0xFIGV4dGVuc2lv
biBmb3IgZ2xCbGl0RnJhbWVidWZmZXIKICNpZiBkZWZpbmVkKEdMX0VTX1ZFUlNJT05fMl8wKQot
Ci0jaWYgZGVmaW5lZChHTF9BTkdMRV9mcmFtZWJ1ZmZlcl9ibGl0KQotICAgIG9wZW5HTEZ1bmN0
aW9uVGFibGUoKS0+Z2xCbGl0RnJhbWVidWZmZXIgPSA6OkdMX0FOR0xFX2ZyYW1lYnVmZmVyX2Js
aXQ7Ci0jZWxzZQotICAgIG9wZW5HTEZ1bmN0aW9uVGFibGUoKS0+Z2xCbGl0RnJhbWVidWZmZXIg
PSAwOwotI2VuZGlmCi0KKyAgICBBU1NJR05fRlVOQ1RJT05fVEFCTEVfRU5UUllfRVhUKGdsQmxp
dEZyYW1lYnVmZmVyKTsKICNlbHNlCiAgICAgQVNTSUdOX0ZVTkNUSU9OX1RBQkxFX0VOVFJZKGds
QmxpdEZyYW1lYnVmZmVyLCBzdWNjZXNzKTsKICNlbmRpZgpAQCAtMTY3LDE2ICsxODIsOSBAQCBi
b29sIGluaXRpYWxpemVPcGVuR0xTaGltcygpCiAgICAgQVNTSUdOX0ZVTkNUSU9OX1RBQkxFX0VO
VFJZKGdsSXNTaGFkZXIsIHN1Y2Nlc3MpOwogICAgIEFTU0lHTl9GVU5DVElPTl9UQUJMRV9FTlRS
WShnbExpbmtQcm9ncmFtLCBzdWNjZXNzKTsKICAgICBBU1NJR05fRlVOQ1RJT05fVEFCTEVfRU5U
UlkoZ2xSZW5kZXJidWZmZXJTdG9yYWdlLCBzdWNjZXNzKTsKKyAgICAvLyBJbiBHTEVTMiB0aGVy
ZSBhcmUgb3B0aW9uYWwgQU5HTEUgYW5kIEFQUExFIGV4dGVuc2lvbnMgZm9yIGdsUmVuZGVyYnVm
ZmVyU3RvcmFnZU11bHRpc2FtcGxlLgogI2lmIGRlZmluZWQoR0xfRVNfVkVSU0lPTl8yXzApCi0K
LSNpZiBkZWZpbmVkKEdMX0FQUExFX2ZyYW1lYnVmZmVyX211bHRpc2FtcGxlKQotICAgIG9wZW5H
TEZ1bmN0aW9uVGFibGUoKS0+Z2xSZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUgPSA6Omds
UmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2FtcGxlQVBQTEU7Ci0jZWxpZiBkZWZpbmVkKEdMX0FO
R0xFX2ZyYW1lYnVmZmVyX211bHRpc2FtcGxlKQotICAgIG9wZW5HTEZ1bmN0aW9uVGFibGUoKS0+
Z2xSZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUgPSA6OmdsUmVuZGVyYnVmZmVyU3RvcmFn
ZU11bHRpc2FtcGxlQU5HTEU7Ci0jZWxzZQotICAgIG9wZW5HTEZ1bmN0aW9uVGFibGUoKS0+Z2xS
ZW5kZXJidWZmZXJTdG9yYWdlTXVsdGlzYW1wbGUgPSAwOwotI2VuZGlmCi0KKyAgICBBU1NJR05f
RlVOQ1RJT05fVEFCTEVfRU5UUllfRVhUKGdsUmVuZGVyYnVmZmVyU3RvcmFnZU11bHRpc2FtcGxl
KTsKICNlbHNlCiAgICAgQVNTSUdOX0ZVTkNUSU9OX1RBQkxFX0VOVFJZKGdsUmVuZGVyYnVmZmVy
U3RvcmFnZU11bHRpc2FtcGxlLCBzdWNjZXNzKTsKICNlbmRpZgo=
</data>
<flag name="review"
          id="173989"
          type_id="1"
          status="+"
          setter="jturcotte"
    />
          </attachment>
      

    </bug>

</bugzilla>