<?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>117822</bug_id>
          
          <creation_ts>2013-06-19 22:55:41 -0700</creation_ts>
          <short_desc>Vibration cannot be canceled during pattern vibration.</short_desc>
          <delta_ts>2013-06-26 19:01:22 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kihong Kwon">kihong.kwon</reporter>
          <assigned_to name="Kihong Kwon">kihong.kwon</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>vimff0</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>902030</commentid>
    <comment_count>0</comment_count>
    <who name="Kihong Kwon">kihong.kwon</who>
    <bug_when>2013-06-19 22:55:41 -0700</bug_when>
    <thetext>Vibration can not cancel during pattern vibration is working.
If resting time which are even numbers of pattern m_isVibraing is false, therefore if cancel is called it is returned.
In addition, m_timerStart need to stop in the cancelVibration() with m_timerStop.stop().
If cancelVibration is called right after m_timerStart is fired, timerStartFired function can be called even if vibration is already canceled because of timing issue of timer.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>902031</commentid>
    <comment_count>1</comment_count>
      <attachid>205061</attachid>
    <who name="Kihong Kwon">kihong.kwon</who>
    <bug_when>2013-06-19 23:03:37 -0700</bug_when>
    <thetext>Created attachment 205061
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>903532</commentid>
    <comment_count>2</comment_count>
      <attachid>205061</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-06-25 22:28:35 -0700</bug_when>
    <thetext>Comment on attachment 205061
Patch

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

&gt; Source/WebCore/Modules/vibration/Vibration.cpp:-94
&gt; -    cancelVibration();

Isn&apos;t it better to call cancelVibration() ? I think cancelVibration() does same work.

&gt; Source/WebCore/Modules/vibration/Vibration.cpp:128
&gt; +        if (!m_pattern.size())

Why not use m_pattern.isEmpty() ?

&gt; LayoutTests/vibration/cancelVibrationDuringPatternVibrating.html:14
&gt; +		navigator.vibrate([100, 100, 100, 100, 100]);

Looks wrong indentation.

&gt; LayoutTests/vibration/cancelVibrationDuringPatternVibrating.html:24
&gt; +				finishJSTest();

ditto.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>903615</commentid>
    <comment_count>3</comment_count>
    <who name="Kihong Kwon">kihong.kwon</who>
    <bug_when>2013-06-26 02:20:05 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 205061 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=205061&amp;action=review
&gt; 
&gt; &gt; Source/WebCore/Modules/vibration/Vibration.cpp:-94
&gt; &gt; -    cancelVibration();
&gt; 
&gt; Isn&apos;t it better to call cancelVibration() ? I think cancelVibration() does same work.

m_pattern is cleared in the cancelVibration but suspenVibration need to add left time to the pattern. therefore It&apos;s little bit different.

&gt; 
&gt; &gt; Source/WebCore/Modules/vibration/Vibration.cpp:128
&gt; &gt; +        if (!m_pattern.size())
&gt; 
&gt; Why not use m_pattern.isEmpty() ?

I&apos;ll change to isEmpty().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>903624</commentid>
    <comment_count>4</comment_count>
      <attachid>205466</attachid>
    <who name="Kihong Kwon">kihong.kwon</who>
    <bug_when>2013-06-26 03:45:38 -0700</bug_when>
    <thetext>Created attachment 205466
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>903628</commentid>
    <comment_count>5</comment_count>
      <attachid>205466</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-26 03:59:25 -0700</bug_when>
    <thetext>Comment on attachment 205466
Patch

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

LGTM but a few nits:

&gt; Source/WebCore/ChangeLog:8
&gt; +        Vibration can not cancel during pattern vibration is working. If resting time which are

&quot;Vibration cannot be canceled during pattern vibration.&quot;

&gt; Source/WebCore/ChangeLog:9
&gt; +        even numbers of pattern m_isVibraing is false, therefore if cancel is called it is returned.

&quot;... m_isVibrating will be false and cancel() will thus return early.&quot;

&gt; Source/WebCore/ChangeLog:10
&gt; +        In addition, m_timerStart need to stop in the cancelVibration() with m_timerStop.stop().

&quot;In addition, m_timerStart needs to be stopped in the cancelVibration().&quot;

&gt; Source/WebCore/ChangeLog:11
&gt; +        If cancelVibration is called right after m_timerStart is fired, timerStartFired

&quot;cancelVibration()&quot;

&gt; LayoutTests/ChangeLog:3
&gt; +        Vibration can not cancel during pattern is working

&quot;Vibration cannot be canceled during pattern vibration&quot;

&gt; LayoutTests/ChangeLog:8
&gt; +        Add a test case for cancel vibtion during pattern vibration is working.

&quot;cancel vibtion during pattern vibration is working&quot; -&gt; &quot;vibration cancellation during pattern vibration.&quot;

&gt; LayoutTests/ChangeLog:9
&gt; +        In addition, restore visibilityState before excuting cancelVibration-after-pagevisibility-changed-to-hidden.html.

&quot;executing&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>903635</commentid>
    <comment_count>6</comment_count>
      <attachid>205470</attachid>
    <who name="Kihong Kwon">kihong.kwon</who>
    <bug_when>2013-06-26 04:49:47 -0700</bug_when>
    <thetext>Created attachment 205470
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>903639</commentid>
    <comment_count>7</comment_count>
      <attachid>205470</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-06-26 05:04:48 -0700</bug_when>
    <thetext>Comment on attachment 205470
Patch

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

&gt;&gt; m_pattern is cleared in the cancelVibration but suspenVibration need to add left time to the pattern. therefore It&apos;s little bit different.

How about adding new private function in order to process this logic ? 

 m_timerStart.stop();
 m_timerStop.stop();
 m_vibrationClient-&gt;cancelVibration();
 m_isVibrating = false;

&gt; Source/WebCore/ChangeLog:8
&gt; +        Vibration can not cancel during pattern vibration is working. If resting time which are

Still can not -&gt; cannot.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>903640</commentid>
    <comment_count>8</comment_count>
      <attachid>205470</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2013-06-26 05:10:09 -0700</bug_when>
    <thetext>Comment on attachment 205470
Patch

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

&gt;&gt; Source/WebCore/ChangeLog:8
&gt;&gt; +        Vibration can not cancel during pattern vibration is working. If resting time which are
&gt; 
&gt; Still can not -&gt; cannot.

Technically I believe both are valid. I agree that &apos;cannot&apos; seems more commonly used though.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>903649</commentid>
    <comment_count>9</comment_count>
    <who name="Kihong Kwon">kihong.kwon</who>
    <bug_when>2013-06-26 05:27:17 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 205470 [details])
&gt; View in context: https://bugs.webkit.org/attachment.cgi?id=205470&amp;action=review
&gt; 
&gt; &gt;&gt; m_pattern is cleared in the cancelVibration but suspenVibration need to add left time to the pattern. therefore It&apos;s little bit different.
&gt; 
&gt; How about adding new private function in order to process this logic ? 
&gt; 
&gt;  m_timerStart.stop();
&gt;  m_timerStop.stop();
&gt;  m_vibrationClient-&gt;cancelVibration();
&gt;  m_isVibrating = false;
&gt; 

No problem. Thanks chris and gyuyoung. :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>903653</commentid>
    <comment_count>10</comment_count>
      <attachid>205478</attachid>
    <who name="Kihong Kwon">kihong.kwon</who>
    <bug_when>2013-06-26 05:33:24 -0700</bug_when>
    <thetext>Created attachment 205478
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>903656</commentid>
    <comment_count>11</comment_count>
      <attachid>205478</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2013-06-26 05:36:55 -0700</bug_when>
    <thetext>Comment on attachment 205478
Patch

LGTM. Please land after finishing all ews.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>904028</commentid>
    <comment_count>12</comment_count>
      <attachid>205478</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-26 19:01:18 -0700</bug_when>
    <thetext>Comment on attachment 205478
Patch

Clearing flags on attachment: 205478

Committed r152070: &lt;http://trac.webkit.org/changeset/152070&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>904029</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2013-06-26 19:01:22 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>205061</attachid>
            <date>2013-06-19 23:03:37 -0700</date>
            <delta_ts>2013-06-26 03:44:28 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-117822-20130620150147.patch</filename>
            <type>text/plain</type>
            <size>6214</size>
            <attacher name="Kihong Kwon">kihong.kwon</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxNzI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYWM5YmQ5MzViNjU4MWQ1
