<?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>31432</bug_id>
          
          <creation_ts>2009-11-12 13:56:53 -0800</creation_ts>
          <short_desc>Web Inspector: profile timeline panel, fix obvious problems.</short_desc>
          <delta_ts>2009-11-12 15:07:38 -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>Web Inspector (Deprecated)</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>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Pavel Feldman">pfeldman</reporter>
          <assigned_to name="Pavel Feldman">pfeldman</assigned_to>
          <cc>bweinstein</cc>
    
    <cc>joepeck</cc>
    
    <cc>rik</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>163036</commentid>
    <comment_count>0</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-11-12 13:56:53 -0800</bug_when>
    <thetext>Start timeline for cnn.com load. Stop it in 30 seconds. Moving / resizing window is slow.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163038</commentid>
    <comment_count>1</comment_count>
      <attachid>43096</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-11-12 14:00:18 -0800</bug_when>
    <thetext>Created attachment 43096
[PATCH] fixes.

There are few lines removed in AbstractTimelinePanel. I don&apos;t understand why they were there. Any clues?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163053</commentid>
    <comment_count>2</comment_count>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2009-11-12 14:30:51 -0800</bug_when>
    <thetext>&gt; +    var index = this.className.indexOf(className);
&gt; +    if (index === -1)
&gt; +        return false;
&gt; +    var toTest = &quot; &quot; + this.className + &quot; &quot;;
&gt; +    return toTest.indexOf(&quot; &quot; + className + &quot; &quot;, index) !== -1;

Why the changes to hasStyleClass? I assume that using indexOf is faster then checking a regular expression. If that is the case then this looks like a good idea. In your experience is the string concatenation that expensive that its worth the early check?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163066</commentid>
    <comment_count>3</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-11-12 14:47:00 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; &gt; +    var index = this.className.indexOf(className);
&gt; &gt; +    if (index === -1)
&gt; &gt; +        return false;
&gt; &gt; +    var toTest = &quot; &quot; + this.className + &quot; &quot;;
&gt; &gt; +    return toTest.indexOf(&quot; &quot; + className + &quot; &quot;, index) !== -1;
&gt; 
&gt; Why the changes to hasStyleClass? I assume that using indexOf is faster then
&gt; checking a regular expression. If that is the case then this looks like a good
&gt; idea. In your experience is the string concatenation that expensive that its
&gt; worth the early check?

As I understand it creates two more objects in VM heap. Given that GC is not (yet?) generational, it&apos;ll make subsequent gc more expensive.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163067</commentid>
    <comment_count>4</comment_count>
      <attachid>43102</attachid>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-11-12 14:47:42 -0800</bug_when>
    <thetext>Created attachment 43102
[PATCH] Updating removeStyleClass as well.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>163074</commentid>
    <comment_count>5</comment_count>
    <who name="Pavel Feldman">pfeldman</who>
    <bug_when>2009-11-12 15:07:38 -0800</bug_when>
    <thetext>Committing to http://svn.webkit.org/repository/webkit/trunk ...
	M	WebCore/ChangeLog
	M	WebCore/inspector/front-end/AbstractTimelinePanel.js
	M	WebCore/inspector/front-end/TimelinePanel.js
	M	WebCore/inspector/front-end/utilities.js
Committed r50909</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>43096</attachid>
            <date>2009-11-12 14:00:18 -0800</date>
            <delta_ts>2009-11-12 14:47:42 -0800</delta_ts>
            <desc>[PATCH] fixes.</desc>
            <filename>profile</filename>
            <type>text/plain</type>
            <size>9421</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NDY5YjE0NC4uMDdjZjMxNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTIsNiArMiwyOSBAQAogCiAgICAgICAgIFJldmlld2VkIGJ5IFRp
