<?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>108565</bug_id>
          
          <creation_ts>2013-01-31 19:03:32 -0800</creation_ts>
          <short_desc>[CPP,GObject,ObjC] Add &apos;enum&apos; skip to CodeGenerator{CPP,GObject,ObjC}.pm</short_desc>
          <delta_ts>2013-01-31 23:09:12 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit Misc.</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>0</everconfirmed>
          <reporter name="Nils Barth">nbarth</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>abarth</cc>
    
    <cc>haraken</cc>
    
    <cc>japhet</cc>
    
    <cc>ojan.autocc</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>822230</commentid>
    <comment_count>0</comment_count>
    <who name="Nils Barth">nbarth</who>
    <bug_when>2013-01-31 19:03:32 -0800</bug_when>
    <thetext>Make legacy code generators skip enum types (added to V8 CodeGen in Bug 106553).
This allows us to not use macros like &quot;#if defined(TESTING_JS) || defined(TESTING_V8)&quot; in IDL files.
Concretely it&apos;s just adding an IsEnumType check to the SkipAttribute functions, and then removing macros from the test IDL file.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822295</commentid>
    <comment_count>1</comment_count>
      <attachid>185936</attachid>
    <who name="Nils Barth">nbarth</who>
    <bug_when>2013-01-31 21:24:32 -0800</bug_when>
    <thetext>Created attachment 185936
Patch

Simple patch -- adds IsEnumType test to SkipAttribute in legacy code generators
so we can remove #if macro from IDL test file.
Also minor associated code cleaning (b/c we&apos;re checking type):
aux var: $type = $attribute-&gt;signature-&gt;type
(is this ok?)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822299</commentid>
    <comment_count>2</comment_count>
      <attachid>185936</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-01-31 21:32:52 -0800</bug_when>
    <thetext>Comment on attachment 185936
Patch

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

&gt; Source/WebCore/ChangeLog:8
&gt; +        Add IsEnumType test to SkipAttribute in legacy code generators.

Please explain the rationale for the change, not only what you did but also why you did it.

e.g. Since CodeGenerator{CPP,GObject,ObjC}.pm does not support &apos;enum&apos;, this patch adds code to skip DOM attributes that return &apos;enum&apos;.

&gt; Source/WebCore/bindings/scripts/test/TestObj.idl:47
&gt;      static readonly attribute long     staticReadOnlyLongAttr;
&gt;      static attribute DOMString         staticStringAttr;
&gt;      static readonly attribute TestSubObjConstructor TestSubObj;
&gt; -    attribute TestEnumType             enumAttr;
&gt;  #endif

I think you can remove this #if too by skipping &apos;static&apos; in CodeGenerator{ObjC,GObject,CPP}.pm. You can do it in a follow-up patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822302</commentid>
    <comment_count>3</comment_count>
    <who name="Nils Barth">nbarth</who>
    <bug_when>2013-01-31 21:35:08 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 185936 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=185936&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:8
&gt; &gt; +        Add IsEnumType test to SkipAttribute in legacy code generators.
&gt; 
&gt; Please explain the rationale for the change, not only what you did but also why you did it.
&gt; 
&gt; e.g. Since CodeGenerator{CPP,GObject,ObjC}.pm does not support &apos;enum&apos;, this patch adds code to skip DOM attributes that return &apos;enum&apos;.

Got it -- will update ChangeLog.

&gt; &gt; Source/WebCore/bindings/scripts/test/TestObj.idl:47
&gt; &gt;      static readonly attribute long     staticReadOnlyLongAttr;
&gt; &gt;      static attribute DOMString         staticStringAttr;
&gt; &gt;      static readonly attribute TestSubObjConstructor TestSubObj;
&gt; &gt; -    attribute TestEnumType             enumAttr;
&gt; &gt;  #endif
&gt; 
&gt; I think you can remove this #if too by skipping &apos;static&apos; in CodeGenerator{ObjC,GObject,CPP}.pm. You can do it in a follow-up patch.

I was wondering about that; should I open a different bug for that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822305</commentid>
    <comment_count>4</comment_count>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-01-31 21:36:47 -0800</bug_when>
    <thetext>&gt; &gt; I think you can remove this #if too by skipping &apos;static&apos; in CodeGenerator{ObjC,GObject,CPP}.pm. You can do it in a follow-up patch.