ODY2NzIzMDZlYzMyMDQxZThjZjkyZjgxMy4uYTY0MmUzNjRjMmZhOTRhNTYxZmQ3NTRlOGUxMGZh
ZWE1ZWUxNDYzMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI1IEBACisyMDEzLTA2LTE5ICBLaWhv
bmcgS3dvbiAgPGtpaG9uZy5rd29uQHNhbXN1bmcuY29tPgorCisgICAgICAgIFZpYnJhdGlvbiBj
YW4gbm90IGNhbmNlbCBkdXJpbmcgcGF0dGVybiBpcyB3b3JraW5nCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTc4MjIKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBWaWJyYXRpb24gY2FuIG5vdCBjYW5jZWwg
ZHVyaW5nIHBhdHRlcm4gdmlicmF0aW9uIGlzIHdvcmtpbmcuIElmIHJlc3RpbmcgdGltZSB3aGlj
aCBhcmUKKyAgICAgICAgZXZlbiBudW1iZXJzIG9mIHBhdHRlcm4gbV9pc1ZpYnJhaW5nIGlzIGZh
bHNlLCB0aGVyZWZvcmUgaWYgY2FuY2VsIGlzIGNhbGxlZCBpdCBpcyByZXR1cm5lZC4KKyAgICAg
ICAgSW4gYWRkaXRpb24sIG1fdGltZXJTdGFydCBuZWVkIHRvIHN0b3AgaW4gdGhlIGNhbmNlbFZp
YnJhdGlvbigpIHdpdGggbV90aW1lclN0b3Auc3RvcCgpLgorICAgICAgICBJZiBjYW5jZWxWaWJy
YXRpb24gaXMgY2FsbGVkIHJpZ2h0IGFmdGVyIG1fdGltZXJTdGFydCBpcyBmaXJlZCwgdGltZXJT
dGFydEZpcmVkCisgICAgICAgIGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQgZXZlbiBpZiB2aWJyYXRp
b24gaXMgYWxyZWFkeSBjYW5jZWxlZCBiZWNhdXNlIG9mIHRpbWluZyBpc3N1ZSBvZiB0aW1lci4K
KworICAgICAgICBUZXN0OiB2aWJyYXRpb24vY2FuY2VsVmlicmF0aW9uRHVyaW5nUGF0dGVyblZp
YnJhdGluZy5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL3ZpYnJhdGlvbi9WaWJyYXRpb24uY3Bw
OgorICAgICAgICAoV2ViQ29yZTo6VmlicmF0aW9uOjp2aWJyYXRlKToKKyAgICAgICAgKFdlYkNv
cmU6OlZpYnJhdGlvbjo6Y2FuY2VsVmlicmF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlZpYnJh
dGlvbjo6c3VzcGVuZFZpYnJhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpWaWJyYXRpb246OnRp
bWVyU3RhcnRGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpWaWJyYXRpb246OnRpbWVyU3RvcEZp
cmVkKToKKwogMjAxMy0wNi0xOSAgVsOtY3RvciBNYW51ZWwgSsOhcXVleiBMZWFsICA8dmphcXVl
ekBpZ2FsaWEuY29tPgogCiAgICAgICAgIFtHU3RyZWFtZXJdIFBvdGVudGlhbCByYWNlIGNvbmRp
dGlvbiB3aGVuIGdldHRpbmcgdGhlIHZpZGVvIHNpbmsgY2Fwcy4KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL01vZHVsZXMvdmlicmF0aW9uL1ZpYnJhdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29y
ZS9Nb2R1bGVzL3ZpYnJhdGlvbi9WaWJyYXRpb24uY3BwCmluZGV4IGFlOWRiZTI4ODcyZWJiYzQ2
ZWUwNzQ3MWIyZDEwYzUzYzM4ZDNiOWMuLjk1YjY5YmY3NDhiNmNkM2YzZTAwNTNjMGIwYTc1NTY2
ZDEyNzVhOGIgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvdmlicmF0aW9uL1Zp
YnJhdGlvbi5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy92aWJyYXRpb24vVmlicmF0
aW9uLmNwcApAQCAtNzIsMTUgKzcyLDE3IEBAIHZvaWQgVmlicmF0aW9uOjp2aWJyYXRlKGNvbnN0
IFZpYnJhdGlvblBhdHRlcm4mIHBhdHRlcm4pCiAKICAgICBtX3BhdHRlcm4gPSBwYXR0ZXJuOwog
ICAgIG1fdGltZXJTdGFydC5zdGFydE9uZVNob3QoMCk7CisgICAgbV9pc1ZpYnJhdGluZyA9IHRy
dWU7CiB9CiAKIHZvaWQgVmlicmF0aW9uOjpjYW5jZWxWaWJyYXRpb24oKQogewogICAgIG1fcGF0
dGVybi5jbGVhcigpOwogICAgIGlmIChtX2lzVmlicmF0aW5nKSB7CisgICAgICAgIG1fdGltZXJT
dGFydC5zdG9wKCk7CisgICAgICAgIG1fdGltZXJTdG9wLnN0b3AoKTsKICAgICAgICAgbV92aWJy
YXRpb25DbGllbnQtPmNhbmNlbFZpYnJhdGlvbigpOwogICAgICAgICBtX2lzVmlicmF0aW5nID0g
ZmFsc2U7Ci0gICAgICAgIG1fdGltZXJTdG9wLnN0b3AoKTsKICAgICB9CiB9CiAKQEAgLTkwLDgg
KzkyLDEwIEBAIHZvaWQgVmlicmF0aW9uOjpzdXNwZW5kVmlicmF0aW9uKCkKICAgICAgICAgcmV0
dXJuOwogCiAgICAgbV9wYXR0ZXJuLmluc2VydCgwLCBtX3RpbWVyU3RvcC5uZXh0RmlyZUludGVy
dmFsKCkpOworICAgIG1fdGltZXJTdGFydC5zdG9wKCk7CiAgICAgbV90aW1lclN0b3Auc3RvcCgp
OwotICAgIGNhbmNlbFZpYnJhdGlvbigpOworICAgIG1fdmlicmF0aW9uQ2xpZW50LT5jYW5jZWxW
aWJyYXRpb24oKTsKKyAgICBtX2lzVmlicmF0aW5nID0gZmFsc2U7CiB9CiAKIHZvaWQgVmlicmF0
aW9uOjpyZXN1bWVWaWJyYXRpb24oKQpAQCAtMTA2LDcgKzExMCw2IEBAIHZvaWQgVmlicmF0aW9u
Ojp0aW1lclN0YXJ0RmlyZWQoVGltZXI8VmlicmF0aW9uPiogdGltZXIpCiAgICAgbV90aW1lclN0
YXJ0LnN0b3AoKTsKIAogICAgIGlmIChtX3BhdHRlcm4uc2l6ZSgpKSB7Ci0gICAgICAgIG1faXNW
aWJyYXRpbmcgPSB0cnVlOwogICAgICAgICBtX3ZpYnJhdGlvbkNsaWVudC0+dmlicmF0ZShtX3Bh
dHRlcm5bMF0pOwogICAgICAgICBtX3RpbWVyU3RvcC5zdGFydE9uZVNob3QobV9wYXR0ZXJuWzBd
IC8gMTAwMC4wKTsKICAgICAgICAgbV9wYXR0ZXJuLnJlbW92ZSgwKTsKQEAgLTExOCwxMSArMTIx
LDEyIEBAIHZvaWQgVmlicmF0aW9uOjp0aW1lclN0b3BGaXJlZChUaW1lcjxWaWJyYXRpb24+KiB0
aW1lcikKICAgICBBU1NFUlRfVU5VU0VEKHRpbWVyLCB0aW1lciA9PSAmbV90aW1lclN0b3ApOwog
CiAgICAgbV90aW1lclN0b3Auc3RvcCgpOwotICAgIG1faXNWaWJyYXRpbmcgPSBmYWxzZTsKIAog
ICAgIGlmIChtX3BhdHRlcm4uc2l6ZSgpKSB7CiAgICAgICAgIG1fdGltZXJTdGFydC5zdGFydE9u
ZVNob3QobV9wYXR0ZXJuWzBdIC8gMTAwMC4wKTsKICAgICAgICAgbV9wYXR0ZXJuLnJlbW92ZSgw
KTsKKyAgICAgICAgaWYgKCFtX3BhdHRlcm4uc2l6ZSgpKQorICAgICAgICAgICAgbV9pc1ZpYnJh
dGluZyA9IGZhbHNlOwogICAgIH0KIH0KIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdl
TG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmluZGV4IDdiZTA0YjExY2ZkZmE1MmYyZjhlOWVk
YjVlM2MyZTVhMGU3NmMyMTAuLmUyNjJhNDdkZTEwMzk2MGNiYmJhMjNmM2FiMmQxM2Y3MjkxODZj
MTEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKQEAgLTEsNSArMSwxNyBAQAogMjAxMy0wNi0xOSAgS2lob25nIEt3b24gIDxraWhv
bmcua3dvbkBzYW1zdW5nLmNvbT4KIAorICAgICAgICBWaWJyYXRpb24gY2FuIG5vdCBjYW5jZWwg
ZHVyaW5nIHBhdHRlcm4gaXMgd29ya2luZworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9y
Zy9zaG93X2J1Zy5jZ2k/aWQ9MTE3ODIyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgQWRkIGEgdGVzdCBjYXNlIGZvciBjYW5jZWwgdmlidGlvbiBkdXJp
bmcgcGF0dGVybiB2aWJyYXRpb24gaXMgd29ya2luZy4KKworICAgICAgICAqIHZpYnJhdGlvbi9j
YW5jZWxWaWJyYXRpb25EdXJpbmdQYXR0ZXJuVmlicmF0aW5nLWV4cGVjdGVkLnR4dDogQWRkZWQu
CisgICAgICAgICogdmlicmF0aW9uL2NhbmNlbFZpYnJhdGlvbkR1cmluZ1BhdHRlcm5WaWJyYXRp
bmcuaHRtbDogQWRkZWQuCisKKzIwMTMtMDYtMTkgIEtpaG9uZyBLd29uICA8a2lob25nLmt3b25A
c2Ftc3VuZy5jb20+CisKICAgICAgICAgVmlicmF0aW9uIGNhbiBiZSBjYW5jZWxlZCBldmVuIGlm
IHBhZ2UgdmlzaWJpbGl0eSBzdGF0dXMgaXMgaGlkZGVuCiAgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTczMzMKIApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVz
dHMvdmlicmF0aW9uL2NhbmNlbFZpYnJhdGlvbkR1cmluZ1BhdHRlcm5WaWJyYXRpbmctZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvdmlicmF0aW9uL2NhbmNlbFZpYnJhdGlvbkR1cmluZ1BhdHRl
cm5WaWJyYXRpbmctZXhwZWN0ZWQudHh0Cm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLmM0Y2JmYzI3NWEyMWQ1NDMyZWEy
NzQ0OWI4YzNhNDA4MmZhNDEzNWQKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy92aWJy
YXRpb24vY2FuY2VsVmlicmF0aW9uRHVyaW5nUGF0dGVyblZpYnJhdGluZy1leHBlY3RlZC50eHQK
QEAgLTAsMCArMSwxNiBAQAorVGVzdHMgdGhlIGNhbmNlbFZpYnJhdGlvbiBkdXJpbmcgcGF0dGVy
biB2aWJyYXRpb24gaXMgd29ya2luZy4KKworT24gc3VjY2VzcywgeW91IHdpbGwgc2VlIGEgc2Vy
aWVzIG9mICJQQVNTIiBtZXNzYWdlcywgZm9sbG93ZWQgYnkgIlRFU1QgQ09NUExFVEUiLgorCisK
K1BBU1MgaW50ZXJuYWxzLmlzVmlicmF0aW5nKCkgaXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmlz
VmlicmF0aW5nKCkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMuaXNWaWJyYXRpbmcoKSBpcyBmYWxz
ZQorUEFTUyBpbnRlcm5hbHMuaXNWaWJyYXRpbmcoKSBpcyB0cnVlCitQQVNTIGludGVybmFscy5p
c1ZpYnJhdGluZygpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5pc1ZpYnJhdGluZygpIGlzIHRy
dWUKK1BBU1MgaW50ZXJuYWxzLmlzVmlicmF0aW5nKCkgaXMgZmFsc2UKK1BBU1Mgc3VjY2Vzc2Z1
bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVURQorCmRpZmYgLS1naXQgYS9MYXlvdXRU
ZXN0cy92aWJyYXRpb24vY2FuY2VsVmlicmF0aW9uRHVyaW5nUGF0dGVyblZpYnJhdGluZy5odG1s
IGIvTGF5b3V0VGVzdHMvdmlicmF0aW9uL2NhbmNlbFZpYnJhdGlvbkR1cmluZ1BhdHRlcm5WaWJy
YXRpbmcuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwLi4yZDQ4NTVmNzExM2Q4M2Q3MTBlZjJmZmVmMWY3NWRiMTIx
NTlhZWU4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvdmlicmF0aW9uL2NhbmNlbFZp
YnJhdGlvbkR1cmluZ1BhdHRlcm5WaWJyYXRpbmcuaHRtbApAQCAtMCwwICsxLDM3IEBACis8aHRt
bD4KKzxoZWFkPgorPHNjcmlwdCBzcmM9Ii4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJl
LmpzIj48L3NjcmlwdD4KKzwvaGVhZD4KKzxib2R5PgorPHNjcmlwdD4KK2Rlc2NyaXB0aW9uKCdU
ZXN0cyB0aGUgY2FuY2VsVmlicmF0aW9uIGR1cmluZyBwYXR0ZXJuIHZpYnJhdGlvbiBpcyB3b3Jr
aW5nLicpOworCit2YXIgY291bnQgPSAxOwordmFyIGNhbmNlbGluZ1RpbWUgPSA4MDsKKworaWYg
KHdpbmRvdy50ZXN0UnVubmVyKSB7CisJZnVuY3Rpb24gdmlicmF0ZSgpIHsKKwkJbmF2aWdhdG9y
LnZpYnJhdGUoWzEwMCwgMTAwLCAxMDAsIDEwMCwgMTAwXSk7CisJCXNob3VsZEJlVHJ1ZSgnaW50
ZXJuYWxzLmlzVmlicmF0aW5nKCknKTsKKwkJY2FuY2VsVmlicmF0aW9uKGNhbmNlbGluZ1RpbWUg
KyBjb3VudCAqIDEwMCk7CisJfQorCisJZnVuY3Rpb24gY2FuY2VsVmlicmF0aW9uKHRpbWUpIHsK
KwkJc2V0VGltZW91dChmdW5jdGlvbigpIHsKKwkJCW5hdmlnYXRvci52aWJyYXRlKDApOworCQkJ
c2hvdWxkQmVGYWxzZSgnaW50ZXJuYWxzLmlzVmlicmF0aW5nKCknKTsKKwkJCWlmIChjb3VudCsr
ID09IDMpCisJCQkJZmluaXNoSlNUZXN0KCk7CisJCQl2aWJyYXRlKCk7CisJCX0sIHRpbWUpOwor
CX0KKworCXNob3VsZEJlRmFsc2UoJ2ludGVybmFscy5pc1ZpYnJhdGluZygpJyk7CisJdmlicmF0
ZSgpOworICAgIHdpbmRvdy5qc1Rlc3RJc0FzeW5jID0gdHJ1ZTsKK30gZWxzZQorICAgIGRlYnVn
KCdUaGlzIHRlc3QgY2FuIG5vdCBiZSBydW4gd2l0aG91dCB0aGUgVGVzdFJ1bm5lcicpOworPC9z
Y3JpcHQ+Cis8c2NyaXB0IHNyYz0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wb3N0Lmpz
Ij48L3NjcmlwdD4KKzwvYm9keT4KKzwvaHRtbD4KXCBObyBuZXdsaW5lIGF0IGVuZCBvZiBmaWxl
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>205466</attachid>
            <date>2013-06-26 03:45:38 -0700</date>
            <delta_ts>2013-06-26 04:49:40 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-117822-20130626194340.patch</filename>
            <type>text/plain</type>
            <size>7805</size>
            <attacher name="Kihong Kwon">kihong.kwon</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxOTc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTI5NDczY2VjMmY4MjVl
