<?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>24704</bug_id>
          
          <creation_ts>2009-03-19 14:43:30 -0700</creation_ts>
          <short_desc>DumpRenderTree (OSX version) should be able to run independent instances at the same time.</short_desc>
          <delta_ts>2009-05-14 12:56:32 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Mac</rep_platform>
          <op_sys>OS X 10.5</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>
          
          <blocked>10906</blocked>
    
    <blocked>25848</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="David Levin">levin</reporter>
          <assigned_to name="David Levin">levin</assigned_to>
          <cc>ddkilzer</cc>
    
    <cc>mrowe</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>114378</commentid>
    <comment_count>0</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2009-03-19 14:43:30 -0700</bug_when>
    <thetext>Much like WebView.mm does.

Fixing this would allow multiple instances to run in parallel and not conflict (as long as dumpPixels isn&apos;t turned on).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>114380</commentid>
    <comment_count>1</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2009-03-19 14:47:15 -0700</bug_when>
    <thetext>When I said fixing this issue allows running multiple instances, I mean if the DumpRenderTree instances have different names.  

For example, one could create a symbol link and runs that instead to ensure that the settings are isolated from other instances.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>114383</commentid>
    <comment_count>2</comment_count>
      <attachid>28765</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2009-03-19 14:50:23 -0700</bug_when>
    <thetext>Created attachment 28765
Proposed fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>114393</commentid>
    <comment_count>3</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-03-19 15:39:03 -0700</bug_when>
    <thetext>Why is this useful?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>114396</commentid>
    <comment_count>4</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2009-03-19 15:56:52 -0700</bug_when>
    <thetext>One of the problems mentioned in https://bugs.webkit.org/show_bug.cgi?id=10906 is &quot;- sharing of icon database, cookies and disk cache;&quot;


After these changes I could do this
  ln -s DumpRenderTree DumpRenderTree1
  ln -s DumpRenderTree DumpRenderTree2

Then I can run DumpRenderTree1 and DumpRenderTree2 at the same time without sharing the above items.  (WebKit on OSX already appears to use the app name to separate settings.)
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>114400</commentid>
    <comment_count>5</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-03-19 16:09:52 -0700</bug_when>
    <thetext>I don&apos;t think that this is the appropriate way to address that problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>114405</commentid>
    <comment_count>6</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2009-03-19 16:32:14 -0700</bug_when>
    <thetext>&gt; I don&apos;t think that this is the appropriate way to address that problem.
That&apos;s a bit terse.  Would you elaborate on what you think is &quot;the appropriate way&quot;? :)

The other idea I had was to pass in some parameter to DumpRenderTree, but it seems like I would want the end result to be the same (separate location for these items).  In addition, I would need to find and change code like WebKitInitializeApplicationCachePathIfNecessary() in WebView.mm also (while the differing app name worked nicely with this coding pattern).


</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>114407</commentid>
    <comment_count>7</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-03-19 16:43:42 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; &gt; I don&apos;t think that this is the appropriate way to address that problem.
&gt; That&apos;s a bit terse.  Would you elaborate on what you think is &quot;the appropriate
&gt; way&quot;? :)

Sorry, I replied to this from my iPhone and gave up on elaborating.  

Some things, such as cookies, are not application-specific.  Since changing the application name can&apos;t address all sharing issues, I think it is better to take a cleaner approach.

&gt; The other idea I had was to pass in some parameter to DumpRenderTree, but it
&gt; seems like I would want the end result to be the same (separate location for
&gt; these items).  In addition, I would need to find and change code like
&gt; WebKitInitializeApplicationCachePathIfNecessary() in WebView.mm also (while the
&gt; differing app name worked nicely with this coding pattern).

I think that having DumpRenderTree generate a unique identifier and using that in paths, etc, to avoid conflicts would be preferable.  It may require additional changes, but some of that functionality will be useful to other WebKit clients, and it seems cleaner than relying on how WebKit and other system frameworks happen to generate cache paths, etc.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>114451</commentid>
    <comment_count>8</comment_count>
      <attachid>28781</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2009-03-20 00:46:27 -0700</bug_when>
    <thetext>Created attachment 28781
Proposed fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>114757</commentid>
    <comment_count>9</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2009-03-23 00:49:58 -0700</bug_when>
    <thetext>The remaining issue as I understand it with the current patch is that it doesn&apos;t help with the CFUrlCache/CFNetwork.  

After much looking, I can&apos;t find anyway to do this in code.  However, it does use the app name in forming the location for the cache, so a good way to address that is to use apps with different names (the ln-s technique).
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>114786</commentid>
    <comment_count>10</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-03-23 09:31:42 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; The remaining issue as I understand it with the current patch is that it
&gt; doesn&apos;t help with the CFUrlCache/CFNetwork.  
&gt; 
&gt; After much looking, I can&apos;t find anyway to do this in code.  However, it does
&gt; use the app name in forming the location for the cache, so a good way to
&gt; address that is to use apps with different names (the ln-s technique).

A better approach would be to disable the disk cache.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>114837</commentid>
    <comment_count>11</comment_count>
      <attachid>28863</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2009-03-23 13:27:22 -0700</bug_when>
    <thetext>Created attachment 28863
Proposed fix.

Address previous issues.

This patch still exports WebKitLocalCacheDefaultsKey as opposed to making it a constant.  I was following the pattern of what was done for WebDatabaseDirectoryDefaultsKey in WebKit/mac/Storage/WebDatabaseManagerPrivate.h.

If something different should be done in this case, let me know and I can change it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>118562</commentid>
    <comment_count>12</comment_count>
      <attachid>28863</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-04-23 17:00:22 -0700</bug_when>
    <thetext>Comment on attachment 28863
Proposed fix.

         else
 313             cacheDir = nil;
isn&apos;t needed here.  cacheDir is already known to be nil at the start of that (rather short) if block, right?

Otherwise the approach looks fine to me.  I guess Mark started this review and should comment before landing.  But it looks fine IMO.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>119798</commentid>
    <comment_count>13</comment_count>
      <attachid>28863</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-05-04 01:26:55 -0700</bug_when>
    <thetext>Comment on attachment 28863
Proposed fix.

It seems saving things to:
~/Library/tmp is silly.  ~/Library/Application Support/DumpRenderTree or ~/Library/Caches/DumpRenderTree would make more sense.

Otherwise this looks fine.  Mark should feel encouraged to comment further, but this looks like a big step forward for our testing.  Even if it&apos;s not perfect final layout, it&apos;s much better than what we have today (in terms of that it moves us closer to running tests in parallel).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>120109</commentid>
    <comment_count>14</comment_count>
      <attachid>30055</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2009-05-06 10:20:55 -0700</bug_when>
    <thetext>Created attachment 30055