&gt; 
&gt; I was wondering about that; should I open a different bug for that?

Yes.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822311</commentid>
    <comment_count>5</comment_count>
    <who name="Nils Barth">nbarth</who>
    <bug_when>2013-01-31 21:44:16 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; &gt; &gt; I think you can remove this #if too by skipping &apos;static&apos; in CodeGenerator{ObjC,GObject,CPP}.pm. You can do it in a follow-up patch.
&gt; &gt; 
&gt; &gt; I was wondering about that; should I open a different bug for that?
&gt; 
&gt; Yes.

Got it: Bug 108578</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822316</commentid>
    <comment_count>6</comment_count>
      <attachid>185941</attachid>
    <who name="Nils Barth">nbarth</who>
    <bug_when>2013-01-31 21:57:17 -0800</bug_when>
    <thetext>Created attachment 185941
Patch

(In reply to comment #2)
&gt; (From update of attachment 185936 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=185936&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/ChangeLog:8
&gt; &gt; +        Add IsEnumType test to SkipAttribute in legacy code generators.
&gt; 
&gt; Please explain the rationale for the change, not only what you did but also why you did it.
&gt; 
&gt; e.g. Since CodeGenerator{CPP,GObject,ObjC}.pm does not support &apos;enum&apos;, this patch adds code to skip DOM attributes that return &apos;enum&apos;.
Got it -- fixed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822318</commentid>
    <comment_count>7</comment_count>
      <attachid>185941</attachid>
    <who name="Kentaro Hara">haraken</who>
    <bug_when>2013-01-31 21:58:32 -0800</bug_when>
    <thetext>Comment on attachment 185941
Patch

LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822363</commentid>
    <comment_count>8</comment_count>
      <attachid>185941</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-31 23:09:07 -0800</bug_when>
    <thetext>Comment on attachment 185941
Patch

Clearing flags on attachment: 185941

Committed r141541: &lt;http://trac.webkit.org/changeset/141541&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>822364</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2013-01-31 23:09:12 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185936</attachid>
            <date>2013-01-31 21:24:32 -0800</date>
            <delta_ts>2013-01-31 21:57:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108565-20130201142115.patch</filename>
            <type>text/plain</type>
            <size>5575</size>
            <attacher name="Nils Barth">nbarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNTM0CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzhlNjYyNWUwM2Q4YThm
YjAxOGY5MzZhM2Y2NjZlNzBkZDQxOWI1MC4uNDM3ZTIyMjMwNGQ4MzMxZjExYmMzOTkwYzNkZGRk
MDY5ZDBjOTI2YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEzLTAxLTMxICBOaWxz
IEJhcnRoICA8bmJhcnRoQGdvb2dsZS5jb20+CisKKyAgICAgICAgW0NQUCxHT2JqZWN0LE9iakNd
IEFkZCAnZW51bScgc2tpcCB0byBDb2RlR2VuZXJhdG9ye0NQUCxHT2JqZWN0LE9iakN9LnBtCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDg1NjUKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgSXNFbnVt
VHlwZSB0ZXN0IHRvIFNraXBBdHRyaWJ1dGUgaW4gbGVnYWN5IGNvZGUgZ2VuZXJhdG9ycy4KKyAg
ICAgICAgUmVtb3ZlICNpZiBtYWNybyBmcm9tIGVudW0gaW4gdGVzdCBmaWxlLgorICAgICAgICBB
bHNvIG1pbm9yIGFzc29jaWF0ZWQgY29kZSBjbGVhbmluZzoKKyAgICAgICAgICBhdXhpbGlhcnkg
dmFyaWFibGU6ICR0eXBlID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlLgorCisgICAgICAg
IFRlc3Q6IGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbCAocnVuLWJpbmRpbmdzLXRl
c3QpCisKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JDUFAucG06Cisg
ICAgICAgIChTa2lwQXR0cmlidXRlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL0NvZGVH
ZW5lcmF0b3JHT2JqZWN0LnBtOgorICAgICAgICAoU2tpcEF0dHJpYnV0ZSk6CisgICAgICAgICog
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbToKKyAgICAgICAgKFNraXBBdHRy
aWJ1dGUpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbDogcmVt
b3ZlICNpZiBtYWNybworCiAyMDEzLTAxLTMxICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVt
Lm9yZz4KIAogICAgICAgICBSZWZhY3RvcmluZzogUmVtb3ZlIHRoZSBkZWZhdWx0IGFyZ3VtZW50
IHZhbHVlIGZvciBOb2RlOjpzZXRGb2N1cwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtIGIvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtCmluZGV4IGJiOWYzZWU4YjI4MjYzNjFhYzUy
MDUyYWM2MDk1MTk3MWZjMzNiNzIuLmEwZThjODE4MTU1M2RkNmQyZjQzMTQ3ZjIwZWQyOTAzODM1
ZGZhM2YgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdl
bmVyYXRvckNQUC5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVH
ZW5lcmF0b3JDUFAucG0KQEAgLTE5OSwyMyArMTk5LDI4IEBAIHN1YiBTa2lwRnVuY3Rpb24KIHN1
YiBTa2lwQXR0cmlidXRlCiB7CiAgICAgbXkgJGF0dHJpYnV0ZSA9IHNoaWZ0OworICAgIG15ICR0
eXBlID0gJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlOwogCiAgICAgcmV0dXJuIDEgaWYgJGF0
dHJpYnV0ZS0+c2lnbmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tIn0KICAgICAg
ICAgICAgICAgICBvciAkYXR0cmlidXRlLT5zaWduYXR1cmUtPmV4dGVuZGVkQXR0cmlidXRlcy0+
eyJDdXN0b21HZXR0ZXIifTsKIAotICAgIHJldHVybiAxIGlmICRhdHRyaWJ1dGUtPnNpZ25hdHVy
ZS0+dHlwZSA9fiAvQ29uc3RydWN0b3IkLzsKKyAgICByZXR1cm4gMSBpZiAkdHlwZSA9fiAvQ29u
c3RydWN0b3IkLzsKIAotICAgIHJldHVybiAxIGlmICRjb2RlR2VuZXJhdG9yLT5Jc1R5cGVkQXJy
YXlUeXBlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZSk7CisgICAgcmV0dXJuIDEgaWYgJGNv
ZGVHZW5lcmF0b3ItPklzVHlwZWRBcnJheVR5cGUoJHR5cGUpOwogCi0gICAgaWYgKCRjb2RlR2Vu
ZXJhdG9yLT5HZXRBcnJheVR5cGUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlKSkgeworICAg
IGlmICgkY29kZUdlbmVyYXRvci0+R2V0QXJyYXlUeXBlKCR0eXBlKSkgewogICAgICAgICByZXR1
cm4gMTsKICAgICB9CiAKLSAgICBpZiAoJGNvZGVHZW5lcmF0b3ItPkdldFNlcXVlbmNlVHlwZSgk
YXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUpKSB7CisgICAgaWYgKCRjb2RlR2VuZXJhdG9yLT5H
ZXRTZXF1ZW5jZVR5cGUoJHR5cGUpKSB7CiAgICAgICAgIHJldHVybiAxOwogICAgIH0KIAotICAg
ICRjb2RlR2VuZXJhdG9yLT5Bc3NlcnROb3RTZXF1ZW5jZVR5cGUoJGF0dHJpYnV0ZS0+c2lnbmF0
dXJlLT50eXBlKTsKKyAgICBpZiAoJGNvZGVHZW5lcmF0b3ItPklzRW51bVR5cGUoJHR5cGUpKSB7
CisgICAgICAgIHJldHVybiAxOworICAgIH0KKworICAgICRjb2RlR2VuZXJhdG9yLT5Bc3NlcnRO
b3RTZXF1ZW5jZVR5cGUoJHR5cGUpOwogCiAgICAgIyBGSVhNRTogVGhpcyBpcyB0eXBpY2FsbHkg
dXNlZCB0byBhZGQgc2NyaXB0IGV4ZWN1dGlvbiBzdGF0ZSBhcmd1bWVudHMgdG8gdGhlIG1ldGhv
ZC4KICAgICAjIFRoZXNlIGZ1bmN0aW9ucyB3aWxsIG5vdCBjb21waWxlIHdpdGggdGhlIEMrKyBi
aW5kaW5ncyBhcyBpcywgc28gZGlzYWJsZSB0aGVtCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JHT2JqZWN0LnBtIGIvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yR09iamVjdC5wbQppbmRleCAxYTg5Yjll
NmNiOTAyMTQ5ODdkZGIxZDczZGZkZGFhYTI2OGNjNzAwLi4zMWI4NTM2NzQzZTRkNDM1YmQ2ZGI4
YjdlZDEyYjYzZGU2ZDU4N2RkIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9z
Y3JpcHRzL0NvZGVHZW5lcmF0b3JHT2JqZWN0LnBtCisrKyBiL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckdPYmplY3QucG0KQEAgLTE4Nyw2ICsxODcsMTAgQEAg
c3ViIFNraXBBdHRyaWJ1dGUgewogICAgICAgICByZXR1cm4gMTsKICAgICB9CiAKKyAgICBpZiAo
JGNvZGVHZW5lcmF0b3ItPklzRW51bVR5cGUoJHByb3BUeXBlKSkgeworICAgICAgICByZXR1cm4g
MTsKKyAgICB9CisKICAgICAjIFRoaXMgaXMgZm9yIERPTVdpbmRvdy5pZGwgbG9jYXRpb24gYXR0
cmlidXRlCiAgICAgaWYgKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+bmFtZSBlcSAibG9jYXRpb24i
KSB7CiAgICAgICAgIHJldHVybiAxOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGlu
Z3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdz
L3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0KaW5kZXggNGZlOGUwMzk2ZTNlZjQ1MjI3MmM4
NjViNDkzZWJhNzMwMmUxMjIxYS4uYTMwMDAyNzUwNjcxNTAxN2E4YmIyM2RmOTMxNmU3NWRjNjll
MDBkMCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2Vu
ZXJhdG9yT2JqQy5wbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVH
ZW5lcmF0b3JPYmpDLnBtCkBAIC00NDYsMTAgKzQ0NiwxMiBAQCBzdWIgU2tpcEZ1bmN0aW9uCiBz
dWIgU2tpcEF0dHJpYnV0ZQogewogICAgIG15ICRhdHRyaWJ1dGUgPSBzaGlmdDsKKyAgICBteSAk
dHlwZSA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZTsKIAotICAgICRjb2RlR2VuZXJhdG9y
LT5Bc3NlcnROb3RTZXF1ZW5jZVR5cGUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlKTsKLSAg
ICByZXR1cm4gMSBpZiAkY29kZUdlbmVyYXRvci0+R2V0QXJyYXlUeXBlKCRhdHRyaWJ1dGUtPnNp
Z25hdHVyZS0+dHlwZSk7Ci0gICAgcmV0dXJuIDEgaWYgJGNvZGVHZW5lcmF0b3ItPklzVHlwZWRB
cnJheVR5cGUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlKTsKKyAgICAkY29kZUdlbmVyYXRv
ci0+QXNzZXJ0Tm90U2VxdWVuY2VUeXBlKCR0eXBlKTsKKyAgICByZXR1cm4gMSBpZiAkY29kZUdl
bmVyYXRvci0+R2V0QXJyYXlUeXBlKCR0eXBlKTsKKyAgICByZXR1cm4gMSBpZiAkY29kZUdlbmVy
YXRvci0+SXNUeXBlZEFycmF5VHlwZSgkdHlwZSk7CisgICAgcmV0dXJuIDEgaWYgJGNvZGVHZW5l
cmF0b3ItPklzRW51bVR5cGUoJHR5cGUpOwogCiAgICAgIyBUaGlzIGlzIGZvciBEeW5hbWljc0Nv
bXByZXNzb3JOb2RlLmlkbAogICAgIGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUtPm5hbWUgZXEg
InJlbGVhc2UiKSB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRz
L3Rlc3QvVGVzdE9iai5pZGwgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3Qv
VGVzdE9iai5pZGwKaW5kZXggZDBhZDEyMGQ1NDRlZjMxOGM4YWJlMWRkYmMwYjBhZWYxZmVmYTIx
Yy4uYmFmYTNhNTFkNTQ1NWRiZmRiYWZjN2QyYTQwMTM3YTY4ZGU1Y2JmZSAxMDA2NDQKLS0tIGEv
U291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9UZXN0T2JqLmlkbApAQCAtMzAsOSAr
MzAsNyBAQAogLy8gVGhpcyBJREwgZmlsZSBpcyBmb3IgdGVzdGluZyB0aGUgYmluZGluZ3MgY29k
ZSBnZW5lcmF0b3IgYW5kIGZvciB0cmFja2luZwogLy8gY2hhbmdlcyBpbiBpdHMgb3VwdXQuCiAK
LSNpZiBkZWZpbmVkKFRFU1RJTkdfSlMpIHx8IGRlZmluZWQoVEVTVElOR19WOCkKIGVudW0gVGVz
dEVudW1UeXBlIHsgIiIsICJFbnVtVmFsdWUxIiwgIkVudW1WYWx1ZTIiLCAiRW51bVZhbHVlMyIg
fTsKLSNlbmRpZgogCiBbCiAgICAgQ29uc3RydWN0b3IoaW4gW0NhbGxiYWNrXSBUZXN0Q2FsbGJh
Y2sgdGVzdENhbGxiYWNrKSwKQEAgLTQ2LDggKzQ0LDggQEAgZW51bSBUZXN0RW51bVR5cGUgeyAi
IiwgIkVudW1WYWx1ZTEiLCAiRW51bVZhbHVlMiIsICJFbnVtVmFsdWUzIiB9OwogICAgIHN0YXRp
YyByZWFkb25seSBhdHRyaWJ1dGUgbG9uZyAgICAgc3RhdGljUmVhZE9ubHlMb25nQXR0cjsKICAg
ICBzdGF0aWMgYXR0cmlidXRlIERPTVN0cmluZyAgICAgICAgIHN0YXRpY1N0cmluZ0F0dHI7CiAg
ICAgc3RhdGljIHJlYWRvbmx5IGF0dHJpYnV0ZSBUZXN0U3ViT2JqQ29uc3RydWN0b3IgVGVzdFN1
Yk9iajsKLSAgICBhdHRyaWJ1dGUgVGVzdEVudW1UeXBlICAgICAgICAgICAgIGVudW1BdHRyOwog
I2VuZGlmCisgICAgYXR0cmlidXRlIFRlc3RFbnVtVHlwZSAgICAgICAgICAgICBlbnVtQXR0cjsK
ICAgICBhdHRyaWJ1dGUgc2hvcnQgICAgICAgICAgICAgICAgICAgIHNob3J0QXR0cjsKICAgICBh
dHRyaWJ1dGUgdW5zaWduZWQgc2hvcnQgICAgICAgICAgIHVuc2lnbmVkU2hvcnRBdHRyOwogICAg
IGF0dHJpYnV0ZSBsb25nICAgICAgICAgICAgICAgICAgICAgbG9uZ0F0dHI7Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>185941</attachid>
            <date>2013-01-31 21:57:17 -0800</date>
            <delta_ts>2013-01-31 23:09:07 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-108565-20130201145400.patch</filename>
            <type>text/plain</type>
            <size>5708</size>
            <attacher name="Nils Barth">nbarth</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTQxNTM1CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMzhlNjYyNWUwM2Q4YThm
YjAxOGY5MzZhM2Y2NjZlNzBkZDQxOWI1MC4uNmRkNmM4ZTZjMGQ5NzRkYjk5OTQ3ZmQ0MDg0NjA5
MWM3NDM1ZDM5OCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI3IEBACisyMDEzLTAxLTMxICBOaWxz
IEJhcnRoICA8bmJhcnRoQGdvb2dsZS5jb20+CisKKyAgICAgICAgW0NQUCxHT2JqZWN0LE9iakNd
IEFkZCAnZW51bScgc2tpcCB0byBDb2RlR2VuZXJhdG9ye0NQUCxHT2JqZWN0LE9iakN9LnBtCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMDg1NjUKKwor
ICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBTaW5jZSBsZWdh
Y3kgY29kZSBnZW5lcmF0b3JzIChDb2RlR2VuZXJhdG9ye0NQUCxHT2JqZWN0LE9iakN9LnBtKQor
ICAgICAgICBkbyBub3Qgc3VwcG9ydCBlbnVtZXJhdGlvbnMsIGFkZCB0ZXN0IHRvIHNraXAgYXR0
cmlidXRlcyBvZiBlbnVtIHR5cGUuCisgICAgICAgIFRoaXMgbGV0cyB1cyByZW1vdmUgI2lmIG1h
Y3JvIGZyb20gZW51bSBpbiB0ZXN0IGZpbGUgYW5kIG5vdCBuZWVkCisgICAgICAgIHRoZXNlIGlu
IGZ1dHVyZS4KKyAgICAgICAgQWxzbyBtaW5vciBhc3NvY2lhdGVkIGNvZGUgY2xlYW5pbmc6Cisg
ICAgICAgICAgYXV4aWxpYXJ5IHZhcmlhYmxlOiAkdHlwZSA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVy
ZS0+dHlwZS4KKworICAgICAgICBUZXN0OiBiaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVzdE9iai5p
ZGwgKHJ1bi1iaW5kaW5ncy10ZXN0KQorCisgICAgICAgICogYmluZGluZ3Mvc2NyaXB0cy9Db2Rl
R2VuZXJhdG9yQ1BQLnBtOgorICAgICAgICAoU2tpcEF0dHJpYnV0ZSk6CisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yR09iamVjdC5wbToKKyAgICAgICAgKFNraXBBdHRy
aWJ1dGUpOgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG06
CisgICAgICAgIChTa2lwQXR0cmlidXRlKToKKyAgICAgICAgKiBiaW5kaW5ncy9zY3JpcHRzL3Rl
c3QvVGVzdE9iai5pZGw6IHJlbW92ZSAjaWYgbWFjcm8KKwogMjAxMy0wMS0zMSAgS2VudCBUYW11
cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmVmYWN0b3Jpbmc6IFJlbW92ZSB0
aGUgZGVmYXVsdCBhcmd1bWVudCB2YWx1ZSBmb3IgTm9kZTo6c2V0Rm9jdXMKZGlmZiAtLWdpdCBh
L1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckNQUC5wbSBiL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckNQUC5wbQppbmRleCBi
YjlmM2VlOGIyODI2MzYxYWM1MjA1MmFjNjA5NTE5NzFmYzMzYjcyLi5hMGU4YzgxODE1NTNkZDZk
MmY0MzE0N2YyMGVkMjkwMzgzNWRmYTNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JDUFAucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yQ1BQLnBtCkBAIC0xOTksMjMgKzE5OSwyOCBAQCBz
dWIgU2tpcEZ1bmN0aW9uCiBzdWIgU2tpcEF0dHJpYnV0ZQogewogICAgIG15ICRhdHRyaWJ1dGUg
PSBzaGlmdDsKKyAgICBteSAkdHlwZSA9ICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZTsKIAog
ICAgIHJldHVybiAxIGlmICRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+ZXh0ZW5kZWRBdHRyaWJ1dGVz
LT57IkN1c3RvbSJ9CiAgICAgICAgICAgICAgICAgb3IgJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT5l
eHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ3VzdG9tR2V0dGVyIn07CiAKLSAgICByZXR1cm4gMSBpZiAk
YXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUgPX4gL0NvbnN0cnVjdG9yJC87CisgICAgcmV0dXJu
IDEgaWYgJHR5cGUgPX4gL0NvbnN0cnVjdG9yJC87CiAKLSAgICByZXR1cm4gMSBpZiAkY29kZUdl
bmVyYXRvci0+SXNUeXBlZEFycmF5VHlwZSgkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUpOwor
ICAgIHJldHVybiAxIGlmICRjb2RlR2VuZXJhdG9yLT5Jc1R5cGVkQXJyYXlUeXBlKCR0eXBlKTsK
IAotICAgIGlmICgkY29kZUdlbmVyYXRvci0+R2V0QXJyYXlUeXBlKCRhdHRyaWJ1dGUtPnNpZ25h
dHVyZS0+dHlwZSkpIHsKKyAgICBpZiAoJGNvZGVHZW5lcmF0b3ItPkdldEFycmF5VHlwZSgkdHlw
ZSkpIHsKICAgICAgICAgcmV0dXJuIDE7CiAgICAgfQogCi0gICAgaWYgKCRjb2RlR2VuZXJhdG9y
LT5HZXRTZXF1ZW5jZVR5cGUoJGF0dHJpYnV0ZS0+c2lnbmF0dXJlLT50eXBlKSkgeworICAgIGlm
ICgkY29kZUdlbmVyYXRvci0+R2V0U2VxdWVuY2VUeXBlKCR0eXBlKSkgewogICAgICAgICByZXR1
cm4gMTsKICAgICB9CiAKLSAgICAkY29kZUdlbmVyYXRvci0+QXNzZXJ0Tm90U2VxdWVuY2VUeXBl
KCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZSk7CisgICAgaWYgKCRjb2RlR2VuZXJhdG9yLT5J
c0VudW1UeXBlKCR0eXBlKSkgeworICAgICAgICByZXR1cm4gMTsKKyAgICB9CisKKyAgICAkY29k
ZUdlbmVyYXRvci0+QXNzZXJ0Tm90U2VxdWVuY2VUeXBlKCR0eXBlKTsKIAogICAgICMgRklYTUU6
IFRoaXMgaXMgdHlwaWNhbGx5IHVzZWQgdG8gYWRkIHNjcmlwdCBleGVjdXRpb24gc3RhdGUgYXJn
dW1lbnRzIHRvIHRoZSBtZXRob2QuCiAgICAgIyBUaGVzZSBmdW5jdGlvbnMgd2lsbCBub3QgY29t
cGlsZSB3aXRoIHRoZSBDKysgYmluZGluZ3MgYXMgaXMsIHNvIGRpc2FibGUgdGhlbQpkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yR09iamVj
dC5wbSBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckdPYmpl
Y3QucG0KaW5kZXggMWE4OWI5ZTZjYjkwMjE0OTg3ZGRiMWQ3M2RmZGRhYWEyNjhjYzcwMC4uMzFi
ODUzNjc0M2U0ZDQzNWJkNmRiOGI3ZWQxMmI2M2RlNmQ1ODdkZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yR09iamVjdC5wbQorKysgYi9T
b3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JHT2JqZWN0LnBtCkBA
IC0xODcsNiArMTg3LDEwIEBAIHN1YiBTa2lwQXR0cmlidXRlIHsKICAgICAgICAgcmV0dXJuIDE7
CiAgICAgfQogCisgICAgaWYgKCRjb2RlR2VuZXJhdG9yLT5Jc0VudW1UeXBlKCRwcm9wVHlwZSkp
IHsKKyAgICAgICAgcmV0dXJuIDE7CisgICAgfQorCiAgICAgIyBUaGlzIGlzIGZvciBET01XaW5k
b3cuaWRsIGxvY2F0aW9uIGF0dHJpYnV0ZQogICAgIGlmICgkYXR0cmlidXRlLT5zaWduYXR1cmUt
Pm5hbWUgZXEgImxvY2F0aW9uIikgewogICAgICAgICByZXR1cm4gMTsKZGlmZiAtLWdpdCBhL1Nv
dXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0gYi9Tb3Vy
Y2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtCmluZGV4IDRm
ZThlMDM5NmUzZWY0NTIyNzJjODY1YjQ5M2ViYTczMDJlMTIyMWEuLmEzMDAwMjc1MDY3MTUwMTdh
OGJiMjNkZjkzMTZlNzVkYzY5ZTAwZDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0KKysrIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbQpAQCAtNDQ2LDEwICs0NDYsMTIgQEAg
c3ViIFNraXBGdW5jdGlvbgogc3ViIFNraXBBdHRyaWJ1dGUKIHsKICAgICBteSAkYXR0cmlidXRl
ID0gc2hpZnQ7CisgICAgbXkgJHR5cGUgPSAkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGU7CiAK
LSAgICAkY29kZUdlbmVyYXRvci0+QXNzZXJ0Tm90U2VxdWVuY2VUeXBlKCRhdHRyaWJ1dGUtPnNp
Z25hdHVyZS0+dHlwZSk7Ci0gICAgcmV0dXJuIDEgaWYgJGNvZGVHZW5lcmF0b3ItPkdldEFycmF5
VHlwZSgkYXR0cmlidXRlLT5zaWduYXR1cmUtPnR5cGUpOwotICAgIHJldHVybiAxIGlmICRjb2Rl
R2VuZXJhdG9yLT5Jc1R5cGVkQXJyYXlUeXBlKCRhdHRyaWJ1dGUtPnNpZ25hdHVyZS0+dHlwZSk7
CisgICAgJGNvZGVHZW5lcmF0b3ItPkFzc2VydE5vdFNlcXVlbmNlVHlwZSgkdHlwZSk7CisgICAg
cmV0dXJuIDEgaWYgJGNvZGVHZW5lcmF0b3ItPkdldEFycmF5VHlwZSgkdHlwZSk7CisgICAgcmV0
dXJuIDEgaWYgJGNvZGVHZW5lcmF0b3ItPklzVHlwZWRBcnJheVR5cGUoJHR5cGUpOworICAgIHJl
dHVybiAxIGlmICRjb2RlR2VuZXJhdG9yLT5Jc0VudW1UeXBlKCR0eXBlKTsKIAogICAgICMgVGhp
cyBpcyBmb3IgRHluYW1pY3NDb21wcmVzc29yTm9kZS5pZGwKICAgICBpZiAoJGF0dHJpYnV0ZS0+
c2lnbmF0dXJlLT5uYW1lIGVxICJyZWxlYXNlIikgewpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsIGIvU291cmNlL1dlYkNvcmUvYmlu
ZGluZ3Mvc2NyaXB0cy90ZXN0L1Rlc3RPYmouaWRsCmluZGV4IGQwYWQxMjBkNTQ0ZWYzMThjOGFi
ZTFkZGJjMGIwYWVmMWZlZmEyMWMuLmJhZmEzYTUxZDU0NTVkYmZkYmFmYzdkMmE0MDEzN2E2OGRl
NWNiZmUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvdGVzdC9U
ZXN0T2JqLmlkbAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL3Rlc3QvVGVz
dE9iai5pZGwKQEAgLTMwLDkgKzMwLDcgQEAKIC8vIFRoaXMgSURMIGZpbGUgaXMgZm9yIHRlc3Rp
bmcgdGhlIGJpbmRpbmdzIGNvZGUgZ2VuZXJhdG9yIGFuZCBmb3IgdHJhY2tpbmcKIC8vIGNoYW5n
ZXMgaW4gaXRzIG91cHV0LgogCi0jaWYgZGVmaW5lZChURVNUSU5HX0pTKSB8fCBkZWZpbmVkKFRF
U1RJTkdfVjgpCiBlbnVtIFRlc3RFbnVtVHlwZSB7ICIiLCAiRW51bVZhbHVlMSIsICJFbnVtVmFs
dWUyIiwgIkVudW1WYWx1ZTMiIH07Ci0jZW5kaWYKIAogWwogICAgIENvbnN0cnVjdG9yKGluIFtD
YWxsYmFja10gVGVzdENhbGxiYWNrIHRlc3RDYWxsYmFjayksCkBAIC00Niw4ICs0NCw4IEBAIGVu
dW0gVGVzdEVudW1UeXBlIHsgIiIsICJFbnVtVmFsdWUxIiwgIkVudW1WYWx1ZTIiLCAiRW51bVZh
bHVlMyIgfTsKICAgICBzdGF0aWMgcmVhZG9ubHkgYXR0cmlidXRlIGxvbmcgICAgIHN0YXRpY1Jl
YWRPbmx5TG9uZ0F0dHI7CiAgICAgc3RhdGljIGF0dHJpYnV0ZSBET01TdHJpbmcgICAgICAgICBz
dGF0aWNTdHJpbmdBdHRyOwogICAgIHN0YXRpYyByZWFkb25seSBhdHRyaWJ1dGUgVGVzdFN1Yk9i
akNvbnN0cnVjdG9yIFRlc3RTdWJPYmo7Ci0gICAgYXR0cmlidXRlIFRlc3RFbnVtVHlwZSAgICAg
ICAgICAgICBlbnVtQXR0cjsKICNlbmRpZgorICAgIGF0dHJpYnV0ZSBUZXN0RW51bVR5cGUgICAg
ICAgICAgICAgZW51bUF0dHI7CiAgICAgYXR0cmlidXRlIHNob3J0ICAgICAgICAgICAgICAgICAg
ICBzaG9ydEF0dHI7CiAgICAgYXR0cmlidXRlIHVuc2lnbmVkIHNob3J0ICAgICAgICAgICB1bnNp
Z25lZFNob3J0QXR0cjsKICAgICBhdHRyaWJ1dGUgbG9uZyAgICAgICAgICAgICAgICAgICAgIGxv
bmdBdHRyOwo=
</data>

          </attachment>
      

    </bug>

</bugzilla>