NjM3ZDZjOGY1NmU5MTMzZjc4MmEwMmFjNi4uOWNiNGNkYWMzNzgzZjEyMzI4NzZjMTNlYmRlY2Q1
MjViN2Y2MzM1ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTA2LTI2ICBLaWhv
bmcgS3dvbiAgPGtpaG9uZy5rd29uQHNhbXN1bmcuY29tPgorCisgICAgICAgIFZpYnJhdGlvbiBj
YW4gbm90IGNhbmNlbCBkdXJpbmcgcGF0dGVybiBpcyB3b3JraW5nCisgICAgICAgIGh0dHBzOi8v
YnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTc4MjIKKworICAgICAgICBSZXZpZXdl
ZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBWaWJyYXRpb24gY2FuIG5vdCBjYW5jZWwg
ZHVyaW5nIHBhdHRlcm4gdmlicmF0aW9uIGlzIHdvcmtpbmcuIElmIHJlc3RpbmcgdGltZSB3aGlj
aCBhcmUKKyAgICAgICAgZXZlbiBudW1iZXJzIG9mIHBhdHRlcm4gbV9pc1ZpYnJhaW5nIGlzIGZh
bHNlLCB0aGVyZWZvcmUgaWYgY2FuY2VsIGlzIGNhbGxlZCBpdCBpcyByZXR1cm5lZC4KKyAgICAg
ICAgSW4gYWRkaXRpb24sIG1fdGltZXJTdGFydCBuZWVkIHRvIHN0b3AgaW4gdGhlIGNhbmNlbFZp
YnJhdGlvbigpIHdpdGggbV90aW1lclN0b3Auc3RvcCgpLgorICAgICAgICBJZiBjYW5jZWxWaWJy
YXRpb24gaXMgY2FsbGVkIHJpZ2h0IGFmdGVyIG1fdGltZXJTdGFydCBpcyBmaXJlZCwgdGltZXJT
dGFydEZpcmVkCisgICAgICAgIGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQgZXZlbiBpZiB2aWJyYXRp
b24gaXMgYWxyZWFkeSBjYW5jZWxlZCBiZWNhdXNlIG9mIHRpbWluZyBpc3N1ZSBvZiB0aW1lci4K
KworICAgICAgICBUZXN0OiB2aWJyYXRpb24vY2FuY2VsVmlicmF0aW9uLWR1cmluZy1wYXR0ZXJu
LXZpYnJhdGluZy5odG1sCisKKyAgICAgICAgKiBNb2R1bGVzL3ZpYnJhdGlvbi9WaWJyYXRpb24u
Y3BwOgorICAgICAgICAoV2ViQ29yZTo6VmlicmF0aW9uOjp2aWJyYXRlKToKKyAgICAgICAgKFdl
YkNvcmU6OlZpYnJhdGlvbjo6Y2FuY2VsVmlicmF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlZp
YnJhdGlvbjo6c3VzcGVuZFZpYnJhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpWaWJyYXRpb246
OnJlc3VtZVZpYnJhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpWaWJyYXRpb246OnRpbWVyU3Rh
cnRGaXJlZCk6CisgICAgICAgIChXZWJDb3JlOjpWaWJyYXRpb246OnRpbWVyU3RvcEZpcmVkKToK
KwogMjAxMy0wNi0yNSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAg
ICBKU1N0cmluZyBzaG91bGQgcmVtZW1iZXIgQXRvbWljU3RyaW5nCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9Nb2R1bGVzL3ZpYnJhdGlvbi9WaWJyYXRpb24uY3BwIGIvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy92aWJyYXRpb24vVmlicmF0aW9uLmNwcAppbmRleCBhZTlkYmUyODg3MmViYmM0
NmVlMDc0NzFiMmQxMGM1M2MzOGQzYjljLi5iODY2MzZiYzdkZjI4MDc5NjkxM2UzNTQwZDFkYTVj
YmQ2ODFhZGQyIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3ZpYnJhdGlvbi9W
aWJyYXRpb24uY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvdmlicmF0aW9uL1ZpYnJh
dGlvbi5jcHAKQEAgLTUyLDYgKzUyLDcgQEAgdm9pZCBWaWJyYXRpb246OnZpYnJhdGUoY29uc3Qg
dW5zaWduZWQmIHRpbWUpCiAgICAgfQogICAgIG1fcGF0dGVybi5hcHBlbmQodGltZSk7CiAgICAg
bV90aW1lclN0YXJ0LnN0YXJ0T25lU2hvdCgwKTsKKyAgICBtX2lzVmlicmF0aW5nID0gdHJ1ZTsK
IH0KIAogdm9pZCBWaWJyYXRpb246OnZpYnJhdGUoY29uc3QgVmlicmF0aW9uUGF0dGVybiYgcGF0
dGVybikKQEAgLTcyLDE1ICs3MywxNyBAQCB2b2lkIFZpYnJhdGlvbjo6dmlicmF0ZShjb25zdCBW
aWJyYXRpb25QYXR0ZXJuJiBwYXR0ZXJuKQogCiAgICAgbV9wYXR0ZXJuID0gcGF0dGVybjsKICAg
ICBtX3RpbWVyU3RhcnQuc3RhcnRPbmVTaG90KDApOworICAgIG1faXNWaWJyYXRpbmcgPSB0cnVl
OwogfQogCiB2b2lkIFZpYnJhdGlvbjo6Y2FuY2VsVmlicmF0aW9uKCkKIHsKICAgICBtX3BhdHRl
cm4uY2xlYXIoKTsKICAgICBpZiAobV9pc1ZpYnJhdGluZykgeworICAgICAgICBtX3RpbWVyU3Rh
cnQuc3RvcCgpOworICAgICAgICBtX3RpbWVyU3RvcC5zdG9wKCk7CiAgICAgICAgIG1fdmlicmF0
aW9uQ2xpZW50LT5jYW5jZWxWaWJyYXRpb24oKTsKICAgICAgICAgbV9pc1ZpYnJhdGluZyA9IGZh
bHNlOwotICAgICAgICBtX3RpbWVyU3RvcC5zdG9wKCk7CiAgICAgfQogfQogCkBAIC05MCwxMyAr
OTMsMTYgQEAgdm9pZCBWaWJyYXRpb246OnN1c3BlbmRWaWJyYXRpb24oKQogICAgICAgICByZXR1
cm47CiAKICAgICBtX3BhdHRlcm4uaW5zZXJ0KDAsIG1fdGltZXJTdG9wLm5leHRGaXJlSW50ZXJ2
YWwoKSk7CisgICAgbV90aW1lclN0YXJ0LnN0b3AoKTsKICAgICBtX3RpbWVyU3RvcC5zdG9wKCk7
Ci0gICAgY2FuY2VsVmlicmF0aW9uKCk7CisgICAgbV92aWJyYXRpb25DbGllbnQtPmNhbmNlbFZp
YnJhdGlvbigpOworICAgIG1faXNWaWJyYXRpbmcgPSBmYWxzZTsKIH0KIAogdm9pZCBWaWJyYXRp
b246OnJlc3VtZVZpYnJhdGlvbigpCiB7CiAgICAgbV90aW1lclN0YXJ0LnN0YXJ0T25lU2hvdCgw
KTsKKyAgICBtX2lzVmlicmF0aW5nID0gdHJ1ZTsKIH0KIAogdm9pZCBWaWJyYXRpb246OnRpbWVy
U3RhcnRGaXJlZChUaW1lcjxWaWJyYXRpb24+KiB0aW1lcikKQEAgLTEwNSw4ICsxMTEsNyBAQCB2
b2lkIFZpYnJhdGlvbjo6dGltZXJTdGFydEZpcmVkKFRpbWVyPFZpYnJhdGlvbj4qIHRpbWVyKQog
CiAgICAgbV90aW1lclN0YXJ0LnN0b3AoKTsKIAotICAgIGlmIChtX3BhdHRlcm4uc2l6ZSgpKSB7
Ci0gICAgICAgIG1faXNWaWJyYXRpbmcgPSB0cnVlOworICAgIGlmICghbV9wYXR0ZXJuLmlzRW1w
dHkoKSkgewogICAgICAgICBtX3ZpYnJhdGlvbkNsaWVudC0+dmlicmF0ZShtX3BhdHRlcm5bMF0p
OwogICAgICAgICBtX3RpbWVyU3RvcC5zdGFydE9uZVNob3QobV9wYXR0ZXJuWzBdIC8gMTAwMC4w
KTsKICAgICAgICAgbV9wYXR0ZXJuLnJlbW92ZSgwKTsKQEAgLTExOCwxMSArMTIzLDEyIEBAIHZv
aWQgVmlicmF0aW9uOjp0aW1lclN0b3BGaXJlZChUaW1lcjxWaWJyYXRpb24+KiB0aW1lcikKICAg
ICBBU1NFUlRfVU5VU0VEKHRpbWVyLCB0aW1lciA9PSAmbV90aW1lclN0b3ApOwogCiAgICAgbV90
aW1lclN0b3Auc3RvcCgpOwotICAgIG1faXNWaWJyYXRpbmcgPSBmYWxzZTsKIAotICAgIGlmICht
X3BhdHRlcm4uc2l6ZSgpKSB7CisgICAgaWYgKCFtX3BhdHRlcm4uaXNFbXB0eSgpKSB7CiAgICAg
ICAgIG1fdGltZXJTdGFydC5zdGFydE9uZVNob3QobV9wYXR0ZXJuWzBdIC8gMTAwMC4wKTsKICAg
ICAgICAgbV9wYXR0ZXJuLnJlbW92ZSgwKTsKKyAgICAgICAgaWYgKG1fcGF0dGVybi5pc0VtcHR5
KCkpCisgICAgICAgICAgICBtX2lzVmlicmF0aW5nID0gZmFsc2U7CiAgICAgfQogfQogCmRpZmYg
LS1naXQgYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5k
ZXggOTM5ZTUyYjdlMjM2ZjBmYzZmZDYxMDVhZjAwNDk5NmU5OTQ3MTJjYy4uMTg2YzkyZTkzMDVh
ZTljOTg3NzUxMjdjODhiYzE4MGE5ZGM2MTJhNiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hh
bmdlTG9nCisrKyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEz
LTA2LTI2ICBLaWhvbmcgS3dvbiAgPGtpaG9uZy5rd29uQHNhbXN1bmcuY29tPgorCisgICAgICAg
IFZpYnJhdGlvbiBjYW4gbm90IGNhbmNlbCBkdXJpbmcgcGF0dGVybiBpcyB3b3JraW5nCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTc4MjIKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgYSB0ZXN0IGNh
c2UgZm9yIGNhbmNlbCB2aWJ0aW9uIGR1cmluZyBwYXR0ZXJuIHZpYnJhdGlvbiBpcyB3b3JraW5n
LgorICAgICAgICBJbiBhZGRpdGlvbiwgcmVzdG9yZSB2aXNpYmlsaXR5U3RhdGUgYmVmb3JlIGV4
Y3V0aW5nIGNhbmNlbFZpYnJhdGlvbi1hZnRlci1wYWdldmlzaWJpbGl0eS1jaGFuZ2VkLXRvLWhp
ZGRlbi5odG1sLgorCisgICAgICAgICogdmlicmF0aW9uL2NhbmNlbFZpYnJhdGlvbi1hZnRlci1w
YWdldmlzaWJpbGl0eS1jaGFuZ2VkLXRvLWhpZGRlbi5odG1sOgorICAgICAgICAqIHZpYnJhdGlv
bi9jYW5jZWxWaWJyYXRpb24tZHVyaW5nLXBhdHRlcm4tdmlicmF0aW5nLWV4cGVjdGVkLnR4dDog
QWRkZWQuCisgICAgICAgICogdmlicmF0aW9uL2NhbmNlbFZpYnJhdGlvbi1kdXJpbmctcGF0dGVy
bi12aWJyYXRpbmcuaHRtbDogQWRkZWQuCisKIDIwMTMtMDYtMjUgIEtyenlzenRvZiBDemVjaCAg
PGsuY3plY2hAc2Ftc3VuZy5jb20+CiAKICAgICAgICAgW0FYXVtBVEtdIFVwZGF0ZSBhY2Nlc3Np
YmlsaXR5IGJhc2VsaW5lcyBhZnRlciByMTUxOTUzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy92
aWJyYXRpb24vY2FuY2VsVmlicmF0aW9uLWFmdGVyLXBhZ2V2aXNpYmlsaXR5LWNoYW5nZWQtdG8t
aGlkZGVuLmh0bWwgYi9MYXlvdXRUZXN0cy92aWJyYXRpb24vY2FuY2VsVmlicmF0aW9uLWFmdGVy
LXBhZ2V2aXNpYmlsaXR5LWNoYW5nZWQtdG8taGlkZGVuLmh0bWwKaW5kZXggNWRmZjM4MjQzMDk2
MDIwOTliMTI3ZTY1YTVjNTlhNDM3NzdmODdiZS4uYjVmMjk3ZWMzZTU5YTE3MmFmMjA5MGM5MmE2
OGM2NTAzYzM0YzIwZiAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvdmlicmF0aW9uL2NhbmNlbFZp
YnJhdGlvbi1hZnRlci1wYWdldmlzaWJpbGl0eS1jaGFuZ2VkLXRvLWhpZGRlbi5odG1sCisrKyBi
L0xheW91dFRlc3RzL3ZpYnJhdGlvbi9jYW5jZWxWaWJyYXRpb24tYWZ0ZXItcGFnZXZpc2liaWxp
dHktY2hhbmdlZC10by1oaWRkZW4uaHRtbApAQCAtNiwxMCArNiwxMyBAQAogPHNjcmlwdD4KIGRl
c2NyaXB0aW9uKCdUZXN0cyB0aGUgY2FuY2VsVmlicmF0aW9uIGFmdGVyIGNoYW5naW5nIHRoZSB2
YWx1ZSBvZiBwYWdlVmlzaWJpbGl0eSB0byBoaWRkZW4uJyk7CiAKK3ZhciB2aXNpYmlsaXR5U3Rh
dGUgPSBkb2N1bWVudC52aXNpYmlsaXR5U3RhdGU7CisKIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVu
ZXIoJ3Zpc2liaWxpdHljaGFuZ2UnLCBmdW5jdGlvbihlKSB7CiAgICAgaWYgKGRvY3VtZW50LnZp
c2liaWxpdHlTdGF0ZSA9PSAnaGlkZGVuJykKICAgICAgICAgbmF2aWdhdG9yLnZpYnJhdGUoMCk7
CiAgICAgICAgIHNob3VsZEJlRmFsc2UoJ2ludGVybmFscy5pc1ZpYnJhdGluZygpJyk7CisgICAg
ICAgIHRlc3RSdW5uZXIuc2V0UGFnZVZpc2liaWxpdHkodmlzaWJpbGl0eVN0YXRlKTsKICAgICAg
ICAgZmluaXNoSlNUZXN0KCk7CiAgICAgfSk7CiAKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3Zp
YnJhdGlvbi9jYW5jZWxWaWJyYXRpb24tZHVyaW5nLXBhdHRlcm4tdmlicmF0aW5nLWV4cGVjdGVk
LnR4dCBiL0xheW91dFRlc3RzL3ZpYnJhdGlvbi9jYW5jZWxWaWJyYXRpb24tZHVyaW5nLXBhdHRl
cm4tdmlicmF0aW5nLWV4cGVjdGVkLnR4dApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5jNGNiZmMyNzVhMjFkNTQzMmVh
Mjc0NDliOGMzYTQwODJmYTQxMzVkCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvdmli
cmF0aW9uL2NhbmNlbFZpYnJhdGlvbi1kdXJpbmctcGF0dGVybi12aWJyYXRpbmctZXhwZWN0ZWQu
dHh0CkBAIC0wLDAgKzEsMTYgQEAKK1Rlc3RzIHRoZSBjYW5jZWxWaWJyYXRpb24gZHVyaW5nIHBh
dHRlcm4gdmlicmF0aW9uIGlzIHdvcmtpbmcuCisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBh
IHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMsIGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4K
KworCitQQVNTIGludGVybmFscy5pc1ZpYnJhdGluZygpIGlzIGZhbHNlCitQQVNTIGludGVybmFs
cy5pc1ZpYnJhdGluZygpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmlzVmlicmF0aW5nKCkgaXMg
ZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmlzVmlicmF0aW5nKCkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5h
bHMuaXNWaWJyYXRpbmcoKSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaXNWaWJyYXRpbmcoKSBp
cyB0cnVlCitQQVNTIGludGVybmFscy5pc1ZpYnJhdGluZygpIGlzIGZhbHNlCitQQVNTIHN1Y2Nl
c3NmdWxseVBhcnNlZCBpcyB0cnVlCisKK1RFU1QgQ09NUExFVEUKKwpkaWZmIC0tZ2l0IGEvTGF5
b3V0VGVzdHMvdmlicmF0aW9uL2NhbmNlbFZpYnJhdGlvbi1kdXJpbmctcGF0dGVybi12aWJyYXRp
bmcuaHRtbCBiL0xheW91dFRlc3RzL3ZpYnJhdGlvbi9jYW5jZWxWaWJyYXRpb24tZHVyaW5nLXBh
dHRlcm4tdmlicmF0aW5nLmh0bWwKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uYmRhY2MzZDI0NmZmODk2MjU4MjQ0MDVk
YjU0YTNjZTkyOGI5NWMzYQotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3ZpYnJhdGlv
bi9jYW5jZWxWaWJyYXRpb24tZHVyaW5nLXBhdHRlcm4tdmlicmF0aW5nLmh0bWwKQEAgLTAsMCAr
MSwzNyBAQAorPGh0bWw+Cis8aGVhZD4KKzxzY3JpcHQgc3JjPSIuLi9mYXN0L2pzL3Jlc291cmNl
cy9qcy10ZXN0LXByZS5qcyI+PC9zY3JpcHQ+Cis8L2hlYWQ+Cis8Ym9keT4KKzxzY3JpcHQ+Citk
ZXNjcmlwdGlvbignVGVzdHMgdGhlIGNhbmNlbFZpYnJhdGlvbiBkdXJpbmcgcGF0dGVybiB2aWJy
YXRpb24gaXMgd29ya2luZy4nKTsKKwordmFyIGNvdW50ID0gMDsKK3ZhciBjYW5jZWxpbmdUaW1l
ID0gODA7CisKK2lmICh3aW5kb3cudGVzdFJ1bm5lcikgeworICAgIGZ1bmN0aW9uIHZpYnJhdGUo
KSB7CisgICAgICAgIG5hdmlnYXRvci52aWJyYXRlKFsxMDAsIDEwMCwgMTAwLCAxMDAsIDEwMF0p
OworICAgICAgICBzaG91bGRCZVRydWUoJ2ludGVybmFscy5pc1ZpYnJhdGluZygpJyk7CisgICAg
ICAgIGNhbmNlbFZpYnJhdGlvbihjYW5jZWxpbmdUaW1lICsgY291bnQgKiAxMDApOworICAgIH0K
KworICAgIGZ1bmN0aW9uIGNhbmNlbFZpYnJhdGlvbih0aW1lKSB7CisgICAgICAgIHNldFRpbWVv
dXQoZnVuY3Rpb24oKSB7CisgICAgICAgICAgICBuYXZpZ2F0b3IudmlicmF0ZSgwKTsKKyAgICAg
ICAgICAgIHNob3VsZEJlRmFsc2UoJ2ludGVybmFscy5pc1ZpYnJhdGluZygpJyk7CisgICAgICAg
ICAgICBpZiAoY291bnQrKyA9PSAyKQorICAgICAgICAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwor
ICAgICAgICAgICAgdmlicmF0ZSgpOworICAgICAgICB9LCB0aW1lKTsKKyAgICB9CisKKyAgICBz
aG91bGRCZUZhbHNlKCdpbnRlcm5hbHMuaXNWaWJyYXRpbmcoKScpOworICAgIHZpYnJhdGUoKTsK
KyAgICB3aW5kb3cuanNUZXN0SXNBc3luYyA9IHRydWU7Cit9IGVsc2UKKyAgICBkZWJ1ZygnVGhp
cyB0ZXN0IGNhbiBub3QgYmUgcnVuIHdpdGhvdXQgdGhlIFRlc3RSdW5uZXInKTsKKzwvc2NyaXB0
PgorPHNjcmlwdCBzcmM9Ii4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcG9zdC5qcyI+PC9z
Y3JpcHQ+Cis8L2JvZHk+Cis8L2h0bWw+ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>205470</attachid>
            <date>2013-06-26 04:49:47 -0700</date>
            <delta_ts>2013-06-26 05:33:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-117822-20130626204749.patch</filename>
            <type>text/plain</type>
            <size>7788</size>
            <attacher name="Kihong Kwon">kihong.kwon</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxOTc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTI5NDczY2VjMmY4MjVl