bW90aHkgSGF0Y2hlci4KIAorICAgICAgICBXZWIgSW5zcGVjdG9yOiBwcm9maWxlIHRpbWVsaW5l
IHBhbmVsLCBmaXggb2J2aW91cyBwcm9ibGVtcy4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzE0MzIKKworICAgICAgICAqIGluc3BlY3Rvci9mcm9u
dC1lbmQvQWJzdHJhY3RUaW1lbGluZVBhbmVsLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkFi
c3RyYWN0VGltZWxpbmVQYW5lbC5wcm90b3R5cGUudXBkYXRlR3JhcGhEaXZpZGVyc0lmTmVlZGVk
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanM6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUuX3NldFdpbmRvd1Bvc2l0
aW9uKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZUNhbGN1bGF0b3IpOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lQ2FsY3VsYXRvci5wcm90b3R5cGUuZ2V0IG1pbmltdW1C
b3VuZGFyeSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVDYWxjdWxhdG9yLnByb3Rv
dHlwZS5nZXQgbWF4aW11bUJvdW5kYXJ5KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGlu
ZUNhbGN1bGF0b3IucHJvdG90eXBlLnJlc2V0KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1l
bGluZUNhbGN1bGF0b3IucHJvdG90eXBlLnVwZGF0ZUJvdW5kYXJpZXMpOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLlRpbWVsaW5lQ2FsY3VsYXRvci5wcm90b3R5cGUuZm9ybWF0VmFsdWUpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lR3JhcGgpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LlRpbWVsaW5lR3JhcGgucHJvdG90eXBlLnJlZnJlc2gpOgorICAgICAgICAqIGluc3BlY3Rvci9m
cm9udC1lbmQvdXRpbGl0aWVzLmpzOgorICAgICAgICAoRWxlbWVudC5wcm90b3R5cGUuaGFzU3R5
bGVDbGFzcyk6CisKKzIwMDktMTEtMTIgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltb3RoeSBIYXRjaGVyLgorCiAgICAgICAg
IFdlYiBJbnNwZWN0b3I6IERvIG5vdCBoaWdobGlnaHQgbm9kZSBvbiByZWZyZXNoLgogCiAgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMTQxOQpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Fic3RyYWN0VGltZWxpbmVQYW5lbC5q
cyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9BYnN0cmFjdFRpbWVsaW5lUGFuZWwuanMK
aW5kZXggNmJhOTE0Ni4uZWNkZGZmOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL0Fic3RyYWN0VGltZWxpbmVQYW5lbC5qcworKysgYi9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvQWJzdHJhY3RUaW1lbGluZVBhbmVsLmpzCkBAIC0yMDksMTMgKzIwOSw2IEBAIFdl
Ykluc3BlY3Rvci5BYnN0cmFjdFRpbWVsaW5lUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICAg
ICAgdGhpcy5uZWVkc1JlZnJlc2ggPSB0cnVlOwogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwog
ICAgICAgICB9Ci0KLSAgICAgICAgaWYgKGRvY3VtZW50LmJvZHkub2Zmc2V0V2lkdGggPD0gMCkg
ewotICAgICAgICAgICAgLy8gVGhlIHN0eWxlc2hlZXQgaGFzbid0IGxvYWRlZCB5ZXQgb3IgdGhl
IHdpbmRvdyBpcyBjbG9zZWQsCi0gICAgICAgICAgICAvLyBzbyB3ZSBjYW4ndCBjYWxjdWxhdGUg
d2hhdCBpcyBuZWVkLiBSZXR1cm4gZWFybHkuCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0g
ICAgICAgIH0KLQogICAgICAgICByZXR1cm4gdGhpcy5fdGltZWxpbmVHcmlkLnVwZGF0ZURpdmlk
ZXJzKGZvcmNlLCB0aGlzLmNhbGN1bGF0b3IpOwogICAgIH0sCiAKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVBhbmVsLmpzIGIvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanMKaW5kZXggOTE1YTM4MC4uNmI4NzE5YiAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanMKKysr
IGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanMKQEAgLTQxNywy
MSArNDE3LDIzIEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlwZSA9IHsKICAg
ICAgICAgdGhpcy5jYWxjdWxhdG9yLnJlc2V0KCk7CiAgICAgICAgIHRoaXMuaW52YWxpZGF0ZUFs
bEl0ZW1zKCk7CiAgICAgICAgIGlmICh0eXBlb2Ygc3RhcnQgPT09ICJudW1iZXIiKSB7Ci0gICAg
ICAgICAgaWYgKHN0YXJ0ID4gdGhpcy5fcmlnaHRSZXNpemVFbGVtZW50Lm9mZnNldExlZnQgLSAy
NSkKLSAgICAgICAgICAgICAgc3RhcnQgPSB0aGlzLl9yaWdodFJlc2l6ZUVsZW1lbnQub2Zmc2V0
TGVmdCAtIDI1OworICAgICAgICAgICAgaWYgKHN0YXJ0ID4gdGhpcy5fcmlnaHRSZXNpemVFbGVt
ZW50Lm9mZnNldExlZnQgLSAyNSkKKyAgICAgICAgICAgICAgICBzdGFydCA9IHRoaXMuX3JpZ2h0
UmVzaXplRWxlbWVudC5vZmZzZXRMZWZ0IC0gMjU7CiAKLSAgICAgICAgICB0aGlzLmNhbGN1bGF0
b3Iud2luZG93TGVmdCA9IHN0YXJ0IC8gdGhpcy5fb3ZlcnZpZXdHcmlkRWxlbWVudC5jbGllbnRX
aWR0aDsKLSAgICAgICAgICB0aGlzLl9sZWZ0UmVzaXplRWxlbWVudC5zdHlsZS5sZWZ0ID0gdGhp
cy5jYWxjdWxhdG9yLndpbmRvd0xlZnQqMTAwICsgIiUiOwotICAgICAgICAgIHRoaXMuX292ZXJ2
aWV3V2luZG93RWxlbWVudC5zdHlsZS5sZWZ0ID0gdGhpcy5jYWxjdWxhdG9yLndpbmRvd0xlZnQq
MTAwICsgIiUiOworICAgICAgICAgICAgdmFyIHdpbmRvd0xlZnQgPSBzdGFydCAvIHRoaXMuX292
ZXJ2aWV3R3JpZEVsZW1lbnQuY2xpZW50V2lkdGg7CisgICAgICAgICAgICB0aGlzLmNhbGN1bGF0
b3Iud2luZG93TGVmdCA9IHdpbmRvd0xlZnQ7CisgICAgICAgICAgICB0aGlzLl9sZWZ0UmVzaXpl
RWxlbWVudC5zdHlsZS5sZWZ0ID0gd2luZG93TGVmdCAqIDEwMCArICIlIjsKKyAgICAgICAgICAg
IHRoaXMuX292ZXJ2aWV3V2luZG93RWxlbWVudC5zdHlsZS5sZWZ0ID0gd2luZG93TGVmdCAqIDEw
MCArICIlIjsKICAgICAgICAgfQogICAgICAgICBpZiAodHlwZW9mIGVuZCA9PT0gIm51bWJlciIp
IHsKICAgICAgICAgICAgIGlmIChlbmQgPCB0aGlzLl9sZWZ0UmVzaXplRWxlbWVudC5vZmZzZXRM
ZWZ0ICsgMzApCiAgICAgICAgICAgICAgICAgZW5kID0gdGhpcy5fbGVmdFJlc2l6ZUVsZW1lbnQu
b2Zmc2V0TGVmdCArIDMwOwogCi0gICAgICAgICAgICB0aGlzLmNhbGN1bGF0b3Iud2luZG93Umln
aHQgPSBlbmQgLyB0aGlzLl9vdmVydmlld0dyaWRFbGVtZW50LmNsaWVudFdpZHRoOwotICAgICAg
ICAgICAgdGhpcy5fcmlnaHRSZXNpemVFbGVtZW50LnN0eWxlLmxlZnQgPSB0aGlzLmNhbGN1bGF0
b3Iud2luZG93UmlnaHQqMTAwICsgIiUiOworICAgICAgICAgICAgdmFyIHdpbmRvd1JpZ2h0ID0g
ZW5kIC8gdGhpcy5fb3ZlcnZpZXdHcmlkRWxlbWVudC5jbGllbnRXaWR0aDsKKyAgICAgICAgICAg
IHRoaXMuY2FsY3VsYXRvci53aW5kb3dSaWdodCA9IHdpbmRvd1JpZ2h0OworICAgICAgICAgICAg
dGhpcy5fcmlnaHRSZXNpemVFbGVtZW50LnN0eWxlLmxlZnQgPSB3aW5kb3dSaWdodCAqIDEwMCAr
ICIlIjsKICAgICAgICAgfQotICAgICAgICB0aGlzLl9vdmVydmlld1dpbmRvd0VsZW1lbnQuc3R5
bGUud2lkdGggPSAodGhpcy5jYWxjdWxhdG9yLndpbmRvd1JpZ2h0IC0gdGhpcy5jYWxjdWxhdG9y
LndpbmRvd0xlZnQpKjEwMCArICIlIjsKKyAgICAgICAgdGhpcy5fb3ZlcnZpZXdXaW5kb3dFbGVt
ZW50LnN0eWxlLndpZHRoID0gKHRoaXMuY2FsY3VsYXRvci53aW5kb3dSaWdodCAtIHRoaXMuY2Fs
Y3VsYXRvci53aW5kb3dMZWZ0KSAqIDEwMCArICIlIjsKICAgICAgICAgdGhpcy5uZWVkc1JlZnJl
c2ggPSB0cnVlOwogICAgIH0sCiAKQEAgLTU3Myw2ICs1NzUsNyBAQCBXZWJJbnNwZWN0b3IuVGlt
ZWxpbmVDYWxjdWxhdG9yID0gZnVuY3Rpb24oKQogICAgIFdlYkluc3BlY3Rvci5BYnN0cmFjdFRp
bWVsaW5lQ2FsY3VsYXRvci5jYWxsKHRoaXMpOwogICAgIHRoaXMud2luZG93TGVmdCA9IDAuMDsK
ICAgICB0aGlzLndpbmRvd1JpZ2h0ID0gMS4wOworICAgIHRoaXMuX3VpU3RyaW5nID0gV2ViSW5z
cGVjdG9yLlVJU3RyaW5nLmJpbmQoV2ViSW5zcGVjdG9yKTsKIH0KIAogV2ViSW5zcGVjdG9yLlRp
bWVsaW5lQ2FsY3VsYXRvci5wcm90b3R5cGUgPSB7CkBAIC01OTUsMjIgKzU5OCwzNCBAQCBXZWJJ
bnNwZWN0b3IuVGltZWxpbmVDYWxjdWxhdG9yLnByb3RvdHlwZSA9IHsKIAogICAgIGdldCBtaW5p
bXVtQm91bmRhcnkoKQogICAgIHsKKyAgICAgICAgaWYgKHR5cGVvZiB0aGlzLl9taW5pbXVtQm91
bmRhcnkgPT09ICJudW1iZXIiKQorICAgICAgICAgICAgcmV0dXJuIHRoaXMuX21pbmltdW1Cb3Vu
ZGFyeTsKKwogICAgICAgICBpZiAodHlwZW9mIHRoaXMud2luZG93TGVmdCA9PT0gIm51bWJlciIp
Ci0gICAgICAgICAgICByZXR1cm4gdGhpcy5fYWJzb2x1dGVNaW5pbXVtQm91bmRhcnkgKyB0aGlz
LndpbmRvd0xlZnQgKiAodGhpcy5fYWJzb2x1dGVNYXhpbXVtQm91bmRhcnkgLSB0aGlzLl9hYnNv
bHV0ZU1pbmltdW1Cb3VuZGFyeSk7Ci0gICAgICAgIHJldHVybiB0aGlzLl9hYnNvbHV0ZU1pbmlt
dW1Cb3VuZGFyeTsKKyAgICAgICAgICAgIHRoaXMuX21pbmltdW1Cb3VuZGFyeSA9IHRoaXMuX2Fi
c29sdXRlTWluaW11bUJvdW5kYXJ5ICsgdGhpcy53aW5kb3dMZWZ0ICogKHRoaXMuX2Fic29sdXRl
TWF4aW11bUJvdW5kYXJ5IC0gdGhpcy5fYWJzb2x1dGVNaW5pbXVtQm91bmRhcnkpOworICAgICAg
ICBlbHNlCisgICAgICAgICAgICB0aGlzLl9taW5pbXVtQm91bmRhcnkgPSB0aGlzLl9hYnNvbHV0
ZU1pbmltdW1Cb3VuZGFyeTsKKyAgICAgICAgcmV0dXJuIHRoaXMuX21pbmltdW1Cb3VuZGFyeTsK
ICAgICB9LAogCiAgICAgZ2V0IG1heGltdW1Cb3VuZGFyeSgpCiAgICAgeworICAgICAgICBpZiAo
dHlwZW9mIHRoaXMuX21heGltdW1Cb3VuZGFyeSA9PT0gIm51bWJlciIpCisgICAgICAgICAgICBy
ZXR1cm4gdGhpcy5fbWF4aW11bUJvdW5kYXJ5OworCiAgICAgICAgIGlmICh0eXBlb2YgdGhpcy53
aW5kb3dMZWZ0ID09PSAibnVtYmVyIikKLSAgICAgICAgICAgIHJldHVybiB0aGlzLl9hYnNvbHV0
ZU1pbmltdW1Cb3VuZGFyeSArIHRoaXMud2luZG93UmlnaHQgKiAodGhpcy5fYWJzb2x1dGVNYXhp
bXVtQm91bmRhcnkgLSB0aGlzLl9hYnNvbHV0ZU1pbmltdW1Cb3VuZGFyeSk7Ci0gICAgICAgIHJl
dHVybiB0aGlzLl9hYnNvbHV0ZU1heGltdW1Cb3VuZGFyeTsKKyAgICAgICAgICAgIHRoaXMuX21h
eGltdW1Cb3VuZGFyeSA9IHRoaXMuX2Fic29sdXRlTWluaW11bUJvdW5kYXJ5ICsgdGhpcy53aW5k
b3dSaWdodCAqICh0aGlzLl9hYnNvbHV0ZU1heGltdW1Cb3VuZGFyeSAtIHRoaXMuX2Fic29sdXRl
TWluaW11bUJvdW5kYXJ5KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgdGhpcy5fbWF4aW11
bUJvdW5kYXJ5ID0gdGhpcy5fYWJzb2x1dGVNYXhpbXVtQm91bmRhcnk7CisgICAgICAgIHJldHVy
biB0aGlzLl9tYXhpbXVtQm91bmRhcnk7CiAgICAgfSwKIAogICAgIHJlc2V0OiBmdW5jdGlvbigp
CiAgICAgewogICAgICAgICBkZWxldGUgdGhpcy5fYWJzb2x1dGVNaW5pbXVtQm91bmRhcnk7CiAg
ICAgICAgIGRlbGV0ZSB0aGlzLl9hYnNvbHV0ZU1heGltdW1Cb3VuZGFyeTsKKyAgICAgICAgZGVs
ZXRlIHRoaXMuX21pbmltdW1Cb3VuZGFyeTsKKyAgICAgICAgZGVsZXRlIHRoaXMuX21heGltdW1C
b3VuZGFyeTsKICAgICB9LAogCiAgICAgdXBkYXRlQm91bmRhcmllczogZnVuY3Rpb24ocmVjb3Jk
KQpAQCAtNjIxLDEyICs2MzYsMTQgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lQ2FsY3VsYXRvci5w
cm90b3R5cGUgPSB7CiAKICAgICAgICAgaWYgKHR5cGVvZiB0aGlzLl9hYnNvbHV0ZU1pbmltdW1C
b3VuZGFyeSA9PT0gInVuZGVmaW5lZCIgfHwgbG93ZXJCb3VuZCA8IHRoaXMuX2Fic29sdXRlTWlu
aW11bUJvdW5kYXJ5KSB7CiAgICAgICAgICAgICB0aGlzLl9hYnNvbHV0ZU1pbmltdW1Cb3VuZGFy
eSA9IGxvd2VyQm91bmQ7CisgICAgICAgICAgICBkZWxldGUgdGhpcy5fbWluaW11bUJvdW5kYXJ5
OwogICAgICAgICAgICAgZGlkQ2hhbmdlID0gdHJ1ZTsKICAgICAgICAgfQogCiAgICAgICAgIHZh
ciB1cHBlckJvdW5kID0gcmVjb3JkLmVuZFRpbWU7CiAgICAgICAgIGlmICh0eXBlb2YgdGhpcy5f
YWJzb2x1dGVNYXhpbXVtQm91bmRhcnkgPT09ICJ1bmRlZmluZWQiIHx8IHVwcGVyQm91bmQgPiB0
aGlzLl9hYnNvbHV0ZU1heGltdW1Cb3VuZGFyeSkgewogICAgICAgICAgICAgdGhpcy5fYWJzb2x1
dGVNYXhpbXVtQm91bmRhcnkgPSB1cHBlckJvdW5kOworICAgICAgICAgICAgZGVsZXRlIHRoaXMu
X21heGltdW1Cb3VuZGFyeTsKICAgICAgICAgICAgIGRpZENoYW5nZSA9IHRydWU7CiAgICAgICAg
IH0KIApAQCAtNjM1LDcgKzY1Miw3IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZUNhbGN1bGF0b3Iu
cHJvdG90eXBlID0gewogCiAgICAgZm9ybWF0VmFsdWU6IGZ1bmN0aW9uKHZhbHVlKQogICAgIHsK
LSAgICAgICAgcmV0dXJuIE51bWJlci5zZWNvbmRzVG9TdHJpbmcodmFsdWUgKyB0aGlzLm1pbmlt
dW1Cb3VuZGFyeSAtIHRoaXMuX2Fic29sdXRlTWluaW11bUJvdW5kYXJ5LCBXZWJJbnNwZWN0b3Iu
VUlTdHJpbmcuYmluZChXZWJJbnNwZWN0b3IpKTsKKyAgICAgICAgcmV0dXJuIE51bWJlci5zZWNv
bmRzVG9TdHJpbmcodmFsdWUgKyB0aGlzLm1pbmltdW1Cb3VuZGFyeSAtIHRoaXMuX2Fic29sdXRl
TWluaW11bUJvdW5kYXJ5LCB0aGlzLl91aVN0cmluZyk7CiAgICAgfQogfQogCkBAIC03MDAsNiAr
NzE3LDcgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lR3JhcGggPSBmdW5jdGlvbihyZWNvcmQpCiAg
ICAgdGhpcy5fYmFyQXJlYUVsZW1lbnQuYXBwZW5kQ2hpbGQodGhpcy5fYmFyRWxlbWVudCk7CiAK
ICAgICB0aGlzLl9ncmFwaEVsZW1lbnQuYWRkU3R5bGVDbGFzcygidGltZWxpbmUtY2F0ZWdvcnkt
IiArIHJlY29yZC5jYXRlZ29yeS5uYW1lKTsKKyAgICB0aGlzLl9oaWRkZW4gPSBmYWxzZTsKIH0K
IAogV2ViSW5zcGVjdG9yLlRpbWVsaW5lR3JhcGgucHJvdG90eXBlID0gewpAQCAtNzIwLDEzICs3
MzgsMTkgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lR3JhcGgucHJvdG90eXBlID0gewogICAgICAg
ICB0aGlzLl9wZXJjZW50YWdlcyA9IHBlcmNlbnRhZ2VzOwogCiAgICAgICAgIGlmIChwZXJjZW50
YWdlcy5zdGFydCA+IDEwMCB8fCBwZXJjZW50YWdlcy5lbmQgPCAwKSB7Ci0gICAgICAgICAgICB0
aGlzLl9ncmFwaEVsZW1lbnQuYWRkU3R5bGVDbGFzcygiaGlkZGVuIik7Ci0gICAgICAgICAgICB0
aGlzLnJlY29yZC5faXRlbXNUcmVlRWxlbWVudC5saXN0SXRlbUVsZW1lbnQuYWRkU3R5bGVDbGFz
cygiaGlkZGVuIik7CisgICAgICAgICAgICBpZiAoIXRoaXMuX2hpZGRlbikgeworICAgICAgICAg
ICAgICAgIHRoaXMuX2dyYXBoRWxlbWVudC5hZGRTdHlsZUNsYXNzKCJoaWRkZW4iKTsKKyAgICAg
ICAgICAgICAgICB0aGlzLnJlY29yZC5faXRlbXNUcmVlRWxlbWVudC5saXN0SXRlbUVsZW1lbnQu
YWRkU3R5bGVDbGFzcygiaGlkZGVuIik7CisgICAgICAgICAgICAgICAgdGhpcy5faGlkZGVuID0g
dHJ1ZTsKKyAgICAgICAgICAgIH0KICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgIHRoaXMu
X2JhckVsZW1lbnQuc3R5bGUuc2V0UHJvcGVydHkoImxlZnQiLCBwZXJjZW50YWdlcy5zdGFydCAr
ICIlIik7CiAgICAgICAgICAgICB0aGlzLl9iYXJFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCJy
aWdodCIsICgxMDAgLSBwZXJjZW50YWdlcy5lbmQpICsgIiUiKTsKLSAgICAgICAgICAgIHRoaXMu
X2dyYXBoRWxlbWVudC5yZW1vdmVTdHlsZUNsYXNzKCJoaWRkZW4iKTsKLSAgICAgICAgICAgIHRo
aXMucmVjb3JkLl9pdGVtc1RyZWVFbGVtZW50Lmxpc3RJdGVtRWxlbWVudC5yZW1vdmVTdHlsZUNs
YXNzKCJoaWRkZW4iKTsKKyAgICAgICAgICAgIGlmICh0aGlzLl9oaWRkZW4pIHsKKyAgICAgICAg
ICAgICAgICB0aGlzLl9ncmFwaEVsZW1lbnQucmVtb3ZlU3R5bGVDbGFzcygiaGlkZGVuIik7Cisg
ICAgICAgICAgICAgICAgdGhpcy5yZWNvcmQuX2l0ZW1zVHJlZUVsZW1lbnQubGlzdEl0ZW1FbGVt
ZW50LnJlbW92ZVN0eWxlQ2xhc3MoImhpZGRlbiIpOworICAgICAgICAgICAgICAgIHRoaXMuX2hp
ZGRlbiA9IGZhbHNlOworICAgICAgICAgICAgfQogICAgICAgICB9CiAgICAgICAgIHZhciB0b29s
dGlwID0gKGxhYmVscy50b29sdGlwIHx8ICIiKTsKICAgICAgICAgdGhpcy5fYmFyRWxlbWVudC50
aXRsZSA9IHRvb2x0aXA7CmRpZmYgLS1naXQgYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9udC1lbmQv
dXRpbGl0aWVzLmpzIGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL3V0aWxpdGllcy5qcwpp
bmRleCBmM2UxOGViLi5lMzAwMWEyIDEwMDY0NAotLS0gYS9XZWJDb3JlL2luc3BlY3Rvci9mcm9u
dC1lbmQvdXRpbGl0aWVzLmpzCisrKyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC91dGls
aXRpZXMuanMKQEAgLTE3Niw4ICsxNzYsMTIgQEAgRWxlbWVudC5wcm90b3R5cGUuaGFzU3R5bGVD
bGFzcyA9IGZ1bmN0aW9uKGNsYXNzTmFtZSkKICAgICAvLyBUZXN0IGZvciB0aGUgc2ltcGxlIGNh
c2UgYmVmb3JlIHVzaW5nIGEgUmVnRXhwLgogICAgIGlmICh0aGlzLmNsYXNzTmFtZSA9PT0gY2xh
c3NOYW1lKQogICAgICAgICByZXR1cm4gdHJ1ZTsKLSAgICB2YXIgcmVnZXggPSBuZXcgUmVnRXhw
KCIoXnxcXHMpIiArIGNsYXNzTmFtZS5lc2NhcGVGb3JSZWdFeHAoKSArICIoJHxcXHMpIik7Ci0g
ICAgcmV0dXJuIHJlZ2V4LnRlc3QodGhpcy5jbGFzc05hbWUpOworCisgICAgdmFyIGluZGV4ID0g
dGhpcy5jbGFzc05hbWUuaW5kZXhPZihjbGFzc05hbWUpOworICAgIGlmIChpbmRleCA9PT0gLTEp
CisgICAgICAgIHJldHVybiBmYWxzZTsKKyAgICB2YXIgdG9UZXN0ID0gIiAiICsgdGhpcy5jbGFz
c05hbWUgKyAiICI7CisgICAgcmV0dXJuIHRvVGVzdC5pbmRleE9mKCIgIiArIGNsYXNzTmFtZSAr
ICIgIiwgaW5kZXgpICE9PSAtMTsKIH0KIAogRWxlbWVudC5wcm90b3R5cGUucG9zaXRpb25BdCA9
IGZ1bmN0aW9uKHgsIHkpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>43102</attachid>
            <date>2009-11-12 14:47:42 -0800</date>
            <delta_ts>2009-11-12 14:57:35 -0800</delta_ts>
            <desc>[PATCH] Updating removeStyleClass as well.</desc>
            <filename>profile</filename>
            <type>text/plain</type>
            <size>10508</size>
            <attacher name="Pavel Feldman">pfeldman</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYkNvcmUvQ2hhbmdlTG9nIGIvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXgg
NDY5YjE0NC4uMDdjZjMxNyAxMDA2NDQKLS0tIGEvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvV2Vi
Q29yZS9DaGFuZ2VMb2cKQEAgLTIsNiArMiwyOSBAQAogCiAgICAgICAgIFJldmlld2VkIGJ5IFRp
bW90aHkgSGF0Y2hlci4KIAorICAgICAgICBXZWIgSW5zcGVjdG9yOiBwcm9maWxlIHRpbWVsaW5l
IHBhbmVsLCBmaXggb2J2aW91cyBwcm9ibGVtcy4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzE0MzIKKworICAgICAgICAqIGluc3BlY3Rvci9mcm9u
dC1lbmQvQWJzdHJhY3RUaW1lbGluZVBhbmVsLmpzOgorICAgICAgICAoV2ViSW5zcGVjdG9yLkFi
c3RyYWN0VGltZWxpbmVQYW5lbC5wcm90b3R5cGUudXBkYXRlR3JhcGhEaXZpZGVyc0lmTmVlZGVk
KToKKyAgICAgICAgKiBpbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanM6CisgICAg
ICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVQYW5lbC5wcm90b3R5cGUuX3NldFdpbmRvd1Bvc2l0
aW9uKToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGluZUNhbGN1bGF0b3IpOgorICAgICAg
ICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lQ2FsY3VsYXRvci5wcm90b3R5cGUuZ2V0IG1pbmltdW1C
b3VuZGFyeSk6CisgICAgICAgIChXZWJJbnNwZWN0b3IuVGltZWxpbmVDYWxjdWxhdG9yLnByb3Rv
dHlwZS5nZXQgbWF4aW11bUJvdW5kYXJ5KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1lbGlu
ZUNhbGN1bGF0b3IucHJvdG90eXBlLnJlc2V0KToKKyAgICAgICAgKFdlYkluc3BlY3Rvci5UaW1l
bGluZUNhbGN1bGF0b3IucHJvdG90eXBlLnVwZGF0ZUJvdW5kYXJpZXMpOgorICAgICAgICAoV2Vi
SW5zcGVjdG9yLlRpbWVsaW5lQ2FsY3VsYXRvci5wcm90b3R5cGUuZm9ybWF0VmFsdWUpOgorICAg
ICAgICAoV2ViSW5zcGVjdG9yLlRpbWVsaW5lR3JhcGgpOgorICAgICAgICAoV2ViSW5zcGVjdG9y
LlRpbWVsaW5lR3JhcGgucHJvdG90eXBlLnJlZnJlc2gpOgorICAgICAgICAqIGluc3BlY3Rvci9m
cm9udC1lbmQvdXRpbGl0aWVzLmpzOgorICAgICAgICAoRWxlbWVudC5wcm90b3R5cGUuaGFzU3R5
bGVDbGFzcyk6CisKKzIwMDktMTEtMTIgIFBhdmVsIEZlbGRtYW4gIDxwZmVsZG1hbkBjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgVGltb3RoeSBIYXRjaGVyLgorCiAgICAgICAg
IFdlYiBJbnNwZWN0b3I6IERvIG5vdCBoaWdobGlnaHQgbm9kZSBvbiByZWZyZXNoLgogCiAgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMTQxOQpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL0Fic3RyYWN0VGltZWxpbmVQYW5lbC5q
cyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zyb250LWVuZC9BYnN0cmFjdFRpbWVsaW5lUGFuZWwuanMK
aW5kZXggNmJhOTE0Ni4uZWNkZGZmOSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJv
bnQtZW5kL0Fic3RyYWN0VGltZWxpbmVQYW5lbC5qcworKysgYi9XZWJDb3JlL2luc3BlY3Rvci9m
cm9udC1lbmQvQWJzdHJhY3RUaW1lbGluZVBhbmVsLmpzCkBAIC0yMDksMTMgKzIwOSw2IEBAIFdl
Ykluc3BlY3Rvci5BYnN0cmFjdFRpbWVsaW5lUGFuZWwucHJvdG90eXBlID0gewogICAgICAgICAg
ICAgdGhpcy5uZWVkc1JlZnJlc2ggPSB0cnVlOwogICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwog
ICAgICAgICB9Ci0KLSAgICAgICAgaWYgKGRvY3VtZW50LmJvZHkub2Zmc2V0V2lkdGggPD0gMCkg
ewotICAgICAgICAgICAgLy8gVGhlIHN0eWxlc2hlZXQgaGFzbid0IGxvYWRlZCB5ZXQgb3IgdGhl
IHdpbmRvdyBpcyBjbG9zZWQsCi0gICAgICAgICAgICAvLyBzbyB3ZSBjYW4ndCBjYWxjdWxhdGUg
d2hhdCBpcyBuZWVkLiBSZXR1cm4gZWFybHkuCi0gICAgICAgICAgICByZXR1cm4gZmFsc2U7Ci0g
ICAgICAgIH0KLQogICAgICAgICByZXR1cm4gdGhpcy5fdGltZWxpbmVHcmlkLnVwZGF0ZURpdmlk
ZXJzKGZvcmNlLCB0aGlzLmNhbGN1bGF0b3IpOwogICAgIH0sCiAKZGlmZiAtLWdpdCBhL1dlYkNv
cmUvaW5zcGVjdG9yL2Zyb250LWVuZC9UaW1lbGluZVBhbmVsLmpzIGIvV2ViQ29yZS9pbnNwZWN0
b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanMKaW5kZXggOTE1YTM4MC4uMTFjYWRmMyAxMDA2
NDQKLS0tIGEvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanMKKysr
IGIvV2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL1RpbWVsaW5lUGFuZWwuanMKQEAgLTQxNywy
MSArNDE3LDIzIEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZVBhbmVsLnByb3RvdHlwZSA9IHsKICAg
ICAgICAgdGhpcy5jYWxjdWxhdG9yLnJlc2V0KCk7CiAgICAgICAgIHRoaXMuaW52YWxpZGF0ZUFs
bEl0ZW1zKCk7CiAgICAgICAgIGlmICh0eXBlb2Ygc3RhcnQgPT09ICJudW1iZXIiKSB7Ci0gICAg
ICAgICAgaWYgKHN0YXJ0ID4gdGhpcy5fcmlnaHRSZXNpemVFbGVtZW50Lm9mZnNldExlZnQgLSAy
NSkKLSAgICAgICAgICAgICAgc3RhcnQgPSB0aGlzLl9yaWdodFJlc2l6ZUVsZW1lbnQub2Zmc2V0
TGVmdCAtIDI1OworICAgICAgICAgICAgaWYgKHN0YXJ0ID4gdGhpcy5fcmlnaHRSZXNpemVFbGVt
ZW50Lm9mZnNldExlZnQgLSAyNSkKKyAgICAgICAgICAgICAgICBzdGFydCA9IHRoaXMuX3JpZ2h0
UmVzaXplRWxlbWVudC5vZmZzZXRMZWZ0IC0gMjU7CiAKLSAgICAgICAgICB0aGlzLmNhbGN1bGF0
b3Iud2luZG93TGVmdCA9IHN0YXJ0IC8gdGhpcy5fb3ZlcnZpZXdHcmlkRWxlbWVudC5jbGllbnRX
aWR0aDsKLSAgICAgICAgICB0aGlzLl9sZWZ0UmVzaXplRWxlbWVudC5zdHlsZS5sZWZ0ID0gdGhp
cy5jYWxjdWxhdG9yLndpbmRvd0xlZnQqMTAwICsgIiUiOwotICAgICAgICAgIHRoaXMuX292ZXJ2
aWV3V2luZG93RWxlbWVudC5zdHlsZS5sZWZ0ID0gdGhpcy5jYWxjdWxhdG9yLndpbmRvd0xlZnQq
MTAwICsgIiUiOworICAgICAgICAgICAgdmFyIHdpbmRvd0xlZnQgPSBzdGFydCAvIHRoaXMuX292
ZXJ2aWV3R3JpZEVsZW1lbnQuY2xpZW50V2lkdGg7CisgICAgICAgICAgICB0aGlzLmNhbGN1bGF0
b3Iud2luZG93TGVmdCA9IHdpbmRvd0xlZnQ7CisgICAgICAgICAgICB0aGlzLl9sZWZ0UmVzaXpl
RWxlbWVudC5zdHlsZS5sZWZ0ID0gd2luZG93TGVmdCAqIDEwMCArICIlIjsKKyAgICAgICAgICAg
IHRoaXMuX292ZXJ2aWV3V2luZG93RWxlbWVudC5zdHlsZS5sZWZ0ID0gd2luZG93TGVmdCAqIDEw
MCArICIlIjsKICAgICAgICAgfQogICAgICAgICBpZiAodHlwZW9mIGVuZCA9PT0gIm51bWJlciIp
IHsKICAgICAgICAgICAgIGlmIChlbmQgPCB0aGlzLl9sZWZ0UmVzaXplRWxlbWVudC5vZmZzZXRM
ZWZ0ICsgMzApCiAgICAgICAgICAgICAgICAgZW5kID0gdGhpcy5fbGVmdFJlc2l6ZUVsZW1lbnQu
b2Zmc2V0TGVmdCArIDMwOwogCi0gICAgICAgICAgICB0aGlzLmNhbGN1bGF0b3Iud2luZG93Umln
aHQgPSBlbmQgLyB0aGlzLl9vdmVydmlld0dyaWRFbGVtZW50LmNsaWVudFdpZHRoOwotICAgICAg
ICAgICAgdGhpcy5fcmlnaHRSZXNpemVFbGVtZW50LnN0eWxlLmxlZnQgPSB0aGlzLmNhbGN1bGF0
b3Iud2luZG93UmlnaHQqMTAwICsgIiUiOworICAgICAgICAgICAgdmFyIHdpbmRvd1JpZ2h0ID0g
ZW5kIC8gdGhpcy5fb3ZlcnZpZXdHcmlkRWxlbWVudC5jbGllbnRXaWR0aDsKKyAgICAgICAgICAg
IHRoaXMuY2FsY3VsYXRvci53aW5kb3dSaWdodCA9IHdpbmRvd1JpZ2h0OworICAgICAgICAgICAg
dGhpcy5fcmlnaHRSZXNpemVFbGVtZW50LnN0eWxlLmxlZnQgPSB3aW5kb3dSaWdodCAqIDEwMCAr
ICIlIjsKICAgICAgICAgfQotICAgICAgICB0aGlzLl9vdmVydmlld1dpbmRvd0VsZW1lbnQuc3R5
bGUud2lkdGggPSAodGhpcy5jYWxjdWxhdG9yLndpbmRvd1JpZ2h0IC0gdGhpcy5jYWxjdWxhdG9y
LndpbmRvd0xlZnQpKjEwMCArICIlIjsKKyAgICAgICAgdGhpcy5fb3ZlcnZpZXdXaW5kb3dFbGVt
ZW50LnN0eWxlLndpZHRoID0gKHRoaXMuY2FsY3VsYXRvci53aW5kb3dSaWdodCAtIHRoaXMuY2Fs
Y3VsYXRvci53aW5kb3dMZWZ0KSAqIDEwMCArICIlIjsKICAgICAgICAgdGhpcy5uZWVkc1JlZnJl
c2ggPSB0cnVlOwogICAgIH0sCiAKQEAgLTU0MCw3ICs1NDIsOCBAQCBXZWJJbnNwZWN0b3IuVGlt
ZWxpbmVSZWNvcmRUcmVlRWxlbWVudC5wcm90b3R5cGUgPSB7CiAgICAgICAgIH0KICAgICB9LAog
Ci0gICAgX3VwZGF0ZURldGFpbHM6IGZ1bmN0aW9uKCkgeworICAgIF91cGRhdGVEZXRhaWxzOiBm
dW5jdGlvbigpCisgICAgewogICAgICAgICBpZiAodGhpcy5kYXRhRWxlbWVudCAmJiB0aGlzLl9y
ZWNvcmQuZGV0YWlscyAhPT0gdGhpcy5fZGV0YWlscykgewogICAgICAgICAgICAgdGhpcy5fZGV0
YWlscyA9IHRoaXMuX3JlY29yZC5kZXRhaWxzOwogICAgICAgICAgICAgdGhpcy5kYXRhRWxlbWVu
dC50ZXh0Q29udGVudCA9ICIoIiArIHRoaXMuX2RldGFpbHMgKyAiKSI7CkBAIC01NzMsNiArNTc2
LDcgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lQ2FsY3VsYXRvciA9IGZ1bmN0aW9uKCkKICAgICBX
ZWJJbnNwZWN0b3IuQWJzdHJhY3RUaW1lbGluZUNhbGN1bGF0b3IuY2FsbCh0aGlzKTsKICAgICB0
aGlzLndpbmRvd0xlZnQgPSAwLjA7CiAgICAgdGhpcy53aW5kb3dSaWdodCA9IDEuMDsKKyAgICB0
aGlzLl91aVN0cmluZyA9IFdlYkluc3BlY3Rvci5VSVN0cmluZy5iaW5kKFdlYkluc3BlY3Rvcik7
CiB9CiAKIFdlYkluc3BlY3Rvci5UaW1lbGluZUNhbGN1bGF0b3IucHJvdG90eXBlID0gewpAQCAt
NTk1LDIyICs1OTksMzQgQEAgV2ViSW5zcGVjdG9yLlRpbWVsaW5lQ2FsY3VsYXRvci5wcm90b3R5
cGUgPSB7CiAKICAgICBnZXQgbWluaW11bUJvdW5kYXJ5KCkKICAgICB7CisgICAgICAgIGlmICh0
eXBlb2YgdGhpcy5fbWluaW11bUJvdW5kYXJ5ID09PSAibnVtYmVyIikKKyAgICAgICAgICAgIHJl
dHVybiB0aGlzLl9taW5pbXVtQm91bmRhcnk7CisKICAgICAgICAgaWYgKHR5cGVvZiB0aGlzLndp
bmRvd0xlZnQgPT09ICJudW1iZXIiKQotICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2Fic29sdXRl
TWluaW11bUJvdW5kYXJ5ICsgdGhpcy53aW5kb3dMZWZ0ICogKHRoaXMuX2Fic29sdXRlTWF4aW11
bUJvdW5kYXJ5IC0gdGhpcy5fYWJzb2x1dGVNaW5pbXVtQm91bmRhcnkpOwotICAgICAgICByZXR1
cm4gdGhpcy5fYWJzb2x1dGVNaW5pbXVtQm91bmRhcnk7CisgICAgICAgICAgICB0aGlzLl9taW5p
bXVtQm91bmRhcnkgPSB0aGlzLl9hYnNvbHV0ZU1pbmltdW1Cb3VuZGFyeSArIHRoaXMud2luZG93
TGVmdCAqICh0aGlzLl9hYnNvbHV0ZU1heGltdW1Cb3VuZGFyeSAtIHRoaXMuX2Fic29sdXRlTWlu
aW11bUJvdW5kYXJ5KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgdGhpcy5fbWluaW11bUJv
dW5kYXJ5ID0gdGhpcy5fYWJzb2x1dGVNaW5pbXVtQm91bmRhcnk7CisgICAgICAgIHJldHVybiB0
aGlzLl9taW5pbXVtQm91bmRhcnk7CiAgICAgfSwKIAogICAgIGdldCBtYXhpbXVtQm91bmRhcnko
KQogICAgIHsKKyAgICAgICAgaWYgKHR5cGVvZiB0aGlzLl9tYXhpbXVtQm91bmRhcnkgPT09ICJu
dW1iZXIiKQorICAgICAgICAgICAgcmV0dXJuIHRoaXMuX21heGltdW1Cb3VuZGFyeTsKKwogICAg
ICAgICBpZiAodHlwZW9mIHRoaXMud2luZG93TGVmdCA9PT0gIm51bWJlciIpCi0gICAgICAgICAg
ICByZXR1cm4gdGhpcy5fYWJzb2x1dGVNaW5pbXVtQm91bmRhcnkgKyB0aGlzLndpbmRvd1JpZ2h0
ICogKHRoaXMuX2Fic29sdXRlTWF4aW11bUJvdW5kYXJ5IC0gdGhpcy5fYWJzb2x1dGVNaW5pbXVt
Qm91bmRhcnkpOwotICAgICAgICByZXR1cm4gdGhpcy5fYWJzb2x1dGVNYXhpbXVtQm91bmRhcnk7
CisgICAgICAgICAgICB0aGlzLl9tYXhpbXVtQm91bmRhcnkgPSB0aGlzLl9hYnNvbHV0ZU1pbmlt
dW1Cb3VuZGFyeSArIHRoaXMud2luZG93UmlnaHQgKiAodGhpcy5fYWJzb2x1dGVNYXhpbXVtQm91
bmRhcnkgLSB0aGlzLl9hYnNvbHV0ZU1pbmltdW1Cb3VuZGFyeSk7CisgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgIHRoaXMuX21heGltdW1Cb3VuZGFyeSA9IHRoaXMuX2Fic29sdXRlTWF4aW11bUJv
dW5kYXJ5OworICAgICAgICByZXR1cm4gdGhpcy5fbWF4aW11bUJvdW5kYXJ5OwogICAgIH0sCiAK
ICAgICByZXNldDogZnVuY3Rpb24oKQogICAgIHsKICAgICAgICAgZGVsZXRlIHRoaXMuX2Fic29s
dXRlTWluaW11bUJvdW5kYXJ5OwogICAgICAgICBkZWxldGUgdGhpcy5fYWJzb2x1dGVNYXhpbXVt
Qm91bmRhcnk7CisgICAgICAgIGRlbGV0ZSB0aGlzLl9taW5pbXVtQm91bmRhcnk7CisgICAgICAg
IGRlbGV0ZSB0aGlzLl9tYXhpbXVtQm91bmRhcnk7CiAgICAgfSwKIAogICAgIHVwZGF0ZUJvdW5k
YXJpZXM6IGZ1bmN0aW9uKHJlY29yZCkKQEAgLTYyMSwxMiArNjM3LDE0IEBAIFdlYkluc3BlY3Rv
ci5UaW1lbGluZUNhbGN1bGF0b3IucHJvdG90eXBlID0gewogCiAgICAgICAgIGlmICh0eXBlb2Yg
dGhpcy5fYWJzb2x1dGVNaW5pbXVtQm91bmRhcnkgPT09ICJ1bmRlZmluZWQiIHx8IGxvd2VyQm91
bmQgPCB0aGlzLl9hYnNvbHV0ZU1pbmltdW1Cb3VuZGFyeSkgewogICAgICAgICAgICAgdGhpcy5f
YWJzb2x1dGVNaW5pbXVtQm91bmRhcnkgPSBsb3dlckJvdW5kOworICAgICAgICAgICAgZGVsZXRl
IHRoaXMuX21pbmltdW1Cb3VuZGFyeTsKICAgICAgICAgICAgIGRpZENoYW5nZSA9IHRydWU7CiAg
ICAgICAgIH0KIAogICAgICAgICB2YXIgdXBwZXJCb3VuZCA9IHJlY29yZC5lbmRUaW1lOwogICAg
ICAgICBpZiAodHlwZW9mIHRoaXMuX2Fic29sdXRlTWF4aW11bUJvdW5kYXJ5ID09PSAidW5kZWZp
bmVkIiB8fCB1cHBlckJvdW5kID4gdGhpcy5fYWJzb2x1dGVNYXhpbXVtQm91bmRhcnkpIHsKICAg
ICAgICAgICAgIHRoaXMuX2Fic29sdXRlTWF4aW11bUJvdW5kYXJ5ID0gdXBwZXJCb3VuZDsKKyAg
ICAgICAgICAgIGRlbGV0ZSB0aGlzLl9tYXhpbXVtQm91bmRhcnk7CiAgICAgICAgICAgICBkaWRD
aGFuZ2UgPSB0cnVlOwogICAgICAgICB9CiAKQEAgLTYzNSw3ICs2NTMsNyBAQCBXZWJJbnNwZWN0
b3IuVGltZWxpbmVDYWxjdWxhdG9yLnByb3RvdHlwZSA9IHsKIAogICAgIGZvcm1hdFZhbHVlOiBm
dW5jdGlvbih2YWx1ZSkKICAgICB7Ci0gICAgICAgIHJldHVybiBOdW1iZXIuc2Vjb25kc1RvU3Ry
aW5nKHZhbHVlICsgdGhpcy5taW5pbXVtQm91bmRhcnkgLSB0aGlzLl9hYnNvbHV0ZU1pbmltdW1C
b3VuZGFyeSwgV2ViSW5zcGVjdG9yLlVJU3RyaW5nLmJpbmQoV2ViSW5zcGVjdG9yKSk7CisgICAg
ICAgIHJldHVybiBOdW1iZXIuc2Vjb25kc1RvU3RyaW5nKHZhbHVlICsgdGhpcy5taW5pbXVtQm91
bmRhcnkgLSB0aGlzLl9hYnNvbHV0ZU1pbmltdW1Cb3VuZGFyeSwgdGhpcy5fdWlTdHJpbmcpOwog
ICAgIH0KIH0KIApAQCAtNzAwLDYgKzcxOCw3IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZUdyYXBo
ID0gZnVuY3Rpb24ocmVjb3JkKQogICAgIHRoaXMuX2JhckFyZWFFbGVtZW50LmFwcGVuZENoaWxk
KHRoaXMuX2JhckVsZW1lbnQpOwogCiAgICAgdGhpcy5fZ3JhcGhFbGVtZW50LmFkZFN0eWxlQ2xh
c3MoInRpbWVsaW5lLWNhdGVnb3J5LSIgKyByZWNvcmQuY2F0ZWdvcnkubmFtZSk7CisgICAgdGhp
cy5faGlkZGVuID0gZmFsc2U7CiB9CiAKIFdlYkluc3BlY3Rvci5UaW1lbGluZUdyYXBoLnByb3Rv
dHlwZSA9IHsKQEAgLTcyMCwxMyArNzM5LDE5IEBAIFdlYkluc3BlY3Rvci5UaW1lbGluZUdyYXBo
LnByb3RvdHlwZSA9IHsKICAgICAgICAgdGhpcy5fcGVyY2VudGFnZXMgPSBwZXJjZW50YWdlczsK
IAogICAgICAgICBpZiAocGVyY2VudGFnZXMuc3RhcnQgPiAxMDAgfHwgcGVyY2VudGFnZXMuZW5k
IDwgMCkgewotICAgICAgICAgICAgdGhpcy5fZ3JhcGhFbGVtZW50LmFkZFN0eWxlQ2xhc3MoImhp
ZGRlbiIpOwotICAgICAgICAgICAgdGhpcy5yZWNvcmQuX2l0ZW1zVHJlZUVsZW1lbnQubGlzdEl0
ZW1FbGVtZW50LmFkZFN0eWxlQ2xhc3MoImhpZGRlbiIpOworICAgICAgICAgICAgaWYgKCF0aGlz
Ll9oaWRkZW4pIHsKKyAgICAgICAgICAgICAgICB0aGlzLl9ncmFwaEVsZW1lbnQuYWRkU3R5bGVD
bGFzcygiaGlkZGVuIik7CisgICAgICAgICAgICAgICAgdGhpcy5yZWNvcmQuX2l0ZW1zVHJlZUVs
ZW1lbnQubGlzdEl0ZW1FbGVtZW50LmFkZFN0eWxlQ2xhc3MoImhpZGRlbiIpOworICAgICAgICAg
ICAgICAgIHRoaXMuX2hpZGRlbiA9IHRydWU7CisgICAgICAgICAgICB9CiAgICAgICAgIH0gZWxz
ZSB7CiAgICAgICAgICAgICB0aGlzLl9iYXJFbGVtZW50LnN0eWxlLnNldFByb3BlcnR5KCJsZWZ0
IiwgcGVyY2VudGFnZXMuc3RhcnQgKyAiJSIpOwogICAgICAgICAgICAgdGhpcy5fYmFyRWxlbWVu
dC5zdHlsZS5zZXRQcm9wZXJ0eSgicmlnaHQiLCAoMTAwIC0gcGVyY2VudGFnZXMuZW5kKSArICIl
Iik7Ci0gICAgICAgICAgICB0aGlzLl9ncmFwaEVsZW1lbnQucmVtb3ZlU3R5bGVDbGFzcygiaGlk
ZGVuIik7Ci0gICAgICAgICAgICB0aGlzLnJlY29yZC5faXRlbXNUcmVlRWxlbWVudC5saXN0SXRl
bUVsZW1lbnQucmVtb3ZlU3R5bGVDbGFzcygiaGlkZGVuIik7CisgICAgICAgICAgICBpZiAodGhp
cy5faGlkZGVuKSB7CisgICAgICAgICAgICAgICAgdGhpcy5fZ3JhcGhFbGVtZW50LnJlbW92ZVN0
eWxlQ2xhc3MoImhpZGRlbiIpOworICAgICAgICAgICAgICAgIHRoaXMucmVjb3JkLl9pdGVtc1Ry
ZWVFbGVtZW50Lmxpc3RJdGVtRWxlbWVudC5yZW1vdmVTdHlsZUNsYXNzKCJoaWRkZW4iKTsKKyAg
ICAgICAgICAgICAgICB0aGlzLl9oaWRkZW4gPSBmYWxzZTsKKyAgICAgICAgICAgIH0KICAgICAg
ICAgfQogICAgICAgICB2YXIgdG9vbHRpcCA9IChsYWJlbHMudG9vbHRpcCB8fCAiIik7CiAgICAg
ICAgIHRoaXMuX2JhckVsZW1lbnQudGl0bGUgPSB0b29sdGlwOwpkaWZmIC0tZ2l0IGEvV2ViQ29y
ZS9pbnNwZWN0b3IvZnJvbnQtZW5kL3V0aWxpdGllcy5qcyBiL1dlYkNvcmUvaW5zcGVjdG9yL2Zy
b250LWVuZC91dGlsaXRpZXMuanMKaW5kZXggZjNlMThlYi4uNTQ3MjBlZSAxMDA2NDQKLS0tIGEv
V2ViQ29yZS9pbnNwZWN0b3IvZnJvbnQtZW5kL3V0aWxpdGllcy5qcworKysgYi9XZWJDb3JlL2lu
c3BlY3Rvci9mcm9udC1lbmQvdXRpbGl0aWVzLmpzCkBAIC0xNDcsMTMgKzE0NywxOCBAQCBOb2Rl
LnByb3RvdHlwZS5yYW5nZU9mV29yZCA9IGZ1bmN0aW9uKG9mZnNldCwgc3RvcENoYXJhY3RlcnMs
IHN0YXlXaXRoaW5Ob2RlLCBkaQogCiBFbGVtZW50LnByb3RvdHlwZS5yZW1vdmVTdHlsZUNsYXNz
ID0gZnVuY3Rpb24oY2xhc3NOYW1lKSAKIHsKLSAgICAvLyBUZXN0IGZvciB0aGUgc2ltcGxlIGNh
c2UgYmVmb3JlIHVzaW5nIGEgUmVnRXhwLgorICAgIC8vIFRlc3QgZm9yIHRoZSBzaW1wbGUgY2Fz
ZSBmaXJzdC4KICAgICBpZiAodGhpcy5jbGFzc05hbWUgPT09IGNsYXNzTmFtZSkgewogICAgICAg
ICB0aGlzLmNsYXNzTmFtZSA9ICIiOwogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgdGhp
cy5yZW1vdmVNYXRjaGluZ1N0eWxlQ2xhc3NlcyhjbGFzc05hbWUuZXNjYXBlRm9yUmVnRXhwKCkp
OworICAgIHZhciBpbmRleCA9IHRoaXMuY2xhc3NOYW1lLmluZGV4T2YoY2xhc3NOYW1lKTsKKyAg
ICBpZiAoaW5kZXggPT09IC0xKQorICAgICAgICByZXR1cm47CisKKyAgICB2YXIgbmV3Q2xhc3NO
YW1lID0gIiAiICsgdGhpcy5jbGFzc05hbWUgKyAiICI7CisgICAgdGhpcy5jbGFzc05hbWUgPSBu
ZXdDbGFzc05hbWUucmVwbGFjZSgiICIgKyBjbGFzc05hbWUgKyAiICIsICIgIik7CiB9CiAKIEVs
ZW1lbnQucHJvdG90eXBlLnJlbW92ZU1hdGNoaW5nU3R5bGVDbGFzc2VzID0gZnVuY3Rpb24oY2xh
c3NOYW1lUmVnZXgpCkBAIC0xNzYsOCArMTgxLDEyIEBAIEVsZW1lbnQucHJvdG90eXBlLmhhc1N0
eWxlQ2xhc3MgPSBmdW5jdGlvbihjbGFzc05hbWUpCiAgICAgLy8gVGVzdCBmb3IgdGhlIHNpbXBs
ZSBjYXNlIGJlZm9yZSB1c2luZyBhIFJlZ0V4cC4KICAgICBpZiAodGhpcy5jbGFzc05hbWUgPT09
IGNsYXNzTmFtZSkKICAgICAgICAgcmV0dXJuIHRydWU7Ci0gICAgdmFyIHJlZ2V4ID0gbmV3IFJl
Z0V4cCgiKF58XFxzKSIgKyBjbGFzc05hbWUuZXNjYXBlRm9yUmVnRXhwKCkgKyAiKCR8XFxzKSIp
OwotICAgIHJldHVybiByZWdleC50ZXN0KHRoaXMuY2xhc3NOYW1lKTsKKworICAgIHZhciBpbmRl
eCA9IHRoaXMuY2xhc3NOYW1lLmluZGV4T2YoY2xhc3NOYW1lKTsKKyAgICBpZiAoaW5kZXggPT09
IC0xKQorICAgICAgICByZXR1cm4gZmFsc2U7CisgICAgdmFyIHRvVGVzdCA9ICIgIiArIHRoaXMu
Y2xhc3NOYW1lICsgIiAiOworICAgIHJldHVybiB0b1Rlc3QuaW5kZXhPZigiICIgKyBjbGFzc05h
bWUgKyAiICIsIGluZGV4KSAhPT0gLTE7CiB9CiAKIEVsZW1lbnQucHJvdG90eXBlLnBvc2l0aW9u
QXQgPSBmdW5jdGlvbih4LCB5KQo=
</data>
<flag name="review"
          id="24764"
          type_id="1"
          status="+"
          setter="timothy"
    />
          </attachment>
      

    </bug>

</bugzilla>