<?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>93210</bug_id>
          
          <creation_ts>2012-08-05 16:49:15 -0700</creation_ts>
          <short_desc>CSSParser: Move enumeration to a common place (StylePropertyShorthand)</short_desc>
          <delta_ts>2012-08-23 15:52:12 -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>CSS</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>0</everconfirmed>
          <reporter name="Adenilson Cavalcanti Silva">savagobr</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>cmarcelo</cc>
    
    <cc>dino</cc>
    
    <cc>eric</cc>
    
    <cc>kling</cc>
    
    <cc>koivisto</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>simon.fraser</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>687667</commentid>
    <comment_count>0</comment_count>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2012-08-05 16:49:15 -0700</bug_when>
    <thetext>Current code in CSSParser::parseAnimationShorthand() has an enumeration declared with the same elements as another enumeration declared in StylePropertyShorthand.

The issue is that this code depends on a different ordering of enum values (i.e. animationName) to avoid matching with other keywords like fill-mode/timing function, etc.

I considered copying the original values and reordering in a static variable, but it may cause performance regressions. For while, it seems to make sense to at least have both enums in the same place.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>687673</commentid>
    <comment_count>1</comment_count>
      <attachid>156575</attachid>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2012-08-05 16:58:09 -0700</bug_when>
    <thetext>Created attachment 156575
Moving the enum to a common place</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>688289</commentid>
    <comment_count>2</comment_count>
      <attachid>156575</attachid>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2012-08-06 11:07:16 -0700</bug_when>
    <thetext>Comment on attachment 156575
Moving the enum to a common place

I think this move is useless but just clutter the history. Secondly webkitAnimationShorthandWorkaround is a bad name as we don&apos;t workaround anything here, we just parse differently as the spec is unclear on how we should parse. I&apos;d rather move this code/refactor/whatever when the w3c spec bug is resolved and the parsing clarified.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>690449</commentid>
    <comment_count>3</comment_count>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2012-08-08 10:10:19 -0700</bug_when>
    <thetext>Alexis

Thanks for the comments and I agree that the patch is not good.

My question is:

a) is this duplication of enumerations a problem that should be fixed?

b) if so, what would be the best approach?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>690598</commentid>
    <comment_count>4</comment_count>
    <who name="Alexis Menard (darktears)">menard</who>
    <bug_when>2012-08-08 12:14:06 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Alexis
&gt; 
&gt; Thanks for the comments and I agree that the patch is not good.
&gt; 
&gt; My question is:
&gt; 
&gt; a) is this duplication of enumerations a problem that should be fixed?
&gt;

In a way we should
 
&gt; b) if so, what would be the best approach?

Wait to see the spec clarified to analyse the best way to fix it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>695266</commentid>
    <comment_count>5</comment_count>
      <attachid>156575</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2012-08-14 12:43:52 -0700</bug_when>
    <thetext>Comment on attachment 156575
Moving the enum to a common place

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

&gt; Source/WebCore/css/StylePropertyShorthand.h:83
&gt;  const StylePropertyShorthand&amp; webkitAnimationShorthand();
&gt; +const StylePropertyShorthand&amp; webkitAnimationShorthandWorkaround();

Idea is fine, but adding the word “workaround” does not express what’s different about this list. webkitAnimationShorthandWithAnimationNameLast might be OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>700856</commentid>
    <comment_count>6</comment_count>
      <attachid>159704</attachid>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2012-08-21 09:55:28 -0700</bug_when>
    <thetext>Created attachment 159704
Following the suggestion about naming the function

Updated the patch to follow the suggestion about function name.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>701954</commentid>
    <comment_count>7</comment_count>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2012-08-22 08:38:18 -0700</bug_when>
    <thetext>Darin

Thanks for the feedback, I agree that &apos;workaround&apos; is not a good and proper name. The new patch has it fixed, would you mind to have a look on it again?