NjM3ZDZjOGY1NmU5MTMzZjc4MmEwMmFjNi4uYTY0ODhjZTgyYTIzMjc3NDcxYjRjNzQyZmJiZmEw
MDJhZDFmNDYwYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI2IEBACisyMDEzLTA2LTI2ICBLaWhv
bmcgS3dvbiAgPGtpaG9uZy5rd29uQHNhbXN1bmcuY29tPgorCisgICAgICAgIFZpYnJhdGlvbiBj
YW5ub3QgYmUgY2FuY2VsZWQgZHVyaW5nIHBhdHRlcm4gdmlicmF0aW9uLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE3ODIyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVmlicmF0aW9uIGNhbiBub3QgY2Fu
Y2VsIGR1cmluZyBwYXR0ZXJuIHZpYnJhdGlvbiBpcyB3b3JraW5nLiBJZiByZXN0aW5nIHRpbWUg
d2hpY2ggYXJlCisgICAgICAgIGV2ZW4gbnVtYmVycyBvZiBwYXR0ZXJuIG1faXNWaWJyYWluZyB3
aWxsIGJlIGZhbHNlIGFuZCBjYW5jZWwgd2lsbCB0aHVzIHJldHVybiBlYXJseS4KKyAgICAgICAg
SW4gYWRkaXRpb24sIG1fdGltZXJTdGFydCBuZWVkcyB0byBiZSBzdG9wcGVkIGluIHRoZSBjYW5j
ZWxWaWJyYXRpb24oKS4KKyAgICAgICAgSWYgY2FuY2VsVmlicmF0aW9uKCkgaXMgY2FsbGVkIHJp
Z2h0IGFmdGVyIG1fdGltZXJTdGFydCBpcyBmaXJlZCwgdGltZXJTdGFydEZpcmVkCisgICAgICAg
IGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQgZXZlbiBpZiB2aWJyYXRpb24gaXMgYWxyZWFkeSBjYW5j
ZWxlZCBiZWNhdXNlIG9mIHRpbWluZyBpc3N1ZSBvZiB0aW1lci4KKworICAgICAgICBUZXN0OiB2
aWJyYXRpb24vY2FuY2VsVmlicmF0aW9uLWR1cmluZy1wYXR0ZXJuLXZpYnJhdGluZy5odG1sCisK
KyAgICAgICAgKiBNb2R1bGVzL3ZpYnJhdGlvbi9WaWJyYXRpb24uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6VmlicmF0aW9uOjp2aWJyYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlZpYnJhdGlvbjo6
Y2FuY2VsVmlicmF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlZpYnJhdGlvbjo6c3VzcGVuZFZp
YnJhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpWaWJyYXRpb246OnJlc3VtZVZpYnJhdGlvbik6
CisgICAgICAgIChXZWJDb3JlOjpWaWJyYXRpb246OnRpbWVyU3RhcnRGaXJlZCk6CisgICAgICAg
IChXZWJDb3JlOjpWaWJyYXRpb246OnRpbWVyU3RvcEZpcmVkKToKKwogMjAxMy0wNi0yNSAgUnlv
c3VrZSBOaXdhICA8cm5pd2FAd2Via2l0Lm9yZz4KIAogICAgICAgICBKU1N0cmluZyBzaG91bGQg
cmVtZW1iZXIgQXRvbWljU3RyaW5nCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVz
L3ZpYnJhdGlvbi9WaWJyYXRpb24uY3BwIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy92aWJyYXRp
b24vVmlicmF0aW9uLmNwcAppbmRleCBhZTlkYmUyODg3MmViYmM0NmVlMDc0NzFiMmQxMGM1M2Mz
OGQzYjljLi5iODY2MzZiYzdkZjI4MDc5NjkxM2UzNTQwZDFkYTVjYmQ2ODFhZGQyIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3ZpYnJhdGlvbi9WaWJyYXRpb24uY3BwCisrKyBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvdmlicmF0aW9uL1ZpYnJhdGlvbi5jcHAKQEAgLTUyLDYg
KzUyLDcgQEAgdm9pZCBWaWJyYXRpb246OnZpYnJhdGUoY29uc3QgdW5zaWduZWQmIHRpbWUpCiAg
ICAgfQogICAgIG1fcGF0dGVybi5hcHBlbmQodGltZSk7CiAgICAgbV90aW1lclN0YXJ0LnN0YXJ0
T25lU2hvdCgwKTsKKyAgICBtX2lzVmlicmF0aW5nID0gdHJ1ZTsKIH0KIAogdm9pZCBWaWJyYXRp
b246OnZpYnJhdGUoY29uc3QgVmlicmF0aW9uUGF0dGVybiYgcGF0dGVybikKQEAgLTcyLDE1ICs3
MywxNyBAQCB2b2lkIFZpYnJhdGlvbjo6dmlicmF0ZShjb25zdCBWaWJyYXRpb25QYXR0ZXJuJiBw
YXR0ZXJuKQogCiAgICAgbV9wYXR0ZXJuID0gcGF0dGVybjsKICAgICBtX3RpbWVyU3RhcnQuc3Rh
cnRPbmVTaG90KDApOworICAgIG1faXNWaWJyYXRpbmcgPSB0cnVlOwogfQogCiB2b2lkIFZpYnJh
dGlvbjo6Y2FuY2VsVmlicmF0aW9uKCkKIHsKICAgICBtX3BhdHRlcm4uY2xlYXIoKTsKICAgICBp
ZiAobV9pc1ZpYnJhdGluZykgeworICAgICAgICBtX3RpbWVyU3RhcnQuc3RvcCgpOworICAgICAg
ICBtX3RpbWVyU3RvcC5zdG9wKCk7CiAgICAgICAgIG1fdmlicmF0aW9uQ2xpZW50LT5jYW5jZWxW
aWJyYXRpb24oKTsKICAgICAgICAgbV9pc1ZpYnJhdGluZyA9IGZhbHNlOwotICAgICAgICBtX3Rp
bWVyU3RvcC5zdG9wKCk7CiAgICAgfQogfQogCkBAIC05MCwxMyArOTMsMTYgQEAgdm9pZCBWaWJy
YXRpb246OnN1c3BlbmRWaWJyYXRpb24oKQogICAgICAgICByZXR1cm47CiAKICAgICBtX3BhdHRl
cm4uaW5zZXJ0KDAsIG1fdGltZXJTdG9wLm5leHRGaXJlSW50ZXJ2YWwoKSk7CisgICAgbV90aW1l
clN0YXJ0LnN0b3AoKTsKICAgICBtX3RpbWVyU3RvcC5zdG9wKCk7Ci0gICAgY2FuY2VsVmlicmF0
aW9uKCk7CisgICAgbV92aWJyYXRpb25DbGllbnQtPmNhbmNlbFZpYnJhdGlvbigpOworICAgIG1f
aXNWaWJyYXRpbmcgPSBmYWxzZTsKIH0KIAogdm9pZCBWaWJyYXRpb246OnJlc3VtZVZpYnJhdGlv
bigpCiB7CiAgICAgbV90aW1lclN0YXJ0LnN0YXJ0T25lU2hvdCgwKTsKKyAgICBtX2lzVmlicmF0
aW5nID0gdHJ1ZTsKIH0KIAogdm9pZCBWaWJyYXRpb246OnRpbWVyU3RhcnRGaXJlZChUaW1lcjxW
aWJyYXRpb24+KiB0aW1lcikKQEAgLTEwNSw4ICsxMTEsNyBAQCB2b2lkIFZpYnJhdGlvbjo6dGlt
ZXJTdGFydEZpcmVkKFRpbWVyPFZpYnJhdGlvbj4qIHRpbWVyKQogCiAgICAgbV90aW1lclN0YXJ0
LnN0b3AoKTsKIAotICAgIGlmIChtX3BhdHRlcm4uc2l6ZSgpKSB7Ci0gICAgICAgIG1faXNWaWJy
YXRpbmcgPSB0cnVlOworICAgIGlmICghbV9wYXR0ZXJuLmlzRW1wdHkoKSkgewogICAgICAgICBt
X3ZpYnJhdGlvbkNsaWVudC0+dmlicmF0ZShtX3BhdHRlcm5bMF0pOwogICAgICAgICBtX3RpbWVy
U3RvcC5zdGFydE9uZVNob3QobV9wYXR0ZXJuWzBdIC8gMTAwMC4wKTsKICAgICAgICAgbV9wYXR0
ZXJuLnJlbW92ZSgwKTsKQEAgLTExOCwxMSArMTIzLDEyIEBAIHZvaWQgVmlicmF0aW9uOjp0aW1l
clN0b3BGaXJlZChUaW1lcjxWaWJyYXRpb24+KiB0aW1lcikKICAgICBBU1NFUlRfVU5VU0VEKHRp
bWVyLCB0aW1lciA9PSAmbV90aW1lclN0b3ApOwogCiAgICAgbV90aW1lclN0b3Auc3RvcCgpOwot
ICAgIG1faXNWaWJyYXRpbmcgPSBmYWxzZTsKIAotICAgIGlmIChtX3BhdHRlcm4uc2l6ZSgpKSB7
CisgICAgaWYgKCFtX3BhdHRlcm4uaXNFbXB0eSgpKSB7CiAgICAgICAgIG1fdGltZXJTdGFydC5z
dGFydE9uZVNob3QobV9wYXR0ZXJuWzBdIC8gMTAwMC4wKTsKICAgICAgICAgbV9wYXR0ZXJuLnJl
bW92ZSgwKTsKKyAgICAgICAgaWYgKG1fcGF0dGVybi5pc0VtcHR5KCkpCisgICAgICAgICAgICBt
X2lzVmlicmF0aW5nID0gZmFsc2U7CiAgICAgfQogfQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTM5ZTUyYjdlMjM2ZjBm
YzZmZDYxMDVhZjAwNDk5NmU5OTQ3MTJjYy4uOGI1ZDAwM2QxYTExZmI4OTNhMjZlZGUyM2NhOGQx
ZjJiZDNhOGMzOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91
dFRlc3RzL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEzLTA2LTI2ICBLaWhvbmcgS3dv
biAgPGtpaG9uZy5rd29uQHNhbXN1bmcuY29tPgorCisgICAgICAgIFZpYnJhdGlvbiBjYW5ub3Qg
YmUgY2FuY2VsZWQgZHVyaW5nIHBhdHRlcm4gdmlicmF0aW9uLgorICAgICAgICBodHRwczovL2J1
Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE3ODIyCisKKyAgICAgICAgUmV2aWV3ZWQg
YnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgdGVzdCBjYXNlIGZvciB2aWJyYXRp
b24gY2FuY2VsYXRpb24gZHVyaW5nIHBhdHRlcm4gdmlicmF0aW9uLgorICAgICAgICBJbiBhZGRp
dGlvbiwgcmVzdG9yZSB2aXNpYmlsaXR5U3RhdGUgYmVmb3JlIGV4ZWN1dGluZyBjYW5jZWxWaWJy
YXRpb24tYWZ0ZXItcGFnZXZpc2liaWxpdHktY2hhbmdlZC10by1oaWRkZW4uaHRtbC4KKworICAg
ICAgICAqIHZpYnJhdGlvbi9jYW5jZWxWaWJyYXRpb24tYWZ0ZXItcGFnZXZpc2liaWxpdHktY2hh
bmdlZC10by1oaWRkZW4uaHRtbDoKKyAgICAgICAgKiB2aWJyYXRpb24vY2FuY2VsVmlicmF0aW9u
LWR1cmluZy1wYXR0ZXJuLXZpYnJhdGluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAq
IHZpYnJhdGlvbi9jYW5jZWxWaWJyYXRpb24tZHVyaW5nLXBhdHRlcm4tdmlicmF0aW5nLmh0bWw6
IEFkZGVkLgorCiAyMDEzLTA2LTI1ICBLcnp5c3p0b2YgQ3plY2ggIDxrLmN6ZWNoQHNhbXN1bmcu
Y29tPgogCiAgICAgICAgIFtBWF1bQVRLXSBVcGRhdGUgYWNjZXNzaWJpbGl0eSBiYXNlbGluZXMg
YWZ0ZXIgcjE1MTk1MwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvdmlicmF0aW9uL2NhbmNlbFZp
YnJhdGlvbi1hZnRlci1wYWdldmlzaWJpbGl0eS1jaGFuZ2VkLXRvLWhpZGRlbi5odG1sIGIvTGF5
b3V0VGVzdHMvdmlicmF0aW9uL2NhbmNlbFZpYnJhdGlvbi1hZnRlci1wYWdldmlzaWJpbGl0eS1j
aGFuZ2VkLXRvLWhpZGRlbi5odG1sCmluZGV4IDVkZmYzODI0MzA5NjAyMDk5YjEyN2U2NWE1YzU5
YTQzNzc3Zjg3YmUuLmI1ZjI5N2VjM2U1OWExNzJhZjIwOTBjOTJhNjhjNjUwM2MzNGMyMGYgMTAw
NjQ0Ci0tLSBhL0xheW91dFRlc3RzL3ZpYnJhdGlvbi9jYW5jZWxWaWJyYXRpb24tYWZ0ZXItcGFn
ZXZpc2liaWxpdHktY2hhbmdlZC10by1oaWRkZW4uaHRtbAorKysgYi9MYXlvdXRUZXN0cy92aWJy
YXRpb24vY2FuY2VsVmlicmF0aW9uLWFmdGVyLXBhZ2V2aXNpYmlsaXR5LWNoYW5nZWQtdG8taGlk
ZGVuLmh0bWwKQEAgLTYsMTAgKzYsMTMgQEAKIDxzY3JpcHQ+CiBkZXNjcmlwdGlvbignVGVzdHMg
dGhlIGNhbmNlbFZpYnJhdGlvbiBhZnRlciBjaGFuZ2luZyB0aGUgdmFsdWUgb2YgcGFnZVZpc2li
aWxpdHkgdG8gaGlkZGVuLicpOwogCit2YXIgdmlzaWJpbGl0eVN0YXRlID0gZG9jdW1lbnQudmlz
aWJpbGl0eVN0YXRlOworCiBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd2aXNpYmlsaXR5Y2hh
bmdlJywgZnVuY3Rpb24oZSkgewogICAgIGlmIChkb2N1bWVudC52aXNpYmlsaXR5U3RhdGUgPT0g
J2hpZGRlbicpCiAgICAgICAgIG5hdmlnYXRvci52aWJyYXRlKDApOwogICAgICAgICBzaG91bGRC
ZUZhbHNlKCdpbnRlcm5hbHMuaXNWaWJyYXRpbmcoKScpOworICAgICAgICB0ZXN0UnVubmVyLnNl
dFBhZ2VWaXNpYmlsaXR5KHZpc2liaWxpdHlTdGF0ZSk7CiAgICAgICAgIGZpbmlzaEpTVGVzdCgp
OwogICAgIH0pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy92aWJyYXRpb24vY2FuY2VsVmli
cmF0aW9uLWR1cmluZy1wYXR0ZXJuLXZpYnJhdGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy92aWJyYXRpb24vY2FuY2VsVmlicmF0aW9uLWR1cmluZy1wYXR0ZXJuLXZpYnJhdGluZy1leHBl
Y3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMC4uYzRjYmZjMjc1YTIxZDU0MzJlYTI3NDQ5YjhjM2E0MDgyZmE0
MTM1ZAotLS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3ZpYnJhdGlvbi9jYW5jZWxWaWJy
YXRpb24tZHVyaW5nLXBhdHRlcm4tdmlicmF0aW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE2
IEBACitUZXN0cyB0aGUgY2FuY2VsVmlicmF0aW9uIGR1cmluZyBwYXR0ZXJuIHZpYnJhdGlvbiBp
cyB3b3JraW5nLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1Mi
IG1lc3NhZ2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBpbnRlcm5h
bHMuaXNWaWJyYXRpbmcoKSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaXNWaWJyYXRpbmcoKSBp
cyB0cnVlCitQQVNTIGludGVybmFscy5pc1ZpYnJhdGluZygpIGlzIGZhbHNlCitQQVNTIGludGVy
bmFscy5pc1ZpYnJhdGluZygpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmlzVmlicmF0aW5nKCkg
aXMgZmFsc2UKK1BBU1MgaW50ZXJuYWxzLmlzVmlicmF0aW5nKCkgaXMgdHJ1ZQorUEFTUyBpbnRl
cm5hbHMuaXNWaWJyYXRpbmcoKSBpcyBmYWxzZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMg
dHJ1ZQorCitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3ZpYnJhdGlv
bi9jYW5jZWxWaWJyYXRpb24tZHVyaW5nLXBhdHRlcm4tdmlicmF0aW5nLmh0bWwgYi9MYXlvdXRU
ZXN0cy92aWJyYXRpb24vY2FuY2VsVmlicmF0aW9uLWR1cmluZy1wYXR0ZXJuLXZpYnJhdGluZy5o
dG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAuLmJkYWNjM2QyNDZmZjg5NjI1ODI0NDA1ZGI1NGEzY2U5MjhiOTVjM2EK
LS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy92aWJyYXRpb24vY2FuY2VsVmlicmF0aW9u
LWR1cmluZy1wYXR0ZXJuLXZpYnJhdGluZy5odG1sCkBAIC0wLDAgKzEsMzcgQEAKKzxodG1sPgor
PGhlYWQ+Cis8c2NyaXB0IHNyYz0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMi
Pjwvc2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1Rlc3Rz
IHRoZSBjYW5jZWxWaWJyYXRpb24gZHVyaW5nIHBhdHRlcm4gdmlicmF0aW9uIGlzIHdvcmtpbmcu
Jyk7CisKK3ZhciBjb3VudCA9IDA7Cit2YXIgY2FuY2VsaW5nVGltZSA9IDgwOworCitpZiAod2lu
ZG93LnRlc3RSdW5uZXIpIHsKKyAgICBmdW5jdGlvbiB2aWJyYXRlKCkgeworICAgICAgICBuYXZp
Z2F0b3IudmlicmF0ZShbMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDBdKTsKKyAgICAgICAgc2hvdWxk
QmVUcnVlKCdpbnRlcm5hbHMuaXNWaWJyYXRpbmcoKScpOworICAgICAgICBjYW5jZWxWaWJyYXRp
b24oY2FuY2VsaW5nVGltZSArIGNvdW50ICogMTAwKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBj
YW5jZWxWaWJyYXRpb24odGltZSkgeworICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgewor
ICAgICAgICAgICAgbmF2aWdhdG9yLnZpYnJhdGUoMCk7CisgICAgICAgICAgICBzaG91bGRCZUZh
bHNlKCdpbnRlcm5hbHMuaXNWaWJyYXRpbmcoKScpOworICAgICAgICAgICAgaWYgKGNvdW50Kysg
PT0gMikKKyAgICAgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgICAgIHZpYnJh
dGUoKTsKKyAgICAgICAgfSwgdGltZSk7CisgICAgfQorCisgICAgc2hvdWxkQmVGYWxzZSgnaW50
ZXJuYWxzLmlzVmlicmF0aW5nKCknKTsKKyAgICB2aWJyYXRlKCk7CisgICAgd2luZG93LmpzVGVz
dElzQXN5bmMgPSB0cnVlOworfSBlbHNlCisgICAgZGVidWcoJ1RoaXMgdGVzdCBjYW4gbm90IGJl
IHJ1biB3aXRob3V0IHRoZSBUZXN0UnVubmVyJyk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIu
Li9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5Pgor
PC9odG1sPgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>205478</attachid>
            <date>2013-06-26 05:33:24 -0700</date>
            <delta_ts>2013-06-26 19:01:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-117822-20130626213126.patch</filename>
            <type>text/plain</type>
            <size>8523</size>
            <attacher name="Kihong Kwon">kihong.kwon</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTUxOTc4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggYTI5NDczY2VjMmY4MjVl