Addressed eseidel&apos;s concerns.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>121206</commentid>
    <comment_count>15</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-05-13 20:35:20 -0700</bug_when>
    <thetext>It looks like this will also fix it so that jparent and I can both run layout tests at the same time on the same machine. :(  Currently if one of us has run the other can&apos;t until we clear /tmp because the perl script tries to write the same files and gets permission errors.  At least I think that&apos;s what happened.

Dave, would you like me to land this, or do you plan to?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>121207</commentid>
    <comment_count>16</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2009-05-13 20:39:53 -0700</bug_when>
    <thetext>(In reply to comment #15)
&gt; It looks like this will also fix it so that jparent and I can both run layout
&gt; tests at the same time on the same machine. :(  Currently if one of us has run
&gt; the other can&apos;t until we clear /tmp because the perl script tries to write the
&gt; same files and gets permission errors.  At least I think that&apos;s what happened.

Assuming that you&apos;re running as different users, that doesn&apos;t sound related to this change at all.  The only path that this patch moves from /tmp is a single PDF output file.  What you&apos;re more likely hitting is that the default location for test results is inside /tmp, but there&apos;s already a command-line flag to run-webkit-tests to redirect that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>121219</commentid>
    <comment_count>17</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2009-05-13 22:48:25 -0700</bug_when>
    <thetext>I&apos;m willing to land this.  I didn&apos;t yet because I had heard there were reservations about it and I was trying to give folks a chance to voice up about it....

I&apos;ll land it tomorrow unless someone speaks up.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>121363</commentid>
    <comment_count>18</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2009-05-14 12:56:32 -0700</bug_when>
    <thetext>http://trac.webkit.org/changeset/43721</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>28765</attachid>
            <date>2009-03-19 14:50:23 -0700</date>
            <delta_ts>2009-03-20 00:46:27 -0700</delta_ts>
            <desc>Proposed fix.</desc>
            <filename>bug24704.txt</filename>
            <type>text/plain</type>
            <size>2410</size>
            <attacher name="David Levin">levin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktpdFRvb2xzL0NoYW5nZUxv
ZwppbmRleCA0MjI3NzYwLi42OTQwMmE1IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9DaGFuZ2VM
b2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMDktMDMt
MTkgIERhdmlkIExldmluICA8bGV2aW5AY2hyb21pdW0ub3JnPgorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3No
b3dfYnVnLmNnaT9pZD0yNDcwNAorCisgICAgICAgIER1bXBSZW5kZXJUcmVlIChPU1ggdmVyc2lv
bikgc2hvdWxkIHVzZSBpdHMgYXBwbGljYXRpb24gbmFtZSBpbiBwYXRocy4KKworICAgICAgICAq
IER1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbToKKyAgICAgICAgKHNldERlZmF1
bHRzVG9Db25zaXN0ZW50VmFsdWVzRm9yVGVzdGluZyk6CisgICAgICAgIChkdW1wRnJhbWVBc1BE
Rik6CisKIDIwMDktMDMtMTcgIE1hcmsgUm93ZSAgPG1yb3dlQGFwcGxlLmNvbT4KIAogICAgICAg
ICBSZXZpZXdlZCBieSBPbGl2ZXIgSHVudC4KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBS
ZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbSBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJU
cmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbQppbmRleCA1OTIwYmEyLi5hY2FiNjdiIDEwMDY0NAot
LS0gYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0KKysr
IGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tCkBAIC0z
MzIsNyArMzMyLDggQEAgc3RhdGljIHZvaWQgc2V0RGVmYXVsdHNUb0NvbnNpc3RlbnRWYWx1ZXNG
b3JUZXN0aW5nKCkKICAgICBpZiAoaW5pdGlhbFZhbHVlKQogICAgICAgICBDRlByZWZlcmVuY2Vz
U2V0VmFsdWUoQ0ZTVFIoIkFwcGxlU2Nyb2xsQmFyVmFyaWFudCIpLCBpbml0aWFsVmFsdWUuZ2V0
KCksIGtDRlByZWZlcmVuY2VzQW55QXBwbGljYXRpb24sIGtDRlByZWZlcmVuY2VzQ3VycmVudFVz
ZXIsIGtDRlByZWZlcmVuY2VzQW55SG9zdCk7CiAKLSAgICBOU1N0cmluZyAqbGlicmFyeVBhdGgg
PSBbQCJ+L0xpYnJhcnkvQXBwbGljYXRpb24gU3VwcG9ydC9EdW1wUmVuZGVyVHJlZSIgc3RyaW5n
QnlFeHBhbmRpbmdUaWxkZUluUGF0aF07CisgICAgTlNTdHJpbmcgKmFwcE5hbWUgPSBbW05TUHJv
Y2Vzc0luZm8gcHJvY2Vzc0luZm9dIHByb2Nlc3NOYW1lXTsKKyAgICBOU1N0cmluZyAqbGlicmFy
eVBhdGggPSBbW0Aifi9MaWJyYXJ5L0FwcGxpY2F0aW9uIFN1cHBvcnQvIiBzdHJpbmdCeUFwcGVu
ZGluZ1N0cmluZzphcHBOYW1lXSBzdHJpbmdCeUV4cGFuZGluZ1RpbGRlSW5QYXRoXTsKICAgICBb
ZGVmYXVsdHMgc2V0T2JqZWN0OltsaWJyYXJ5UGF0aCBzdHJpbmdCeUFwcGVuZGluZ1BhdGhDb21w
b25lbnQ6QCJEYXRhYmFzZXMiXSBmb3JLZXk6V2ViRGF0YWJhc2VEaXJlY3RvcnlEZWZhdWx0c0tl
eV07CiAgICAgCiAgICAgV2ViUHJlZmVyZW5jZXMgKnByZWZlcmVuY2VzID0gW1dlYlByZWZlcmVu
Y2VzIHN0YW5kYXJkUHJlZmVyZW5jZXNdOwpAQCAtNjM1LDcgKzYzNiw4IEBAIHN0YXRpYyBOU0Rh
dGEgKmR1bXBGcmFtZUFzUERGKFdlYkZyYW1lICpmcmFtZSkKICAgICAvLyBsaWtld2lzZSArW05T
VmlldyBkYXRhV2l0aFBERkluc2lkZVJlY3Q6XSBhbHNvIHByaW50cyB0byBhIHNpbmdsZSBjb250
aW51b3VzIHBhZ2UKICAgICAvLyBUaGUgZ29hbCBvZiB0aGlzIGZ1bmN0aW9uIGlzIHRvIHRlc3Qg
InJlYWwiIHByaW50aW5nIGFjcm9zcyBtdWx0aXBsZSBwYWdlcy4KICAgICAvLyBGSVhNRTogSXQn
cyBwb3NzaWJsZSB0aGVyZSBtaWdodCBiZSBwcmludGluZyBTUEkgdG8gbGV0IHVzIHByaW50IGEg
bXVsdGktcGFnZSBQREYgdG8gYW4gTlNEYXRhIG9iamVjdAotICAgIE5TU3RyaW5nICpwYXRoID0g
QCIvdG1wL3Rlc3QucGRmIjsKKyAgICBOU1N0cmluZyAqYXBwTmFtZSA9IFtbTlNQcm9jZXNzSW5m
byBwcm9jZXNzSW5mb10gcHJvY2Vzc05hbWVdOworICAgIE5TU3RyaW5nICpwYXRoID0gW1tAIi90
bXAiIHN0cmluZ0J5QXBwZW5kaW5nUGF0aENvbXBvbmVudDphcHBOYW1lXSBzdHJpbmdCeUFwcGVu
ZGluZ1BhdGhDb21wb25lbnQ6QCIvdGVzdC5wZGYiXTsKIAogICAgIE5TTXV0YWJsZURpY3Rpb25h
cnkgKnByaW50SW5mb0RpY3QgPSBbTlNNdXRhYmxlRGljdGlvbmFyeSBkaWN0aW9uYXJ5V2l0aERp
Y3Rpb25hcnk6W1tOU1ByaW50SW5mbyBzaGFyZWRQcmludEluZm9dIGRpY3Rpb25hcnldXTsKICAg
ICBbcHJpbnRJbmZvRGljdCBzZXRPYmplY3Q6TlNQcmludFNhdmVKb2IgZm9yS2V5Ok5TUHJpbnRK
b2JEaXNwb3NpdGlvbl07Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>28781</attachid>
            <date>2009-03-20 00:46:27 -0700</date>
            <delta_ts>2009-03-23 13:27:22 -0700</delta_ts>
            <desc>Proposed fix.</desc>
            <filename>bug24704.txt</filename>
            <type>text/plain</type>
            <size>6476</size>
            <attacher name="David Levin">levin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
aW5kZXggOTRhOGQ4Mi4uMmQ1ODQ0NCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAwOS0wMy0yMCAg
RGF2aWQgTGV2aW4gIDxsZXZpbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTI0NzA0CisKKyAgICAgICAgQWxsb3cgdGhlIGxvY2FsIGNhY2hlIGRpcmVjdG9y
eSB0byBiZSBzZXQgdXNpbmcgYSBkZWZhdWx0cyBrZXkuCisKKyAgICAgICAgKiBNaXNjL1dlYktp
dE5TU3RyaW5nRXh0cmFzLmg6CisgICAgICAgICogTWlzYy9XZWJLaXROU1N0cmluZ0V4dHJhcy5t
OgorICAgICAgICAoK1tOU1N0cmluZyBfd2Via2l0X2xvY2FsQ2FjaGVEaXJlY3RvcnlXaXRoQnVu
ZGxlSWRlbnRpZmllcjpdKToKKyAgICAgICAgKiBXZWJLaXQuZXhwOgorCiAyMDA5LTAzLTE3ICBE
YXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGVs
ZSBQZXRlcnNvbi4KZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvTWlzYy9XZWJLaXROU1N0cmluZ0V4
dHJhcy5oIGIvV2ViS2l0L21hYy9NaXNjL1dlYktpdE5TU3RyaW5nRXh0cmFzLmgKaW5kZXggNDcw
NTZjNi4uZjI1MjQzMCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9NaXNjL1dlYktpdE5TU3RyaW5n
RXh0cmFzLmgKKysrIGIvV2ViS2l0L21hYy9NaXNjL1dlYktpdE5TU3RyaW5nRXh0cmFzLmgKQEAg
LTI4LDYgKzI4LDggQEAKIAogI2ltcG9ydCA8Q29jb2EvQ29jb2EuaD4KIAorZXh0ZXJuIE5TU3Ry
aW5nICpXZWJLaXRMb2NhbENhY2hlRGVmYXVsdHNLZXk7CisKIEBpbnRlcmZhY2UgTlNTdHJpbmcg
KFdlYktpdEV4dHJhcykKIAogLSAodm9pZClfd2ViX2RyYXdBdFBvaW50OihOU1BvaW50KXBvaW50
IGZvbnQ6KE5TRm9udCAqKWZvbnQgdGV4dENvbG9yOihOU0NvbG9yICopdGV4dENvbG9yOwpkaWZm
IC0tZ2l0IGEvV2ViS2l0L21hYy9NaXNjL1dlYktpdE5TU3RyaW5nRXh0cmFzLm0gYi9XZWJLaXQv
bWFjL01pc2MvV2ViS2l0TlNTdHJpbmdFeHRyYXMubQppbmRleCBmMzA3N2QzLi45MGM5ZDk2IDEw
MDY0NAotLS0gYS9XZWJLaXQvbWFjL01pc2MvV2ViS2l0TlNTdHJpbmdFeHRyYXMubQorKysgYi9X
ZWJLaXQvbWFjL01pc2MvV2ViS2l0TlNTdHJpbmdFeHRyYXMubQpAQCAtMzcsNiArMzcsOCBAQAog
I2ltcG9ydCA8dW5pY29kZS91Y2hhci5oPgogI2ltcG9ydCA8c3lzL3BhcmFtLmg+CiAKK05TU3Ry
aW5nICpXZWJLaXRMb2NhbENhY2hlRGVmYXVsdHNLZXkgPSBAIldlYktpdExvY2FsQ2FjaGUiOwor
CiBAaW1wbGVtZW50YXRpb24gTlNTdHJpbmcgKFdlYktpdEV4dHJhcykKIAogc3RhdGljIEJPT0wg
Y2FuVXNlRmFzdFJlbmRlcmVyKGNvbnN0IFVuaUNoYXIgKmJ1ZmZlciwgdW5zaWduZWQgbGVuZ3Ro
KQpAQCAtMjk1LDIwICsyOTcsMjQgQEAgc3RhdGljIEJPT0wgY2FuVXNlRmFzdFJlbmRlcmVyKGNv
bnN0IFVuaUNoYXIgKmJ1ZmZlciwgdW5zaWduZWQgbGVuZ3RoKQogCiArIChOU1N0cmluZyAqKV93
ZWJraXRfbG9jYWxDYWNoZURpcmVjdG9yeVdpdGhCdW5kbGVJZGVudGlmaWVyOihOU1N0cmluZyop
YnVuZGxlSWRlbnRpZmllcgogewotICAgIE5TU3RyaW5nKiBjYWNoZURpciA9IG5pbDsKLSAgICAK
KyAgICBOU1VzZXJEZWZhdWx0cyAqZGVmYXVsdHMgPSBbTlNVc2VyRGVmYXVsdHMgc3RhbmRhcmRV
c2VyRGVmYXVsdHNdOworICAgIE5TU3RyaW5nICpjYWNoZURpciA9IFtkZWZhdWx0cyBvYmplY3RG
b3JLZXk6V2ViS2l0TG9jYWxDYWNoZURlZmF1bHRzS2V5XTsKKworICAgIGlmICghY2FjaGVEaXIg
fHwgIVtjYWNoZURpciBpc0tpbmRPZkNsYXNzOltOU1N0cmluZyBjbGFzc11dKSB7CiAjaWZkZWYg
QlVJTERJTkdfT05fVElHRVIKLSAgICBjYWNoZURpciA9IFtOU0hvbWVEaXJlY3RvcnkoKSBzdHJp
bmdCeUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6QCJMaWJyYXJ5L0NhY2hlcyJdOworICAgICAgICBj
YWNoZURpciA9IFtOU0hvbWVEaXJlY3RvcnkoKSBzdHJpbmdCeUFwcGVuZGluZ1BhdGhDb21wb25l
bnQ6QCJMaWJyYXJ5L0NhY2hlcyJdOwogI2Vsc2UKLSAgICBjaGFyIGNhY2hlRGlyZWN0b3J5W01B
WFBBVEhMRU5dOwotICAgIHNpemVfdCBjYWNoZURpcmVjdG9yeUxlbiA9IGNvbmZzdHIoX0NTX0RB
UldJTl9VU0VSX0NBQ0hFX0RJUiwgY2FjaGVEaXJlY3RvcnksIE1BWFBBVEhMRU4pOworICAgICAg
ICBjaGFyIGNhY2hlRGlyZWN0b3J5W01BWFBBVEhMRU5dOworICAgICAgICBzaXplX3QgY2FjaGVE
aXJlY3RvcnlMZW4gPSBjb25mc3RyKF9DU19EQVJXSU5fVVNFUl9DQUNIRV9ESVIsIGNhY2hlRGly
ZWN0b3J5LCBNQVhQQVRITEVOKTsKICAgICAKLSAgICBpZiAoY2FjaGVEaXJlY3RvcnlMZW4pCi0g
ICAgICAgIGNhY2hlRGlyID0gW1tOU0ZpbGVNYW5hZ2VyIGRlZmF1bHRNYW5hZ2VyXSBzdHJpbmdX
aXRoRmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uOmNhY2hlRGlyZWN0b3J5IGxlbmd0aDpjYWNoZURp
cmVjdG9yeUxlbiAtIDFdOworICAgICAgICBpZiAoY2FjaGVEaXJlY3RvcnlMZW4pCisgICAgICAg
ICAgICBjYWNoZURpciA9IFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gc3RyaW5nV2l0
aEZpbGVTeXN0ZW1SZXByZXNlbnRhdGlvbjpjYWNoZURpcmVjdG9yeSBsZW5ndGg6Y2FjaGVEaXJl
Y3RvcnlMZW4gLSAxXTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY2FjaGVEaXIgPSBuaWw7
CiAjZW5kaWYKKyAgICB9CiAKICAgICByZXR1cm4gW2NhY2hlRGlyIHN0cmluZ0J5QXBwZW5kaW5n
UGF0aENvbXBvbmVudDpidW5kbGVJZGVudGlmaWVyXTsKIH0KIAotCiBAZW5kCmRpZmYgLS1naXQg
YS9XZWJLaXQvbWFjL1dlYktpdC5leHAgYi9XZWJLaXQvbWFjL1dlYktpdC5leHAKaW5kZXggZDE2
Njg5NC4uMTkwNTAxZCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9XZWJLaXQuZXhwCisrKyBiL1dl
YktpdC9tYWMvV2ViS2l0LmV4cApAQCAtODIsNiArODIsNyBAQCBfV2ViS2l0RXJyb3JEb21haW4K
IF9XZWJLaXRFcnJvck1JTUVUeXBlS2V5CiBfV2ViS2l0RXJyb3JQbHVnSW5OYW1lS2V5CiBfV2Vi
S2l0RXJyb3JQbHVnSW5QYWdlVVJMU3RyaW5nS2V5CitfV2ViS2l0TG9jYWxDYWNoZURlZmF1bHRz
S2V5CiBfV2ViTG9jYWxpemVkU3RyaW5nCiBfV2ViUGx1Z0luQXR0cmlidXRlc0tleQogX1dlYlBs
dWdJbkJhc2VVUkxLZXkKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktp
dFRvb2xzL0NoYW5nZUxvZwppbmRleCA0MjI3NzYwLi5jZTE5NDQ5IDEwMDY0NAotLS0gYS9XZWJL
aXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTcgQEAKKzIwMDktMDMtMjAgIERhdmlkIExldmluICA8bGV2aW5AY2hyb21pdW0ub3JnPgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDcwNAorCisgICAgICAgIE1ha2UgcGF0aHMg
d2hlcmUgZGF0YSBpcyBzYXZlZCBiZSBzY29wZWQgdG8gdGhlIH4gZGlyZWN0b3J5LAorICAgICAg
ICBzbyB0aGF0IG9uZSBjYW4gcnVuIGluZGVwZW5kZW50IGluc3RhbmNlcyBieSBzZXR0aW5nIENG
RklYRURfVVNFUl9IT01FLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5k
ZXJUcmVlLm1tOgorICAgICAgICAobGlicmFyeVBhdGgpOgorICAgICAgICAoc2V0RGVmYXVsdHNU
b0NvbnNpc3RlbnRWYWx1ZXNGb3JUZXN0aW5nKToKKyAgICAgICAgKGR1bXBGcmFtZUFzUERGKToK
KwogMjAwOS0wMy0xNyAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IE9saXZlciBIdW50LgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRl
clRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
bWFjL0R1bXBSZW5kZXJUcmVlLm1tCmluZGV4IDU5MjBiYTIuLjgzMWQ5NDkgMTAwNjQ0Ci0tLSBh
L1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbQorKysgYi9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0KQEAgLTY0LDYg
KzY0LDcgQEAKICNpbXBvcnQgPFdlYktpdC9XZWJIaXN0b3J5Lmg+CiAjaW1wb3J0IDxXZWJLaXQv
V2ViSGlzdG9yeUl0ZW1Qcml2YXRlLmg+CiAjaW1wb3J0IDxXZWJLaXQvV2ViSW5zcGVjdG9yLmg+
CisjaW1wb3J0IDxXZWJLaXQvV2ViS2l0TlNTdHJpbmdFeHRyYXMuaD4KICNpbXBvcnQgPFdlYktp
dC9XZWJQbHVnaW5EYXRhYmFzZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dlYlByZWZlcmVuY2VzLmg+
CiAjaW1wb3J0IDxXZWJLaXQvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmg+CkBAIC0zMDYsNiArMzA3
LDExIEBAIHZvaWQgdGVzdFN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHRGcm9tU3RyaW5nKCkK
ICAgICBbcG9vbCByZWxlYXNlXTsKIH0KIAorc3RhdGljIE5TU3RyaW5nICpsaWJyYXJ5UGF0aCgp
Cit7CisgICAgcmV0dXJuIFtAIn4vTGlicmFyeS9BcHBsaWNhdGlvbiBTdXBwb3J0L0R1bXBSZW5k
ZXJUcmVlIiBzdHJpbmdCeUV4cGFuZGluZ1RpbGRlSW5QYXRoXTsKK30KKwogc3RhdGljIHZvaWQg
c2V0RGVmYXVsdHNUb0NvbnNpc3RlbnRWYWx1ZXNGb3JUZXN0aW5nKCkKIHsKICAgICAvLyBHaXZl
IHNvbWUgY2xlYXIgdG8gdW5kb2N1bWVudGVkIGRlZmF1bHRzIHZhbHVlcwpAQCAtMzMyLDkgKzMz
OCwxMCBAQCBzdGF0aWMgdm9pZCBzZXREZWZhdWx0c1RvQ29uc2lzdGVudFZhbHVlc0ZvclRlc3Rp
bmcoKQogICAgIGlmIChpbml0aWFsVmFsdWUpCiAgICAgICAgIENGUHJlZmVyZW5jZXNTZXRWYWx1
ZShDRlNUUigiQXBwbGVTY3JvbGxCYXJWYXJpYW50IiksIGluaXRpYWxWYWx1ZS5nZXQoKSwga0NG
UHJlZmVyZW5jZXNBbnlBcHBsaWNhdGlvbiwga0NGUHJlZmVyZW5jZXNDdXJyZW50VXNlciwga0NG
UHJlZmVyZW5jZXNBbnlIb3N0KTsKIAotICAgIE5TU3RyaW5nICpsaWJyYXJ5UGF0aCA9IFtAIn4v
TGlicmFyeS9BcHBsaWNhdGlvbiBTdXBwb3J0L0R1bXBSZW5kZXJUcmVlIiBzdHJpbmdCeUV4cGFu
ZGluZ1RpbGRlSW5QYXRoXTsKLSAgICBbZGVmYXVsdHMgc2V0T2JqZWN0OltsaWJyYXJ5UGF0aCBz
dHJpbmdCeUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6QCJEYXRhYmFzZXMiXSBmb3JLZXk6V2ViRGF0
YWJhc2VEaXJlY3RvcnlEZWZhdWx0c0tleV07Ci0gICAgCisgICAgTlNTdHJpbmcgKnBhdGggPSBs
aWJyYXJ5UGF0aCgpOworICAgIFtkZWZhdWx0cyBzZXRPYmplY3Q6W3BhdGggc3RyaW5nQnlBcHBl
bmRpbmdQYXRoQ29tcG9uZW50OkAiRGF0YWJhc2VzIl0gZm9yS2V5OldlYkRhdGFiYXNlRGlyZWN0
b3J5RGVmYXVsdHNLZXldOworICAgIFtkZWZhdWx0cyBzZXRPYmplY3Q6W3BhdGggc3RyaW5nQnlB
cHBlbmRpbmdQYXRoQ29tcG9uZW50OkAiTG9jYWxDYWNoZSJdIGZvcktleTpXZWJLaXRMb2NhbENh
Y2hlRGVmYXVsdHNLZXldOworCiAgICAgV2ViUHJlZmVyZW5jZXMgKnByZWZlcmVuY2VzID0gW1dl
YlByZWZlcmVuY2VzIHN0YW5kYXJkUHJlZmVyZW5jZXNdOwogCiAgICAgW3ByZWZlcmVuY2VzIHNl
dFN0YW5kYXJkRm9udEZhbWlseTpAIlRpbWVzIl07CkBAIC02MzUsNyArNjQyLDcgQEAgc3RhdGlj
IE5TRGF0YSAqZHVtcEZyYW1lQXNQREYoV2ViRnJhbWUgKmZyYW1lKQogICAgIC8vIGxpa2V3aXNl
ICtbTlNWaWV3IGRhdGFXaXRoUERGSW5zaWRlUmVjdDpdIGFsc28gcHJpbnRzIHRvIGEgc2luZ2xl
IGNvbnRpbnVvdXMgcGFnZQogICAgIC8vIFRoZSBnb2FsIG9mIHRoaXMgZnVuY3Rpb24gaXMgdG8g
dGVzdCAicmVhbCIgcHJpbnRpbmcgYWNyb3NzIG11bHRpcGxlIHBhZ2VzLgogICAgIC8vIEZJWE1F
OiBJdCdzIHBvc3NpYmxlIHRoZXJlIG1pZ2h0IGJlIHByaW50aW5nIFNQSSB0byBsZXQgdXMgcHJp
bnQgYSBtdWx0aS1wYWdlIFBERiB0byBhbiBOU0RhdGEgb2JqZWN0Ci0gICAgTlNTdHJpbmcgKnBh
dGggPSBAIi90bXAvdGVzdC5wZGYiOworICAgIE5TU3RyaW5nICpwYXRoID0gW2xpYnJhcnlQYXRo
KCkgc3RyaW5nQnlBcHBlbmRpbmdQYXRoQ29tcG9uZW50OkAidG1wL3Rlc3QucGRmIl07CiAKICAg
ICBOU011dGFibGVEaWN0aW9uYXJ5ICpwcmludEluZm9EaWN0ID0gW05TTXV0YWJsZURpY3Rpb25h
cnkgZGljdGlvbmFyeVdpdGhEaWN0aW9uYXJ5OltbTlNQcmludEluZm8gc2hhcmVkUHJpbnRJbmZv
XSBkaWN0aW9uYXJ5XV07CiAgICAgW3ByaW50SW5mb0RpY3Qgc2V0T2JqZWN0Ok5TUHJpbnRTYXZl
Sm9iIGZvcktleTpOU1ByaW50Sm9iRGlzcG9zaXRpb25dOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>28863</attachid>
            <date>2009-03-23 13:27:22 -0700</date>
            <delta_ts>2009-05-04 01:26:55 -0700</delta_ts>
            <desc>Proposed fix.</desc>
            <filename>bug24704.txt</filename>
            <type>text/plain</type>
            <size>6806</size>
            <attacher name="David Levin">levin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
aW5kZXggOTRhOGQ4Mi4uMmQ1ODQ0NCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAwOS0wMy0yMCAg
RGF2aWQgTGV2aW4gIDxsZXZpbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
Tk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTI0NzA0CisKKyAgICAgICAgQWxsb3cgdGhlIGxvY2FsIGNhY2hlIGRpcmVjdG9y
eSB0byBiZSBzZXQgdXNpbmcgYSBkZWZhdWx0cyBrZXkuCisKKyAgICAgICAgKiBNaXNjL1dlYktp
dE5TU3RyaW5nRXh0cmFzLmg6CisgICAgICAgICogTWlzYy9XZWJLaXROU1N0cmluZ0V4dHJhcy5t
OgorICAgICAgICAoK1tOU1N0cmluZyBfd2Via2l0X2xvY2FsQ2FjaGVEaXJlY3RvcnlXaXRoQnVu
ZGxlSWRlbnRpZmllcjpdKToKKyAgICAgICAgKiBXZWJLaXQuZXhwOgorCiAyMDA5LTAzLTE3ICBE
YXJpbiBBZGxlciAgPGRhcmluQGFwcGxlLmNvbT4KIAogICAgICAgICBSZXZpZXdlZCBieSBBZGVs
ZSBQZXRlcnNvbi4KZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvTWlzYy9XZWJLaXROU1N0cmluZ0V4
dHJhcy5oIGIvV2ViS2l0L21hYy9NaXNjL1dlYktpdE5TU3RyaW5nRXh0cmFzLmgKaW5kZXggNDcw
NTZjNi4uZjI1MjQzMCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9NaXNjL1dlYktpdE5TU3RyaW5n
RXh0cmFzLmgKKysrIGIvV2ViS2l0L21hYy9NaXNjL1dlYktpdE5TU3RyaW5nRXh0cmFzLmgKQEAg
LTI4LDYgKzI4LDggQEAKIAogI2ltcG9ydCA8Q29jb2EvQ29jb2EuaD4KIAorZXh0ZXJuIE5TU3Ry
aW5nICpXZWJLaXRMb2NhbENhY2hlRGVmYXVsdHNLZXk7CisKIEBpbnRlcmZhY2UgTlNTdHJpbmcg
KFdlYktpdEV4dHJhcykKIAogLSAodm9pZClfd2ViX2RyYXdBdFBvaW50OihOU1BvaW50KXBvaW50
IGZvbnQ6KE5TRm9udCAqKWZvbnQgdGV4dENvbG9yOihOU0NvbG9yICopdGV4dENvbG9yOwpkaWZm
IC0tZ2l0IGEvV2ViS2l0L21hYy9NaXNjL1dlYktpdE5TU3RyaW5nRXh0cmFzLm0gYi9XZWJLaXQv
bWFjL01pc2MvV2ViS2l0TlNTdHJpbmdFeHRyYXMubQppbmRleCBmMzA3N2QzLi45MGM5ZDk2IDEw
MDY0NAotLS0gYS9XZWJLaXQvbWFjL01pc2MvV2ViS2l0TlNTdHJpbmdFeHRyYXMubQorKysgYi9X
ZWJLaXQvbWFjL01pc2MvV2ViS2l0TlNTdHJpbmdFeHRyYXMubQpAQCAtMzcsNiArMzcsOCBAQAog
I2ltcG9ydCA8dW5pY29kZS91Y2hhci5oPgogI2ltcG9ydCA8c3lzL3BhcmFtLmg+CiAKK05TU3Ry
aW5nICpXZWJLaXRMb2NhbENhY2hlRGVmYXVsdHNLZXkgPSBAIldlYktpdExvY2FsQ2FjaGUiOwor
CiBAaW1wbGVtZW50YXRpb24gTlNTdHJpbmcgKFdlYktpdEV4dHJhcykKIAogc3RhdGljIEJPT0wg
Y2FuVXNlRmFzdFJlbmRlcmVyKGNvbnN0IFVuaUNoYXIgKmJ1ZmZlciwgdW5zaWduZWQgbGVuZ3Ro
KQpAQCAtMjk1LDIwICsyOTcsMjQgQEAgc3RhdGljIEJPT0wgY2FuVXNlRmFzdFJlbmRlcmVyKGNv
bnN0IFVuaUNoYXIgKmJ1ZmZlciwgdW5zaWduZWQgbGVuZ3RoKQogCiArIChOU1N0cmluZyAqKV93
ZWJraXRfbG9jYWxDYWNoZURpcmVjdG9yeVdpdGhCdW5kbGVJZGVudGlmaWVyOihOU1N0cmluZyop
YnVuZGxlSWRlbnRpZmllcgogewotICAgIE5TU3RyaW5nKiBjYWNoZURpciA9IG5pbDsKLSAgICAK
KyAgICBOU1VzZXJEZWZhdWx0cyAqZGVmYXVsdHMgPSBbTlNVc2VyRGVmYXVsdHMgc3RhbmRhcmRV
c2VyRGVmYXVsdHNdOworICAgIE5TU3RyaW5nICpjYWNoZURpciA9IFtkZWZhdWx0cyBvYmplY3RG
b3JLZXk6V2ViS2l0TG9jYWxDYWNoZURlZmF1bHRzS2V5XTsKKworICAgIGlmICghY2FjaGVEaXIg
fHwgIVtjYWNoZURpciBpc0tpbmRPZkNsYXNzOltOU1N0cmluZyBjbGFzc11dKSB7CiAjaWZkZWYg
QlVJTERJTkdfT05fVElHRVIKLSAgICBjYWNoZURpciA9IFtOU0hvbWVEaXJlY3RvcnkoKSBzdHJp
bmdCeUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6QCJMaWJyYXJ5L0NhY2hlcyJdOworICAgICAgICBj
YWNoZURpciA9IFtOU0hvbWVEaXJlY3RvcnkoKSBzdHJpbmdCeUFwcGVuZGluZ1BhdGhDb21wb25l
bnQ6QCJMaWJyYXJ5L0NhY2hlcyJdOwogI2Vsc2UKLSAgICBjaGFyIGNhY2hlRGlyZWN0b3J5W01B
WFBBVEhMRU5dOwotICAgIHNpemVfdCBjYWNoZURpcmVjdG9yeUxlbiA9IGNvbmZzdHIoX0NTX0RB
UldJTl9VU0VSX0NBQ0hFX0RJUiwgY2FjaGVEaXJlY3RvcnksIE1BWFBBVEhMRU4pOworICAgICAg
ICBjaGFyIGNhY2hlRGlyZWN0b3J5W01BWFBBVEhMRU5dOworICAgICAgICBzaXplX3QgY2FjaGVE
aXJlY3RvcnlMZW4gPSBjb25mc3RyKF9DU19EQVJXSU5fVVNFUl9DQUNIRV9ESVIsIGNhY2hlRGly
ZWN0b3J5LCBNQVhQQVRITEVOKTsKICAgICAKLSAgICBpZiAoY2FjaGVEaXJlY3RvcnlMZW4pCi0g
ICAgICAgIGNhY2hlRGlyID0gW1tOU0ZpbGVNYW5hZ2VyIGRlZmF1bHRNYW5hZ2VyXSBzdHJpbmdX
aXRoRmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uOmNhY2hlRGlyZWN0b3J5IGxlbmd0aDpjYWNoZURp
cmVjdG9yeUxlbiAtIDFdOworICAgICAgICBpZiAoY2FjaGVEaXJlY3RvcnlMZW4pCisgICAgICAg
ICAgICBjYWNoZURpciA9IFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gc3RyaW5nV2l0
aEZpbGVTeXN0ZW1SZXByZXNlbnRhdGlvbjpjYWNoZURpcmVjdG9yeSBsZW5ndGg6Y2FjaGVEaXJl
Y3RvcnlMZW4gLSAxXTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgY2FjaGVEaXIgPSBuaWw7
CiAjZW5kaWYKKyAgICB9CiAKICAgICByZXR1cm4gW2NhY2hlRGlyIHN0cmluZ0J5QXBwZW5kaW5n
UGF0aENvbXBvbmVudDpidW5kbGVJZGVudGlmaWVyXTsKIH0KIAotCiBAZW5kCmRpZmYgLS1naXQg
YS9XZWJLaXQvbWFjL1dlYktpdC5leHAgYi9XZWJLaXQvbWFjL1dlYktpdC5leHAKaW5kZXggZDE2
Njg5NC4uMTkwNTAxZCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9XZWJLaXQuZXhwCisrKyBiL1dl
YktpdC9tYWMvV2ViS2l0LmV4cApAQCAtODIsNiArODIsNyBAQCBfV2ViS2l0RXJyb3JEb21haW4K
IF9XZWJLaXRFcnJvck1JTUVUeXBlS2V5CiBfV2ViS2l0RXJyb3JQbHVnSW5OYW1lS2V5CiBfV2Vi
S2l0RXJyb3JQbHVnSW5QYWdlVVJMU3RyaW5nS2V5CitfV2ViS2l0TG9jYWxDYWNoZURlZmF1bHRz
S2V5CiBfV2ViTG9jYWxpemVkU3RyaW5nCiBfV2ViUGx1Z0luQXR0cmlidXRlc0tleQogX1dlYlBs
dWdJbkJhc2VVUkxLZXkKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZyBiL1dlYktp
dFRvb2xzL0NoYW5nZUxvZwppbmRleCA0MjI3NzYwLi5jZTE5NDQ5IDEwMDY0NAotLS0gYS9XZWJL
aXRUb29scy9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEs
MTcgQEAKKzIwMDktMDMtMjAgIERhdmlkIExldmluICA8bGV2aW5AY2hyb21pdW0ub3JnPgorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0yNDcwNAorCisgICAgICAgIE1ha2UgcGF0aHMg
d2hlcmUgZGF0YSBpcyBzYXZlZCBiZSBzY29wZWQgdG8gdGhlIH4gZGlyZWN0b3J5LAorICAgICAg
ICBzbyB0aGF0IG9uZSBjYW4gcnVuIGluZGVwZW5kZW50IGluc3RhbmNlcyBieSBzZXR0aW5nIENG
RklYRURfVVNFUl9IT01FLgorCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5k
ZXJUcmVlLm1tOgorICAgICAgICAobGlicmFyeVBhdGgpOgorICAgICAgICAoc2V0RGVmYXVsdHNU
b0NvbnNpc3RlbnRWYWx1ZXNGb3JUZXN0aW5nKToKKyAgICAgICAgKGR1bXBGcmFtZUFzUERGKToK
KwogMjAwOS0wMy0xNyAgTWFyayBSb3dlICA8bXJvd2VAYXBwbGUuY29tPgogCiAgICAgICAgIFJl
dmlld2VkIGJ5IE9saXZlciBIdW50LgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRl
clRyZWUvbWFjL0R1bXBSZW5kZXJUcmVlLm1tIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
bWFjL0R1bXBSZW5kZXJUcmVlLm1tCmluZGV4IDU5MjBiYTIuLmQ5NWYxMDcgMTAwNjQ0Ci0tLSBh
L1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5tbQorKysgYi9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0KQEAgLTY0LDYg
KzY0LDcgQEAKICNpbXBvcnQgPFdlYktpdC9XZWJIaXN0b3J5Lmg+CiAjaW1wb3J0IDxXZWJLaXQv
V2ViSGlzdG9yeUl0ZW1Qcml2YXRlLmg+CiAjaW1wb3J0IDxXZWJLaXQvV2ViSW5zcGVjdG9yLmg+
CisjaW1wb3J0IDxXZWJLaXQvV2ViS2l0TlNTdHJpbmdFeHRyYXMuaD4KICNpbXBvcnQgPFdlYktp
dC9XZWJQbHVnaW5EYXRhYmFzZS5oPgogI2ltcG9ydCA8V2ViS2l0L1dlYlByZWZlcmVuY2VzLmg+
CiAjaW1wb3J0IDxXZWJLaXQvV2ViUHJlZmVyZW5jZXNQcml2YXRlLmg+CkBAIC0zMDYsNiArMzA3
LDExIEBAIHZvaWQgdGVzdFN0cmluZ0J5RXZhbHVhdGluZ0phdmFTY3JpcHRGcm9tU3RyaW5nKCkK
ICAgICBbcG9vbCByZWxlYXNlXTsKIH0KIAorc3RhdGljIE5TU3RyaW5nICpsaWJyYXJ5UGF0aCgp
Cit7CisgICAgcmV0dXJuIFtAIn4vTGlicmFyeS9BcHBsaWNhdGlvbiBTdXBwb3J0L0R1bXBSZW5k
ZXJUcmVlIiBzdHJpbmdCeUV4cGFuZGluZ1RpbGRlSW5QYXRoXTsKK30KKwogc3RhdGljIHZvaWQg
c2V0RGVmYXVsdHNUb0NvbnNpc3RlbnRWYWx1ZXNGb3JUZXN0aW5nKCkKIHsKICAgICAvLyBHaXZl
IHNvbWUgY2xlYXIgdG8gdW5kb2N1bWVudGVkIGRlZmF1bHRzIHZhbHVlcwpAQCAtMzMyLDkgKzMz
OCwxNiBAQCBzdGF0aWMgdm9pZCBzZXREZWZhdWx0c1RvQ29uc2lzdGVudFZhbHVlc0ZvclRlc3Rp
bmcoKQogICAgIGlmIChpbml0aWFsVmFsdWUpCiAgICAgICAgIENGUHJlZmVyZW5jZXNTZXRWYWx1
ZShDRlNUUigiQXBwbGVTY3JvbGxCYXJWYXJpYW50IiksIGluaXRpYWxWYWx1ZS5nZXQoKSwga0NG
UHJlZmVyZW5jZXNBbnlBcHBsaWNhdGlvbiwga0NGUHJlZmVyZW5jZXNDdXJyZW50VXNlciwga0NG
UHJlZmVyZW5jZXNBbnlIb3N0KTsKIAotICAgIE5TU3RyaW5nICpsaWJyYXJ5UGF0aCA9IFtAIn4v
TGlicmFyeS9BcHBsaWNhdGlvbiBTdXBwb3J0L0R1bXBSZW5kZXJUcmVlIiBzdHJpbmdCeUV4cGFu
ZGluZ1RpbGRlSW5QYXRoXTsKLSAgICBbZGVmYXVsdHMgc2V0T2JqZWN0OltsaWJyYXJ5UGF0aCBz
dHJpbmdCeUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6QCJEYXRhYmFzZXMiXSBmb3JLZXk6V2ViRGF0
YWJhc2VEaXJlY3RvcnlEZWZhdWx0c0tleV07Ci0gICAgCisgICAgTlNTdHJpbmcgKnBhdGggPSBs
aWJyYXJ5UGF0aCgpOworICAgIFtkZWZhdWx0cyBzZXRPYmplY3Q6W3BhdGggc3RyaW5nQnlBcHBl
bmRpbmdQYXRoQ29tcG9uZW50OkAiRGF0YWJhc2VzIl0gZm9yS2V5OldlYkRhdGFiYXNlRGlyZWN0
b3J5RGVmYXVsdHNLZXldOworICAgIFtkZWZhdWx0cyBzZXRPYmplY3Q6W3BhdGggc3RyaW5nQnlB
cHBlbmRpbmdQYXRoQ29tcG9uZW50OkAiTG9jYWxDYWNoZSJdIGZvcktleTpXZWJLaXRMb2NhbENh
Y2hlRGVmYXVsdHNLZXldOworICAgIE5TVVJMQ2FjaGUgKnNoYXJlZENhY2hlID0KKyAgICAgICAg
W1tOU1VSTENhY2hlIGFsbG9jXSBpbml0V2l0aE1lbW9yeUNhcGFjaXR5OjEwMjQgKiAxMDI0Cisg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2tDYXBhY2l0eTowCisgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNrUGF0aDpbcGF0aCBzdHJp
bmdCeUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6QCJVUkxDYWNoZSJdXTsKKyAgICBbTlNVUkxDYWNo
ZSBzZXRTaGFyZWRVUkxDYWNoZTpzaGFyZWRDYWNoZV07CisgICAgW3NoYXJlZENhY2hlIHJlbGVh
c2VdOworCiAgICAgV2ViUHJlZmVyZW5jZXMgKnByZWZlcmVuY2VzID0gW1dlYlByZWZlcmVuY2Vz
IHN0YW5kYXJkUHJlZmVyZW5jZXNdOwogCiAgICAgW3ByZWZlcmVuY2VzIHNldFN0YW5kYXJkRm9u
dEZhbWlseTpAIlRpbWVzIl07CkBAIC02MzUsNyArNjQ4LDcgQEAgc3RhdGljIE5TRGF0YSAqZHVt
cEZyYW1lQXNQREYoV2ViRnJhbWUgKmZyYW1lKQogICAgIC8vIGxpa2V3aXNlICtbTlNWaWV3IGRh
dGFXaXRoUERGSW5zaWRlUmVjdDpdIGFsc28gcHJpbnRzIHRvIGEgc2luZ2xlIGNvbnRpbnVvdXMg
cGFnZQogICAgIC8vIFRoZSBnb2FsIG9mIHRoaXMgZnVuY3Rpb24gaXMgdG8gdGVzdCAicmVhbCIg
cHJpbnRpbmcgYWNyb3NzIG11bHRpcGxlIHBhZ2VzLgogICAgIC8vIEZJWE1FOiBJdCdzIHBvc3Np
YmxlIHRoZXJlIG1pZ2h0IGJlIHByaW50aW5nIFNQSSB0byBsZXQgdXMgcHJpbnQgYSBtdWx0aS1w
YWdlIFBERiB0byBhbiBOU0RhdGEgb2JqZWN0Ci0gICAgTlNTdHJpbmcgKnBhdGggPSBAIi90bXAv
dGVzdC5wZGYiOworICAgIE5TU3RyaW5nICpwYXRoID0gW2xpYnJhcnlQYXRoKCkgc3RyaW5nQnlB
cHBlbmRpbmdQYXRoQ29tcG9uZW50OkAidG1wL3Rlc3QucGRmIl07CiAKICAgICBOU011dGFibGVE
aWN0aW9uYXJ5ICpwcmludEluZm9EaWN0ID0gW05TTXV0YWJsZURpY3Rpb25hcnkgZGljdGlvbmFy
eVdpdGhEaWN0aW9uYXJ5OltbTlNQcmludEluZm8gc2hhcmVkUHJpbnRJbmZvXSBkaWN0aW9uYXJ5
XV07CiAgICAgW3ByaW50SW5mb0RpY3Qgc2V0T2JqZWN0Ok5TUHJpbnRTYXZlSm9iIGZvcktleTpO
U1ByaW50Sm9iRGlzcG9zaXRpb25dOwo=
</data>
<flag name="review"
          id="14255"
          type_id="1"
          status="+"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>30055</attachid>
            <date>2009-05-06 10:20:55 -0700</date>
            <delta_ts>2009-05-06 10:20:55 -0700</delta_ts>
            <desc>Addressed eseidel&apos;s concerns.</desc>
            <filename>bug24704.txt</filename>
            <type>text/plain</type>
            <size>6807</size>
            <attacher name="David Levin">levin</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvQ2hhbmdlTG9nIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
aW5kZXggY2MwMmI2ZC4uY2NjMTZkOCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9DaGFuZ2VMb2cK
KysrIGIvV2ViS2l0L21hYy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNiBAQAorMjAwOS0wNS0wNCAg
RGF2aWQgTGV2aW4gIDxsZXZpbkBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkg
RXJpYyBTZWlkZWwuCisKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcu
Y2dpP2lkPTI0NzA0CisKKyAgICAgICAgQWxsb3cgdGhlIGxvY2FsIGNhY2hlIGRpcmVjdG9yeSB0
byBiZSBzZXQgdXNpbmcgYSBkZWZhdWx0cyBrZXkuCisKKyAgICAgICAgKiBNaXNjL1dlYktpdE5T
U3RyaW5nRXh0cmFzLmg6CisgICAgICAgICogTWlzYy9XZWJLaXROU1N0cmluZ0V4dHJhcy5tOgor
ICAgICAgICAoK1tOU1N0cmluZyBfd2Via2l0X2xvY2FsQ2FjaGVEaXJlY3RvcnlXaXRoQnVuZGxl
SWRlbnRpZmllcjpdKToKKyAgICAgICAgKiBXZWJLaXQuZXhwOgorCiAyMDA5LTA1LTAyICBHZW9m
ZnJleSBHYXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgU2Ft
IFdlaW5pZy4KZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvTWlzYy9XZWJLaXROU1N0cmluZ0V4dHJh
cy5oIGIvV2ViS2l0L21hYy9NaXNjL1dlYktpdE5TU3RyaW5nRXh0cmFzLmgKaW5kZXggNDcwNTZj
Ni4uZjI1MjQzMCAxMDA2NDQKLS0tIGEvV2ViS2l0L21hYy9NaXNjL1dlYktpdE5TU3RyaW5nRXh0
cmFzLmgKKysrIGIvV2ViS2l0L21hYy9NaXNjL1dlYktpdE5TU3RyaW5nRXh0cmFzLmgKQEAgLTI4
LDYgKzI4LDggQEAKIAogI2ltcG9ydCA8Q29jb2EvQ29jb2EuaD4KIAorZXh0ZXJuIE5TU3RyaW5n
ICpXZWJLaXRMb2NhbENhY2hlRGVmYXVsdHNLZXk7CisKIEBpbnRlcmZhY2UgTlNTdHJpbmcgKFdl
YktpdEV4dHJhcykKIAogLSAodm9pZClfd2ViX2RyYXdBdFBvaW50OihOU1BvaW50KXBvaW50IGZv
bnQ6KE5TRm9udCAqKWZvbnQgdGV4dENvbG9yOihOU0NvbG9yICopdGV4dENvbG9yOwpkaWZmIC0t
Z2l0IGEvV2ViS2l0L21hYy9NaXNjL1dlYktpdE5TU3RyaW5nRXh0cmFzLm0gYi9XZWJLaXQvbWFj
L01pc2MvV2ViS2l0TlNTdHJpbmdFeHRyYXMubQppbmRleCBmMzA3N2QzLi4xMTZlYWYyIDEwMDY0
NAotLS0gYS9XZWJLaXQvbWFjL01pc2MvV2ViS2l0TlNTdHJpbmdFeHRyYXMubQorKysgYi9XZWJL
aXQvbWFjL01pc2MvV2ViS2l0TlNTdHJpbmdFeHRyYXMubQpAQCAtMzcsNiArMzcsOCBAQAogI2lt
cG9ydCA8dW5pY29kZS91Y2hhci5oPgogI2ltcG9ydCA8c3lzL3BhcmFtLmg+CiAKK05TU3RyaW5n
ICpXZWJLaXRMb2NhbENhY2hlRGVmYXVsdHNLZXkgPSBAIldlYktpdExvY2FsQ2FjaGUiOworCiBA
aW1wbGVtZW50YXRpb24gTlNTdHJpbmcgKFdlYktpdEV4dHJhcykKIAogc3RhdGljIEJPT0wgY2Fu
VXNlRmFzdFJlbmRlcmVyKGNvbnN0IFVuaUNoYXIgKmJ1ZmZlciwgdW5zaWduZWQgbGVuZ3RoKQpA
QCAtMjk1LDIwICsyOTcsMjIgQEAgc3RhdGljIEJPT0wgY2FuVXNlRmFzdFJlbmRlcmVyKGNvbnN0
IFVuaUNoYXIgKmJ1ZmZlciwgdW5zaWduZWQgbGVuZ3RoKQogCiArIChOU1N0cmluZyAqKV93ZWJr
aXRfbG9jYWxDYWNoZURpcmVjdG9yeVdpdGhCdW5kbGVJZGVudGlmaWVyOihOU1N0cmluZyopYnVu
ZGxlSWRlbnRpZmllcgogewotICAgIE5TU3RyaW5nKiBjYWNoZURpciA9IG5pbDsKLSAgICAKKyAg
ICBOU1VzZXJEZWZhdWx0cyAqZGVmYXVsdHMgPSBbTlNVc2VyRGVmYXVsdHMgc3RhbmRhcmRVc2Vy
RGVmYXVsdHNdOworICAgIE5TU3RyaW5nICpjYWNoZURpciA9IFtkZWZhdWx0cyBvYmplY3RGb3JL
ZXk6V2ViS2l0TG9jYWxDYWNoZURlZmF1bHRzS2V5XTsKKworICAgIGlmICghY2FjaGVEaXIgfHwg
IVtjYWNoZURpciBpc0tpbmRPZkNsYXNzOltOU1N0cmluZyBjbGFzc11dKSB7CiAjaWZkZWYgQlVJ
TERJTkdfT05fVElHRVIKLSAgICBjYWNoZURpciA9IFtOU0hvbWVEaXJlY3RvcnkoKSBzdHJpbmdC
eUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6QCJMaWJyYXJ5L0NhY2hlcyJdOworICAgICAgICBjYWNo
ZURpciA9IFtOU0hvbWVEaXJlY3RvcnkoKSBzdHJpbmdCeUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6
QCJMaWJyYXJ5L0NhY2hlcyJdOwogI2Vsc2UKLSAgICBjaGFyIGNhY2hlRGlyZWN0b3J5W01BWFBB
VEhMRU5dOwotICAgIHNpemVfdCBjYWNoZURpcmVjdG9yeUxlbiA9IGNvbmZzdHIoX0NTX0RBUldJ
Tl9VU0VSX0NBQ0hFX0RJUiwgY2FjaGVEaXJlY3RvcnksIE1BWFBBVEhMRU4pOworICAgICAgICBj
aGFyIGNhY2hlRGlyZWN0b3J5W01BWFBBVEhMRU5dOworICAgICAgICBzaXplX3QgY2FjaGVEaXJl
Y3RvcnlMZW4gPSBjb25mc3RyKF9DU19EQVJXSU5fVVNFUl9DQUNIRV9ESVIsIGNhY2hlRGlyZWN0
b3J5LCBNQVhQQVRITEVOKTsKICAgICAKLSAgICBpZiAoY2FjaGVEaXJlY3RvcnlMZW4pCi0gICAg
ICAgIGNhY2hlRGlyID0gW1tOU0ZpbGVNYW5hZ2VyIGRlZmF1bHRNYW5hZ2VyXSBzdHJpbmdXaXRo
RmlsZVN5c3RlbVJlcHJlc2VudGF0aW9uOmNhY2hlRGlyZWN0b3J5IGxlbmd0aDpjYWNoZURpcmVj
dG9yeUxlbiAtIDFdOworICAgICAgICBpZiAoY2FjaGVEaXJlY3RvcnlMZW4pCisgICAgICAgICAg
ICBjYWNoZURpciA9IFtbTlNGaWxlTWFuYWdlciBkZWZhdWx0TWFuYWdlcl0gc3RyaW5nV2l0aEZp
bGVTeXN0ZW1SZXByZXNlbnRhdGlvbjpjYWNoZURpcmVjdG9yeSBsZW5ndGg6Y2FjaGVEaXJlY3Rv
cnlMZW4gLSAxXTsKICNlbmRpZgorICAgIH0KIAogICAgIHJldHVybiBbY2FjaGVEaXIgc3RyaW5n
QnlBcHBlbmRpbmdQYXRoQ29tcG9uZW50OmJ1bmRsZUlkZW50aWZpZXJdOwogfQogCi0KIEBlbmQK
ZGlmZiAtLWdpdCBhL1dlYktpdC9tYWMvV2ViS2l0LmV4cCBiL1dlYktpdC9tYWMvV2ViS2l0LmV4
cAppbmRleCBkMTY2ODk0Li4xOTA1MDFkIDEwMDY0NAotLS0gYS9XZWJLaXQvbWFjL1dlYktpdC5l
eHAKKysrIGIvV2ViS2l0L21hYy9XZWJLaXQuZXhwCkBAIC04Miw2ICs4Miw3IEBAIF9XZWJLaXRF
cnJvckRvbWFpbgogX1dlYktpdEVycm9yTUlNRVR5cGVLZXkKIF9XZWJLaXRFcnJvclBsdWdJbk5h
bWVLZXkKIF9XZWJLaXRFcnJvclBsdWdJblBhZ2VVUkxTdHJpbmdLZXkKK19XZWJLaXRMb2NhbENh
Y2hlRGVmYXVsdHNLZXkKIF9XZWJMb2NhbGl6ZWRTdHJpbmcKIF9XZWJQbHVnSW5BdHRyaWJ1dGVz
S2V5CiBfV2ViUGx1Z0luQmFzZVVSTEtleQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvQ2hhbmdl
TG9nIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCmluZGV4IGE1Njg0ZTkuLjEwNmE1ZDMgMTAwNjQ0
Ci0tLSBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZworKysgYi9XZWJLaXRUb29scy9DaGFuZ2VMb2cK
QEAgLTEsMyArMSwxNyBAQAorMjAwOS0wNS0wNCAgRGF2aWQgTGV2aW4gIDxsZXZpbkBjaHJvbWl1
bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCisKKyAgICAgICAgaHR0
cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI0NzA0CisKKyAgICAgICAgTWFr
ZSBwYXRocyB3aGVyZSBkYXRhIGlzIHNhdmVkIGJlIHNjb3BlZCB0byB0aGUgfiBkaXJlY3Rvcnks
CisgICAgICAgIHNvIHRoYXQgb25lIGNhbiBydW4gaW5kZXBlbmRlbnQgaW5zdGFuY2VzIGJ5IHNl
dHRpbmcgQ0ZGSVhFRF9VU0VSX0hPTUUuCisKKyAgICAgICAgKiBEdW1wUmVuZGVyVHJlZS9tYWMv
RHVtcFJlbmRlclRyZWUubW06CisgICAgICAgIChsaWJyYXJ5UGF0aCk6CisgICAgICAgIChzZXRE
ZWZhdWx0c1RvQ29uc2lzdGVudFZhbHVlc0ZvclRlc3RpbmcpOgorICAgICAgICAoZHVtcEZyYW1l
QXNQREYpOgorCiAyMDA5LTA1LTAzICBTYW0gV2VpbmlnICA8c2FtQHdlYmtpdC5vcmc+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgR2VvZmZyZXkgR2FyZW4uCmRpZmYgLS1naXQgYS9XZWJLaXRUb29s
cy9EdW1wUmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0gYi9XZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS9tYWMvRHVtcFJlbmRlclRyZWUubW0KaW5kZXggNWIyZmYzMC4uMTIxMDk3NiAx
MDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvbWFjL0R1bXBSZW5kZXJUcmVl
Lm1tCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL21hYy9EdW1wUmVuZGVyVHJlZS5t
bQpAQCAtNjQsNiArNjQsNyBAQAogI2ltcG9ydCA8V2ViS2l0L1dlYkhpc3RvcnkuaD4KICNpbXBv
cnQgPFdlYktpdC9XZWJIaXN0b3J5SXRlbVByaXZhdGUuaD4KICNpbXBvcnQgPFdlYktpdC9XZWJJ
bnNwZWN0b3IuaD4KKyNpbXBvcnQgPFdlYktpdC9XZWJLaXROU1N0cmluZ0V4dHJhcy5oPgogI2lt
cG9ydCA8V2ViS2l0L1dlYlBsdWdpbkRhdGFiYXNlLmg+CiAjaW1wb3J0IDxXZWJLaXQvV2ViUHJl
ZmVyZW5jZXMuaD4KICNpbXBvcnQgPFdlYktpdC9XZWJQcmVmZXJlbmNlc1ByaXZhdGUuaD4KQEAg
LTM0MSw2ICszNDIsMTEgQEAgdm9pZCB0ZXN0U3RyaW5nQnlFdmFsdWF0aW5nSmF2YVNjcmlwdEZy
b21TdHJpbmcoKQogICAgIFtwb29sIHJlbGVhc2VdOwogfQogCitzdGF0aWMgTlNTdHJpbmcgKmxp
YnJhcnlQYXRoRm9yRHVtcFJlbmRlclRyZWUoKQoreworICAgIHJldHVybiBbQCJ+L0xpYnJhcnkv
QXBwbGljYXRpb24gU3VwcG9ydC9EdW1wUmVuZGVyVHJlZSIgc3RyaW5nQnlFeHBhbmRpbmdUaWxk
ZUluUGF0aF07Cit9CisKIHN0YXRpYyB2b2lkIHNldERlZmF1bHRzVG9Db25zaXN0ZW50VmFsdWVz
Rm9yVGVzdGluZygpCiB7CiAgICAgLy8gR2l2ZSBzb21lIGNsZWFyIHRvIHVuZG9jdW1lbnRlZCBk
ZWZhdWx0cyB2YWx1ZXMKQEAgLTM2OCw5ICszNzQsMTYgQEAgc3RhdGljIHZvaWQgc2V0RGVmYXVs
dHNUb0NvbnNpc3RlbnRWYWx1ZXNGb3JUZXN0aW5nKCkKICAgICBpZiAoaW5pdGlhbFZhbHVlKQog
ICAgICAgICBDRlByZWZlcmVuY2VzU2V0VmFsdWUoQ0ZTVFIoIkFwcGxlU2Nyb2xsQmFyVmFyaWFu
dCIpLCBpbml0aWFsVmFsdWUuZ2V0KCksIGtDRlByZWZlcmVuY2VzQW55QXBwbGljYXRpb24sIGtD
RlByZWZlcmVuY2VzQ3VycmVudFVzZXIsIGtDRlByZWZlcmVuY2VzQW55SG9zdCk7CiAKLSAgICBO
U1N0cmluZyAqbGlicmFyeVBhdGggPSBbQCJ+L0xpYnJhcnkvQXBwbGljYXRpb24gU3VwcG9ydC9E
dW1wUmVuZGVyVHJlZSIgc3RyaW5nQnlFeHBhbmRpbmdUaWxkZUluUGF0aF07Ci0gICAgW2RlZmF1
bHRzIHNldE9iamVjdDpbbGlicmFyeVBhdGggc3RyaW5nQnlBcHBlbmRpbmdQYXRoQ29tcG9uZW50
OkAiRGF0YWJhc2VzIl0gZm9yS2V5OldlYkRhdGFiYXNlRGlyZWN0b3J5RGVmYXVsdHNLZXldOwot
ICAgIAorICAgIE5TU3RyaW5nICpwYXRoID0gbGlicmFyeVBhdGhGb3JEdW1wUmVuZGVyVHJlZSgp
OworICAgIFtkZWZhdWx0cyBzZXRPYmplY3Q6W3BhdGggc3RyaW5nQnlBcHBlbmRpbmdQYXRoQ29t
cG9uZW50OkAiRGF0YWJhc2VzIl0gZm9yS2V5OldlYkRhdGFiYXNlRGlyZWN0b3J5RGVmYXVsdHNL
ZXldOworICAgIFtkZWZhdWx0cyBzZXRPYmplY3Q6W3BhdGggc3RyaW5nQnlBcHBlbmRpbmdQYXRo
Q29tcG9uZW50OkAiTG9jYWxDYWNoZSJdIGZvcktleTpXZWJLaXRMb2NhbENhY2hlRGVmYXVsdHNL
ZXldOworICAgIE5TVVJMQ2FjaGUgKnNoYXJlZENhY2hlID0KKyAgICAgICAgW1tOU1VSTENhY2hl
IGFsbG9jXSBpbml0V2l0aE1lbW9yeUNhcGFjaXR5OjEwMjQgKiAxMDI0CisgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgIGRpc2tDYXBhY2l0eTowCisgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgICBkaXNrUGF0aDpbcGF0aCBzdHJpbmdCeUFwcGVuZGlu
Z1BhdGhDb21wb25lbnQ6QCJVUkxDYWNoZSJdXTsKKyAgICBbTlNVUkxDYWNoZSBzZXRTaGFyZWRV
UkxDYWNoZTpzaGFyZWRDYWNoZV07CisgICAgW3NoYXJlZENhY2hlIHJlbGVhc2VdOworCiAgICAg
V2ViUHJlZmVyZW5jZXMgKnByZWZlcmVuY2VzID0gW1dlYlByZWZlcmVuY2VzIHN0YW5kYXJkUHJl
ZmVyZW5jZXNdOwogCiAgICAgW3ByZWZlcmVuY2VzIHNldFN0YW5kYXJkRm9udEZhbWlseTpAIlRp
bWVzIl07CkBAIC02NzAsNyArNjgzLDcgQEAgc3RhdGljIE5TRGF0YSAqZHVtcEZyYW1lQXNQREYo
V2ViRnJhbWUgKmZyYW1lKQogICAgIC8vIGxpa2V3aXNlICtbTlNWaWV3IGRhdGFXaXRoUERGSW5z
aWRlUmVjdDpdIGFsc28gcHJpbnRzIHRvIGEgc2luZ2xlIGNvbnRpbnVvdXMgcGFnZQogICAgIC8v
IFRoZSBnb2FsIG9mIHRoaXMgZnVuY3Rpb24gaXMgdG8gdGVzdCAicmVhbCIgcHJpbnRpbmcgYWNy
b3NzIG11bHRpcGxlIHBhZ2VzLgogICAgIC8vIEZJWE1FOiBJdCdzIHBvc3NpYmxlIHRoZXJlIG1p
Z2h0IGJlIHByaW50aW5nIFNQSSB0byBsZXQgdXMgcHJpbnQgYSBtdWx0aS1wYWdlIFBERiB0byBh
biBOU0RhdGEgb2JqZWN0Ci0gICAgTlNTdHJpbmcgKnBhdGggPSBAIi90bXAvdGVzdC5wZGYiOwor
ICAgIE5TU3RyaW5nICpwYXRoID0gW2xpYnJhcnlQYXRoRm9yRHVtcFJlbmRlclRyZWUoKSBzdHJp
bmdCeUFwcGVuZGluZ1BhdGhDb21wb25lbnQ6QCJ0ZXN0LnBkZiJdOwogCiAgICAgTlNNdXRhYmxl
RGljdGlvbmFyeSAqcHJpbnRJbmZvRGljdCA9IFtOU011dGFibGVEaWN0aW9uYXJ5IGRpY3Rpb25h
cnlXaXRoRGljdGlvbmFyeTpbW05TUHJpbnRJbmZvIHNoYXJlZFByaW50SW5mb10gZGljdGlvbmFy
eV1dOwogICAgIFtwcmludEluZm9EaWN0IHNldE9iamVjdDpOU1ByaW50U2F2ZUpvYiBmb3JLZXk6
TlNQcmludEpvYkRpc3Bvc2l0aW9uXTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>