(In reply to comment #5)
&gt; (From update of attachment 156575 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=156575&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/css/StylePropertyShorthand.h:83
&gt; &gt;  const StylePropertyShorthand&amp; webkitAnimationShorthand();
&gt; &gt; +const StylePropertyShorthand&amp; webkitAnimationShorthandWorkaround();
&gt; 
&gt; Idea is fine, but adding the word “workaround” does not express what’s different about this list. webkitAnimationShorthandWithAnimationNameLast might be OK.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702496</commentid>
    <comment_count>8</comment_count>
      <attachid>159704</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2012-08-22 16:13:20 -0700</bug_when>
    <thetext>Comment on attachment 159704
Following the suggestion about naming the function

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

I wonder if webkitAnimationShorthandForParsing() is a better name? It makes it clear why we have this (annoying) duplication. I don&apos;t have a strong opinion either way.

Otherwise, just some small fixes needed before r+.

&gt; Source/WebCore/css/CSSParser.cpp:3064
&gt; +    const WebCore::StylePropertyShorthand&amp; animationProperties = WebCore::webkitAnimationShorthandNameLast();

Why do you need the WebCore:: here?

&gt; Source/WebCore/css/CSSParser.cpp:3071
&gt; +    ASSERT(numProperties == webkitAnimationShorthandNameLast().length());
&gt; +    ASSERT(webkitAnimationShorthand().length() == webkitAnimationShorthandNameLast().length());

You could compare to the animationProperties local variable.

&gt; Source/WebCore/css/StylePropertyShorthand.cpp:275
&gt; +    static const CSSPropertyID animationPropertiesLast[] = {

Why not animationPropertiesNameLast to be consistent?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702930</commentid>
    <comment_count>9</comment_count>
      <attachid>160147</attachid>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2012-08-23 06:29:10 -0700</bug_when>
    <thetext>Created attachment 160147
Implementing reviewers suggestion: naming + comparing enum array length

Implementing suggestions: naming + comparing array length</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702937</commentid>
    <comment_count>10</comment_count>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2012-08-23 06:38:01 -0700</bug_when>
    <thetext>Dean

Thanks for the comments. I&apos;ve just uploaded a new version of the patch, addressing your suggestions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>702944</commentid>
    <comment_count>11</comment_count>
      <attachid>160151</attachid>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2012-08-23 06:45:20 -0700</bug_when>
    <thetext>Created attachment 160151
Forgot a last unneeded namespace reference</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703205</commentid>
    <comment_count>12</comment_count>
      <attachid>160151</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2012-08-23 11:48:25 -0700</bug_when>
    <thetext>Comment on attachment 160151
Forgot a last unneeded namespace reference

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

Sorry, it&apos;s so close! Just some minor nits.

&gt; Source/WebCore/ChangeLog:10
&gt; +        CSSParser::parseAnimationShorthand() uses an enumeration with the same elements as another enumeration
&gt; +        present in StylePropertyShorthand, but with different ordering of values. It seems to make sense to
&gt; +        have both enums in the same place.

&quot;It seems to make sense to have both enums in the same place.&quot; -&gt; &quot;Put both enums in the same place&quot;.

&gt; Source/WebCore/css/StylePropertyShorthand.cpp:271
&gt; +    // When we parse the animation shorthand we need to look for animation-name
&gt; +    // last because otherwise it might match against the keywords for fill mode,
&gt; +    // timing functions and infinite iteration. This means that animation names
&gt; +    // that are the same as keywords (e.g. &apos;forwards&apos;) won&apos;t always match in the
&gt; +    // shorthand. In that case they should be using longhands (or reconsidering
&gt; +    // their approach). This is covered by the animations spec bug:

This was my fault in the original patch, but could you change &quot;In that case they...&quot; to &quot;In that case authors...&quot; to make it more clear?

&gt; Source/WebCore/css/StylePropertyShorthand.cpp:286
&gt; +        CSSPropertyWebkitAnimationName
&gt; +    };
&gt; +
&gt; +
&gt; +    DEFINE_STATIC_LOCAL(StylePropertyShorthand, webkitAnimationLonghandsNameLast, (animationPropertiesNameLast, WTF_ARRAY_LENGTH(animationPropertiesNameLast)));

Extra blank line above.

&gt; Source/WebCore/css/StylePropertyShorthand.h:83
&gt;  const StylePropertyShorthand&amp; webkitAnimationShorthand();
&gt; +const StylePropertyShorthand&amp; webkitAnimationShorthandNameLast();

I thought about this a bit more and I think the name should be webkitAnimationShorthandForParsing(). It makes it clear that there is only one reason why we have this duplication.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703257</commentid>
    <comment_count>13</comment_count>
      <attachid>160214</attachid>
    <who name="Adenilson Cavalcanti Silva">savagobr</who>
    <bug_when>2012-08-23 12:37:13 -0700</bug_when>
    <thetext>Created attachment 160214
Changed method name, fixes in CL, etc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703468</commentid>
    <comment_count>14</comment_count>
      <attachid>160214</attachid>
    <who name="Dean Jackson">dino</who>
    <bug_when>2012-08-23 15:34:21 -0700</bug_when>
    <thetext>Comment on attachment 160214
Changed method name, fixes in CL, etc.

Thanks for all the revisions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703490</commentid>
    <comment_count>15</comment_count>
      <attachid>160214</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-23 15:52:07 -0700</bug_when>
    <thetext>Comment on attachment 160214
Changed method name, fixes in CL, etc.

Clearing flags on attachment: 160214

Committed r126491: &lt;http://trac.webkit.org/changeset/126491&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>703491</commentid>
    <comment_count>16</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-08-23 15:52:12 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>156575</attachid>
            <date>2012-08-05 16:58:09 -0700</date>
            <delta_ts>2012-08-21 09:55:28 -0700</delta_ts>
            <desc>Moving the enum to a common place</desc>
            <filename>0001-Moving-the-enum-to-a-common-place.patch</filename>
            <type>text/plain</type>
            <size>7515</size>
            <attacher name="Adenilson Cavalcanti Silva">savagobr</attacher>
            
              <data encoding="base64">RnJvbSA4NzZkZTgxZTQyNmE5ZDk1NWMwNzg0ZTVlMDE4YWU5ZDU1YTk4N2E3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGVuaWxzb24gQ2F2YWxjYW50aSA8Y2F2YWxjYW50aWlAZ21h
aWwuY29tPgpEYXRlOiBTdW4sIDUgQXVnIDIwMTIgMTY6NTY6MTMgLTA3MDAKU3ViamVjdDogW1BB
VENIXSBNb3ZpbmcgdGhlIGVudW0gdG8gYSBjb21tb24gcGxhY2UuCgpTaWduZWQtb2ZmLWJ5OiBB
ZGVuaWxzb24gQ2F2YWxjYW50aSA8Y2F2YWxjYW50aWlAZ21haWwuY29tPgotLS0KIFNvdXJjZS9X
ZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAgICB8ICAgMjEgKysrKysrKysrKysr
KysrKysrKwogU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAgICAgICAgICAgICAgIHwg
ICAyOCArKysrKystLS0tLS0tLS0tLS0tLS0tLS0tCiBTb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQ
cm9wZXJ0eVNob3J0aGFuZC5jcHAgfCAgIDI2ICsrKysrKysrKysrKysrKysrKysrKysrCiBTb3Vy
Y2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5oICAgfCAgICAxICsKIDQgZmls
ZXMgY2hhbmdlZCwgNTQgaW5zZXJ0aW9ucygrKSwgMjIgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0
IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmlu
ZGV4IDRmMmMzZGYuLmNmMzM1ZTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxv
ZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMi0w
OC0wNSAgQWRlbmlsc29uIENhdmFsY2FudGkgIDxjYXZhbGNhbnRpaUBnbWFpbC5jb20+CisKKyAg
ICAgICAgQ1NTUGFyc2VyOiBNb3ZlIGVudW1lcmF0aW9uIHRvIGEgY29tbW9uIHBsYWNlIChTdHls
ZVByb3BlcnR5U2hvcnRoYW5kKQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9OTMyMTAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4K
KworICAgICAgICBDU1NQYXJzZXI6OnBhcnNlQW5pbWF0aW9uU2hvcnRoYW5kKCkgdXNlcyBhbiBl
bnVtZXJhdGlvbiB3aXRoIHRoZSBzYW1lIGVsZW1lbnRzIGFzIGFub3RoZXIgZW51bWVyYXRpb24K
KyAgICAgICAgcHJlc2VudCBpbiBTdHlsZVByb3BlcnR5U2hvcnRoYW5kLCBidXQgd2l0aCBkaWZm
ZXJlbnQgb3JkZXJpbmcgb2YgdmFsdWVzLiBJdCBzZWVtcyB0byBtYWtlIHNlbnNlIHRvCisgICAg
ICAgIGhhdmUgYm90aCBlbnVtcyBpbiB0aGUgc2FtZSBwbGFjZS4KKworICAgICAgICBObyBuZXcg
dGVzdHMuIE5vIGNoYW5nZSBpbiBiZWhhdmlvci4KKworICAgICAgICAqIGNzcy9DU1NQYXJzZXIu
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJzZUFuaW1hdGlvblNob3J0aGFu
ZCk6CisgICAgICAgICogY3NzL1N0eWxlUHJvcGVydHlTaG9ydGhhbmQuY3BwOgorICAgICAgICAo
V2ViQ29yZTo6d2Via2l0QW5pbWF0aW9uU2hvcnRoYW5kV29ya2Fyb3VuZCk6CisgICAgICAgIChX
ZWJDb3JlKToKKyAgICAgICAgKiBjc3MvU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5oOgorICAgICAg
ICAoV2ViQ29yZSk6CisKIDIwMTItMDgtMDUgIEtlbnRhcm8gSGFyYSAgPGhhcmFrZW5AY2hyb21p
dW0ub3JnPgogCiAgICAgICAgIFtWOF0gUmVtb3ZlIFY4UHJveHk6OnJlZ2lzdGVyRXh0ZW5zaW9u
V2l0aFY4KCkKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3BwIGIv
U291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKaW5kZXggMWJiNWE4Mi4uNDU2ZGE4YyAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAKQEAgLTUxLDYgKzUxLDcgQEAKICNpbmNsdWRlICJD
U1NWYWx1ZUtleXdvcmRzLmgiCiAjaW5jbHVkZSAiQ1NTVmFsdWVMaXN0LmgiCiAjaW5jbHVkZSAi
Q1NTVmFsdWVQb29sLmgiCisjaW5jbHVkZSAiU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5oIgogI2lm
IEVOQUJMRShDU1NfVkFSSUFCTEVTKQogI2luY2x1ZGUgIkNTU1ZhcmlhYmxlVmFsdWUuaCIKICNl
bmRpZgpAQCAtMzA2MCwzMSArMzA2MSwxNCBAQCB2b2lkIENTU1BhcnNlcjo6YWRkQW5pbWF0aW9u
VmFsdWUoUmVmUHRyPENTU1ZhbHVlPiYgbHZhbCwgUGFzc1JlZlB0cjxDU1NWYWx1ZT4gcgogCiBi
b29sIENTU1BhcnNlcjo6cGFyc2VBbmltYXRpb25TaG9ydGhhbmQoYm9vbCBpbXBvcnRhbnQpCiB7
Ci0gICAgLy8gV2hlbiB3ZSBwYXJzZSB0aGUgYW5pbWF0aW9uIHNob3J0aGFuZCB3ZSBuZWVkIHRv
IGxvb2sgZm9yIGFuaW1hdGlvbi1uYW1lCi0gICAgLy8gbGFzdCBiZWNhdXNlIG90aGVyd2lzZSBp
dCBtaWdodCBtYXRjaCBhZ2FpbnN0IHRoZSBrZXl3b3JkcyBmb3IgZmlsbCBtb2RlLAotICAgIC8v
IHRpbWluZyBmdW5jdGlvbnMgYW5kIGluZmluaXRlIGl0ZXJhdGlvbi4gVGhpcyBtZWFucyB0aGF0
IGFuaW1hdGlvbiBuYW1lcwotICAgIC8vIHRoYXQgYXJlIHRoZSBzYW1lIGFzIGtleXdvcmRzIChl
LmcuICdmb3J3YXJkcycpIHdvbid0IGFsd2F5cyBtYXRjaCBpbiB0aGUKLSAgICAvLyBzaG9ydGhh
bmQuIEluIHRoYXQgY2FzZSB0aGV5IHNob3VsZCBiZSB1c2luZyBsb25naGFuZHMgKG9yIHJlY29u
c2lkZXJpbmcKLSAgICAvLyB0aGVpciBhcHByb2FjaCkuIFRoaXMgaXMgY292ZXJlZCBieSB0aGUg
YW5pbWF0aW9ucyBzcGVjIGJ1ZzoKLSAgICAvLyBodHRwczovL3d3dy53My5vcmcvQnVncy9QdWJs
aWMvc2hvd19idWcuY2dpP2lkPTE0NzkwCi0gICAgLy8gQW5kIGluIHRoZSBzcGVjIChlZGl0b3In
cyBkcmFmdCkgYXQ6Ci0gICAgLy8gaHR0cDovL2Rldi53My5vcmcvY3Nzd2cvY3NzMy1hbmltYXRp
b25zLyNhbmltYXRpb24tc2hvcnRoYW5kLXByb3BlcnR5Ci0KLSAgICBzdGF0aWMgY29uc3QgQ1NT
UHJvcGVydHlJRCBhbmltYXRpb25Qcm9wZXJ0aWVzW10gPSB7Ci0gICAgICAgIENTU1Byb3BlcnR5
V2Via2l0QW5pbWF0aW9uRHVyYXRpb24sCi0gICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0
aW9uVGltaW5nRnVuY3Rpb24sCi0gICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uRGVs
YXksCi0gICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uSXRlcmF0aW9uQ291bnQsCi0g
ICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uRGlyZWN0aW9uLAotICAgICAgICBDU1NQ
cm9wZXJ0eVdlYmtpdEFuaW1hdGlvbkZpbGxNb2RlLAotICAgICAgICBDU1NQcm9wZXJ0eVdlYmtp
dEFuaW1hdGlvbk5hbWUKLSAgICB9OworICAgIGNvbnN0IFdlYkNvcmU6OlN0eWxlUHJvcGVydHlT
aG9ydGhhbmQmIGFuaW1hdGlvblByb3BlcnRpZXMgPSBXZWJDb3JlOjp3ZWJraXRBbmltYXRpb25T
aG9ydGhhbmRXb3JrYXJvdW5kKCk7CiAgICAgY29uc3QgdW5zaWduZWQgbnVtUHJvcGVydGllcyA9
IDc7CiAKICAgICAvLyBUaGUgbGlzdCBvZiBwcm9wZXJ0aWVzIGluIHRoZSBzaG9ydGhhbmQgc2hv
dWxkIGJlIHRoZSBzYW1lCiAgICAgLy8gbGVuZ3RoIGFzIHRoZSBsaXN0IHdlIGhhdmUgaGVyZSwg
ZXZlbiB0aG91Z2ggdGhleSBhcmUKICAgICAvLyBhIGRpZmZlcmVudCBvcmRlci4KLSAgICBBU1NF
UlQobnVtUHJvcGVydGllcyA9PSB3ZWJraXRBbmltYXRpb25TaG9ydGhhbmQoKS5sZW5ndGgoKSk7
CisgICAgQVNTRVJUKG51bVByb3BlcnRpZXMgPT0gd2Via2l0QW5pbWF0aW9uU2hvcnRoYW5kV29y
a2Fyb3VuZCgpLmxlbmd0aCgpKTsKKyAgICBBU1NFUlQod2Via2l0QW5pbWF0aW9uU2hvcnRoYW5k
KCkubGVuZ3RoKCkgPT0gd2Via2l0QW5pbWF0aW9uU2hvcnRoYW5kV29ya2Fyb3VuZCgpLmxlbmd0
aCgpKTsKIAogICAgIFNob3J0aGFuZFNjb3BlIHNjb3BlKHRoaXMsIENTU1Byb3BlcnR5V2Via2l0
QW5pbWF0aW9uKTsKIApAQCAtMzExMCw3ICszMDk0LDcgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNl
QW5pbWF0aW9uU2hvcnRoYW5kKGJvb2wgaW1wb3J0YW50KQogICAgICAgICBmb3IgKGkgPSAwOyBp
IDwgbnVtUHJvcGVydGllczsgKytpKSB7CiAgICAgICAgICAgICBpZiAoIXBhcnNlZFByb3BlcnR5
W2ldKSB7CiAgICAgICAgICAgICAgICAgUmVmUHRyPENTU1ZhbHVlPiB2YWw7Ci0gICAgICAgICAg
ICAgICAgaWYgKHBhcnNlQW5pbWF0aW9uUHJvcGVydHkoYW5pbWF0aW9uUHJvcGVydGllc1tpXSwg
dmFsKSkgeworICAgICAgICAgICAgICAgIGlmIChwYXJzZUFuaW1hdGlvblByb3BlcnR5KGFuaW1h
dGlvblByb3BlcnRpZXMucHJvcGVydGllcygpW2ldLCB2YWwpKSB7CiAgICAgICAgICAgICAgICAg
ICAgIHBhcnNlZFByb3BlcnR5W2ldID0gZm91bmQgPSB0cnVlOwogICAgICAgICAgICAgICAgICAg
ICBhZGRBbmltYXRpb25WYWx1ZSh2YWx1ZXNbaV0sIHZhbC5yZWxlYXNlKCkpOwogICAgICAgICAg
ICAgICAgICAgICBicmVhazsKQEAgLTMxMjksNyArMzExMyw3IEBAIGJvb2wgQ1NTUGFyc2VyOjpw
YXJzZUFuaW1hdGlvblNob3J0aGFuZChib29sIGltcG9ydGFudCkKICAgICAgICAgaWYgKCFwYXJz
ZWRQcm9wZXJ0eVtpXSkKICAgICAgICAgICAgIGFkZEFuaW1hdGlvblZhbHVlKHZhbHVlc1tpXSwg
Y3NzVmFsdWVQb29sKCkuY3JlYXRlSW1wbGljaXRJbml0aWFsVmFsdWUoKSk7CiAKLSAgICAgICAg
YWRkUHJvcGVydHkoYW5pbWF0aW9uUHJvcGVydGllc1tpXSwgdmFsdWVzW2ldLnJlbGVhc2UoKSwg
aW1wb3J0YW50KTsKKyAgICAgICAgYWRkUHJvcGVydHkoYW5pbWF0aW9uUHJvcGVydGllcy5wcm9w
ZXJ0aWVzKClbaV0sIHZhbHVlc1tpXS5yZWxlYXNlKCksIGltcG9ydGFudCk7CiAgICAgfQogCiAg
ICAgcmV0dXJuIHRydWU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9w
ZXJ0eVNob3J0aGFuZC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0eVNob3J0
aGFuZC5jcHAKaW5kZXggMDQ1YmQyNC4uMGZjNjMzMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUHJvcGVydHlTaG9ydGhhbmQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nz
cy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmNwcApAQCAtMjYxLDYgKzI2MSwzMiBAQCBjb25zdCBT
dHlsZVByb3BlcnR5U2hvcnRoYW5kJiB3ZWJraXRBbmltYXRpb25TaG9ydGhhbmQoKQogICAgIHJl
dHVybiB3ZWJraXRBbmltYXRpb25Mb25naGFuZHM7CiB9CiAKK2NvbnN0IFN0eWxlUHJvcGVydHlT
aG9ydGhhbmQmIHdlYmtpdEFuaW1hdGlvblNob3J0aGFuZFdvcmthcm91bmQoKQoreworICAgIC8v
IFdoZW4gd2UgcGFyc2UgdGhlIGFuaW1hdGlvbiBzaG9ydGhhbmQgd2UgbmVlZCB0byBsb29rIGZv
ciBhbmltYXRpb24tbmFtZQorICAgIC8vIGxhc3QgYmVjYXVzZSBvdGhlcndpc2UgaXQgbWlnaHQg
bWF0Y2ggYWdhaW5zdCB0aGUga2V5d29yZHMgZm9yIGZpbGwgbW9kZSwKKyAgICAvLyB0aW1pbmcg
ZnVuY3Rpb25zIGFuZCBpbmZpbml0ZSBpdGVyYXRpb24uIFRoaXMgbWVhbnMgdGhhdCBhbmltYXRp
b24gbmFtZXMKKyAgICAvLyB0aGF0IGFyZSB0aGUgc2FtZSBhcyBrZXl3b3JkcyAoZS5nLiAnZm9y
d2FyZHMnKSB3b24ndCBhbHdheXMgbWF0Y2ggaW4gdGhlCisgICAgLy8gc2hvcnRoYW5kLiBJbiB0
aGF0IGNhc2UgdGhleSBzaG91bGQgYmUgdXNpbmcgbG9uZ2hhbmRzIChvciByZWNvbnNpZGVyaW5n
CisgICAgLy8gdGhlaXIgYXBwcm9hY2gpLiBUaGlzIGlzIGNvdmVyZWQgYnkgdGhlIGFuaW1hdGlv
bnMgc3BlYyBidWc6CisgICAgLy8gaHR0cHM6Ly93d3cudzMub3JnL0J1Z3MvUHVibGljL3Nob3df
YnVnLmNnaT9pZD0xNDc5MAorICAgIC8vIEFuZCBpbiB0aGUgc3BlYyAoZWRpdG9yJ3MgZHJhZnQp
IGF0OgorICAgIC8vIGh0dHA6Ly9kZXYudzMub3JnL2Nzc3dnL2NzczMtYW5pbWF0aW9ucy8jYW5p
bWF0aW9uLXNob3J0aGFuZC1wcm9wZXJ0eQorICAgIHN0YXRpYyBjb25zdCBDU1NQcm9wZXJ0eUlE
IGFuaW1hdGlvblByb3BlcnRpZXNMYXN0W10gPSB7CisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0
QW5pbWF0aW9uRHVyYXRpb24sCisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uVGlt
aW5nRnVuY3Rpb24sCisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uRGVsYXksCisg
ICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uSXRlcmF0aW9uQ291bnQsCisgICAgICAg
IENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uRGlyZWN0aW9uLAorICAgICAgICBDU1NQcm9wZXJ0
eVdlYmtpdEFuaW1hdGlvbkZpbGxNb2RlLAorICAgICAgICBDU1NQcm9wZXJ0eVdlYmtpdEFuaW1h
dGlvbk5hbWUKKyAgICB9OworCisKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0eWxlUHJvcGVy
dHlTaG9ydGhhbmQsIHdlYmtpdEFuaW1hdGlvbkxvbmdoYW5kc1dvcmthcm91bmQsIChhbmltYXRp
b25Qcm9wZXJ0aWVzTGFzdCwgV1RGX0FSUkFZX0xFTkdUSChhbmltYXRpb25Qcm9wZXJ0aWVzTGFz
dCkpKTsKKyAgICByZXR1cm4gd2Via2l0QW5pbWF0aW9uTG9uZ2hhbmRzV29ya2Fyb3VuZDsKK30K
KwogY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgd2Via2l0Qm9yZGVyQWZ0ZXJTaG9ydGhh
bmQoKQogewogICAgIHN0YXRpYyBjb25zdCBDU1NQcm9wZXJ0eUlEIGJvcmRlckFmdGVyUHJvcGVy
dGllc1tdID0geyBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckFmdGVyV2lkdGgsIENTU1Byb3BlcnR5
V2Via2l0Qm9yZGVyQWZ0ZXJTdHlsZSwgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRlckNvbG9y
ICB9OwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydHlTaG9ydGhh
bmQuaCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmgKaW5kZXgg
ZWUzMzFjNy4uNzA4YjBmZCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJv
cGVydHlTaG9ydGhhbmQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0eVNo
b3J0aGFuZC5oCkBAIC04MCw2ICs4MCw3IEBAIGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQm
IG91dGxpbmVTaG9ydGhhbmQoKTsKIGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmIG92ZXJm
bG93U2hvcnRoYW5kKCk7CiBjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiBwYWRkaW5nU2hv
cnRoYW5kKCk7CiBjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiB3ZWJraXRBbmltYXRpb25T
aG9ydGhhbmQoKTsKK2NvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmIHdlYmtpdEFuaW1hdGlv
blNob3J0aGFuZFdvcmthcm91bmQoKTsKIGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmIHdl
YmtpdEJvcmRlckFmdGVyU2hvcnRoYW5kKCk7CiBjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5k
JiB3ZWJraXRCb3JkZXJCZWZvcmVTaG9ydGhhbmQoKTsKIGNvbnN0IFN0eWxlUHJvcGVydHlTaG9y
dGhhbmQmIHdlYmtpdEJvcmRlckVuZFNob3J0aGFuZCgpOwotLSAKMS43LjkuNQoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>159704</attachid>
            <date>2012-08-21 09:55:28 -0700</date>
            <delta_ts>2012-08-23 06:29:10 -0700</delta_ts>
            <desc>Following the suggestion about naming the function</desc>
            <filename>0001-Moving-the-enum-to-a-common-place-implementing-revie.patch</filename>
            <type>text/plain</type>
            <size>7589</size>
            <attacher name="Adenilson Cavalcanti Silva">savagobr</attacher>
            
              <data encoding="base64">RnJvbSAzM2I2Y2ZlZjZiOGI3NTA5ZWNiNDEwMjljOTNhN2Y4ZTc5ODZkYTY1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGVuaWxzb24gQ2F2YWxjYW50aSA8Y2F2YWxjYW50aWlAZ21h
aWwuY29tPgpEYXRlOiBTdW4sIDUgQXVnIDIwMTIgMTY6NTY6MTMgLTA3MDAKU3ViamVjdDogW1BB
VENIXSBNb3ZpbmcgdGhlIGVudW0gdG8gYSBjb21tb24gcGxhY2UsIGltcGxlbWVudGluZyByZXZp
ZXdlcidzCiBzdWdnZXN0aW9uIGFib3V0IG5hbWluZy4KClNpZ25lZC1vZmYtYnk6IEFkZW5pbHNv
biBDYXZhbGNhbnRpIDxjYXZhbGNhbnRpaUBnbWFpbC5jb20+Ci0tLQogU291cmNlL1dlYkNvcmUv
Q2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgIHwgICAyMSArKysrKysrKysrKysrKysrKysr
CiBTb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcCAgICAgICAgICAgICAgfCAgIDI4ICsr
KysrKy0tLS0tLS0tLS0tLS0tLS0tLS0KIFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5
U2hvcnRoYW5kLmNwcCB8ICAgMjYgKysrKysrKysrKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJD
b3JlL2Nzcy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmggICB8ICAgIDEgKwogNCBmaWxlcyBjaGFu
Z2VkLCA1NCBpbnNlcnRpb25zKCspLCAyMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDY2
M2E0Ni4uNzNlYWY1MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBi
L1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI0IEBACisyMDEyLTA4LTA1ICBB
ZGVuaWxzb24gQ2F2YWxjYW50aSAgPGNhdmFsY2FudGlpQGdtYWlsLmNvbT4KKworICAgICAgICBD
U1NQYXJzZXI6IE1vdmUgZW51bWVyYXRpb24gdG8gYSBjb21tb24gcGxhY2UgKFN0eWxlUHJvcGVy
dHlTaG9ydGhhbmQpCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNn
aT9pZD05MzIxMAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIENTU1BhcnNlcjo6cGFyc2VBbmltYXRpb25TaG9ydGhhbmQoKSB1c2VzIGFuIGVudW1lcmF0
aW9uIHdpdGggdGhlIHNhbWUgZWxlbWVudHMgYXMgYW5vdGhlciBlbnVtZXJhdGlvbgorICAgICAg
ICBwcmVzZW50IGluIFN0eWxlUHJvcGVydHlTaG9ydGhhbmQsIGJ1dCB3aXRoIGRpZmZlcmVudCBv
cmRlcmluZyBvZiB2YWx1ZXMuIEl0IHNlZW1zIHRvIG1ha2Ugc2Vuc2UgdG8KKyAgICAgICAgaGF2
ZSBib3RoIGVudW1zIGluIHRoZSBzYW1lIHBsYWNlLgorCisgICAgICAgIE5vIG5ldyB0ZXN0cy4g
Tm8gY2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAgICogY3NzL0NTU1BhcnNlci5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OnBhcnNlQW5pbWF0aW9uU2hvcnRoYW5kKToKKyAg
ICAgICAgKiBjc3MvU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5jcHA6CisgICAgICAgIChXZWJDb3Jl
Ojp3ZWJraXRBbmltYXRpb25TaG9ydGhhbmROYW1lTGFzdCk6CisgICAgICAgIChXZWJDb3JlKToK
KyAgICAgICAgKiBjc3MvU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5oOgorICAgICAgICAoV2ViQ29y
ZSk6CisKIDIwMTItMDgtMjEgIElseWEgVGlraG9ub3Zza3kgIDxsb2lzbG9AY2hyb21pdW0ub3Jn
PgogCiAgICAgICAgIFdlYiBJbnNwZWN0b3I6IE5NSTogcmVuYW1lIGFkZE1lbWJlciBmb3Igc3Ry
aW5ncyBhbmQgS1VSTCB0byBhZGRJbnN0cnVtZW50ZWRNZW1iZXIuCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJz
ZXIuY3BwCmluZGV4IDRhMmUzOGIuLmM2ZGFiM2QgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9DU1NQYXJzZXIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIuY3Bw
CkBAIC01MSw2ICs1MSw3IEBACiAjaW5jbHVkZSAiQ1NTVmFsdWVLZXl3b3Jkcy5oIgogI2luY2x1
ZGUgIkNTU1ZhbHVlTGlzdC5oIgogI2luY2x1ZGUgIkNTU1ZhbHVlUG9vbC5oIgorI2luY2x1ZGUg
IlN0eWxlUHJvcGVydHlTaG9ydGhhbmQuaCIKICNpZiBFTkFCTEUoQ1NTX1ZBUklBQkxFUykKICNp
bmNsdWRlICJDU1NWYXJpYWJsZVZhbHVlLmgiCiAjZW5kaWYKQEAgLTMwNjAsMzEgKzMwNjEsMTQg
QEAgdm9pZCBDU1NQYXJzZXI6OmFkZEFuaW1hdGlvblZhbHVlKFJlZlB0cjxDU1NWYWx1ZT4mIGx2
YWwsIFBhc3NSZWZQdHI8Q1NTVmFsdWU+IHIKIAogYm9vbCBDU1NQYXJzZXI6OnBhcnNlQW5pbWF0
aW9uU2hvcnRoYW5kKGJvb2wgaW1wb3J0YW50KQogewotICAgIC8vIFdoZW4gd2UgcGFyc2UgdGhl
IGFuaW1hdGlvbiBzaG9ydGhhbmQgd2UgbmVlZCB0byBsb29rIGZvciBhbmltYXRpb24tbmFtZQot
ICAgIC8vIGxhc3QgYmVjYXVzZSBvdGhlcndpc2UgaXQgbWlnaHQgbWF0Y2ggYWdhaW5zdCB0aGUg
a2V5d29yZHMgZm9yIGZpbGwgbW9kZSwKLSAgICAvLyB0aW1pbmcgZnVuY3Rpb25zIGFuZCBpbmZp
bml0ZSBpdGVyYXRpb24uIFRoaXMgbWVhbnMgdGhhdCBhbmltYXRpb24gbmFtZXMKLSAgICAvLyB0
aGF0IGFyZSB0aGUgc2FtZSBhcyBrZXl3b3JkcyAoZS5nLiAnZm9yd2FyZHMnKSB3b24ndCBhbHdh
eXMgbWF0Y2ggaW4gdGhlCi0gICAgLy8gc2hvcnRoYW5kLiBJbiB0aGF0IGNhc2UgdGhleSBzaG91
bGQgYmUgdXNpbmcgbG9uZ2hhbmRzIChvciByZWNvbnNpZGVyaW5nCi0gICAgLy8gdGhlaXIgYXBw
cm9hY2gpLiBUaGlzIGlzIGNvdmVyZWQgYnkgdGhlIGFuaW1hdGlvbnMgc3BlYyBidWc6Ci0gICAg
Ly8gaHR0cHM6Ly93d3cudzMub3JnL0J1Z3MvUHVibGljL3Nob3dfYnVnLmNnaT9pZD0xNDc5MAot
ICAgIC8vIEFuZCBpbiB0aGUgc3BlYyAoZWRpdG9yJ3MgZHJhZnQpIGF0OgotICAgIC8vIGh0dHA6
Ly9kZXYudzMub3JnL2Nzc3dnL2NzczMtYW5pbWF0aW9ucy8jYW5pbWF0aW9uLXNob3J0aGFuZC1w
cm9wZXJ0eQotCi0gICAgc3RhdGljIGNvbnN0IENTU1Byb3BlcnR5SUQgYW5pbWF0aW9uUHJvcGVy
dGllc1tdID0gewotICAgICAgICBDU1NQcm9wZXJ0eVdlYmtpdEFuaW1hdGlvbkR1cmF0aW9uLAot
ICAgICAgICBDU1NQcm9wZXJ0eVdlYmtpdEFuaW1hdGlvblRpbWluZ0Z1bmN0aW9uLAotICAgICAg
ICBDU1NQcm9wZXJ0eVdlYmtpdEFuaW1hdGlvbkRlbGF5LAotICAgICAgICBDU1NQcm9wZXJ0eVdl
YmtpdEFuaW1hdGlvbkl0ZXJhdGlvbkNvdW50LAotICAgICAgICBDU1NQcm9wZXJ0eVdlYmtpdEFu
aW1hdGlvbkRpcmVjdGlvbiwKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRpb25GaWxs
TW9kZSwKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRpb25OYW1lCi0gICAgfTsKKyAg
ICBjb25zdCBXZWJDb3JlOjpTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiBhbmltYXRpb25Qcm9wZXJ0
aWVzID0gV2ViQ29yZTo6d2Via2l0QW5pbWF0aW9uU2hvcnRoYW5kTmFtZUxhc3QoKTsKICAgICBj
b25zdCB1bnNpZ25lZCBudW1Qcm9wZXJ0aWVzID0gNzsKIAogICAgIC8vIFRoZSBsaXN0IG9mIHBy
b3BlcnRpZXMgaW4gdGhlIHNob3J0aGFuZCBzaG91bGQgYmUgdGhlIHNhbWUKICAgICAvLyBsZW5n
dGggYXMgdGhlIGxpc3Qgd2UgaGF2ZSBoZXJlLCBldmVuIHRob3VnaCB0aGV5IGFyZQogICAgIC8v
IGEgZGlmZmVyZW50IG9yZGVyLgotICAgIEFTU0VSVChudW1Qcm9wZXJ0aWVzID09IHdlYmtpdEFu
aW1hdGlvblNob3J0aGFuZCgpLmxlbmd0aCgpKTsKKyAgICBBU1NFUlQobnVtUHJvcGVydGllcyA9
PSB3ZWJraXRBbmltYXRpb25TaG9ydGhhbmROYW1lTGFzdCgpLmxlbmd0aCgpKTsKKyAgICBBU1NF
UlQod2Via2l0QW5pbWF0aW9uU2hvcnRoYW5kKCkubGVuZ3RoKCkgPT0gd2Via2l0QW5pbWF0aW9u
U2hvcnRoYW5kTmFtZUxhc3QoKS5sZW5ndGgoKSk7CiAKICAgICBTaG9ydGhhbmRTY29wZSBzY29w
ZSh0aGlzLCBDU1NQcm9wZXJ0eVdlYmtpdEFuaW1hdGlvbik7CiAKQEAgLTMxMTAsNyArMzA5NCw3
IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZUFuaW1hdGlvblNob3J0aGFuZChib29sIGltcG9ydGFu
dCkKICAgICAgICAgZm9yIChpID0gMDsgaSA8IG51bVByb3BlcnRpZXM7ICsraSkgewogICAgICAg
ICAgICAgaWYgKCFwYXJzZWRQcm9wZXJ0eVtpXSkgewogICAgICAgICAgICAgICAgIFJlZlB0cjxD
U1NWYWx1ZT4gdmFsOwotICAgICAgICAgICAgICAgIGlmIChwYXJzZUFuaW1hdGlvblByb3BlcnR5
KGFuaW1hdGlvblByb3BlcnRpZXNbaV0sIHZhbCkpIHsKKyAgICAgICAgICAgICAgICBpZiAocGFy
c2VBbmltYXRpb25Qcm9wZXJ0eShhbmltYXRpb25Qcm9wZXJ0aWVzLnByb3BlcnRpZXMoKVtpXSwg
dmFsKSkgewogICAgICAgICAgICAgICAgICAgICBwYXJzZWRQcm9wZXJ0eVtpXSA9IGZvdW5kID0g
dHJ1ZTsKICAgICAgICAgICAgICAgICAgICAgYWRkQW5pbWF0aW9uVmFsdWUodmFsdWVzW2ldLCB2
YWwucmVsZWFzZSgpKTsKICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0zMTI5LDcgKzMx
MTMsNyBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VBbmltYXRpb25TaG9ydGhhbmQoYm9vbCBpbXBv
cnRhbnQpCiAgICAgICAgIGlmICghcGFyc2VkUHJvcGVydHlbaV0pCiAgICAgICAgICAgICBhZGRB
bmltYXRpb25WYWx1ZSh2YWx1ZXNbaV0sIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUltcGxpY2l0SW5p
dGlhbFZhbHVlKCkpOwogCi0gICAgICAgIGFkZFByb3BlcnR5KGFuaW1hdGlvblByb3BlcnRpZXNb
aV0sIHZhbHVlc1tpXS5yZWxlYXNlKCksIGltcG9ydGFudCk7CisgICAgICAgIGFkZFByb3BlcnR5
KGFuaW1hdGlvblByb3BlcnRpZXMucHJvcGVydGllcygpW2ldLCB2YWx1ZXNbaV0ucmVsZWFzZSgp
LCBpbXBvcnRhbnQpOwogICAgIH0KIAogICAgIHJldHVybiB0cnVlOwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydHlTaG9ydGhhbmQuY3BwIGIvU291cmNlL1dlYkNv
cmUvY3NzL1N0eWxlUHJvcGVydHlTaG9ydGhhbmQuY3BwCmluZGV4IDA0NWJkMjQuLjlkNDM2ZWMg
MTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmNw
cAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5jcHAKQEAg
LTI2MSw2ICsyNjEsMzIgQEAgY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgd2Via2l0QW5p
bWF0aW9uU2hvcnRoYW5kKCkKICAgICByZXR1cm4gd2Via2l0QW5pbWF0aW9uTG9uZ2hhbmRzOwog
fQogCitjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiB3ZWJraXRBbmltYXRpb25TaG9ydGhh
bmROYW1lTGFzdCgpCit7CisgICAgLy8gV2hlbiB3ZSBwYXJzZSB0aGUgYW5pbWF0aW9uIHNob3J0
aGFuZCB3ZSBuZWVkIHRvIGxvb2sgZm9yIGFuaW1hdGlvbi1uYW1lCisgICAgLy8gbGFzdCBiZWNh
dXNlIG90aGVyd2lzZSBpdCBtaWdodCBtYXRjaCBhZ2FpbnN0IHRoZSBrZXl3b3JkcyBmb3IgZmls
bCBtb2RlLAorICAgIC8vIHRpbWluZyBmdW5jdGlvbnMgYW5kIGluZmluaXRlIGl0ZXJhdGlvbi4g
VGhpcyBtZWFucyB0aGF0IGFuaW1hdGlvbiBuYW1lcworICAgIC8vIHRoYXQgYXJlIHRoZSBzYW1l
IGFzIGtleXdvcmRzIChlLmcuICdmb3J3YXJkcycpIHdvbid0IGFsd2F5cyBtYXRjaCBpbiB0aGUK
KyAgICAvLyBzaG9ydGhhbmQuIEluIHRoYXQgY2FzZSB0aGV5IHNob3VsZCBiZSB1c2luZyBsb25n
aGFuZHMgKG9yIHJlY29uc2lkZXJpbmcKKyAgICAvLyB0aGVpciBhcHByb2FjaCkuIFRoaXMgaXMg
Y292ZXJlZCBieSB0aGUgYW5pbWF0aW9ucyBzcGVjIGJ1ZzoKKyAgICAvLyBodHRwczovL3d3dy53
My5vcmcvQnVncy9QdWJsaWMvc2hvd19idWcuY2dpP2lkPTE0NzkwCisgICAgLy8gQW5kIGluIHRo
ZSBzcGVjIChlZGl0b3IncyBkcmFmdCkgYXQ6CisgICAgLy8gaHR0cDovL2Rldi53My5vcmcvY3Nz
d2cvY3NzMy1hbmltYXRpb25zLyNhbmltYXRpb24tc2hvcnRoYW5kLXByb3BlcnR5CisgICAgc3Rh
dGljIGNvbnN0IENTU1Byb3BlcnR5SUQgYW5pbWF0aW9uUHJvcGVydGllc0xhc3RbXSA9IHsKKyAg
ICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRpb25EdXJhdGlvbiwKKyAgICAgICAgQ1NTUHJv
cGVydHlXZWJraXRBbmltYXRpb25UaW1pbmdGdW5jdGlvbiwKKyAgICAgICAgQ1NTUHJvcGVydHlX
ZWJraXRBbmltYXRpb25EZWxheSwKKyAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRpb25J
dGVyYXRpb25Db3VudCwKKyAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRpb25EaXJlY3Rp
b24sCisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uRmlsbE1vZGUsCisgICAgICAg
IENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uTmFtZQorICAgIH07CisKKworICAgIERFRklORV9T
VEFUSUNfTE9DQUwoU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCwgd2Via2l0QW5pbWF0aW9uTG9uZ2hh
bmRzTmFtZUxhc3QsIChhbmltYXRpb25Qcm9wZXJ0aWVzTGFzdCwgV1RGX0FSUkFZX0xFTkdUSChh
bmltYXRpb25Qcm9wZXJ0aWVzTGFzdCkpKTsKKyAgICByZXR1cm4gd2Via2l0QW5pbWF0aW9uTG9u
Z2hhbmRzTmFtZUxhc3Q7Cit9CisKIGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmIHdlYmtp
dEJvcmRlckFmdGVyU2hvcnRoYW5kKCkKIHsKICAgICBzdGF0aWMgY29uc3QgQ1NTUHJvcGVydHlJ
RCBib3JkZXJBZnRlclByb3BlcnRpZXNbXSA9IHsgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRl
cldpZHRoLCBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckFmdGVyU3R5bGUsIENTU1Byb3BlcnR5V2Vi
a2l0Qm9yZGVyQWZ0ZXJDb2xvciAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
dHlsZVByb3BlcnR5U2hvcnRoYW5kLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0
eVNob3J0aGFuZC5oCmluZGV4IGVlMzMxYzcuLmFjMWRlOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUv
Y3NzL1N0eWxlUHJvcGVydHlTaG9ydGhhbmQuaApAQCAtODAsNiArODAsNyBAQCBjb25zdCBTdHls
ZVByb3BlcnR5U2hvcnRoYW5kJiBvdXRsaW5lU2hvcnRoYW5kKCk7CiBjb25zdCBTdHlsZVByb3Bl
cnR5U2hvcnRoYW5kJiBvdmVyZmxvd1Nob3J0aGFuZCgpOwogY29uc3QgU3R5bGVQcm9wZXJ0eVNo
b3J0aGFuZCYgcGFkZGluZ1Nob3J0aGFuZCgpOwogY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFu
ZCYgd2Via2l0QW5pbWF0aW9uU2hvcnRoYW5kKCk7Citjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRo
YW5kJiB3ZWJraXRBbmltYXRpb25TaG9ydGhhbmROYW1lTGFzdCgpOwogY29uc3QgU3R5bGVQcm9w
ZXJ0eVNob3J0aGFuZCYgd2Via2l0Qm9yZGVyQWZ0ZXJTaG9ydGhhbmQoKTsKIGNvbnN0IFN0eWxl
UHJvcGVydHlTaG9ydGhhbmQmIHdlYmtpdEJvcmRlckJlZm9yZVNob3J0aGFuZCgpOwogY29uc3Qg
U3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgd2Via2l0Qm9yZGVyRW5kU2hvcnRoYW5kKCk7Ci0tIAox
LjcuOS41Cgo=
</data>
<flag name="review"
          id="170097"
          type_id="1"
          status="-"
          setter="dino"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>160147</attachid>
            <date>2012-08-23 06:29:10 -0700</date>
            <delta_ts>2012-08-23 06:45:20 -0700</delta_ts>
            <desc>Implementing reviewers suggestion: naming + comparing enum array length</desc>
            <filename>0002-Moving-enums-common.patch</filename>
            <type>text/plain</type>
            <size>7583</size>
            <attacher name="Adenilson Cavalcanti Silva">savagobr</attacher>
            
              <data encoding="base64">RnJvbSBhNDBiYTIxMzRmOWNkMTZmZDA2ZjZiNWM1MDNkYjRiNWRiNDRkMTlhIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGVuaWxzb24gQ2F2YWxjYW50aSA8Y2F2YWxjYW50aWlAZ21h
aWwuY29tPgpEYXRlOiBTdW4sIDUgQXVnIDIwMTIgMTY6NTY6MTMgLTA3MDAKU3ViamVjdDogW1BB
VENIXSBNb3ZpbmcgdGhlIGVudW0gdG8gYSBjb21tb24gcGxhY2UsIGltcGxlbWVudGluZyByZXZp
ZXdlcidzCiBzdWdnZXN0aW9uIGFib3V0IG5hbWluZyBhbmQgY29tcGFyaW5nIGFycmF5IGxlbmd0
aHMuCgpTaWduZWQtb2ZmLWJ5OiBBZGVuaWxzb24gQ2F2YWxjYW50aSA8Y2F2YWxjYW50aWlAZ21h
aWwuY29tPgotLS0KIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAg
ICB8ICAgMjEgKysrKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIu
Y3BwICAgICAgICAgICAgICB8ICAgMzAgKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQogU291cmNl
L1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydHlTaG9ydGhhbmQuY3BwIHwgICAyNiArKysrKysrKysr
KysrKysrKysrKysKIFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmgg
ICB8ICAgIDEgKwogNCBmaWxlcyBjaGFuZ2VkLCA1NSBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlv
bnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKaW5kZXggM2NhOWM1OC4uNjZiZWQ0OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDI0IEBACisyMDEyLTA4LTA1ICBBZGVuaWxzb24gQ2F2YWxjYW50aSAgPGNhdmFsY2FudGlp
QGdtYWlsLmNvbT4KKworICAgICAgICBDU1NQYXJzZXI6IE1vdmUgZW51bWVyYXRpb24gdG8gYSBj
b21tb24gcGxhY2UgKFN0eWxlUHJvcGVydHlTaG9ydGhhbmQpCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzIxMAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENTU1BhcnNlcjo6cGFyc2VBbmltYXRpb25TaG9y
dGhhbmQoKSB1c2VzIGFuIGVudW1lcmF0aW9uIHdpdGggdGhlIHNhbWUgZWxlbWVudHMgYXMgYW5v
dGhlciBlbnVtZXJhdGlvbgorICAgICAgICBwcmVzZW50IGluIFN0eWxlUHJvcGVydHlTaG9ydGhh
bmQsIGJ1dCB3aXRoIGRpZmZlcmVudCBvcmRlcmluZyBvZiB2YWx1ZXMuIEl0IHNlZW1zIHRvIG1h
a2Ugc2Vuc2UgdG8KKyAgICAgICAgaGF2ZSBib3RoIGVudW1zIGluIHRoZSBzYW1lIHBsYWNlLgor
CisgICAgICAgIE5vIG5ldyB0ZXN0cy4gTm8gY2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAg
ICogY3NzL0NTU1BhcnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OnBhcnNl
QW5pbWF0aW9uU2hvcnRoYW5kKToKKyAgICAgICAgKiBjc3MvU3R5bGVQcm9wZXJ0eVNob3J0aGFu
ZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjp3ZWJraXRBbmltYXRpb25TaG9ydGhhbmROYW1lTGFz
dCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBjc3MvU3R5bGVQcm9wZXJ0eVNob3J0
aGFuZC5oOgorICAgICAgICAoV2ViQ29yZSk6CisKIDIwMTItMDgtMjIgIFBhdHJpY2sgR2Fuc3Rl
cmVyICA8cGFyb2dhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQnVpbGQgZml4IGZvciBXaW5DRSBh
ZnRlciByMTI2MzU5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAppbmRleCAxOGM0YzAzLi5iYzJk
YzBiIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcApAQCAtNTEsNiArNTEsNyBAQAogI2luY2x1
ZGUgIkNTU1ZhbHVlS2V5d29yZHMuaCIKICNpbmNsdWRlICJDU1NWYWx1ZUxpc3QuaCIKICNpbmNs
dWRlICJDU1NWYWx1ZVBvb2wuaCIKKyNpbmNsdWRlICJTdHlsZVByb3BlcnR5U2hvcnRoYW5kLmgi
CiAjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCiAjaW5jbHVkZSAiQ1NTVmFyaWFibGVWYWx1ZS5o
IgogI2VuZGlmCkBAIC0zMDc0LDMwICszMDc1LDEzIEBAIHZvaWQgQ1NTUGFyc2VyOjphZGRBbmlt
YXRpb25WYWx1ZShSZWZQdHI8Q1NTVmFsdWU+JiBsdmFsLCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBy
CiAKIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZUFuaW1hdGlvblNob3J0aGFuZChib29sIGltcG9ydGFu
dCkKIHsKLSAgICAvLyBXaGVuIHdlIHBhcnNlIHRoZSBhbmltYXRpb24gc2hvcnRoYW5kIHdlIG5l
ZWQgdG8gbG9vayBmb3IgYW5pbWF0aW9uLW5hbWUKLSAgICAvLyBsYXN0IGJlY2F1c2Ugb3RoZXJ3
aXNlIGl0IG1pZ2h0IG1hdGNoIGFnYWluc3QgdGhlIGtleXdvcmRzIGZvciBmaWxsIG1vZGUsCi0g
ICAgLy8gdGltaW5nIGZ1bmN0aW9ucyBhbmQgaW5maW5pdGUgaXRlcmF0aW9uLiBUaGlzIG1lYW5z
IHRoYXQgYW5pbWF0aW9uIG5hbWVzCi0gICAgLy8gdGhhdCBhcmUgdGhlIHNhbWUgYXMga2V5d29y
ZHMgKGUuZy4gJ2ZvcndhcmRzJykgd29uJ3QgYWx3YXlzIG1hdGNoIGluIHRoZQotICAgIC8vIHNo
b3J0aGFuZC4gSW4gdGhhdCBjYXNlIHRoZXkgc2hvdWxkIGJlIHVzaW5nIGxvbmdoYW5kcyAob3Ig
cmVjb25zaWRlcmluZwotICAgIC8vIHRoZWlyIGFwcHJvYWNoKS4gVGhpcyBpcyBjb3ZlcmVkIGJ5
IHRoZSBhbmltYXRpb25zIHNwZWMgYnVnOgotICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9CdWdz
L1B1YmxpYy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3OTAKLSAgICAvLyBBbmQgaW4gdGhlIHNwZWMgKGVk
aXRvcidzIGRyYWZ0KSBhdDoKLSAgICAvLyBodHRwOi8vZGV2LnczLm9yZy9jc3N3Zy9jc3MzLWFu
aW1hdGlvbnMvI2FuaW1hdGlvbi1zaG9ydGhhbmQtcHJvcGVydHkKLQotICAgIHN0YXRpYyBjb25z
dCBDU1NQcm9wZXJ0eUlEIGFuaW1hdGlvblByb3BlcnRpZXNbXSA9IHsKLSAgICAgICAgQ1NTUHJv
cGVydHlXZWJraXRBbmltYXRpb25EdXJhdGlvbiwKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRB
bmltYXRpb25UaW1pbmdGdW5jdGlvbiwKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRp
b25EZWxheSwKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRpb25JdGVyYXRpb25Db3Vu
dCwKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRpb25EaXJlY3Rpb24sCi0gICAgICAg
IENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uRmlsbE1vZGUsCi0gICAgICAgIENTU1Byb3BlcnR5
V2Via2l0QW5pbWF0aW9uTmFtZQotICAgIH07CisgICAgY29uc3QgV2ViQ29yZTo6U3R5bGVQcm9w
ZXJ0eVNob3J0aGFuZCYgYW5pbWF0aW9uUHJvcGVydGllcyA9IHdlYmtpdEFuaW1hdGlvblNob3J0
aGFuZE5hbWVMYXN0KCk7CiAgICAgY29uc3QgdW5zaWduZWQgbnVtUHJvcGVydGllcyA9IDc7CiAK
ICAgICAvLyBUaGUgbGlzdCBvZiBwcm9wZXJ0aWVzIGluIHRoZSBzaG9ydGhhbmQgc2hvdWxkIGJl
IHRoZSBzYW1lCi0gICAgLy8gbGVuZ3RoIGFzIHRoZSBsaXN0IHdlIGhhdmUgaGVyZSwgZXZlbiB0
aG91Z2ggdGhleSBhcmUKLSAgICAvLyBhIGRpZmZlcmVudCBvcmRlci4KKyAgICAvLyBsZW5ndGgg
YXMgdGhlIGxpc3Qgd2l0aCBhbmltYXRpb24gbmFtZSBpbiBsYXN0IHBvc2l0aW9uLCBldmVuIHRo
b3VnaCB0aGV5IGFyZQorICAgIC8vIGluIGEgZGlmZmVyZW50IG9yZGVyLgorICAgIEFTU0VSVChu
dW1Qcm9wZXJ0aWVzID09IHdlYmtpdEFuaW1hdGlvblNob3J0aGFuZE5hbWVMYXN0KCkubGVuZ3Ro
KCkpOwogICAgIEFTU0VSVChudW1Qcm9wZXJ0aWVzID09IHdlYmtpdEFuaW1hdGlvblNob3J0aGFu
ZCgpLmxlbmd0aCgpKTsKIAogICAgIFNob3J0aGFuZFNjb3BlIHNjb3BlKHRoaXMsIENTU1Byb3Bl
cnR5V2Via2l0QW5pbWF0aW9uKTsKQEAgLTMxMjQsNyArMzEwOCw3IEBAIGJvb2wgQ1NTUGFyc2Vy
OjpwYXJzZUFuaW1hdGlvblNob3J0aGFuZChib29sIGltcG9ydGFudCkKICAgICAgICAgZm9yIChp
ID0gMDsgaSA8IG51bVByb3BlcnRpZXM7ICsraSkgewogICAgICAgICAgICAgaWYgKCFwYXJzZWRQ
cm9wZXJ0eVtpXSkgewogICAgICAgICAgICAgICAgIFJlZlB0cjxDU1NWYWx1ZT4gdmFsOwotICAg
ICAgICAgICAgICAgIGlmIChwYXJzZUFuaW1hdGlvblByb3BlcnR5KGFuaW1hdGlvblByb3BlcnRp
ZXNbaV0sIHZhbCkpIHsKKyAgICAgICAgICAgICAgICBpZiAocGFyc2VBbmltYXRpb25Qcm9wZXJ0
eShhbmltYXRpb25Qcm9wZXJ0aWVzLnByb3BlcnRpZXMoKVtpXSwgdmFsKSkgewogICAgICAgICAg
ICAgICAgICAgICBwYXJzZWRQcm9wZXJ0eVtpXSA9IGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAg
ICAgICAgICAgYWRkQW5pbWF0aW9uVmFsdWUodmFsdWVzW2ldLCB2YWwucmVsZWFzZSgpKTsKICAg
ICAgICAgICAgICAgICAgICAgYnJlYWs7CkBAIC0zMTQzLDcgKzMxMjcsNyBAQCBib29sIENTU1Bh
cnNlcjo6cGFyc2VBbmltYXRpb25TaG9ydGhhbmQoYm9vbCBpbXBvcnRhbnQpCiAgICAgICAgIGlm
ICghcGFyc2VkUHJvcGVydHlbaV0pCiAgICAgICAgICAgICBhZGRBbmltYXRpb25WYWx1ZSh2YWx1
ZXNbaV0sIGNzc1ZhbHVlUG9vbCgpLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCkpOwogCi0g
ICAgICAgIGFkZFByb3BlcnR5KGFuaW1hdGlvblByb3BlcnRpZXNbaV0sIHZhbHVlc1tpXS5yZWxl
YXNlKCksIGltcG9ydGFudCk7CisgICAgICAgIGFkZFByb3BlcnR5KGFuaW1hdGlvblByb3BlcnRp
ZXMucHJvcGVydGllcygpW2ldLCB2YWx1ZXNbaV0ucmVsZWFzZSgpLCBpbXBvcnRhbnQpOwogICAg
IH0KIAogICAgIHJldHVybiB0cnVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlUHJvcGVydHlTaG9ydGhhbmQuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVy
dHlTaG9ydGhhbmQuY3BwCmluZGV4IDA0NWJkMjQuLjkzYjE2MDAgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmNwcAorKysgYi9Tb3VyY2UvV2Vi
Q29yZS9jc3MvU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5jcHAKQEAgLTI2MSw2ICsyNjEsMzIgQEAg
Y29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgd2Via2l0QW5pbWF0aW9uU2hvcnRoYW5kKCkK
ICAgICByZXR1cm4gd2Via2l0QW5pbWF0aW9uTG9uZ2hhbmRzOwogfQogCitjb25zdCBTdHlsZVBy
b3BlcnR5U2hvcnRoYW5kJiB3ZWJraXRBbmltYXRpb25TaG9ydGhhbmROYW1lTGFzdCgpCit7Cisg
ICAgLy8gV2hlbiB3ZSBwYXJzZSB0aGUgYW5pbWF0aW9uIHNob3J0aGFuZCB3ZSBuZWVkIHRvIGxv
b2sgZm9yIGFuaW1hdGlvbi1uYW1lCisgICAgLy8gbGFzdCBiZWNhdXNlIG90aGVyd2lzZSBpdCBt
aWdodCBtYXRjaCBhZ2FpbnN0IHRoZSBrZXl3b3JkcyBmb3IgZmlsbCBtb2RlLAorICAgIC8vIHRp
bWluZyBmdW5jdGlvbnMgYW5kIGluZmluaXRlIGl0ZXJhdGlvbi4gVGhpcyBtZWFucyB0aGF0IGFu
aW1hdGlvbiBuYW1lcworICAgIC8vIHRoYXQgYXJlIHRoZSBzYW1lIGFzIGtleXdvcmRzIChlLmcu
ICdmb3J3YXJkcycpIHdvbid0IGFsd2F5cyBtYXRjaCBpbiB0aGUKKyAgICAvLyBzaG9ydGhhbmQu
IEluIHRoYXQgY2FzZSB0aGV5IHNob3VsZCBiZSB1c2luZyBsb25naGFuZHMgKG9yIHJlY29uc2lk
ZXJpbmcKKyAgICAvLyB0aGVpciBhcHByb2FjaCkuIFRoaXMgaXMgY292ZXJlZCBieSB0aGUgYW5p
bWF0aW9ucyBzcGVjIGJ1ZzoKKyAgICAvLyBodHRwczovL3d3dy53My5vcmcvQnVncy9QdWJsaWMv
c2hvd19idWcuY2dpP2lkPTE0NzkwCisgICAgLy8gQW5kIGluIHRoZSBzcGVjIChlZGl0b3IncyBk
cmFmdCkgYXQ6CisgICAgLy8gaHR0cDovL2Rldi53My5vcmcvY3Nzd2cvY3NzMy1hbmltYXRpb25z
LyNhbmltYXRpb24tc2hvcnRoYW5kLXByb3BlcnR5CisgICAgc3RhdGljIGNvbnN0IENTU1Byb3Bl
cnR5SUQgYW5pbWF0aW9uUHJvcGVydGllc05hbWVMYXN0W10gPSB7CisgICAgICAgIENTU1Byb3Bl
cnR5V2Via2l0QW5pbWF0aW9uRHVyYXRpb24sCisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5p
bWF0aW9uVGltaW5nRnVuY3Rpb24sCisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9u
RGVsYXksCisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uSXRlcmF0aW9uQ291bnQs
CisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uRGlyZWN0aW9uLAorICAgICAgICBD
U1NQcm9wZXJ0eVdlYmtpdEFuaW1hdGlvbkZpbGxNb2RlLAorICAgICAgICBDU1NQcm9wZXJ0eVdl
YmtpdEFuaW1hdGlvbk5hbWUKKyAgICB9OworCisKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0
eWxlUHJvcGVydHlTaG9ydGhhbmQsIHdlYmtpdEFuaW1hdGlvbkxvbmdoYW5kc05hbWVMYXN0LCAo
YW5pbWF0aW9uUHJvcGVydGllc05hbWVMYXN0LCBXVEZfQVJSQVlfTEVOR1RIKGFuaW1hdGlvblBy
b3BlcnRpZXNOYW1lTGFzdCkpKTsKKyAgICByZXR1cm4gd2Via2l0QW5pbWF0aW9uTG9uZ2hhbmRz
TmFtZUxhc3Q7Cit9CisKIGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmIHdlYmtpdEJvcmRl
ckFmdGVyU2hvcnRoYW5kKCkKIHsKICAgICBzdGF0aWMgY29uc3QgQ1NTUHJvcGVydHlJRCBib3Jk
ZXJBZnRlclByb3BlcnRpZXNbXSA9IHsgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRlcldpZHRo
LCBDU1NQcm9wZXJ0eVdlYmtpdEJvcmRlckFmdGVyU3R5bGUsIENTU1Byb3BlcnR5V2Via2l0Qm9y
ZGVyQWZ0ZXJDb2xvciAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVBy
b3BlcnR5U2hvcnRoYW5kLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0eVNob3J0
aGFuZC5oCmluZGV4IGVlMzMxYzcuLmFjMWRlOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0
eWxlUHJvcGVydHlTaG9ydGhhbmQuaApAQCAtODAsNiArODAsNyBAQCBjb25zdCBTdHlsZVByb3Bl
cnR5U2hvcnRoYW5kJiBvdXRsaW5lU2hvcnRoYW5kKCk7CiBjb25zdCBTdHlsZVByb3BlcnR5U2hv
cnRoYW5kJiBvdmVyZmxvd1Nob3J0aGFuZCgpOwogY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFu
ZCYgcGFkZGluZ1Nob3J0aGFuZCgpOwogY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgd2Vi
a2l0QW5pbWF0aW9uU2hvcnRoYW5kKCk7Citjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiB3
ZWJraXRBbmltYXRpb25TaG9ydGhhbmROYW1lTGFzdCgpOwogY29uc3QgU3R5bGVQcm9wZXJ0eVNo
b3J0aGFuZCYgd2Via2l0Qm9yZGVyQWZ0ZXJTaG9ydGhhbmQoKTsKIGNvbnN0IFN0eWxlUHJvcGVy
dHlTaG9ydGhhbmQmIHdlYmtpdEJvcmRlckJlZm9yZVNob3J0aGFuZCgpOwogY29uc3QgU3R5bGVQ
cm9wZXJ0eVNob3J0aGFuZCYgd2Via2l0Qm9yZGVyRW5kU2hvcnRoYW5kKCk7Ci0tIAoxLjcuOS41
Cgo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>160151</attachid>
            <date>2012-08-23 06:45:20 -0700</date>
            <delta_ts>2012-08-23 12:37:13 -0700</delta_ts>
            <desc>Forgot a last unneeded namespace reference</desc>
            <filename>0003-Moving-enum-common-place.patch</filename>
            <type>text/plain</type>
            <size>7574</size>
            <attacher name="Adenilson Cavalcanti Silva">savagobr</attacher>
            
              <data encoding="base64">RnJvbSBjNDRmYzNhNzZmZGQzMzIzMDc5NzBhYjYwMjU3Mjg1NjVmMDMzZTlkIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGVuaWxzb24gQ2F2YWxjYW50aSA8Y2F2YWxjYW50aWlAZ21h
aWwuY29tPgpEYXRlOiBTdW4sIDUgQXVnIDIwMTIgMTY6NTY6MTMgLTA3MDAKU3ViamVjdDogW1BB
VENIXSBNb3ZpbmcgdGhlIGVudW0gdG8gYSBjb21tb24gcGxhY2UsIGltcGxlbWVudGluZyByZXZp
ZXdlcidzCiBzdWdnZXN0aW9uIGFib3V0IG5hbWluZyBhbmQgY29tcGFyaW5nIGFycmF5IGxlbmd0
aHMuCgpTaWduZWQtb2ZmLWJ5OiBBZGVuaWxzb24gQ2F2YWxjYW50aSA8Y2F2YWxjYW50aWlAZ21h
aWwuY29tPgotLS0KIFNvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyAgICAgICAgICAgICAgICAgICAg
ICB8ICAgMjEgKysrKysrKysrKysrKysrKysKIFNvdXJjZS9XZWJDb3JlL2Nzcy9DU1NQYXJzZXIu
Y3BwICAgICAgICAgICAgICB8ICAgMzAgKysrKysrLS0tLS0tLS0tLS0tLS0tLS0tLQogU291cmNl
L1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydHlTaG9ydGhhbmQuY3BwIHwgICAyNiArKysrKysrKysr
KysrKysrKysrKysKIFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmgg
ICB8ICAgIDEgKwogNCBmaWxlcyBjaGFuZ2VkLCA1NSBpbnNlcnRpb25zKCspLCAyMyBkZWxldGlv
bnMoLSkKCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgYi9Tb3VyY2UvV2Vi
Q29yZS9DaGFuZ2VMb2cKaW5kZXggM2NhOWM1OC4uNjZiZWQ0OCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwz
ICsxLDI0IEBACisyMDEyLTA4LTA1ICBBZGVuaWxzb24gQ2F2YWxjYW50aSAgPGNhdmFsY2FudGlp
QGdtYWlsLmNvbT4KKworICAgICAgICBDU1NQYXJzZXI6IE1vdmUgZW51bWVyYXRpb24gdG8gYSBj
b21tb24gcGxhY2UgKFN0eWxlUHJvcGVydHlTaG9ydGhhbmQpCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05MzIxMAorCisgICAgICAgIFJldmlld2VkIGJ5
IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENTU1BhcnNlcjo6cGFyc2VBbmltYXRpb25TaG9y
dGhhbmQoKSB1c2VzIGFuIGVudW1lcmF0aW9uIHdpdGggdGhlIHNhbWUgZWxlbWVudHMgYXMgYW5v
dGhlciBlbnVtZXJhdGlvbgorICAgICAgICBwcmVzZW50IGluIFN0eWxlUHJvcGVydHlTaG9ydGhh
bmQsIGJ1dCB3aXRoIGRpZmZlcmVudCBvcmRlcmluZyBvZiB2YWx1ZXMuIEl0IHNlZW1zIHRvIG1h
a2Ugc2Vuc2UgdG8KKyAgICAgICAgaGF2ZSBib3RoIGVudW1zIGluIHRoZSBzYW1lIHBsYWNlLgor
CisgICAgICAgIE5vIG5ldyB0ZXN0cy4gTm8gY2hhbmdlIGluIGJlaGF2aW9yLgorCisgICAgICAg
ICogY3NzL0NTU1BhcnNlci5jcHA6CisgICAgICAgIChXZWJDb3JlOjpDU1NQYXJzZXI6OnBhcnNl
QW5pbWF0aW9uU2hvcnRoYW5kKToKKyAgICAgICAgKiBjc3MvU3R5bGVQcm9wZXJ0eVNob3J0aGFu
ZC5jcHA6CisgICAgICAgIChXZWJDb3JlOjp3ZWJraXRBbmltYXRpb25TaG9ydGhhbmROYW1lTGFz
dCk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBjc3MvU3R5bGVQcm9wZXJ0eVNob3J0
aGFuZC5oOgorICAgICAgICAoV2ViQ29yZSk6CisKIDIwMTItMDgtMjIgIFBhdHJpY2sgR2Fuc3Rl
cmVyICA8cGFyb2dhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgQnVpbGQgZml4IGZvciBXaW5DRSBh
ZnRlciByMTI2MzU5LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAppbmRleCAxOGM0YzAzLi41YWE1
ZjM0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcApAQCAtNTEsNiArNTEsNyBAQAogI2luY2x1
ZGUgIkNTU1ZhbHVlS2V5d29yZHMuaCIKICNpbmNsdWRlICJDU1NWYWx1ZUxpc3QuaCIKICNpbmNs
dWRlICJDU1NWYWx1ZVBvb2wuaCIKKyNpbmNsdWRlICJTdHlsZVByb3BlcnR5U2hvcnRoYW5kLmgi
CiAjaWYgRU5BQkxFKENTU19WQVJJQUJMRVMpCiAjaW5jbHVkZSAiQ1NTVmFyaWFibGVWYWx1ZS5o
IgogI2VuZGlmCkBAIC0zMDc0LDMwICszMDc1LDEzIEBAIHZvaWQgQ1NTUGFyc2VyOjphZGRBbmlt
YXRpb25WYWx1ZShSZWZQdHI8Q1NTVmFsdWU+JiBsdmFsLCBQYXNzUmVmUHRyPENTU1ZhbHVlPiBy
CiAKIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZUFuaW1hdGlvblNob3J0aGFuZChib29sIGltcG9ydGFu
dCkKIHsKLSAgICAvLyBXaGVuIHdlIHBhcnNlIHRoZSBhbmltYXRpb24gc2hvcnRoYW5kIHdlIG5l
ZWQgdG8gbG9vayBmb3IgYW5pbWF0aW9uLW5hbWUKLSAgICAvLyBsYXN0IGJlY2F1c2Ugb3RoZXJ3
aXNlIGl0IG1pZ2h0IG1hdGNoIGFnYWluc3QgdGhlIGtleXdvcmRzIGZvciBmaWxsIG1vZGUsCi0g
ICAgLy8gdGltaW5nIGZ1bmN0aW9ucyBhbmQgaW5maW5pdGUgaXRlcmF0aW9uLiBUaGlzIG1lYW5z
IHRoYXQgYW5pbWF0aW9uIG5hbWVzCi0gICAgLy8gdGhhdCBhcmUgdGhlIHNhbWUgYXMga2V5d29y
ZHMgKGUuZy4gJ2ZvcndhcmRzJykgd29uJ3QgYWx3YXlzIG1hdGNoIGluIHRoZQotICAgIC8vIHNo
b3J0aGFuZC4gSW4gdGhhdCBjYXNlIHRoZXkgc2hvdWxkIGJlIHVzaW5nIGxvbmdoYW5kcyAob3Ig
cmVjb25zaWRlcmluZwotICAgIC8vIHRoZWlyIGFwcHJvYWNoKS4gVGhpcyBpcyBjb3ZlcmVkIGJ5
IHRoZSBhbmltYXRpb25zIHNwZWMgYnVnOgotICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9CdWdz
L1B1YmxpYy9zaG93X2J1Zy5jZ2k/aWQ9MTQ3OTAKLSAgICAvLyBBbmQgaW4gdGhlIHNwZWMgKGVk
aXRvcidzIGRyYWZ0KSBhdDoKLSAgICAvLyBodHRwOi8vZGV2LnczLm9yZy9jc3N3Zy9jc3MzLWFu
aW1hdGlvbnMvI2FuaW1hdGlvbi1zaG9ydGhhbmQtcHJvcGVydHkKLQotICAgIHN0YXRpYyBjb25z
dCBDU1NQcm9wZXJ0eUlEIGFuaW1hdGlvblByb3BlcnRpZXNbXSA9IHsKLSAgICAgICAgQ1NTUHJv
cGVydHlXZWJraXRBbmltYXRpb25EdXJhdGlvbiwKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRB
bmltYXRpb25UaW1pbmdGdW5jdGlvbiwKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRp
b25EZWxheSwKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRpb25JdGVyYXRpb25Db3Vu
dCwKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRpb25EaXJlY3Rpb24sCi0gICAgICAg
IENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uRmlsbE1vZGUsCi0gICAgICAgIENTU1Byb3BlcnR5
V2Via2l0QW5pbWF0aW9uTmFtZQotICAgIH07CisgICAgY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0
aGFuZCYgYW5pbWF0aW9uUHJvcGVydGllcyA9IHdlYmtpdEFuaW1hdGlvblNob3J0aGFuZE5hbWVM
YXN0KCk7CiAgICAgY29uc3QgdW5zaWduZWQgbnVtUHJvcGVydGllcyA9IDc7CiAKICAgICAvLyBU
aGUgbGlzdCBvZiBwcm9wZXJ0aWVzIGluIHRoZSBzaG9ydGhhbmQgc2hvdWxkIGJlIHRoZSBzYW1l
Ci0gICAgLy8gbGVuZ3RoIGFzIHRoZSBsaXN0IHdlIGhhdmUgaGVyZSwgZXZlbiB0aG91Z2ggdGhl
eSBhcmUKLSAgICAvLyBhIGRpZmZlcmVudCBvcmRlci4KKyAgICAvLyBsZW5ndGggYXMgdGhlIGxp
c3Qgd2l0aCBhbmltYXRpb24gbmFtZSBpbiBsYXN0IHBvc2l0aW9uLCBldmVuIHRob3VnaCB0aGV5
IGFyZQorICAgIC8vIGluIGEgZGlmZmVyZW50IG9yZGVyLgorICAgIEFTU0VSVChudW1Qcm9wZXJ0
aWVzID09IHdlYmtpdEFuaW1hdGlvblNob3J0aGFuZE5hbWVMYXN0KCkubGVuZ3RoKCkpOwogICAg
IEFTU0VSVChudW1Qcm9wZXJ0aWVzID09IHdlYmtpdEFuaW1hdGlvblNob3J0aGFuZCgpLmxlbmd0
aCgpKTsKIAogICAgIFNob3J0aGFuZFNjb3BlIHNjb3BlKHRoaXMsIENTU1Byb3BlcnR5V2Via2l0
QW5pbWF0aW9uKTsKQEAgLTMxMjQsNyArMzEwOCw3IEBAIGJvb2wgQ1NTUGFyc2VyOjpwYXJzZUFu
aW1hdGlvblNob3J0aGFuZChib29sIGltcG9ydGFudCkKICAgICAgICAgZm9yIChpID0gMDsgaSA8
IG51bVByb3BlcnRpZXM7ICsraSkgewogICAgICAgICAgICAgaWYgKCFwYXJzZWRQcm9wZXJ0eVtp
XSkgewogICAgICAgICAgICAgICAgIFJlZlB0cjxDU1NWYWx1ZT4gdmFsOwotICAgICAgICAgICAg
ICAgIGlmIChwYXJzZUFuaW1hdGlvblByb3BlcnR5KGFuaW1hdGlvblByb3BlcnRpZXNbaV0sIHZh
bCkpIHsKKyAgICAgICAgICAgICAgICBpZiAocGFyc2VBbmltYXRpb25Qcm9wZXJ0eShhbmltYXRp
b25Qcm9wZXJ0aWVzLnByb3BlcnRpZXMoKVtpXSwgdmFsKSkgewogICAgICAgICAgICAgICAgICAg
ICBwYXJzZWRQcm9wZXJ0eVtpXSA9IGZvdW5kID0gdHJ1ZTsKICAgICAgICAgICAgICAgICAgICAg
YWRkQW5pbWF0aW9uVmFsdWUodmFsdWVzW2ldLCB2YWwucmVsZWFzZSgpKTsKICAgICAgICAgICAg
ICAgICAgICAgYnJlYWs7CkBAIC0zMTQzLDcgKzMxMjcsNyBAQCBib29sIENTU1BhcnNlcjo6cGFy
c2VBbmltYXRpb25TaG9ydGhhbmQoYm9vbCBpbXBvcnRhbnQpCiAgICAgICAgIGlmICghcGFyc2Vk
UHJvcGVydHlbaV0pCiAgICAgICAgICAgICBhZGRBbmltYXRpb25WYWx1ZSh2YWx1ZXNbaV0sIGNz
c1ZhbHVlUG9vbCgpLmNyZWF0ZUltcGxpY2l0SW5pdGlhbFZhbHVlKCkpOwogCi0gICAgICAgIGFk
ZFByb3BlcnR5KGFuaW1hdGlvblByb3BlcnRpZXNbaV0sIHZhbHVlc1tpXS5yZWxlYXNlKCksIGlt
cG9ydGFudCk7CisgICAgICAgIGFkZFByb3BlcnR5KGFuaW1hdGlvblByb3BlcnRpZXMucHJvcGVy
dGllcygpW2ldLCB2YWx1ZXNbaV0ucmVsZWFzZSgpLCBpbXBvcnRhbnQpOwogICAgIH0KIAogICAg
IHJldHVybiB0cnVlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVy
dHlTaG9ydGhhbmQuY3BwIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydHlTaG9ydGhh
bmQuY3BwCmluZGV4IDA0NWJkMjQuLjkzYjE2MDAgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3Jl
L2Nzcy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
U3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5jcHAKQEAgLTI2MSw2ICsyNjEsMzIgQEAgY29uc3QgU3R5
bGVQcm9wZXJ0eVNob3J0aGFuZCYgd2Via2l0QW5pbWF0aW9uU2hvcnRoYW5kKCkKICAgICByZXR1
cm4gd2Via2l0QW5pbWF0aW9uTG9uZ2hhbmRzOwogfQogCitjb25zdCBTdHlsZVByb3BlcnR5U2hv
cnRoYW5kJiB3ZWJraXRBbmltYXRpb25TaG9ydGhhbmROYW1lTGFzdCgpCit7CisgICAgLy8gV2hl
biB3ZSBwYXJzZSB0aGUgYW5pbWF0aW9uIHNob3J0aGFuZCB3ZSBuZWVkIHRvIGxvb2sgZm9yIGFu
aW1hdGlvbi1uYW1lCisgICAgLy8gbGFzdCBiZWNhdXNlIG90aGVyd2lzZSBpdCBtaWdodCBtYXRj
aCBhZ2FpbnN0IHRoZSBrZXl3b3JkcyBmb3IgZmlsbCBtb2RlLAorICAgIC8vIHRpbWluZyBmdW5j
dGlvbnMgYW5kIGluZmluaXRlIGl0ZXJhdGlvbi4gVGhpcyBtZWFucyB0aGF0IGFuaW1hdGlvbiBu
YW1lcworICAgIC8vIHRoYXQgYXJlIHRoZSBzYW1lIGFzIGtleXdvcmRzIChlLmcuICdmb3J3YXJk
cycpIHdvbid0IGFsd2F5cyBtYXRjaCBpbiB0aGUKKyAgICAvLyBzaG9ydGhhbmQuIEluIHRoYXQg
Y2FzZSB0aGV5IHNob3VsZCBiZSB1c2luZyBsb25naGFuZHMgKG9yIHJlY29uc2lkZXJpbmcKKyAg
ICAvLyB0aGVpciBhcHByb2FjaCkuIFRoaXMgaXMgY292ZXJlZCBieSB0aGUgYW5pbWF0aW9ucyBz
cGVjIGJ1ZzoKKyAgICAvLyBodHRwczovL3d3dy53My5vcmcvQnVncy9QdWJsaWMvc2hvd19idWcu
Y2dpP2lkPTE0NzkwCisgICAgLy8gQW5kIGluIHRoZSBzcGVjIChlZGl0b3IncyBkcmFmdCkgYXQ6
CisgICAgLy8gaHR0cDovL2Rldi53My5vcmcvY3Nzd2cvY3NzMy1hbmltYXRpb25zLyNhbmltYXRp
b24tc2hvcnRoYW5kLXByb3BlcnR5CisgICAgc3RhdGljIGNvbnN0IENTU1Byb3BlcnR5SUQgYW5p
bWF0aW9uUHJvcGVydGllc05hbWVMYXN0W10gPSB7CisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0
QW5pbWF0aW9uRHVyYXRpb24sCisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uVGlt
aW5nRnVuY3Rpb24sCisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uRGVsYXksCisg
ICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uSXRlcmF0aW9uQ291bnQsCisgICAgICAg
IENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uRGlyZWN0aW9uLAorICAgICAgICBDU1NQcm9wZXJ0
eVdlYmtpdEFuaW1hdGlvbkZpbGxNb2RlLAorICAgICAgICBDU1NQcm9wZXJ0eVdlYmtpdEFuaW1h
dGlvbk5hbWUKKyAgICB9OworCisKKyAgICBERUZJTkVfU1RBVElDX0xPQ0FMKFN0eWxlUHJvcGVy
dHlTaG9ydGhhbmQsIHdlYmtpdEFuaW1hdGlvbkxvbmdoYW5kc05hbWVMYXN0LCAoYW5pbWF0aW9u
UHJvcGVydGllc05hbWVMYXN0LCBXVEZfQVJSQVlfTEVOR1RIKGFuaW1hdGlvblByb3BlcnRpZXNO
YW1lTGFzdCkpKTsKKyAgICByZXR1cm4gd2Via2l0QW5pbWF0aW9uTG9uZ2hhbmRzTmFtZUxhc3Q7
Cit9CisKIGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmIHdlYmtpdEJvcmRlckFmdGVyU2hv
cnRoYW5kKCkKIHsKICAgICBzdGF0aWMgY29uc3QgQ1NTUHJvcGVydHlJRCBib3JkZXJBZnRlclBy
b3BlcnRpZXNbXSA9IHsgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRlcldpZHRoLCBDU1NQcm9w
ZXJ0eVdlYmtpdEJvcmRlckFmdGVyU3R5bGUsIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyQWZ0ZXJD
b2xvciAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2hv
cnRoYW5kLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5oCmlu
ZGV4IGVlMzMxYzcuLmFjMWRlOTIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHls
ZVByb3BlcnR5U2hvcnRoYW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVy
dHlTaG9ydGhhbmQuaApAQCAtODAsNiArODAsNyBAQCBjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRo
YW5kJiBvdXRsaW5lU2hvcnRoYW5kKCk7CiBjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiBv
dmVyZmxvd1Nob3J0aGFuZCgpOwogY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgcGFkZGlu
Z1Nob3J0aGFuZCgpOwogY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgd2Via2l0QW5pbWF0
aW9uU2hvcnRoYW5kKCk7Citjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiB3ZWJraXRBbmlt
YXRpb25TaG9ydGhhbmROYW1lTGFzdCgpOwogY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYg
d2Via2l0Qm9yZGVyQWZ0ZXJTaG9ydGhhbmQoKTsKIGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhh
bmQmIHdlYmtpdEJvcmRlckJlZm9yZVNob3J0aGFuZCgpOwogY29uc3QgU3R5bGVQcm9wZXJ0eVNo
b3J0aGFuZCYgd2Via2l0Qm9yZGVyRW5kU2hvcnRoYW5kKCk7Ci0tIAoxLjcuOS41Cgo=
</data>
<flag name="review"
          id="170639"
          type_id="1"
          status="-"
          setter="dino"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>160214</attachid>
            <date>2012-08-23 12:37:13 -0700</date>
            <delta_ts>2012-08-23 15:52:07 -0700</delta_ts>
            <desc>Changed method name, fixes in CL, etc.</desc>
            <filename>0004-Moving-enum-common-place.patch</filename>
            <type>text/plain</type>
            <size>7636</size>
            <attacher name="Adenilson Cavalcanti Silva">savagobr</attacher>
            
              <data encoding="base64">RnJvbSBmMDAzM2U4ZGFlNWJlZTJhYWM2OTBlNDJiOTQxZTY0NGYzZDc2OWUzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBZGVuaWxzb24gQ2F2YWxjYW50aSA8Y2F2YWxjYW50aWlAZ21h
aWwuY29tPgpEYXRlOiBTdW4sIDUgQXVnIDIwMTIgMTY6NTY6MTMgLTA3MDAKU3ViamVjdDogW1BB
VENIXSBNb3ZpbmcgdGhlIGVudW0gdG8gYSBjb21tb24gcGxhY2UsIGltcGxlbWVudGluZyByZXZp
ZXdlcidzCiBzdWdnZXN0aW9uIGFib3V0IG5hbWluZywgY29tcGFyaW5nIGFycmF5IGxlbmd0aHMs
IGV4dHJhCiBibGFuayBsaW5lLgoKU2lnbmVkLW9mZi1ieTogQWRlbmlsc29uIENhdmFsY2FudGkg
PGNhdmFsY2FudGlpQGdtYWlsLmNvbT4KLS0tCiBTb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cgICAg
ICAgICAgICAgICAgICAgICAgfCAgIDIxICsrKysrKysrKysrKysrKysrCiBTb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTUGFyc2VyLmNwcCAgICAgICAgICAgICAgfCAgIDMwICsrKysrKy0tLS0tLS0tLS0t
LS0tLS0tLS0KIFNvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmNwcCB8
ICAgMjUgKysrKysrKysrKysrKysrKysrKysrCiBTb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9w
ZXJ0eVNob3J0aGFuZC5oICAgfCAgICAxICsKIDQgZmlsZXMgY2hhbmdlZCwgNTQgaW5zZXJ0aW9u
cygrKSwgMjMgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvQ2hhbmdl
TG9nIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IDY0Nzk2ZDMuLjgyZmFlMjkgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMi0wOC0wNSAgQWRlbmlsc29uIENhdmFsY2Fu
dGkgIDxjYXZhbGNhbnRpaUBnbWFpbC5jb20+CisKKyAgICAgICAgQ1NTUGFyc2VyOiBNb3ZlIGVu
dW1lcmF0aW9uIHRvIGEgY29tbW9uIHBsYWNlIChTdHlsZVByb3BlcnR5U2hvcnRoYW5kKQorICAg
ICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9OTMyMTAKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBDU1NQYXJzZXI6OnBh
cnNlQW5pbWF0aW9uU2hvcnRoYW5kKCkgdXNlcyBhbiBlbnVtZXJhdGlvbiB3aXRoIHRoZSBzYW1l
CisgICAgICAgIGVsZW1lbnRzIGFzIGFub3RoZXIgZW51bWVyYXRpb24gcHJlc2VudCBpbiBTdHls
ZVByb3BlcnR5U2hvcnRoYW5kLCBidXQKKyAgICAgICAgd2l0aCBkaWZmZXJlbnQgb3JkZXJpbmcg
b2YgdmFsdWVzLiBUaGlzIHBhdGNoIHB1dHMgYm90aCBlbnVtcyBpbiB0aGUgc2FtZSBwbGFjZS4K
KworICAgICAgICBObyBuZXcgdGVzdHMuIE5vIGNoYW5nZSBpbiBiZWhhdmlvci4KKworICAgICAg
ICAqIGNzcy9DU1NQYXJzZXIuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Q1NTUGFyc2VyOjpwYXJz
ZUFuaW1hdGlvblNob3J0aGFuZCk6CisgICAgICAgICogY3NzL1N0eWxlUHJvcGVydHlTaG9ydGhh
bmQuY3BwOgorICAgICAgICAoV2ViQ29yZTo6d2Via2l0QW5pbWF0aW9uU2hvcnRoYW5kRm9yUGFy
c2luZyk6CisgICAgICAgIChXZWJDb3JlKToKKyAgICAgICAgKiBjc3MvU3R5bGVQcm9wZXJ0eVNo
b3J0aGFuZC5oOgorICAgICAgICAoV2ViQ29yZSk6CisKIDIwMTItMDgtMjMgIEpvc2h1YSBCZWxs
ICA8anNiZWxsQGNocm9taXVtLm9yZz4KIAogICAgICAgICBJbmRleGVkREI6IE1vdmUgb25TdWNj
ZXNzKElEQkRhdGFiYXNlQmFja2VuZEludGVyZmFjZSkgdG8gSURCT3BlbkRCUmVxdWVzdApkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvY3NzL0NTU1BhcnNlci5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9jc3MvQ1NTUGFyc2VyLmNwcAppbmRleCAxOGM0YzAzLi4xZmQ3OTI3IDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9jc3MvQ1NTUGFyc2VyLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9jc3Mv
Q1NTUGFyc2VyLmNwcApAQCAtNTEsNiArNTEsNyBAQAogI2luY2x1ZGUgIkNTU1ZhbHVlS2V5d29y
ZHMuaCIKICNpbmNsdWRlICJDU1NWYWx1ZUxpc3QuaCIKICNpbmNsdWRlICJDU1NWYWx1ZVBvb2wu
aCIKKyNpbmNsdWRlICJTdHlsZVByb3BlcnR5U2hvcnRoYW5kLmgiCiAjaWYgRU5BQkxFKENTU19W
QVJJQUJMRVMpCiAjaW5jbHVkZSAiQ1NTVmFyaWFibGVWYWx1ZS5oIgogI2VuZGlmCkBAIC0zMDc0
LDMwICszMDc1LDEzIEBAIHZvaWQgQ1NTUGFyc2VyOjphZGRBbmltYXRpb25WYWx1ZShSZWZQdHI8
Q1NTVmFsdWU+JiBsdmFsLCBQYXNzUmVmUHRyPENTU1ZhbHVlPiByCiAKIGJvb2wgQ1NTUGFyc2Vy
OjpwYXJzZUFuaW1hdGlvblNob3J0aGFuZChib29sIGltcG9ydGFudCkKIHsKLSAgICAvLyBXaGVu
IHdlIHBhcnNlIHRoZSBhbmltYXRpb24gc2hvcnRoYW5kIHdlIG5lZWQgdG8gbG9vayBmb3IgYW5p
bWF0aW9uLW5hbWUKLSAgICAvLyBsYXN0IGJlY2F1c2Ugb3RoZXJ3aXNlIGl0IG1pZ2h0IG1hdGNo
IGFnYWluc3QgdGhlIGtleXdvcmRzIGZvciBmaWxsIG1vZGUsCi0gICAgLy8gdGltaW5nIGZ1bmN0
aW9ucyBhbmQgaW5maW5pdGUgaXRlcmF0aW9uLiBUaGlzIG1lYW5zIHRoYXQgYW5pbWF0aW9uIG5h
bWVzCi0gICAgLy8gdGhhdCBhcmUgdGhlIHNhbWUgYXMga2V5d29yZHMgKGUuZy4gJ2ZvcndhcmRz
Jykgd29uJ3QgYWx3YXlzIG1hdGNoIGluIHRoZQotICAgIC8vIHNob3J0aGFuZC4gSW4gdGhhdCBj
YXNlIHRoZXkgc2hvdWxkIGJlIHVzaW5nIGxvbmdoYW5kcyAob3IgcmVjb25zaWRlcmluZwotICAg
IC8vIHRoZWlyIGFwcHJvYWNoKS4gVGhpcyBpcyBjb3ZlcmVkIGJ5IHRoZSBhbmltYXRpb25zIHNw
ZWMgYnVnOgotICAgIC8vIGh0dHBzOi8vd3d3LnczLm9yZy9CdWdzL1B1YmxpYy9zaG93X2J1Zy5j
Z2k/aWQ9MTQ3OTAKLSAgICAvLyBBbmQgaW4gdGhlIHNwZWMgKGVkaXRvcidzIGRyYWZ0KSBhdDoK
LSAgICAvLyBodHRwOi8vZGV2LnczLm9yZy9jc3N3Zy9jc3MzLWFuaW1hdGlvbnMvI2FuaW1hdGlv
bi1zaG9ydGhhbmQtcHJvcGVydHkKLQotICAgIHN0YXRpYyBjb25zdCBDU1NQcm9wZXJ0eUlEIGFu
aW1hdGlvblByb3BlcnRpZXNbXSA9IHsKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRp
b25EdXJhdGlvbiwKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRpb25UaW1pbmdGdW5j
dGlvbiwKLSAgICAgICAgQ1NTUHJvcGVydHlXZWJraXRBbmltYXRpb25EZWxheSwKLSAgICAgICAg
Q1NTUHJvcGVydHlXZWJraXRBbmltYXRpb25JdGVyYXRpb25Db3VudCwKLSAgICAgICAgQ1NTUHJv
cGVydHlXZWJraXRBbmltYXRpb25EaXJlY3Rpb24sCi0gICAgICAgIENTU1Byb3BlcnR5V2Via2l0
QW5pbWF0aW9uRmlsbE1vZGUsCi0gICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uTmFt
ZQotICAgIH07CisgICAgY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgYW5pbWF0aW9uUHJv
cGVydGllcyA9IHdlYmtpdEFuaW1hdGlvblNob3J0aGFuZEZvclBhcnNpbmcoKTsKICAgICBjb25z
dCB1bnNpZ25lZCBudW1Qcm9wZXJ0aWVzID0gNzsKIAogICAgIC8vIFRoZSBsaXN0IG9mIHByb3Bl
cnRpZXMgaW4gdGhlIHNob3J0aGFuZCBzaG91bGQgYmUgdGhlIHNhbWUKLSAgICAvLyBsZW5ndGgg
YXMgdGhlIGxpc3Qgd2UgaGF2ZSBoZXJlLCBldmVuIHRob3VnaCB0aGV5IGFyZQotICAgIC8vIGEg
ZGlmZmVyZW50IG9yZGVyLgorICAgIC8vIGxlbmd0aCBhcyB0aGUgbGlzdCB3aXRoIGFuaW1hdGlv
biBuYW1lIGluIGxhc3QgcG9zaXRpb24sIGV2ZW4gdGhvdWdoIHRoZXkgYXJlCisgICAgLy8gaW4g
YSBkaWZmZXJlbnQgb3JkZXIuCisgICAgQVNTRVJUKG51bVByb3BlcnRpZXMgPT0gd2Via2l0QW5p
bWF0aW9uU2hvcnRoYW5kRm9yUGFyc2luZygpLmxlbmd0aCgpKTsKICAgICBBU1NFUlQobnVtUHJv
cGVydGllcyA9PSB3ZWJraXRBbmltYXRpb25TaG9ydGhhbmQoKS5sZW5ndGgoKSk7CiAKICAgICBT
aG9ydGhhbmRTY29wZSBzY29wZSh0aGlzLCBDU1NQcm9wZXJ0eVdlYmtpdEFuaW1hdGlvbik7CkBA
IC0zMTI0LDcgKzMxMDgsNyBAQCBib29sIENTU1BhcnNlcjo6cGFyc2VBbmltYXRpb25TaG9ydGhh
bmQoYm9vbCBpbXBvcnRhbnQpCiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBudW1Qcm9wZXJ0aWVz
OyArK2kpIHsKICAgICAgICAgICAgIGlmICghcGFyc2VkUHJvcGVydHlbaV0pIHsKICAgICAgICAg
ICAgICAgICBSZWZQdHI8Q1NTVmFsdWU+IHZhbDsKLSAgICAgICAgICAgICAgICBpZiAocGFyc2VB
bmltYXRpb25Qcm9wZXJ0eShhbmltYXRpb25Qcm9wZXJ0aWVzW2ldLCB2YWwpKSB7CisgICAgICAg
ICAgICAgICAgaWYgKHBhcnNlQW5pbWF0aW9uUHJvcGVydHkoYW5pbWF0aW9uUHJvcGVydGllcy5w
cm9wZXJ0aWVzKClbaV0sIHZhbCkpIHsKICAgICAgICAgICAgICAgICAgICAgcGFyc2VkUHJvcGVy
dHlbaV0gPSBmb3VuZCA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgIGFkZEFuaW1hdGlvblZh
bHVlKHZhbHVlc1tpXSwgdmFsLnJlbGVhc2UoKSk7CiAgICAgICAgICAgICAgICAgICAgIGJyZWFr
OwpAQCAtMzE0Myw3ICszMTI3LDcgQEAgYm9vbCBDU1NQYXJzZXI6OnBhcnNlQW5pbWF0aW9uU2hv
cnRoYW5kKGJvb2wgaW1wb3J0YW50KQogICAgICAgICBpZiAoIXBhcnNlZFByb3BlcnR5W2ldKQog
ICAgICAgICAgICAgYWRkQW5pbWF0aW9uVmFsdWUodmFsdWVzW2ldLCBjc3NWYWx1ZVBvb2woKS5j
cmVhdGVJbXBsaWNpdEluaXRpYWxWYWx1ZSgpKTsKIAotICAgICAgICBhZGRQcm9wZXJ0eShhbmlt
YXRpb25Qcm9wZXJ0aWVzW2ldLCB2YWx1ZXNbaV0ucmVsZWFzZSgpLCBpbXBvcnRhbnQpOworICAg
ICAgICBhZGRQcm9wZXJ0eShhbmltYXRpb25Qcm9wZXJ0aWVzLnByb3BlcnRpZXMoKVtpXSwgdmFs
dWVzW2ldLnJlbGVhc2UoKSwgaW1wb3J0YW50KTsKICAgICB9CiAKICAgICByZXR1cm4gdHJ1ZTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmNw
cCBiL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5U2hvcnRoYW5kLmNwcAppbmRleCAw
NDViZDI0Li5kNWVjZDk3IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9w
ZXJ0eVNob3J0aGFuZC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJvcGVydHlT
aG9ydGhhbmQuY3BwCkBAIC0yNjEsNiArMjYxLDMxIEBAIGNvbnN0IFN0eWxlUHJvcGVydHlTaG9y
dGhhbmQmIHdlYmtpdEFuaW1hdGlvblNob3J0aGFuZCgpCiAgICAgcmV0dXJuIHdlYmtpdEFuaW1h
dGlvbkxvbmdoYW5kczsKIH0KIAorY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgd2Via2l0
QW5pbWF0aW9uU2hvcnRoYW5kRm9yUGFyc2luZygpCit7CisgICAgLy8gV2hlbiB3ZSBwYXJzZSB0
aGUgYW5pbWF0aW9uIHNob3J0aGFuZCB3ZSBuZWVkIHRvIGxvb2sgZm9yIGFuaW1hdGlvbi1uYW1l
CisgICAgLy8gbGFzdCBiZWNhdXNlIG90aGVyd2lzZSBpdCBtaWdodCBtYXRjaCBhZ2FpbnN0IHRo
ZSBrZXl3b3JkcyBmb3IgZmlsbCBtb2RlLAorICAgIC8vIHRpbWluZyBmdW5jdGlvbnMgYW5kIGlu
ZmluaXRlIGl0ZXJhdGlvbi4gVGhpcyBtZWFucyB0aGF0IGFuaW1hdGlvbiBuYW1lcworICAgIC8v
IHRoYXQgYXJlIHRoZSBzYW1lIGFzIGtleXdvcmRzIChlLmcuICdmb3J3YXJkcycpIHdvbid0IGFs
d2F5cyBtYXRjaCBpbiB0aGUKKyAgICAvLyBzaG9ydGhhbmQuIEluIHRoYXQgY2FzZSB0aGUgYXV0
aG9ycyBzaG91bGQgYmUgdXNpbmcgbG9uZ2hhbmRzIChvcgorICAgIC8vIHJlY29uc2lkZXJpbmcg
dGhlaXIgYXBwcm9hY2gpLiBUaGlzIGlzIGNvdmVyZWQgYnkgdGhlIGFuaW1hdGlvbnMgc3BlYwor
ICAgIC8vIGJ1ZzogaHR0cHM6Ly93d3cudzMub3JnL0J1Z3MvUHVibGljL3Nob3dfYnVnLmNnaT9p
ZD0xNDc5MAorICAgIC8vIEFuZCBpbiB0aGUgc3BlYyAoZWRpdG9yJ3MgZHJhZnQpIGF0OgorICAg
IC8vIGh0dHA6Ly9kZXYudzMub3JnL2Nzc3dnL2NzczMtYW5pbWF0aW9ucy8jYW5pbWF0aW9uLXNo
b3J0aGFuZC1wcm9wZXJ0eQorICAgIHN0YXRpYyBjb25zdCBDU1NQcm9wZXJ0eUlEIGFuaW1hdGlv
blByb3BlcnRpZXNGb3JQYXJzaW5nW10gPSB7CisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5p
bWF0aW9uRHVyYXRpb24sCisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uVGltaW5n
RnVuY3Rpb24sCisgICAgICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uRGVsYXksCisgICAg
ICAgIENTU1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uSXRlcmF0aW9uQ291bnQsCisgICAgICAgIENT
U1Byb3BlcnR5V2Via2l0QW5pbWF0aW9uRGlyZWN0aW9uLAorICAgICAgICBDU1NQcm9wZXJ0eVdl
YmtpdEFuaW1hdGlvbkZpbGxNb2RlLAorICAgICAgICBDU1NQcm9wZXJ0eVdlYmtpdEFuaW1hdGlv
bk5hbWUKKyAgICB9OworCisgICAgREVGSU5FX1NUQVRJQ19MT0NBTChTdHlsZVByb3BlcnR5U2hv
cnRoYW5kLCB3ZWJraXRBbmltYXRpb25Mb25naGFuZHNGb3JQYXJzaW5nLCAoYW5pbWF0aW9uUHJv
cGVydGllc0ZvclBhcnNpbmcsIFdURl9BUlJBWV9MRU5HVEgoYW5pbWF0aW9uUHJvcGVydGllc0Zv
clBhcnNpbmcpKSk7CisgICAgcmV0dXJuIHdlYmtpdEFuaW1hdGlvbkxvbmdoYW5kc0ZvclBhcnNp
bmc7Cit9CisKIGNvbnN0IFN0eWxlUHJvcGVydHlTaG9ydGhhbmQmIHdlYmtpdEJvcmRlckFmdGVy
U2hvcnRoYW5kKCkKIHsKICAgICBzdGF0aWMgY29uc3QgQ1NTUHJvcGVydHlJRCBib3JkZXJBZnRl
clByb3BlcnRpZXNbXSA9IHsgQ1NTUHJvcGVydHlXZWJraXRCb3JkZXJBZnRlcldpZHRoLCBDU1NQ
cm9wZXJ0eVdlYmtpdEJvcmRlckFmdGVyU3R5bGUsIENTU1Byb3BlcnR5V2Via2l0Qm9yZGVyQWZ0
ZXJDb2xvciAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9TdHlsZVByb3BlcnR5
U2hvcnRoYW5kLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvU3R5bGVQcm9wZXJ0eVNob3J0aGFuZC5o
CmluZGV4IGVlMzMxYzcuLjcyZGE1MDEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Nzcy9T
dHlsZVByb3BlcnR5U2hvcnRoYW5kLmgKKysrIGIvU291cmNlL1dlYkNvcmUvY3NzL1N0eWxlUHJv
cGVydHlTaG9ydGhhbmQuaApAQCAtODAsNiArODAsNyBAQCBjb25zdCBTdHlsZVByb3BlcnR5U2hv
cnRoYW5kJiBvdXRsaW5lU2hvcnRoYW5kKCk7CiBjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5k
JiBvdmVyZmxvd1Nob3J0aGFuZCgpOwogY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgcGFk
ZGluZ1Nob3J0aGFuZCgpOwogY29uc3QgU3R5bGVQcm9wZXJ0eVNob3J0aGFuZCYgd2Via2l0QW5p
bWF0aW9uU2hvcnRoYW5kKCk7Citjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRoYW5kJiB3ZWJraXRB
bmltYXRpb25TaG9ydGhhbmRGb3JQYXJzaW5nKCk7CiBjb25zdCBTdHlsZVByb3BlcnR5U2hvcnRo
YW5kJiB3ZWJraXRCb3JkZXJBZnRlclNob3J0aGFuZCgpOwogY29uc3QgU3R5bGVQcm9wZXJ0eVNo
b3J0aGFuZCYgd2Via2l0Qm9yZGVyQmVmb3JlU2hvcnRoYW5kKCk7CiBjb25zdCBTdHlsZVByb3Bl
cnR5U2hvcnRoYW5kJiB3ZWJraXRCb3JkZXJFbmRTaG9ydGhhbmQoKTsKLS0gCjEuNy45LjUKCg==
</data>

          </attachment>
      

    </bug>

</bugzilla>