<?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>126004</bug_id>
          
          <creation_ts>2013-12-19 11:49:11 -0800</creation_ts>
          <short_desc>Implement ArrayBuffer.isView</short_desc>
          <delta_ts>2013-12-19 16:39:37 -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>JavaScriptCore</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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Brent Fulgham">bfulgham</reporter>
          <assigned_to name="Brent Fulgham">bfulgham</assigned_to>
          <cc>bfulgham</cc>
    
    <cc>fpizlo</cc>
    
    <cc>oliver</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>961479</commentid>
    <comment_count>0</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-12-19 11:49:11 -0800</bug_when>
    <thetext>We need an implementation of ArrayBuffer.isView, added to the ECMA specification as of the May 14, 2013 draft:

15.13.5.4.2 ArrayBuffer.isView ( arg )
The isView function takes one argument arg, and performs the following steps are taken:
1. If Type(arg) is not Object, return false.
2. If arg is an exotic Array object, then return true.
3. If arg has a [[ViewedArrayBuffer]] internal data property, then return true.
4. Return false.

This is needed to fully comply with WebGL requirements.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>961577</commentid>
    <comment_count>1</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-12-19 15:22:44 -0800</bug_when>
    <thetext>&lt;rdar://problem/15201822&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>961578</commentid>
    <comment_count>2</comment_count>
      <attachid>219690</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-12-19 15:25:13 -0800</bug_when>
    <thetext>Created attachment 219690
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>961596</commentid>
    <comment_count>3</comment_count>
      <attachid>219690</attachid>
    <who name="Oliver Hunt">oliver</who>
    <bug_when>2013-12-19 15:52:08 -0800</bug_when>
    <thetext>Comment on attachment 219690
Patch

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

Almost there :)

&gt; Source/JavaScriptCore/runtime/JSArrayBufferConstructor.cpp:56
&gt; +    putDirectNativeFunction(vm, globalObject(), makeIdentifier(vm, (&quot;isView&quot;)), 1, arrayBufferFuncIsView, NoIntrinsic, DontEnum |Function);

JSC_NATIVE_FUNCTION(vm.propertyNames-&gt;isView, arrayBufferFuncIsView, DontEnum, 1);

Add isView to CommonIdentifiers</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>961603</commentid>
    <comment_count>4</comment_count>
      <attachid>219690</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-12-19 16:06:18 -0800</bug_when>
    <thetext>Comment on attachment 219690
Patch

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

&gt;&gt; Source/JavaScriptCore/runtime/JSArrayBufferConstructor.cpp:56
&gt;&gt; +    putDirectNativeFunction(vm, globalObject(), makeIdentifier(vm, (&quot;isView&quot;)), 1, arrayBufferFuncIsView, NoIntrinsic, DontEnum |Function);
&gt; 
&gt; JSC_NATIVE_FUNCTION(vm.propertyNames-&gt;isView, arrayBufferFuncIsView, DontEnum, 1);
&gt; 
&gt; Add isView to CommonIdentifiers

I tried using JSC_NATIVE_FUNCTION, but it assumes &quot;globalObject&quot; is defined in the current scope (except as a function), so the macro gives a syntax error.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>961607</commentid>
    <comment_count>5</comment_count>
      <attachid>219690</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2013-12-19 16:10:17 -0800</bug_when>
    <thetext>Comment on attachment 219690
Patch

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

R=me unless Oliver has super strong opinions about that macro.

&gt;&gt;&gt; Source/JavaScriptCore/runtime/JSArrayBufferConstructor.cpp:56
&gt;&gt;&gt; +    putDirectNativeFunction(vm, globalObject(), makeIdentifier(vm, (&quot;isView&quot;)), 1, arrayBufferFuncIsView, NoIntrinsic, DontEnum |Function);
&gt;&gt; 
&gt;&gt; JSC_NATIVE_FUNCTION(vm.propertyNames-&gt;isView, arrayBufferFuncIsView, DontEnum, 1);
&gt;&gt; 
&gt;&gt; Add isView to CommonIdentifiers
&gt; 
&gt; I tried using JSC_NATIVE_FUNCTION, but it assumes &quot;globalObject&quot; is defined in the current scope (except as a function), so the macro gives a syntax error.