NjM3ZDZjOGY1NmU5MTMzZjc4MmEwMmFjNi4uZTlhZDhlYmViZWQzNjM3YTIzMjdmYmQxNzZiOWQy
Yzk5NmMwOTg3YiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDI4IEBACisyMDEzLTA2LTI2ICBLaWhv
bmcgS3dvbiAgPGtpaG9uZy5rd29uQHNhbXN1bmcuY29tPgorCisgICAgICAgIFZpYnJhdGlvbiBj
YW5ub3QgYmUgY2FuY2VsZWQgZHVyaW5nIHBhdHRlcm4gdmlicmF0aW9uLgorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE3ODIyCisKKyAgICAgICAgUmV2
aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVmlicmF0aW9uIGNhbiBub3QgY2Fu
Y2VsIGR1cmluZyBwYXR0ZXJuIHZpYnJhdGlvbiBpcyB3b3JraW5nLiBJZiByZXN0aW5nIHRpbWUg
d2hpY2ggYXJlCisgICAgICAgIGV2ZW4gbnVtYmVycyBvZiBwYXR0ZXJuIG1faXNWaWJyYWluZyB3
aWxsIGJlIGZhbHNlIGFuZCBjYW5jZWwgd2lsbCB0aHVzIHJldHVybiBlYXJseS4KKyAgICAgICAg
SW4gYWRkaXRpb24sIG1fdGltZXJTdGFydCBuZWVkcyB0byBiZSBzdG9wcGVkIGluIHRoZSBjYW5j
ZWxWaWJyYXRpb24oKS4KKyAgICAgICAgSWYgY2FuY2VsVmlicmF0aW9uKCkgaXMgY2FsbGVkIHJp
Z2h0IGFmdGVyIG1fdGltZXJTdGFydCBpcyBmaXJlZCwgdGltZXJTdGFydEZpcmVkCisgICAgICAg
IGZ1bmN0aW9uIGNhbiBiZSBjYWxsZWQgZXZlbiBpZiB2aWJyYXRpb24gaXMgYWxyZWFkeSBjYW5j
ZWxlZCBiZWNhdXNlIG9mIHRpbWluZyBpc3N1ZSBvZiB0aW1lci4KKworICAgICAgICBUZXN0OiB2
aWJyYXRpb24vY2FuY2VsVmlicmF0aW9uLWR1cmluZy1wYXR0ZXJuLXZpYnJhdGluZy5odG1sCisK
KyAgICAgICAgKiBNb2R1bGVzL3ZpYnJhdGlvbi9WaWJyYXRpb24uY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6VmlicmF0aW9uOjp2aWJyYXRlKToKKyAgICAgICAgKFdlYkNvcmU6OlZpYnJhdGlvbjo6
Y2FuY2VsVmlicmF0aW9uKToKKyAgICAgICAgKFdlYkNvcmU6OlZpYnJhdGlvbjo6c3VzcGVuZFZp
YnJhdGlvbik6CisgICAgICAgIChXZWJDb3JlOjpWaWJyYXRpb246OnJlc3VtZVZpYnJhdGlvbik6
CisgICAgICAgIChXZWJDb3JlOjpWaWJyYXRpb246OnN0b3BWaWJyYXRpb24pOgorICAgICAgICAo
V2ViQ29yZTo6VmlicmF0aW9uOjp0aW1lclN0YXJ0RmlyZWQpOgorICAgICAgICAoV2ViQ29yZTo6
VmlicmF0aW9uOjp0aW1lclN0b3BGaXJlZCk6CisgICAgICAgICogTW9kdWxlcy92aWJyYXRpb24v
VmlicmF0aW9uLmg6CisKIDIwMTMtMDYtMjUgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5v
cmc+CiAKICAgICAgICAgSlNTdHJpbmcgc2hvdWxkIHJlbWVtYmVyIEF0b21pY1N0cmluZwpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvTW9kdWxlcy92aWJyYXRpb24vVmlicmF0aW9uLmNwcCBi
L1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvdmlicmF0aW9uL1ZpYnJhdGlvbi5jcHAKaW5kZXggYWU5
ZGJlMjg4NzJlYmJjNDZlZTA3NDcxYjJkMTBjNTNjMzhkM2I5Yy4uZDY3NTM1ZWRlZGEwYjI5Njg1
ZDk1ZDhiNTYzMjJjOTJiNGE5OGRmOSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvTW9kdWxl
cy92aWJyYXRpb24vVmlicmF0aW9uLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9Nb2R1bGVzL3Zp
YnJhdGlvbi9WaWJyYXRpb24uY3BwCkBAIC01Miw2ICs1Miw3IEBAIHZvaWQgVmlicmF0aW9uOjp2
aWJyYXRlKGNvbnN0IHVuc2lnbmVkJiB0aW1lKQogICAgIH0KICAgICBtX3BhdHRlcm4uYXBwZW5k
KHRpbWUpOwogICAgIG1fdGltZXJTdGFydC5zdGFydE9uZVNob3QoMCk7CisgICAgbV9pc1ZpYnJh
dGluZyA9IHRydWU7CiB9CiAKIHZvaWQgVmlicmF0aW9uOjp2aWJyYXRlKGNvbnN0IFZpYnJhdGlv
blBhdHRlcm4mIHBhdHRlcm4pCkBAIC03MiwxNiArNzMsMTQgQEAgdm9pZCBWaWJyYXRpb246OnZp
YnJhdGUoY29uc3QgVmlicmF0aW9uUGF0dGVybiYgcGF0dGVybikKIAogICAgIG1fcGF0dGVybiA9
IHBhdHRlcm47CiAgICAgbV90aW1lclN0YXJ0LnN0YXJ0T25lU2hvdCgwKTsKKyAgICBtX2lzVmli
cmF0aW5nID0gdHJ1ZTsKIH0KIAogdm9pZCBWaWJyYXRpb246OmNhbmNlbFZpYnJhdGlvbigpCiB7
CiAgICAgbV9wYXR0ZXJuLmNsZWFyKCk7Ci0gICAgaWYgKG1faXNWaWJyYXRpbmcpIHsKLSAgICAg
ICAgbV92aWJyYXRpb25DbGllbnQtPmNhbmNlbFZpYnJhdGlvbigpOwotICAgICAgICBtX2lzVmli
cmF0aW5nID0gZmFsc2U7Ci0gICAgICAgIG1fdGltZXJTdG9wLnN0b3AoKTsKLSAgICB9CisgICAg
aWYgKG1faXNWaWJyYXRpbmcpCisgICAgICAgIHN0b3BWaWJyYXRpb24oKTsKIH0KIAogdm9pZCBW
aWJyYXRpb246OnN1c3BlbmRWaWJyYXRpb24oKQpAQCAtOTAsMTMgKzg5LDIxIEBAIHZvaWQgVmli
cmF0aW9uOjpzdXNwZW5kVmlicmF0aW9uKCkKICAgICAgICAgcmV0dXJuOwogCiAgICAgbV9wYXR0
ZXJuLmluc2VydCgwLCBtX3RpbWVyU3RvcC5uZXh0RmlyZUludGVydmFsKCkpOwotICAgIG1fdGlt
ZXJTdG9wLnN0b3AoKTsKLSAgICBjYW5jZWxWaWJyYXRpb24oKTsKKyAgICBzdG9wVmlicmF0aW9u
KCk7CiB9CiAKIHZvaWQgVmlicmF0aW9uOjpyZXN1bWVWaWJyYXRpb24oKQogewogICAgIG1fdGlt
ZXJTdGFydC5zdGFydE9uZVNob3QoMCk7CisgICAgbV9pc1ZpYnJhdGluZyA9IHRydWU7Cit9CisK
K3ZvaWQgVmlicmF0aW9uOjpzdG9wVmlicmF0aW9uKCkKK3sKKyAgICBtX3RpbWVyU3RhcnQuc3Rv
cCgpOworICAgIG1fdGltZXJTdG9wLnN0b3AoKTsKKyAgICBtX3ZpYnJhdGlvbkNsaWVudC0+Y2Fu
Y2VsVmlicmF0aW9uKCk7CisgICAgbV9pc1ZpYnJhdGluZyA9IGZhbHNlOwogfQogCiB2b2lkIFZp
YnJhdGlvbjo6dGltZXJTdGFydEZpcmVkKFRpbWVyPFZpYnJhdGlvbj4qIHRpbWVyKQpAQCAtMTA1
LDggKzExMiw3IEBAIHZvaWQgVmlicmF0aW9uOjp0aW1lclN0YXJ0RmlyZWQoVGltZXI8VmlicmF0
aW9uPiogdGltZXIpCiAKICAgICBtX3RpbWVyU3RhcnQuc3RvcCgpOwogCi0gICAgaWYgKG1fcGF0
dGVybi5zaXplKCkpIHsKLSAgICAgICAgbV9pc1ZpYnJhdGluZyA9IHRydWU7CisgICAgaWYgKCFt
X3BhdHRlcm4uaXNFbXB0eSgpKSB7CiAgICAgICAgIG1fdmlicmF0aW9uQ2xpZW50LT52aWJyYXRl
KG1fcGF0dGVyblswXSk7CiAgICAgICAgIG1fdGltZXJTdG9wLnN0YXJ0T25lU2hvdChtX3BhdHRl
cm5bMF0gLyAxMDAwLjApOwogICAgICAgICBtX3BhdHRlcm4ucmVtb3ZlKDApOwpAQCAtMTE4LDEx
ICsxMjQsMTIgQEAgdm9pZCBWaWJyYXRpb246OnRpbWVyU3RvcEZpcmVkKFRpbWVyPFZpYnJhdGlv
bj4qIHRpbWVyKQogICAgIEFTU0VSVF9VTlVTRUQodGltZXIsIHRpbWVyID09ICZtX3RpbWVyU3Rv
cCk7CiAKICAgICBtX3RpbWVyU3RvcC5zdG9wKCk7Ci0gICAgbV9pc1ZpYnJhdGluZyA9IGZhbHNl
OwogCi0gICAgaWYgKG1fcGF0dGVybi5zaXplKCkpIHsKKyAgICBpZiAoIW1fcGF0dGVybi5pc0Vt
cHR5KCkpIHsKICAgICAgICAgbV90aW1lclN0YXJ0LnN0YXJ0T25lU2hvdChtX3BhdHRlcm5bMF0g
LyAxMDAwLjApOwogICAgICAgICBtX3BhdHRlcm4ucmVtb3ZlKDApOworICAgICAgICBpZiAobV9w
YXR0ZXJuLmlzRW1wdHkoKSkKKyAgICAgICAgICAgIG1faXNWaWJyYXRpbmcgPSBmYWxzZTsKICAg
ICB9CiB9CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL01vZHVsZXMvdmlicmF0aW9uL1Zp
YnJhdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvTW9kdWxlcy92aWJyYXRpb24vVmlicmF0aW9uLmgK
aW5kZXggMzM1ZWM2MGJlMjJkMjFiNjA2M2IwZWY3MTY1ZDFhYmUzZGNiNGUxYS4uNThmZjQyMTBl
ZTM4MjM3MjUxY2QyMzMxMGM4ZTRhM2I2MGM0ZmVmNiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNv
cmUvTW9kdWxlcy92aWJyYXRpb24vVmlicmF0aW9uLmgKKysrIGIvU291cmNlL1dlYkNvcmUvTW9k
dWxlcy92aWJyYXRpb24vVmlicmF0aW9uLmgKQEAgLTU2LDYgKzU2LDggQEAgcHVibGljOgogICAg
IGJvb2wgaXNWaWJyYXRpbmcoKSB7IHJldHVybiBtX2lzVmlicmF0aW5nOyB9CiAKIHByaXZhdGU6
CisgICAgdm9pZCBzdG9wVmlicmF0aW9uKCk7CisKICAgICBWaWJyYXRpb25DbGllbnQqIG1fdmli
cmF0aW9uQ2xpZW50OwogICAgIFRpbWVyPFZpYnJhdGlvbj4gbV90aW1lclN0YXJ0OwogICAgIFRp
bWVyPFZpYnJhdGlvbj4gbV90aW1lclN0b3A7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9DaGFu
Z2VMb2cgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKaW5kZXggOTM5ZTUyYjdlMjM2ZjBmYzZmZDYx
MDVhZjAwNDk5NmU5OTQ3MTJjYy4uOGI1ZDAwM2QxYTExZmI4OTNhMjZlZGUyM2NhOGQxZjJiZDNh
OGMzOSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCisrKyBiL0xheW91dFRlc3Rz
L0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEzLTA2LTI2ICBLaWhvbmcgS3dvbiAgPGtp
aG9uZy5rd29uQHNhbXN1bmcuY29tPgorCisgICAgICAgIFZpYnJhdGlvbiBjYW5ub3QgYmUgY2Fu
Y2VsZWQgZHVyaW5nIHBhdHRlcm4gdmlicmF0aW9uLgorICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTE3ODIyCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9C
T0RZIChPT1BTISkuCisKKyAgICAgICAgQWRkIGEgdGVzdCBjYXNlIGZvciB2aWJyYXRpb24gY2Fu
Y2VsYXRpb24gZHVyaW5nIHBhdHRlcm4gdmlicmF0aW9uLgorICAgICAgICBJbiBhZGRpdGlvbiwg
cmVzdG9yZSB2aXNpYmlsaXR5U3RhdGUgYmVmb3JlIGV4ZWN1dGluZyBjYW5jZWxWaWJyYXRpb24t
YWZ0ZXItcGFnZXZpc2liaWxpdHktY2hhbmdlZC10by1oaWRkZW4uaHRtbC4KKworICAgICAgICAq
IHZpYnJhdGlvbi9jYW5jZWxWaWJyYXRpb24tYWZ0ZXItcGFnZXZpc2liaWxpdHktY2hhbmdlZC10
by1oaWRkZW4uaHRtbDoKKyAgICAgICAgKiB2aWJyYXRpb24vY2FuY2VsVmlicmF0aW9uLWR1cmlu
Zy1wYXR0ZXJuLXZpYnJhdGluZy1leHBlY3RlZC50eHQ6IEFkZGVkLgorICAgICAgICAqIHZpYnJh
dGlvbi9jYW5jZWxWaWJyYXRpb24tZHVyaW5nLXBhdHRlcm4tdmlicmF0aW5nLmh0bWw6IEFkZGVk
LgorCiAyMDEzLTA2LTI1ICBLcnp5c3p0b2YgQ3plY2ggIDxrLmN6ZWNoQHNhbXN1bmcuY29tPgog
CiAgICAgICAgIFtBWF1bQVRLXSBVcGRhdGUgYWNjZXNzaWJpbGl0eSBiYXNlbGluZXMgYWZ0ZXIg
cjE1MTk1MwpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvdmlicmF0aW9uL2NhbmNlbFZpYnJhdGlv
bi1hZnRlci1wYWdldmlzaWJpbGl0eS1jaGFuZ2VkLXRvLWhpZGRlbi5odG1sIGIvTGF5b3V0VGVz
dHMvdmlicmF0aW9uL2NhbmNlbFZpYnJhdGlvbi1hZnRlci1wYWdldmlzaWJpbGl0eS1jaGFuZ2Vk
LXRvLWhpZGRlbi5odG1sCmluZGV4IDVkZmYzODI0MzA5NjAyMDk5YjEyN2U2NWE1YzU5YTQzNzc3
Zjg3YmUuLmI1ZjI5N2VjM2U1OWExNzJhZjIwOTBjOTJhNjhjNjUwM2MzNGMyMGYgMTAwNjQ0Ci0t
LSBhL0xheW91dFRlc3RzL3ZpYnJhdGlvbi9jYW5jZWxWaWJyYXRpb24tYWZ0ZXItcGFnZXZpc2li
aWxpdHktY2hhbmdlZC10by1oaWRkZW4uaHRtbAorKysgYi9MYXlvdXRUZXN0cy92aWJyYXRpb24v
Y2FuY2VsVmlicmF0aW9uLWFmdGVyLXBhZ2V2aXNpYmlsaXR5LWNoYW5nZWQtdG8taGlkZGVuLmh0
bWwKQEAgLTYsMTAgKzYsMTMgQEAKIDxzY3JpcHQ+CiBkZXNjcmlwdGlvbignVGVzdHMgdGhlIGNh
bmNlbFZpYnJhdGlvbiBhZnRlciBjaGFuZ2luZyB0aGUgdmFsdWUgb2YgcGFnZVZpc2liaWxpdHkg
dG8gaGlkZGVuLicpOwogCit2YXIgdmlzaWJpbGl0eVN0YXRlID0gZG9jdW1lbnQudmlzaWJpbGl0
eVN0YXRlOworCiBkb2N1bWVudC5hZGRFdmVudExpc3RlbmVyKCd2aXNpYmlsaXR5Y2hhbmdlJywg
ZnVuY3Rpb24oZSkgewogICAgIGlmIChkb2N1bWVudC52aXNpYmlsaXR5U3RhdGUgPT0gJ2hpZGRl
bicpCiAgICAgICAgIG5hdmlnYXRvci52aWJyYXRlKDApOwogICAgICAgICBzaG91bGRCZUZhbHNl
KCdpbnRlcm5hbHMuaXNWaWJyYXRpbmcoKScpOworICAgICAgICB0ZXN0UnVubmVyLnNldFBhZ2VW
aXNpYmlsaXR5KHZpc2liaWxpdHlTdGF0ZSk7CiAgICAgICAgIGZpbmlzaEpTVGVzdCgpOwogICAg
IH0pOwogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy92aWJyYXRpb24vY2FuY2VsVmlicmF0aW9u
LWR1cmluZy1wYXR0ZXJuLXZpYnJhdGluZy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy92aWJy
YXRpb24vY2FuY2VsVmlicmF0aW9uLWR1cmluZy1wYXR0ZXJuLXZpYnJhdGluZy1leHBlY3RlZC50
eHQKbmV3IGZpbGUgbW9kZSAxMDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMC4uYzRjYmZjMjc1YTIxZDU0MzJlYTI3NDQ5YjhjM2E0MDgyZmE0MTM1ZAot
LS0gL2Rldi9udWxsCisrKyBiL0xheW91dFRlc3RzL3ZpYnJhdGlvbi9jYW5jZWxWaWJyYXRpb24t
ZHVyaW5nLXBhdHRlcm4tdmlicmF0aW5nLWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDE2IEBACitU
ZXN0cyB0aGUgY2FuY2VsVmlicmF0aW9uIGR1cmluZyBwYXR0ZXJuIHZpYnJhdGlvbiBpcyB3b3Jr
aW5nLgorCitPbiBzdWNjZXNzLCB5b3Ugd2lsbCBzZWUgYSBzZXJpZXMgb2YgIlBBU1MiIG1lc3Nh
Z2VzLCBmb2xsb3dlZCBieSAiVEVTVCBDT01QTEVURSIuCisKKworUEFTUyBpbnRlcm5hbHMuaXNW
aWJyYXRpbmcoKSBpcyBmYWxzZQorUEFTUyBpbnRlcm5hbHMuaXNWaWJyYXRpbmcoKSBpcyB0cnVl
CitQQVNTIGludGVybmFscy5pc1ZpYnJhdGluZygpIGlzIGZhbHNlCitQQVNTIGludGVybmFscy5p
c1ZpYnJhdGluZygpIGlzIHRydWUKK1BBU1MgaW50ZXJuYWxzLmlzVmlicmF0aW5nKCkgaXMgZmFs
c2UKK1BBU1MgaW50ZXJuYWxzLmlzVmlicmF0aW5nKCkgaXMgdHJ1ZQorUEFTUyBpbnRlcm5hbHMu
aXNWaWJyYXRpbmcoKSBpcyBmYWxzZQorUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1ZQor
CitURVNUIENPTVBMRVRFCisKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3ZpYnJhdGlvbi9jYW5j
ZWxWaWJyYXRpb24tZHVyaW5nLXBhdHRlcm4tdmlicmF0aW5nLmh0bWwgYi9MYXlvdXRUZXN0cy92
aWJyYXRpb24vY2FuY2VsVmlicmF0aW9uLWR1cmluZy1wYXR0ZXJuLXZpYnJhdGluZy5odG1sCm5l
dyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAuLmJkYWNjM2QyNDZmZjg5NjI1ODI0NDA1ZGI1NGEzY2U5MjhiOTVjM2EKLS0tIC9k
ZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy92aWJyYXRpb24vY2FuY2VsVmlicmF0aW9uLWR1cmlu
Zy1wYXR0ZXJuLXZpYnJhdGluZy5odG1sCkBAIC0wLDAgKzEsMzcgQEAKKzxodG1sPgorPGhlYWQ+
Cis8c2NyaXB0IHNyYz0iLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1wcmUuanMiPjwvc2Ny
aXB0PgorPC9oZWFkPgorPGJvZHk+Cis8c2NyaXB0PgorZGVzY3JpcHRpb24oJ1Rlc3RzIHRoZSBj
YW5jZWxWaWJyYXRpb24gZHVyaW5nIHBhdHRlcm4gdmlicmF0aW9uIGlzIHdvcmtpbmcuJyk7CisK
K3ZhciBjb3VudCA9IDA7Cit2YXIgY2FuY2VsaW5nVGltZSA9IDgwOworCitpZiAod2luZG93LnRl
c3RSdW5uZXIpIHsKKyAgICBmdW5jdGlvbiB2aWJyYXRlKCkgeworICAgICAgICBuYXZpZ2F0b3Iu
dmlicmF0ZShbMTAwLCAxMDAsIDEwMCwgMTAwLCAxMDBdKTsKKyAgICAgICAgc2hvdWxkQmVUcnVl
KCdpbnRlcm5hbHMuaXNWaWJyYXRpbmcoKScpOworICAgICAgICBjYW5jZWxWaWJyYXRpb24oY2Fu
Y2VsaW5nVGltZSArIGNvdW50ICogMTAwKTsKKyAgICB9CisKKyAgICBmdW5jdGlvbiBjYW5jZWxW
aWJyYXRpb24odGltZSkgeworICAgICAgICBzZXRUaW1lb3V0KGZ1bmN0aW9uKCkgeworICAgICAg
ICAgICAgbmF2aWdhdG9yLnZpYnJhdGUoMCk7CisgICAgICAgICAgICBzaG91bGRCZUZhbHNlKCdp
bnRlcm5hbHMuaXNWaWJyYXRpbmcoKScpOworICAgICAgICAgICAgaWYgKGNvdW50KysgPT0gMikK
KyAgICAgICAgICAgICAgICBmaW5pc2hKU1Rlc3QoKTsKKyAgICAgICAgICAgIHZpYnJhdGUoKTsK
KyAgICAgICAgfSwgdGltZSk7CisgICAgfQorCisgICAgc2hvdWxkQmVGYWxzZSgnaW50ZXJuYWxz
LmlzVmlicmF0aW5nKCknKTsKKyAgICB2aWJyYXRlKCk7CisgICAgd2luZG93LmpzVGVzdElzQXN5
bmMgPSB0cnVlOworfSBlbHNlCisgICAgZGVidWcoJ1RoaXMgdGVzdCBjYW4gbm90IGJlIHJ1biB3
aXRob3V0IHRoZSBUZXN0UnVubmVyJyk7Cis8L3NjcmlwdD4KKzxzY3JpcHQgc3JjPSIuLi9mYXN0
L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QuanMiPjwvc2NyaXB0PgorPC9ib2R5PgorPC9odG1s
PgpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUK
</data>

          </attachment>
      

    </bug>

</bugzilla>