Yeah, other places that use JSC_NATIVE_FUNCTION often have some pro-forma setup like:

JSGlobalObject* globalObject = prototype-&gt;globalObjects();

Or whatever is appropriate.

 I don&apos;t mind that you&apos;re calling putDirectNativeFunction directly.  But, you should add isView to CommonIdentifiers.  Then you&apos;ll access it by saying vm.propertyNames-&gt;isView.  This isn&apos;t a big deal, but it&apos;s nice to be consistent.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>961620</commentid>
    <comment_count>6</comment_count>
      <attachid>219699</attachid>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-12-19 16:30:20 -0800</bug_when>
    <thetext>Created attachment 219699
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>961625</commentid>
    <comment_count>7</comment_count>
    <who name="Brent Fulgham">bfulgham</who>
    <bug_when>2013-12-19 16:39:37 -0800</bug_when>
    <thetext>Committed r160876: &lt;http://trac.webkit.org/changeset/160876&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>219690</attachid>
            <date>2013-12-19 15:25:13 -0800</date>
            <delta_ts>2013-12-19 16:30:18 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-126004-20131219152512.patch</filename>
            <type>text/plain</type>
            <size>3801</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTYwODYyKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBA
CisyMDEzLTEyLTE5ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAg
ICAgIEltcGxlbWVudCBBcnJheUJ1ZmZlci5pc1ZpZXcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNjAwNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3QgY292ZXJhZ2UgaW4gd2ViZ2wvMS4wLjIvcmVz
b3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvY29uZm9ybWFuY2UvdHlwZWRhcnJheXMvYXJyYXktdW5p
dC10ZXN0cy5odG1sCisKKyAgICAgICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OkpTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3Jl
YXRpb24pOiBBZGQgJ2lzVmlldycgdG8gb2JqZWN0IGNvbnN0cnVjdG9yLgorICAgICAgICAoSlND
OjphcnJheUJ1ZmZlckZ1bmNJc1ZpZXcpOiBOZXcgbWV0aG9kLgorCiAyMDEzLTEyLTE4ICBNYXJr
IEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0BhcHBsZS5jb20+CiAKICAgICAgICAgRGVsYXllZFJl
bGVhc2VTY29wZSBpcyBpbiB0aGUgd3JvbmcgcGxhY2UKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
U291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNw
cAkocmV2aXNpb24gMTYwODQyKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNB
cnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzUsNiArMzUsOCBA
QAogCiBuYW1lc3BhY2UgSlNDIHsKIAorc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NB
TEwgYXJyYXlCdWZmZXJGdW5jSXNWaWV3KEV4ZWNTdGF0ZSopOworCiBjb25zdCBDbGFzc0luZm8g
SlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7CiAgICAgIkZ1bmN0aW9uIiwgJkJh
c2U6OnNfaW5mbywgMCwgMCwKICAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyYXlCdWZmZXJD
b25zdHJ1Y3RvcikKQEAgLTUwLDYgKzUyLDggQEAgdm9pZCBKU0FycmF5QnVmZmVyQ29uc3RydWN0
b3I6OmZpbmlzaENyZQogICAgIEJhc2U6OmZpbmlzaENyZWF0aW9uKHZtLCAiQXJyYXlCdWZmZXIi
KTsKICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+
cHJvdG90eXBlLCBwcm90b3R5cGUsIERvbnRFbnVtIHwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KTsK
ICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+bGVu
Z3RoLCBqc051bWJlcigxKSwgRG9udEVudW0gfCBEb250RGVsZXRlIHwgUmVhZE9ubHkpOworCisg
ICAgcHV0RGlyZWN0TmF0aXZlRnVuY3Rpb24odm0sIGdsb2JhbE9iamVjdCgpLCBtYWtlSWRlbnRp
Zmllcih2bSwgKCJpc1ZpZXciKSksIDEsIGFycmF5QnVmZmVyRnVuY0lzVmlldywgTm9JbnRyaW5z
aWMsIERvbnRFbnVtIHxGdW5jdGlvbik7CiB9CiAKIEpTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvciog
SlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yOjpjcmVhdGUoVk0mIHZtLCBTdHJ1Y3R1cmUqIHN0cnVj
dHVyZSwgSlNBcnJheUJ1ZmZlclByb3RvdHlwZSogcHJvdG90eXBlKQpAQCAtMTA4LDUgKzExMiwx
NCBAQCBDYWxsVHlwZSBKU0FycmF5QnVmZmVyQ29uc3RydWN0b3I6OmdldENhCiAgICAgcmV0dXJu
IENhbGxUeXBlSG9zdDsKIH0KIAorLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tIEZ1
bmN0aW9ucyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQorCisvLyBFQ01BIDE1LjEz
LjUuNC4yCitFbmNvZGVkSlNWYWx1ZSBKU0NfSE9TVF9DQUxMIGFycmF5QnVmZmVyRnVuY0lzVmll
dyhFeGVjU3RhdGUqIGV4ZWMpCit7CisgICAgcmV0dXJuIEpTVmFsdWU6OmVuY29kZShqc0Jvb2xl
YW4oanNEeW5hbWljQ2FzdDxKU0FycmF5QnVmZmVyVmlldyo+KGV4ZWMtPmFyZ3VtZW50KDApKSkp
OworfQorICAgIAorCiB9IC8vIG5hbWVzcGFjZSBKU0MKIApJbmRleDogTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3RzL0NoYW5nZUxvZwkocmV2aXNpb24gMTYw
ODYyKQorKysgTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEs
MTMgQEAKKzIwMTMtMTItMTkgIEJyZW50IEZ1bGdoYW0gIDxiZnVsZ2hhbUBhcHBsZS5jb20+CisK
KyAgICAgICAgSW1wbGVtZW50IEFycmF5QnVmZmVyLmlzVmlldworICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTI2MDA0CisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgKiB3ZWJnbC8xLjAuMi9yZXNvdXJjZXMvd2Vi
Z2xfdGVzdF9maWxlcy9jb25mb3JtYW5jZS90eXBlZGFycmF5cy9hcnJheS11bml0LXRlc3RzLmh0
bWw6CisgICAgICAgIENvcnJlY3QgdGVzdCBmb3IgJ2lzVmlldycgdG8gYWN0dWFsbHkgY2hlY2sg
Zm9yICdpc1ZpZXcnIGZ1bmN0aW9uLgorCiAyMDEzLTEyLTE5ICBSeW9zdWtlIE5pd2EgIDxybml3
YUB3ZWJraXQub3JnPgogCiAgICAgICAgIEFkZCBhIGZhaWxpbmcgdGVzdCBleHBlY3RhdGlvbiB0
byBmYXN0L2R5bmFtaWMvcGF1c2VkLWV2ZW50LWRpc3BhdGNoLmh0bWwKSW5kZXg6IExheW91dFRl
c3RzL3dlYmdsLzEuMC4yL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2NvbmZvcm1hbmNlL3R5
cGVkYXJyYXlzL2FycmF5LXVuaXQtdGVzdHMuaHRtbAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBMYXlvdXRUZXN0
cy93ZWJnbC8xLjAuMi9yZXNvdXJjZXMvd2ViZ2xfdGVzdF9maWxlcy9jb25mb3JtYW5jZS90eXBl
ZGFycmF5cy9hcnJheS11bml0LXRlc3RzLmh0bWwJKHJldmlzaW9uIDE2MDg0MikKKysrIExheW91
dFRlc3RzL3dlYmdsLzEuMC4yL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2NvbmZvcm1hbmNl
L3R5cGVkYXJyYXlzL2FycmF5LXVuaXQtdGVzdHMuaHRtbAkod29ya2luZyBjb3B5KQpAQCAtMTQ4
LDcgKzE0OCw3IEBAIGZ1bmN0aW9uIHRlc3RBcnJheUJ1ZmZlcklzVmlld01ldGhvZCgpIHsKICAg
ZGVidWcoJ3Rlc3QgQXJyYXlCdWZmZXIuaXNWaWV3KCkgd2l0aCB2YXJpb3VzIHZhbHVlcycpOwog
CiAgIHRyeSB7Ci0gICAgaWYgKCFBcnJheUJ1ZmZlci5jcmVhdGUpIHsKKyAgICBpZiAoIUFycmF5
QnVmZmVyLmlzVmlldykgewogICAgICAgdGVzdEZhaWxlZCgnQXJyYXlCdWZmZXIuaXNWaWV3KCkg
bWV0aG9kIGRvZXMgbm90IGV4aXN0Jyk7CiAgICAgfSBlbHNlIHsKICAgICAgIHRlc3RQYXNzZWQo
J0FycmF5QnVmZmVyLmlzVmlldygpIG1ldGhvZCBleGlzdHMnKTsK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>219699</attachid>
            <date>2013-12-19 16:30:20 -0800</date>
            <delta_ts>2013-12-19 16:37:05 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-126004-20131219163020.patch</filename>
            <type>text/plain</type>
            <size>4256</size>
            <attacher name="Brent Fulgham">bfulgham</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTYwODYyKQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBA
CisyMDEzLTEyLTE5ICBCcmVudCBGdWxnaGFtICA8YmZ1bGdoYW1AYXBwbGUuY29tPgorCisgICAg
ICAgIEltcGxlbWVudCBBcnJheUJ1ZmZlci5pc1ZpZXcKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEyNjAwNAorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIFRlc3QgY292ZXJhZ2UgaW4gd2ViZ2wvMS4wLjIvcmVz
b3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvY29uZm9ybWFuY2UvdHlwZWRhcnJheXMvYXJyYXktdW5p
dC10ZXN0cy5odG1sCisKKyAgICAgICAgKiBydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rv
ci5jcHA6CisgICAgICAgIChKU0M6OkpTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvcjo6ZmluaXNoQ3Jl
YXRpb24pOiBBZGQgJ2lzVmlldycgdG8gb2JqZWN0IGNvbnN0cnVjdG9yLgorICAgICAgICAoSlND
OjphcnJheUJ1ZmZlckZ1bmNJc1ZpZXcpOiBOZXcgbWV0aG9kLgorCiAyMDEzLTEyLTE4ICBNYXJr
IEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0BhcHBsZS5jb20+CiAKICAgICAgICAgRGVsYXllZFJl
bGVhc2VTY29wZSBpcyBpbiB0aGUgd3JvbmcgcGxhY2UKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0
Q29yZS9ydW50aW1lL0NvbW1vbklkZW50aWZpZXJzLmgKPT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0ph
dmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAkocmV2aXNpb24gMTYwODQy
KQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvQ29tbW9uSWRlbnRpZmllcnMuaAko
d29ya2luZyBjb3B5KQpAQCAtMTEyLDYgKzExMiw3IEBACiAgICAgbWFjcm8oaW5zdHJ1Y3Rpb25D
b3VudCkgXAogICAgIG1hY3JvKGlzQXJyYXkpIFwKICAgICBtYWNybyhpc1Byb3RvdHlwZU9mKSBc
CisgICAgbWFjcm8oaXNWaWV3KSBcCiAgICAgbWFjcm8oaXNXYXRjaHBvaW50KSBcCiAgICAgbWFj
cm8oam9pbikgXAogICAgIG1hY3JvKGtleXMpIFwKSW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29y
ZS9ydW50aW1lL0pTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvci5jcHAKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAko
cmV2aXNpb24gMTYwODQyKQorKysgU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNBcnJh
eUJ1ZmZlckNvbnN0cnVjdG9yLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzUsNiArMzUsOCBAQAog
CiBuYW1lc3BhY2UgSlNDIHsKIAorc3RhdGljIEVuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwg
YXJyYXlCdWZmZXJGdW5jSXNWaWV3KEV4ZWNTdGF0ZSopOworCiBjb25zdCBDbGFzc0luZm8gSlNB
cnJheUJ1ZmZlckNvbnN0cnVjdG9yOjpzX2luZm8gPSB7CiAgICAgIkZ1bmN0aW9uIiwgJkJhc2U6
OnNfaW5mbywgMCwgMCwKICAgICBDUkVBVEVfTUVUSE9EX1RBQkxFKEpTQXJyYXlCdWZmZXJDb25z
dHJ1Y3RvcikKQEAgLTUwLDYgKzUyLDkgQEAgdm9pZCBKU0FycmF5QnVmZmVyQ29uc3RydWN0b3I6
OmZpbmlzaENyZQogICAgIEJhc2U6OmZpbmlzaENyZWF0aW9uKHZtLCAiQXJyYXlCdWZmZXIiKTsK
ICAgICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+cHJv
dG90eXBlLCBwcm90b3R5cGUsIERvbnRFbnVtIHwgRG9udERlbGV0ZSB8IFJlYWRPbmx5KTsKICAg
ICBwdXREaXJlY3RXaXRob3V0VHJhbnNpdGlvbih2bSwgdm0ucHJvcGVydHlOYW1lcy0+bGVuZ3Ro
LCBqc051bWJlcigxKSwgRG9udEVudW0gfCBEb250RGVsZXRlIHwgUmVhZE9ubHkpOworCisgICAg
SlNHbG9iYWxPYmplY3QqIGdsb2JhbE9iamVjdCA9IHRoaXMtPmdsb2JhbE9iamVjdCgpOworICAg
IEpTQ19OQVRJVkVfRlVOQ1RJT04odm0ucHJvcGVydHlOYW1lcy0+aXNWaWV3LCBhcnJheUJ1ZmZl
ckZ1bmNJc1ZpZXcsIERvbnRFbnVtLCAxKTsKIH0KIAogSlNBcnJheUJ1ZmZlckNvbnN0cnVjdG9y
KiBKU0FycmF5QnVmZmVyQ29uc3RydWN0b3I6OmNyZWF0ZShWTSYgdm0sIFN0cnVjdHVyZSogc3Ry
dWN0dXJlLCBKU0FycmF5QnVmZmVyUHJvdG90eXBlKiBwcm90b3R5cGUpCkBAIC0xMDgsNSArMTEz
LDE0IEBAIENhbGxUeXBlIEpTQXJyYXlCdWZmZXJDb25zdHJ1Y3Rvcjo6Z2V0Q2EKICAgICByZXR1
cm4gQ2FsbFR5cGVIb3N0OwogfQogCisvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0g
RnVuY3Rpb25zIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCisKKy8vIEVDTUEgMjQu
MS4zLjEKK0VuY29kZWRKU1ZhbHVlIEpTQ19IT1NUX0NBTEwgYXJyYXlCdWZmZXJGdW5jSXNWaWV3
KEV4ZWNTdGF0ZSogZXhlYykKK3sKKyAgICByZXR1cm4gSlNWYWx1ZTo6ZW5jb2RlKGpzQm9vbGVh
bihqc0R5bmFtaWNDYXN0PEpTQXJyYXlCdWZmZXJWaWV3Kj4oZXhlYy0+YXJndW1lbnQoMCkpKSk7
Cit9CisgICAgCisKIH0gLy8gbmFtZXNwYWNlIEpTQwogCkluZGV4OiBMYXlvdXRUZXN0cy9DaGFu
Z2VMb2cKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCShyZXZpc2lvbiAxNjA4
NjIpCisrKyBMYXlvdXRUZXN0cy9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwx
MyBAQAorMjAxMy0xMi0xOSAgQnJlbnQgRnVsZ2hhbSAgPGJmdWxnaGFtQGFwcGxlLmNvbT4KKwor
ICAgICAgICBJbXBsZW1lbnQgQXJyYXlCdWZmZXIuaXNWaWV3CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMjYwMDQKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIHdlYmdsLzEuMC4yL3Jlc291cmNlcy93ZWJn
bF90ZXN0X2ZpbGVzL2NvbmZvcm1hbmNlL3R5cGVkYXJyYXlzL2FycmF5LXVuaXQtdGVzdHMuaHRt
bDoKKyAgICAgICAgQ29ycmVjdCB0ZXN0IGZvciAnaXNWaWV3JyB0byBhY3R1YWxseSBjaGVjayBm
b3IgJ2lzVmlldycgZnVuY3Rpb24uCisKIDIwMTMtMTItMTkgIFJ5b3N1a2UgTml3YSAgPHJuaXdh
QHdlYmtpdC5vcmc+CiAKICAgICAgICAgQWRkIGEgZmFpbGluZyB0ZXN0IGV4cGVjdGF0aW9uIHRv
IGZhc3QvZHluYW1pYy9wYXVzZWQtZXZlbnQtZGlzcGF0Y2guaHRtbApJbmRleDogTGF5b3V0VGVz
dHMvd2ViZ2wvMS4wLjIvcmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvY29uZm9ybWFuY2UvdHlw
ZWRhcnJheXMvYXJyYXktdW5pdC10ZXN0cy5odG1sCj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIExheW91dFRlc3Rz
L3dlYmdsLzEuMC4yL3Jlc291cmNlcy93ZWJnbF90ZXN0X2ZpbGVzL2NvbmZvcm1hbmNlL3R5cGVk
YXJyYXlzL2FycmF5LXVuaXQtdGVzdHMuaHRtbAkocmV2aXNpb24gMTYwODQyKQorKysgTGF5b3V0
VGVzdHMvd2ViZ2wvMS4wLjIvcmVzb3VyY2VzL3dlYmdsX3Rlc3RfZmlsZXMvY29uZm9ybWFuY2Uv
dHlwZWRhcnJheXMvYXJyYXktdW5pdC10ZXN0cy5odG1sCSh3b3JraW5nIGNvcHkpCkBAIC0xNDgs
NyArMTQ4LDcgQEAgZnVuY3Rpb24gdGVzdEFycmF5QnVmZmVySXNWaWV3TWV0aG9kKCkgewogICBk
ZWJ1ZygndGVzdCBBcnJheUJ1ZmZlci5pc1ZpZXcoKSB3aXRoIHZhcmlvdXMgdmFsdWVzJyk7CiAK
ICAgdHJ5IHsKLSAgICBpZiAoIUFycmF5QnVmZmVyLmNyZWF0ZSkgeworICAgIGlmICghQXJyYXlC
dWZmZXIuaXNWaWV3KSB7CiAgICAgICB0ZXN0RmFpbGVkKCdBcnJheUJ1ZmZlci5pc1ZpZXcoKSBt
ZXRob2QgZG9lcyBub3QgZXhpc3QnKTsKICAgICB9IGVsc2UgewogICAgICAgdGVzdFBhc3NlZCgn
QXJyYXlCdWZmZXIuaXNWaWV3KCkgbWV0aG9kIGV4aXN0cycpOwo=
</data>
<flag name="review"
          id="243359"
          type_id="1"
          status="+"
          setter="fpizlo"
    />
          </attachment>
      

    </bug>

</bugzilla>