<?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>105021</bug_id>
          
          <creation_ts>2012-12-14 07:06:34 -0800</creation_ts>
          <short_desc>[EFL] Unit tests process hanging on WK2 Release bots</short_desc>
          <delta_ts>2012-12-17 09:52:52 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>WebKit EFL</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="Thiago Marcos P. Santos">tmpsantos</reporter>
          <assigned_to name="Thiago Marcos P. Santos">tmpsantos</assigned_to>
          <cc>bw80.lee</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>kenneth</cc>
    
    <cc>lucas.de.marchi</cc>
    
    <cc>rakuco</cc>
    
    <cc>tonikitoo</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>791578</commentid>
    <comment_count>0</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-12-14 07:06:34 -0800</bug_when>
    <thetext>Unit tests that are passing on Debug bots are randomly timeouting on the Release bot and not being killed by CMake, turning into dangling process in a busy loop eating all the CPU available.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>791664</commentid>
    <comment_count>1</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-12-14 09:31:44 -0800</bug_when>
    <thetext>Stack trace of the process in a busy wait:

[Thread debugging using libthread_db enabled]
Using host libthread_db library &quot;/lib/i386-linux-gnu/libthread_db.so.1&quot;.
0xb76e41b2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2

Thread 1 (Thread 0xafeddb40 (LWP 7783)):
#0  0xb76e41b2 in _dl_sysinfo_int80 () from /lib/ld-linux.so.2
#1  0xb69c5d1c in sched_yield () at ../sysdeps/unix/syscall-template.S:82
#2  0x080562d0 in WTF::TCMalloc_Central_FreeList::FetchFromSpansSafe() ()
#3  0x080567f5 in WTF::TCMalloc_Central_FreeList::RemoveRange(void**, void**, int*) ()
#4  0x08057828 in WTF::fastMalloc(unsigned int) ()
#5  0xb7608adf in WTF::CStringBuffer::createUninitialized(unsigned int) () from /opt/tmpsantos/projects/webkit-efl-2/WebKitBuild/Release/lib/libjavascriptcore_efl.so.0
#6  0xb7608b1f in WTF::CString::init(char const*, unsigned int) () from /opt/tmpsantos/projects/webkit-efl-2/WebKitBuild/Release/lib/libjavascriptcore_efl.so.0
#7  0xb7608bcb in WTF::CString::CString(char const*, unsigned int) () from /opt/tmpsantos/projects/webkit-efl-2/WebKitBuild/Release/lib/libjavascriptcore_efl.so.0
#8  0xb761508c in WTF::String::utf8(WTF::String::ConversionMode) const () from /opt/tmpsantos/projects/webkit-efl-2/WebKitBuild/Release/lib/libjavascriptcore_efl.so.0
#9  0xb70cf27a in WebKit::findProcessPath(char const*) () from /opt/tmpsantos/projects/webkit-efl-2/WebKitBuild/Release/lib/libewebkit2.so.0
#10 0xb70cf498 in WebKit::executablePathOfWebProcess() () from /opt/tmpsantos/projects/webkit-efl-2/WebKitBuild/Release/lib/libewebkit2.so.0
#11 0xb7106108 in WebKit::ProcessLauncher::launchProcess() () from /opt/tmpsantos/projects/webkit-efl-2/WebKitBuild/Release/lib/libewebkit2.so.0
#12 0xb7020b20 in WTF::BoundFunctionImpl&lt;WTF::FunctionWrapper&lt;void (WebKit::ProcessLauncher::*)()&gt;, void (WebKit::ProcessLauncher*)&gt;::operator()() () from /opt/tmpsantos/projects/webkit-efl-2/WebKitBuild/Release/lib/libewebkit2.so.0
#13 0xb70cc0b8 in WorkQueue::performWork() () from /opt/tmpsantos/projects/webkit-efl-2/WebKitBuild/Release/lib/libewebkit2.so.0
#14 0xb70cc873 in WorkQueue::workQueueThread(WorkQueue*) () from /opt/tmpsantos/projects/webkit-efl-2/WebKitBuild/Release/lib/libewebkit2.so.0
#15 0xb75fdd25 in WTF::threadEntryPoint(void*) () from /opt/tmpsantos/projects/webkit-efl-2/WebKitBuild/Release/lib/libjavascriptcore_efl.so.0
#16 0xb761b775 in WTF::wtfThreadEntryPoint(void*) () from /opt/tmpsantos/projects/webkit-efl-2/WebKitBuild/Release/lib/libjavascriptcore_efl.so.0
#17 0xb6c17d4c in start_thread (arg=0xafeddb40) at pthread_create.c:308
#18 0xb69efd3e in clone () at ../sysdeps/unix/sysv/linux/i386/clone.S:130</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792161</commentid>
    <comment_count>2</comment_count>
      <attachid>179604</attachid>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-12-15 12:04:22 -0800</bug_when>
    <thetext>Created attachment 179604
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792191</commentid>
    <comment_count>3</comment_count>
      <attachid>179615</attachid>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-12-15 14:07:19 -0800</bug_when>
    <thetext>Created attachment 179615
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792536</commentid>
    <comment_count>4</comment_count>
      <attachid>179615</attachid>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-12-17 00:48:54 -0800</bug_when>
    <thetext>Comment on attachment 179615
Patch

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

&gt; Source/WebKit2/UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:61
&gt; +    String prefixedExecutablePath;

Could you explain why you use &quot;prefixedExecutablePath* instead of cmd though I prefer to use full name ?

&gt; Source/WebKit2/UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:63
&gt; +        prefixedExecutablePath = makeString(m_launchOptions.processCmdPrefix, &apos; &apos;, executablePath, &apos; &apos;, socket);

makeString is deprecated. it would be good if you follow &quot;Efficient String&quot; guidance.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792537</commentid>
    <comment_count>5</comment_count>
    <who name="Gyuyoung Kim">gyuyoung.kim</who>
    <bug_when>2012-12-17 00:50:04 -0800</bug_when>
    <thetext>CC&apos;ing Byungwoo, could you take a look this patch ?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792551</commentid>
    <comment_count>6</comment_count>
      <attachid>179615</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-12-17 01:31:11 -0800</bug_when>
    <thetext>Comment on attachment 179615
Patch

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

&gt; Source/WebKit2/UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:52
&gt; +        break;
&gt;  #if ENABLE(PLUGIN_PROCESS)
&gt; -        case PluginProcess:
&gt; -            executablePath = executablePathOfPluginProcess();
&gt; -            break;
&gt; +    case PluginProcess:
&gt; +        executablePath = executablePathOfPluginProcess();
&gt; +        break;
&gt;  #endif

at some point we should handle the network process here

&gt; Source/WebKit2/UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:71
&gt; +            // FIXME: This is not correct because invokes the shell

because *it*

&gt; Source/WebKit2/UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:75
&gt; +            // something like execvp().
&gt; +            if (system(prefixedExecutablePath.utf8().data()) == -1) {
&gt;                  ASSERT_NOT_REACHED();

why not do it now?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792552</commentid>
    <comment_count>7</comment_count>
      <attachid>179615</attachid>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-12-17 01:32:58 -0800</bug_when>
    <thetext>Comment on attachment 179615
Patch

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

&gt;&gt; Source/WebKit2/UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:61
&gt;&gt; +    String prefixedExecutablePath;
&gt; 
&gt; Could you explain why you use &quot;prefixedExecutablePath* instead of cmd though I prefer to use full name ?

We don&apos;t use abbreviations like this on WebKit. I made it more explicit.

&gt;&gt; Source/WebKit2/UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:63
&gt;&gt; +        prefixedExecutablePath = makeString(m_launchOptions.processCmdPrefix, &apos; &apos;, executablePath, &apos; &apos;, socket);
&gt; 
&gt; makeString is deprecated. it would be good if you follow &quot;Efficient String&quot; guidance.

Should have fixed this too. It is coming from the existing code I moved.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792561</commentid>
    <comment_count>8</comment_count>
      <attachid>179615</attachid>
    <who name="Byungwoo Lee">bw80.lee</who>
    <bug_when>2012-12-17 01:41:14 -0800</bug_when>
    <thetext>Comment on attachment 179615
Patch

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

&gt; Source/WebKit2/UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:70
&gt; +        if (!prefixedExecutablePath.isEmpty()) {

Can I ask why the condition is changed?
This has no problem but checking processCmdPrefix looks clear to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792575</commentid>
    <comment_count>9</comment_count>
      <attachid>179615</attachid>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-12-17 02:07:43 -0800</bug_when>
    <thetext>Comment on attachment 179615
Patch

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

&gt;&gt; Source/WebKit2/UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:70
&gt;&gt; +        if (!prefixedExecutablePath.isEmpty()) {
&gt; 
&gt; Can I ask why the condition is changed?
&gt; This has no problem but checking processCmdPrefix looks clear to me.

I&apos;m using prefixedExecutablePath because we get a more logical pattern:

if (prefixedExecutablePath)
   do something with prefixedExecutablePath

instead of:

if (processCmdPrefix)
   do something with prefixedExecutablePath

&gt;&gt; Source/WebKit2/UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:75
&gt;&gt;                  ASSERT_NOT_REACHED();
&gt; 
&gt; why not do it now?

It would make this patch way bigger. I think it is out of the scope of this fix.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792576</commentid>
    <comment_count>10</comment_count>
      <attachid>179706</attachid>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-12-17 02:10:03 -0800</bug_when>
    <thetext>Created attachment 179706
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792577</commentid>
    <comment_count>11</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-12-17 02:11:49 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; Created an attachment (id=179706) [details]
&gt; Patch

Updated the patch. Thanks for reviewing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792583</commentid>
    <comment_count>12</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-12-17 02:21:38 -0800</bug_when>
    <thetext>Tracking the misuse of system() at bug 105156.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792593</commentid>
    <comment_count>13</comment_count>
      <attachid>179706</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-17 02:50:24 -0800</bug_when>
    <thetext>Comment on attachment 179706
Patch

Clearing flags on attachment: 179706

Committed r137890: &lt;http://trac.webkit.org/changeset/137890&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792594</commentid>
    <comment_count>14</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-17 02:50:29 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792744</commentid>
    <comment_count>15</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-12-17 08:32:00 -0800</bug_when>
    <thetext>Argh. Not entirely fixed since ::utf8() and ::data() still does memory allocation. Duh.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792754</commentid>
    <comment_count>16</comment_count>
      <attachid>179751</attachid>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-12-17 08:41:41 -0800</bug_when>
    <thetext>Created attachment 179751
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792756</commentid>
    <comment_count>17</comment_count>
      <attachid>179751</attachid>
    <who name="Kenneth Rohde Christiansen">kenneth</who>
    <bug_when>2012-12-17 08:45:33 -0800</bug_when>
    <thetext>Comment on attachment 179751
Patch

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

maybe we should add some comments to the code?

&gt; Source/WebKit2/UIProcess/Launcher/efl/ProcessLauncherEfl.cpp:43
&gt; -    String executablePath;
&gt; +    const char* executablePath = 0;

comment?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792761</commentid>
    <comment_count>18</comment_count>
      <attachid>179754</attachid>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-12-17 08:57:59 -0800</bug_when>
    <thetext>Created attachment 179754
Patch

Added comments. Thanks for reviewing.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792805</commentid>
    <comment_count>19</comment_count>
      <attachid>179754</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-17 09:52:46 -0800</bug_when>
    <thetext>Comment on attachment 179754
Patch

Clearing flags on attachment: 179754

Committed r137917: &lt;http://trac.webkit.org/changeset/137917&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>792806</commentid>
    <comment_count>20</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-12-17 09:52:52 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179604</attachid>
            <date>2012-12-15 12:04:22 -0800</date>
            <delta_ts>2012-12-15 14:07:13 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105021-20121215220140.patch</filename>
            <type>text/plain</type>
            <size>5225</size>
            <attacher name="Thiago Marcos P. Santos">tmpsantos</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NzI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZTM0ODY2MDBkZDAxMzY4
ODY4ZjkwOGQ5OTIwMjc5M2NiYWNmYjRkYy4uYzk1Nzg4OWRkNjI5Y2UxZjVmOGFjZWQ4MTk0ZTVh
ZDc3ZmYwYWE5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTEyLTE0ICBUaGlh
Z28gTWFyY29zIFAuIFNhbnRvcyAgPHRoaWFnby5zYW50b3NAaW50ZWwuY29tPgorCisgICAgICAg
IFtFRkxdIFVuaXQgdGVzdHMgcHJvY2VzcyBoYW5naW5nIG9uIFdLMiBSZWxlYXNlIGJvdHMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNTAyMQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvIG5vdCBhbGxv
Y2F0ZSBtZW1vcnkgaW4gdGhlIG1pZGRsZSBvZiBhIGZvcmsoKS9leGVjKCkuCisgICAgICAgIEVG
TCB1c2VzIGdsb2JhbCBGYXN0TWFsbG9jIG5ldyBvcGVyYXRvciBhbmQgd2hlbiB3ZSBmb3JrKCks
IHRoZQorICAgICAgICBwcm9jZXNzIGlzIGluIGEgdmVyeSBkZWxpY2F0ZSBzdGF0ZS4gV2Ugd2Vy
ZSBiZWluZyBsdWNreSBtb3N0IG9mIHRoZQorICAgICAgICB0aW1lLCBidXQgc29tZXRpbWVzIEZh
c3RNYWxsb2MgZW50ZXJzIGluIGEgYnVzeSB3YWl0IGFuZCBoYW5ncworICAgICAgICBiZWNhdXNl
IGl0J3MgZGF0YSBzdHJ1Y3R1cmVzIGNhbm5vdCBiZSB0cnVzdGVkIGFmdGVyIHRoZSBmb3JrKCku
CisKKyAgICAgICAgVGhpcyBleHBsYWlucyB3aHkgc29tZXRpbWVzIHdlIHNlZSBVSVByb2Nlc3Mg
aGFuZ2luZyBvbiB0aGUgYm90czoKKyAgICAgICAgdGhleSBhcmUgaW4gZmFjdCBVSVByb2Nlc3Mg
dHJ5aW5nIHRvIGV4ZWMoKSBpbnRvIGEgV2ViUHJvY2VzcyBidXQKKyAgICAgICAgaGFuZ2VkIGp1
c3QgYWZ0ZXIgdGhlIGZvcmsoKS4gQ01ha2UgdGVzdCBydW5uZXIga2lsbHMgdGhlIG9yaWdpbmFs
CisgICAgICAgIFVJUHJvY2VzcyBkdWUgdG8gdGltZW91dCBhbmQgdGhlIGJ1Z2d5IG9uZSBzdGF5
cyBmb3JldmVyLgorCisgICAgICAgICogUGxhdGZvcm1FZmwuY21ha2U6CisgICAgICAgIFNldCB0
aGUgdGltZW91dCBiYWNrIHRvIHRoZSBvcmlnaW5hbCB2YWx1ZS4KKworICAgICAgICAqIFVJUHJv
Y2Vzcy9MYXVuY2hlci9lZmwvUHJvY2Vzc0xhdW5jaGVyRWZsLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6UHJvY2Vzc0xhdW5jaGVyOjpsYXVuY2hQcm9jZXNzKToKKyAgICAgICAgSSdtIGtlZXBpbmcg
dGhlIG9yaWdpbmFsIGJlaGF2aW9yLCBpbmNsdWRpbmcgdGhlIGNhbGwgdG8KKyAgICAgICAgc3lz
dGVtKCkgd2hlbiB3cmFwcGluZyB0aGUgV2ViUHJvY2VzcyBvbiBEZWJ1ZyBtb2RlLiBUaGlzCisg
ICAgICAgIHNob3VsZCBiZSBjaGFuZ2VkIHRvIGV4ZWMoKSBpbiBhbm90aGVyIHBhdGNoLgorCiAy
MDEyLTEyLTEzICBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiAgPGtlbm5ldGhAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBbRUZMXVtXSzJdIERvIG5vdCBwYXNzIHNpemUgdG8gdXBkYXRlVmlld3Bv
cnRTaXplCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybUVmbC5jbWFrZSBiL1Nv
dXJjZS9XZWJLaXQyL1BsYXRmb3JtRWZsLmNtYWtlCmluZGV4IGZmMTkxMzViYjZiNTVlNmZlZTM5
NjhjMTE1YzgwMGM4YTQ5NDkzYjAuLmIzNzE2ZGVhMDE5YzQ4ZjhjM2NkYjRiMzA3YWFhNWVhZTY0
MWFlMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtRWZsLmNtYWtlCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtRWZsLmNtYWtlCkBAIC0zODcsNyArMzg3LDcgQEAgaWYg
KEVOQUJMRV9BUElfVEVTVFMpCiAgICAgZm9yZWFjaCAodGVzdE5hbWUgJHtFV0syVW5pdFRlc3Rz
X0JJTkFSSUVTfSkKICAgICAgICAgYWRkX2V4ZWN1dGFibGUoJHt0ZXN0TmFtZX0gJHtXRUJLSVQy
X0VGTF9URVNUX0RJUn0vJHt0ZXN0TmFtZX0uY3BwKQogICAgICAgICBhZGRfdGVzdCgke3Rlc3RO
YW1lfSAke0NNQUtFX1JVTlRJTUVfT1VUUFVUX0RJUkVDVE9SWX0vJHt0ZXN0TmFtZX0pCi0gICAg
ICAgIHNldF90ZXN0c19wcm9wZXJ0aWVzKCR7dGVzdE5hbWV9IFBST1BFUlRJRVMgVElNRU9VVCAx
ODApCisgICAgICAgIHNldF90ZXN0c19wcm9wZXJ0aWVzKCR7dGVzdE5hbWV9IFBST1BFUlRJRVMg
VElNRU9VVCA2MCkKICAgICAgICAgdGFyZ2V0X2xpbmtfbGlicmFyaWVzKCR7dGVzdE5hbWV9ICR7
RVdLMlVuaXRUZXN0c19MSUJSQVJJRVN9IGV3azJVbml0VGVzdFV0aWxzKQogICAgIGVuZGZvcmVh
Y2ggKCkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5jaGVyL2Vm
bC9Qcm9jZXNzTGF1bmNoZXJFZmwuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5j
aGVyL2VmbC9Qcm9jZXNzTGF1bmNoZXJFZmwuY3BwCmluZGV4IDgzYmIzYmE0OWY1ZmZmYWI5MWUz
ZDcyOWFjY2Q0YTNhZTJiMmVmYmEuLjFiMDI4NmQ1ZWJmYjljZmRjZjVlYmZhZDEzZGM0NmQ3Yjlm
YjIzZmQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9lZmwv
UHJvY2Vzc0xhdW5jaGVyRWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvTGF1
bmNoZXIvZWZsL1Byb2Nlc3NMYXVuY2hlckVmbC5jcHAKQEAgLTQwLDM4ICs0MCw0NSBAQCB2b2lk
IFByb2Nlc3NMYXVuY2hlcjo6bGF1bmNoUHJvY2VzcygpCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKLSAgICBwaWRfdCBwaWQgPSBmb3JrKCk7Ci0gICAgaWYgKCFwaWQpIHsgLy8gY2hpbGQgcHJv
Y2VzcwotICAgICAgICBjbG9zZShzb2NrZXRzWzFdKTsKLSAgICAgICAgU3RyaW5nIHNvY2tldCA9
IFN0cmluZzo6Zm9ybWF0KCIlZCIsIHNvY2tldHNbMF0pOwotICAgICAgICBTdHJpbmcgZXhlY3V0
YWJsZVBhdGg7Ci0gICAgICAgIHN3aXRjaCAobV9sYXVuY2hPcHRpb25zLnByb2Nlc3NUeXBlKSB7
Ci0gICAgICAgIGNhc2UgV2ViUHJvY2VzczoKLSAgICAgICAgICAgIGV4ZWN1dGFibGVQYXRoID0g
ZXhlY3V0YWJsZVBhdGhPZldlYlByb2Nlc3MoKTsKLSAgICAgICAgICAgIGJyZWFrOworICAgIFN0
cmluZyBleGVjdXRhYmxlUGF0aDsKKyAgICBzd2l0Y2ggKG1fbGF1bmNoT3B0aW9ucy5wcm9jZXNz
VHlwZSkgeworICAgIGNhc2UgV2ViUHJvY2VzczoKKyAgICAgICAgZXhlY3V0YWJsZVBhdGggPSBl
eGVjdXRhYmxlUGF0aE9mV2ViUHJvY2VzcygpOworICAgICAgICBicmVhazsKICNpZiBFTkFCTEUo
UExVR0lOX1BST0NFU1MpCi0gICAgICAgIGNhc2UgUGx1Z2luUHJvY2VzczoKLSAgICAgICAgICAg
IGV4ZWN1dGFibGVQYXRoID0gZXhlY3V0YWJsZVBhdGhPZlBsdWdpblByb2Nlc3MoKTsKLSAgICAg
ICAgICAgIGJyZWFrOworICAgIGNhc2UgUGx1Z2luUHJvY2VzczoKKyAgICAgICAgZXhlY3V0YWJs
ZVBhdGggPSBleGVjdXRhYmxlUGF0aE9mUGx1Z2luUHJvY2VzcygpOworICAgICAgICBicmVhazsK
ICNlbmRpZgotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KKyAgICBkZWZhdWx0OgorICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KIAogI2lmbmRl
ZiBOREVCVUcKLSAgICAgICAgaWYgKG1fbGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4Lmlz
RW1wdHkoKSkKKyAgICBTdHJpbmcgcHJlZml4ZWRFeGVjdXRhYmxlUGF0aDsKKyAgICBpZiAoIW1f
bGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4LmlzRW1wdHkoKSkKKyAgICAgICAgcHJlZml4
ZWRFeGVjdXRhYmxlUGF0aCA9IG1ha2VTdHJpbmcobV9sYXVuY2hPcHRpb25zLnByb2Nlc3NDbWRQ
cmVmaXgsICcgJywgZXhlY3V0YWJsZVBhdGgsICcgJywgc29ja2V0KTsKICNlbmRpZgotICAgICAg
ICAgICAgZXhlY2woZXhlY3V0YWJsZVBhdGgudXRmOCgpLmRhdGEoKSwgZXhlY3V0YWJsZVBhdGgu
dXRmOCgpLmRhdGEoKSwgc29ja2V0LnV0ZjgoKS5kYXRhKCksIHN0YXRpY19jYXN0PGNoYXIqPigw
KSk7CisKKyAgICBTdHJpbmcgc29ja2V0ID0gU3RyaW5nOjpmb3JtYXQoIiVkIiwgc29ja2V0c1sw
XSk7CisKKyAgICBwaWRfdCBwaWQgPSBmb3JrKCk7CisgICAgaWYgKCFwaWQpIHsgLy8gQ2hpbGQg
cHJvY2Vzcy4KKyAgICAgICAgY2xvc2Uoc29ja2V0c1sxXSk7CiAjaWZuZGVmIE5ERUJVRwotICAg
ICAgICBlbHNlIHsKLSAgICAgICAgICAgIFN0cmluZyBjbWQgPSBtYWtlU3RyaW5nKG1fbGF1bmNo
T3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4LCAnICcsIGV4ZWN1dGFibGVQYXRoLCAnICcsIHNvY2tl
dCk7Ci0gICAgICAgICAgICBpZiAoc3lzdGVtKGNtZC51dGY4KCkuZGF0YSgpKSA9PSAtMSkgewor
ICAgICAgICBpZiAoIXByZWZpeGVkRXhlY3V0YWJsZVBhdGguaXNFbXB0eSgpKSB7CisgICAgICAg
ICAgICAvLyBGSVhNRTogVGhpcyBpcyBub3QgY29ycmVjdCBiZWNhdXNlIGludm9rZXMgdGhlIHNo
ZWxsCisgICAgICAgICAgICAvLyBhbmQga2VlcHMgdGhpcyBwcm9jZXNzIHdhaXRpbmcuIFNob3Vs
ZCBiZSBjaGFuZ2VkIHRvCisgICAgICAgICAgICAvLyBzb21ldGhpbmcgbGlrZSBleGVjdnAoKS4K
KyAgICAgICAgICAgIGlmIChzeXN0ZW0ocHJlZml4ZWRFeGVjdXRhYmxlUGF0aC51dGY4KCkuZGF0
YSgpKSA9PSAtMSkgewogICAgICAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAg
ICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBleGl0
KEVYSVRfRkFJTFVSRSk7CisgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICBleGl0
KEVYSVRfU1VDQ0VTUyk7CiAgICAgICAgIH0KICNlbmRpZgorICAgICAgICBleGVjbChleGVjdXRh
YmxlUGF0aC51dGY4KCkuZGF0YSgpLCBleGVjdXRhYmxlUGF0aC51dGY4KCkuZGF0YSgpLCBzb2Nr
ZXQudXRmOCgpLmRhdGEoKSwgc3RhdGljX2Nhc3Q8Y2hhcio+KDApKTsKICAgICB9IGVsc2UgaWYg
KHBpZCA+IDApIHsgLy8gcGFyZW50IHByb2Nlc3M7CiAgICAgICAgIGNsb3NlKHNvY2tldHNbMF0p
OwogICAgICAgICBtX3Byb2Nlc3NJZGVudGlmaWVyID0gcGlkOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179615</attachid>
            <date>2012-12-15 14:07:19 -0800</date>
            <delta_ts>2012-12-17 02:09:58 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105021-20121216000438.patch</filename>
            <type>text/plain</type>
            <size>5225</size>
            <attacher name="Thiago Marcos P. Santos">tmpsantos</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NzI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZTM0ODY2MDBkZDAxMzY4
ODY4ZjkwOGQ5OTIwMjc5M2NiYWNmYjRkYy4uYzk1Nzg4OWRkNjI5Y2UxZjVmOGFjZWQ4MTk0ZTVh
ZDc3ZmYwYWE5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTEyLTE0ICBUaGlh
Z28gTWFyY29zIFAuIFNhbnRvcyAgPHRoaWFnby5zYW50b3NAaW50ZWwuY29tPgorCisgICAgICAg
IFtFRkxdIFVuaXQgdGVzdHMgcHJvY2VzcyBoYW5naW5nIG9uIFdLMiBSZWxlYXNlIGJvdHMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNTAyMQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvIG5vdCBhbGxv
Y2F0ZSBtZW1vcnkgaW4gdGhlIG1pZGRsZSBvZiBhIGZvcmsoKS9leGVjKCkuCisgICAgICAgIEVG
TCB1c2VzIGdsb2JhbCBGYXN0TWFsbG9jIG5ldyBvcGVyYXRvciBhbmQgd2hlbiB3ZSBmb3JrKCks
IHRoZQorICAgICAgICBwcm9jZXNzIGlzIGluIGEgdmVyeSBkZWxpY2F0ZSBzdGF0ZS4gV2Ugd2Vy
ZSBiZWluZyBsdWNreSBtb3N0IG9mIHRoZQorICAgICAgICB0aW1lLCBidXQgc29tZXRpbWVzIEZh
c3RNYWxsb2MgZW50ZXJzIGluIGEgYnVzeSB3YWl0IGFuZCBoYW5ncworICAgICAgICBiZWNhdXNl
IGl0J3MgZGF0YSBzdHJ1Y3R1cmVzIGNhbm5vdCBiZSB0cnVzdGVkIGFmdGVyIHRoZSBmb3JrKCku
CisKKyAgICAgICAgVGhpcyBleHBsYWlucyB3aHkgc29tZXRpbWVzIHdlIHNlZSBVSVByb2Nlc3Mg
aGFuZ2luZyBvbiB0aGUgYm90czoKKyAgICAgICAgdGhleSBhcmUgaW4gZmFjdCBVSVByb2Nlc3Mg
dHJ5aW5nIHRvIGV4ZWMoKSBpbnRvIGEgV2ViUHJvY2VzcyBidXQKKyAgICAgICAgaGFuZ2VkIGp1
c3QgYWZ0ZXIgdGhlIGZvcmsoKS4gQ01ha2UgdGVzdCBydW5uZXIga2lsbHMgdGhlIG9yaWdpbmFs
CisgICAgICAgIFVJUHJvY2VzcyBkdWUgdG8gdGltZW91dCBhbmQgdGhlIGJ1Z2d5IG9uZSBzdGF5
cyBmb3JldmVyLgorCisgICAgICAgICogUGxhdGZvcm1FZmwuY21ha2U6CisgICAgICAgIFNldCB0
aGUgdGltZW91dCBiYWNrIHRvIHRoZSBvcmlnaW5hbCB2YWx1ZS4KKworICAgICAgICAqIFVJUHJv
Y2Vzcy9MYXVuY2hlci9lZmwvUHJvY2Vzc0xhdW5jaGVyRWZsLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6UHJvY2Vzc0xhdW5jaGVyOjpsYXVuY2hQcm9jZXNzKToKKyAgICAgICAgSSdtIGtlZXBpbmcg
dGhlIG9yaWdpbmFsIGJlaGF2aW9yLCBpbmNsdWRpbmcgdGhlIGNhbGwgdG8KKyAgICAgICAgc3lz
dGVtKCkgd2hlbiB3cmFwcGluZyB0aGUgV2ViUHJvY2VzcyBvbiBEZWJ1ZyBtb2RlLiBUaGlzCisg
ICAgICAgIHNob3VsZCBiZSBjaGFuZ2VkIHRvIGV4ZWMoKSBpbiBhbm90aGVyIHBhdGNoLgorCiAy
MDEyLTEyLTEzICBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiAgPGtlbm5ldGhAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBbRUZMXVtXSzJdIERvIG5vdCBwYXNzIHNpemUgdG8gdXBkYXRlVmlld3Bv
cnRTaXplCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybUVmbC5jbWFrZSBiL1Nv
dXJjZS9XZWJLaXQyL1BsYXRmb3JtRWZsLmNtYWtlCmluZGV4IGZmMTkxMzViYjZiNTVlNmZlZTM5
NjhjMTE1YzgwMGM4YTQ5NDkzYjAuLmIzNzE2ZGVhMDE5YzQ4ZjhjM2NkYjRiMzA3YWFhNWVhZTY0
MWFlMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtRWZsLmNtYWtlCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtRWZsLmNtYWtlCkBAIC0zODcsNyArMzg3LDcgQEAgaWYg
KEVOQUJMRV9BUElfVEVTVFMpCiAgICAgZm9yZWFjaCAodGVzdE5hbWUgJHtFV0syVW5pdFRlc3Rz
X0JJTkFSSUVTfSkKICAgICAgICAgYWRkX2V4ZWN1dGFibGUoJHt0ZXN0TmFtZX0gJHtXRUJLSVQy
X0VGTF9URVNUX0RJUn0vJHt0ZXN0TmFtZX0uY3BwKQogICAgICAgICBhZGRfdGVzdCgke3Rlc3RO
YW1lfSAke0NNQUtFX1JVTlRJTUVfT1VUUFVUX0RJUkVDVE9SWX0vJHt0ZXN0TmFtZX0pCi0gICAg
ICAgIHNldF90ZXN0c19wcm9wZXJ0aWVzKCR7dGVzdE5hbWV9IFBST1BFUlRJRVMgVElNRU9VVCAx
ODApCisgICAgICAgIHNldF90ZXN0c19wcm9wZXJ0aWVzKCR7dGVzdE5hbWV9IFBST1BFUlRJRVMg
VElNRU9VVCA2MCkKICAgICAgICAgdGFyZ2V0X2xpbmtfbGlicmFyaWVzKCR7dGVzdE5hbWV9ICR7
RVdLMlVuaXRUZXN0c19MSUJSQVJJRVN9IGV3azJVbml0VGVzdFV0aWxzKQogICAgIGVuZGZvcmVh
Y2ggKCkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5jaGVyL2Vm
bC9Qcm9jZXNzTGF1bmNoZXJFZmwuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5j
aGVyL2VmbC9Qcm9jZXNzTGF1bmNoZXJFZmwuY3BwCmluZGV4IDgzYmIzYmE0OWY1ZmZmYWI5MWUz
ZDcyOWFjY2Q0YTNhZTJiMmVmYmEuLjhiZjU0NjI0ZDE1MWUwNzA5MTMwZmMwMDcyZjQxOGExZmUw
NzQzOWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9lZmwv
UHJvY2Vzc0xhdW5jaGVyRWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvTGF1
bmNoZXIvZWZsL1Byb2Nlc3NMYXVuY2hlckVmbC5jcHAKQEAgLTQwLDM4ICs0MCw0NSBAQCB2b2lk
IFByb2Nlc3NMYXVuY2hlcjo6bGF1bmNoUHJvY2VzcygpCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKLSAgICBwaWRfdCBwaWQgPSBmb3JrKCk7Ci0gICAgaWYgKCFwaWQpIHsgLy8gY2hpbGQgcHJv
Y2VzcwotICAgICAgICBjbG9zZShzb2NrZXRzWzFdKTsKLSAgICAgICAgU3RyaW5nIHNvY2tldCA9
IFN0cmluZzo6Zm9ybWF0KCIlZCIsIHNvY2tldHNbMF0pOwotICAgICAgICBTdHJpbmcgZXhlY3V0
YWJsZVBhdGg7Ci0gICAgICAgIHN3aXRjaCAobV9sYXVuY2hPcHRpb25zLnByb2Nlc3NUeXBlKSB7
Ci0gICAgICAgIGNhc2UgV2ViUHJvY2VzczoKLSAgICAgICAgICAgIGV4ZWN1dGFibGVQYXRoID0g
ZXhlY3V0YWJsZVBhdGhPZldlYlByb2Nlc3MoKTsKLSAgICAgICAgICAgIGJyZWFrOworICAgIFN0
cmluZyBleGVjdXRhYmxlUGF0aDsKKyAgICBzd2l0Y2ggKG1fbGF1bmNoT3B0aW9ucy5wcm9jZXNz
VHlwZSkgeworICAgIGNhc2UgV2ViUHJvY2VzczoKKyAgICAgICAgZXhlY3V0YWJsZVBhdGggPSBl
eGVjdXRhYmxlUGF0aE9mV2ViUHJvY2VzcygpOworICAgICAgICBicmVhazsKICNpZiBFTkFCTEUo
UExVR0lOX1BST0NFU1MpCi0gICAgICAgIGNhc2UgUGx1Z2luUHJvY2VzczoKLSAgICAgICAgICAg
IGV4ZWN1dGFibGVQYXRoID0gZXhlY3V0YWJsZVBhdGhPZlBsdWdpblByb2Nlc3MoKTsKLSAgICAg
ICAgICAgIGJyZWFrOworICAgIGNhc2UgUGx1Z2luUHJvY2VzczoKKyAgICAgICAgZXhlY3V0YWJs
ZVBhdGggPSBleGVjdXRhYmxlUGF0aE9mUGx1Z2luUHJvY2VzcygpOworICAgICAgICBicmVhazsK
ICNlbmRpZgotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KKyAgICBkZWZhdWx0OgorICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIFN0
cmluZyBzb2NrZXQgPSBTdHJpbmc6OmZvcm1hdCgiJWQiLCBzb2NrZXRzWzBdKTsKIAogI2lmbmRl
ZiBOREVCVUcKLSAgICAgICAgaWYgKG1fbGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4Lmlz
RW1wdHkoKSkKKyAgICBTdHJpbmcgcHJlZml4ZWRFeGVjdXRhYmxlUGF0aDsKKyAgICBpZiAoIW1f
bGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4LmlzRW1wdHkoKSkKKyAgICAgICAgcHJlZml4
ZWRFeGVjdXRhYmxlUGF0aCA9IG1ha2VTdHJpbmcobV9sYXVuY2hPcHRpb25zLnByb2Nlc3NDbWRQ
cmVmaXgsICcgJywgZXhlY3V0YWJsZVBhdGgsICcgJywgc29ja2V0KTsKICNlbmRpZgotICAgICAg
ICAgICAgZXhlY2woZXhlY3V0YWJsZVBhdGgudXRmOCgpLmRhdGEoKSwgZXhlY3V0YWJsZVBhdGgu
dXRmOCgpLmRhdGEoKSwgc29ja2V0LnV0ZjgoKS5kYXRhKCksIHN0YXRpY19jYXN0PGNoYXIqPigw
KSk7CisKKyAgICBwaWRfdCBwaWQgPSBmb3JrKCk7CisgICAgaWYgKCFwaWQpIHsgLy8gQ2hpbGQg
cHJvY2Vzcy4KKyAgICAgICAgY2xvc2Uoc29ja2V0c1sxXSk7CiAjaWZuZGVmIE5ERUJVRwotICAg
ICAgICBlbHNlIHsKLSAgICAgICAgICAgIFN0cmluZyBjbWQgPSBtYWtlU3RyaW5nKG1fbGF1bmNo
T3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4LCAnICcsIGV4ZWN1dGFibGVQYXRoLCAnICcsIHNvY2tl
dCk7Ci0gICAgICAgICAgICBpZiAoc3lzdGVtKGNtZC51dGY4KCkuZGF0YSgpKSA9PSAtMSkgewor
ICAgICAgICBpZiAoIXByZWZpeGVkRXhlY3V0YWJsZVBhdGguaXNFbXB0eSgpKSB7CisgICAgICAg
ICAgICAvLyBGSVhNRTogVGhpcyBpcyBub3QgY29ycmVjdCBiZWNhdXNlIGludm9rZXMgdGhlIHNo
ZWxsCisgICAgICAgICAgICAvLyBhbmQga2VlcHMgdGhpcyBwcm9jZXNzIHdhaXRpbmcuIFNob3Vs
ZCBiZSBjaGFuZ2VkIHRvCisgICAgICAgICAgICAvLyBzb21ldGhpbmcgbGlrZSBleGVjdnAoKS4K
KyAgICAgICAgICAgIGlmIChzeXN0ZW0ocHJlZml4ZWRFeGVjdXRhYmxlUGF0aC51dGY4KCkuZGF0
YSgpKSA9PSAtMSkgewogICAgICAgICAgICAgICAgIEFTU0VSVF9OT1RfUkVBQ0hFRCgpOwotICAg
ICAgICAgICAgICAgIHJldHVybjsKLSAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBleGl0
KEVYSVRfRkFJTFVSRSk7CisgICAgICAgICAgICB9IGVsc2UKKyAgICAgICAgICAgICAgICBleGl0
KEVYSVRfU1VDQ0VTUyk7CiAgICAgICAgIH0KICNlbmRpZgorICAgICAgICBleGVjbChleGVjdXRh
YmxlUGF0aC51dGY4KCkuZGF0YSgpLCBleGVjdXRhYmxlUGF0aC51dGY4KCkuZGF0YSgpLCBzb2Nr
ZXQudXRmOCgpLmRhdGEoKSwgc3RhdGljX2Nhc3Q8Y2hhcio+KDApKTsKICAgICB9IGVsc2UgaWYg
KHBpZCA+IDApIHsgLy8gcGFyZW50IHByb2Nlc3M7CiAgICAgICAgIGNsb3NlKHNvY2tldHNbMF0p
OwogICAgICAgICBtX3Byb2Nlc3NJZGVudGlmaWVyID0gcGlkOwo=
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179706</attachid>
            <date>2012-12-17 02:10:03 -0800</date>
            <delta_ts>2012-12-17 08:41:31 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105021-20121217120721.patch</filename>
            <type>text/plain</type>
            <size>5220</size>
            <attacher name="Thiago Marcos P. Santos">tmpsantos</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3NzI5CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggZTM0ODY2MDBkZDAxMzY4
ODY4ZjkwOGQ5OTIwMjc5M2NiYWNmYjRkYy4uYzk1Nzg4OWRkNjI5Y2UxZjVmOGFjZWQ4MTk0ZTVh
ZDc3ZmYwYWE5MSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDMwIEBACisyMDEyLTEyLTE0ICBUaGlh
Z28gTWFyY29zIFAuIFNhbnRvcyAgPHRoaWFnby5zYW50b3NAaW50ZWwuY29tPgorCisgICAgICAg
IFtFRkxdIFVuaXQgdGVzdHMgcHJvY2VzcyBoYW5naW5nIG9uIFdLMiBSZWxlYXNlIGJvdHMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNTAyMQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvIG5vdCBhbGxv
Y2F0ZSBtZW1vcnkgaW4gdGhlIG1pZGRsZSBvZiBhIGZvcmsoKS9leGVjKCkuCisgICAgICAgIEVG
TCB1c2VzIGdsb2JhbCBGYXN0TWFsbG9jIG5ldyBvcGVyYXRvciBhbmQgd2hlbiB3ZSBmb3JrKCks
IHRoZQorICAgICAgICBwcm9jZXNzIGlzIGluIGEgdmVyeSBkZWxpY2F0ZSBzdGF0ZS4gV2Ugd2Vy
ZSBiZWluZyBsdWNreSBtb3N0IG9mIHRoZQorICAgICAgICB0aW1lLCBidXQgc29tZXRpbWVzIEZh
c3RNYWxsb2MgZW50ZXJzIGluIGEgYnVzeSB3YWl0IGFuZCBoYW5ncworICAgICAgICBiZWNhdXNl
IGl0J3MgZGF0YSBzdHJ1Y3R1cmVzIGNhbm5vdCBiZSB0cnVzdGVkIGFmdGVyIHRoZSBmb3JrKCku
CisKKyAgICAgICAgVGhpcyBleHBsYWlucyB3aHkgc29tZXRpbWVzIHdlIHNlZSBVSVByb2Nlc3Mg
aGFuZ2luZyBvbiB0aGUgYm90czoKKyAgICAgICAgdGhleSBhcmUgaW4gZmFjdCBVSVByb2Nlc3Mg
dHJ5aW5nIHRvIGV4ZWMoKSBpbnRvIGEgV2ViUHJvY2VzcyBidXQKKyAgICAgICAgaGFuZ2VkIGp1
c3QgYWZ0ZXIgdGhlIGZvcmsoKS4gQ01ha2UgdGVzdCBydW5uZXIga2lsbHMgdGhlIG9yaWdpbmFs
CisgICAgICAgIFVJUHJvY2VzcyBkdWUgdG8gdGltZW91dCBhbmQgdGhlIGJ1Z2d5IG9uZSBzdGF5
cyBmb3JldmVyLgorCisgICAgICAgICogUGxhdGZvcm1FZmwuY21ha2U6CisgICAgICAgIFNldCB0
aGUgdGltZW91dCBiYWNrIHRvIHRoZSBvcmlnaW5hbCB2YWx1ZS4KKworICAgICAgICAqIFVJUHJv
Y2Vzcy9MYXVuY2hlci9lZmwvUHJvY2Vzc0xhdW5jaGVyRWZsLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6UHJvY2Vzc0xhdW5jaGVyOjpsYXVuY2hQcm9jZXNzKToKKyAgICAgICAgSSdtIGtlZXBpbmcg
dGhlIG9yaWdpbmFsIGJlaGF2aW9yLCBpbmNsdWRpbmcgdGhlIGNhbGwgdG8KKyAgICAgICAgc3lz
dGVtKCkgd2hlbiB3cmFwcGluZyB0aGUgV2ViUHJvY2VzcyBvbiBEZWJ1ZyBtb2RlLiBUaGlzCisg
ICAgICAgIHNob3VsZCBiZSBjaGFuZ2VkIHRvIGV4ZWMoKSBpbiBhbm90aGVyIHBhdGNoLgorCiAy
MDEyLTEyLTEzICBLZW5uZXRoIFJvaGRlIENocmlzdGlhbnNlbiAgPGtlbm5ldGhAd2Via2l0Lm9y
Zz4KIAogICAgICAgICBbRUZMXVtXSzJdIERvIG5vdCBwYXNzIHNpemUgdG8gdXBkYXRlVmlld3Bv
cnRTaXplCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9QbGF0Zm9ybUVmbC5jbWFrZSBiL1Nv
dXJjZS9XZWJLaXQyL1BsYXRmb3JtRWZsLmNtYWtlCmluZGV4IGZmMTkxMzViYjZiNTVlNmZlZTM5
NjhjMTE1YzgwMGM4YTQ5NDkzYjAuLmIzNzE2ZGVhMDE5YzQ4ZjhjM2NkYjRiMzA3YWFhNWVhZTY0
MWFlMDggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtRWZsLmNtYWtlCisrKyBi
L1NvdXJjZS9XZWJLaXQyL1BsYXRmb3JtRWZsLmNtYWtlCkBAIC0zODcsNyArMzg3LDcgQEAgaWYg
KEVOQUJMRV9BUElfVEVTVFMpCiAgICAgZm9yZWFjaCAodGVzdE5hbWUgJHtFV0syVW5pdFRlc3Rz
X0JJTkFSSUVTfSkKICAgICAgICAgYWRkX2V4ZWN1dGFibGUoJHt0ZXN0TmFtZX0gJHtXRUJLSVQy
X0VGTF9URVNUX0RJUn0vJHt0ZXN0TmFtZX0uY3BwKQogICAgICAgICBhZGRfdGVzdCgke3Rlc3RO
YW1lfSAke0NNQUtFX1JVTlRJTUVfT1VUUFVUX0RJUkVDVE9SWX0vJHt0ZXN0TmFtZX0pCi0gICAg
ICAgIHNldF90ZXN0c19wcm9wZXJ0aWVzKCR7dGVzdE5hbWV9IFBST1BFUlRJRVMgVElNRU9VVCAx
ODApCisgICAgICAgIHNldF90ZXN0c19wcm9wZXJ0aWVzKCR7dGVzdE5hbWV9IFBST1BFUlRJRVMg
VElNRU9VVCA2MCkKICAgICAgICAgdGFyZ2V0X2xpbmtfbGlicmFyaWVzKCR7dGVzdE5hbWV9ICR7
RVdLMlVuaXRUZXN0c19MSUJSQVJJRVN9IGV3azJVbml0VGVzdFV0aWxzKQogICAgIGVuZGZvcmVh
Y2ggKCkKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5jaGVyL2Vm
bC9Qcm9jZXNzTGF1bmNoZXJFZmwuY3BwIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5j
aGVyL2VmbC9Qcm9jZXNzTGF1bmNoZXJFZmwuY3BwCmluZGV4IDgzYmIzYmE0OWY1ZmZmYWI5MWUz
ZDcyOWFjY2Q0YTNhZTJiMmVmYmEuLjhjMjEzMTA2OTAzYmM3ZTBhOWM3YWZiOWU1MzdhYjdhODc1
OTI0ZGEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9lZmwv
UHJvY2Vzc0xhdW5jaGVyRWZsLmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvTGF1
bmNoZXIvZWZsL1Byb2Nlc3NMYXVuY2hlckVmbC5jcHAKQEAgLTQwLDM4ICs0MCw0NSBAQCB2b2lk
IFByb2Nlc3NMYXVuY2hlcjo6bGF1bmNoUHJvY2VzcygpCiAgICAgICAgIHJldHVybjsKICAgICB9
CiAKLSAgICBwaWRfdCBwaWQgPSBmb3JrKCk7Ci0gICAgaWYgKCFwaWQpIHsgLy8gY2hpbGQgcHJv
Y2VzcwotICAgICAgICBjbG9zZShzb2NrZXRzWzFdKTsKLSAgICAgICAgU3RyaW5nIHNvY2tldCA9
IFN0cmluZzo6Zm9ybWF0KCIlZCIsIHNvY2tldHNbMF0pOwotICAgICAgICBTdHJpbmcgZXhlY3V0
YWJsZVBhdGg7Ci0gICAgICAgIHN3aXRjaCAobV9sYXVuY2hPcHRpb25zLnByb2Nlc3NUeXBlKSB7
Ci0gICAgICAgIGNhc2UgV2ViUHJvY2VzczoKLSAgICAgICAgICAgIGV4ZWN1dGFibGVQYXRoID0g
ZXhlY3V0YWJsZVBhdGhPZldlYlByb2Nlc3MoKTsKLSAgICAgICAgICAgIGJyZWFrOworICAgIFN0
cmluZyBleGVjdXRhYmxlUGF0aDsKKyAgICBzd2l0Y2ggKG1fbGF1bmNoT3B0aW9ucy5wcm9jZXNz
VHlwZSkgeworICAgIGNhc2UgV2ViUHJvY2VzczoKKyAgICAgICAgZXhlY3V0YWJsZVBhdGggPSBl
eGVjdXRhYmxlUGF0aE9mV2ViUHJvY2VzcygpOworICAgICAgICBicmVhazsKICNpZiBFTkFCTEUo
UExVR0lOX1BST0NFU1MpCi0gICAgICAgIGNhc2UgUGx1Z2luUHJvY2VzczoKLSAgICAgICAgICAg
IGV4ZWN1dGFibGVQYXRoID0gZXhlY3V0YWJsZVBhdGhPZlBsdWdpblByb2Nlc3MoKTsKLSAgICAg
ICAgICAgIGJyZWFrOworICAgIGNhc2UgUGx1Z2luUHJvY2VzczoKKyAgICAgICAgZXhlY3V0YWJs
ZVBhdGggPSBleGVjdXRhYmxlUGF0aE9mUGx1Z2luUHJvY2VzcygpOworICAgICAgICBicmVhazsK
ICNlbmRpZgotICAgICAgICBkZWZhdWx0OgotICAgICAgICAgICAgQVNTRVJUX05PVF9SRUFDSEVE
KCk7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KKyAgICBkZWZhdWx0OgorICAgICAg
ICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgcmV0dXJuOworICAgIH0KKworICAgIFN0
cmluZyBzb2NrZXQgPSBTdHJpbmc6OmZvcm1hdCgiJWQiLCBzb2NrZXRzWzBdKTsKIAogI2lmbmRl
ZiBOREVCVUcKLSAgICAgICAgaWYgKG1fbGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4Lmlz
RW1wdHkoKSkKKyAgICBTdHJpbmcgcHJlZml4ZWRFeGVjdXRhYmxlUGF0aDsKKyAgICBpZiAoIW1f
bGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4LmlzRW1wdHkoKSkKKyAgICAgICAgcHJlZml4
ZWRFeGVjdXRhYmxlUGF0aCA9IG1fbGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4ICsgJyAn
ICsgZXhlY3V0YWJsZVBhdGggKyAnICcgKyBzb2NrZXQ7CiAjZW5kaWYKLSAgICAgICAgICAgIGV4
ZWNsKGV4ZWN1dGFibGVQYXRoLnV0ZjgoKS5kYXRhKCksIGV4ZWN1dGFibGVQYXRoLnV0ZjgoKS5k
YXRhKCksIHNvY2tldC51dGY4KCkuZGF0YSgpLCBzdGF0aWNfY2FzdDxjaGFyKj4oMCkpOworCisg
ICAgcGlkX3QgcGlkID0gZm9yaygpOworICAgIGlmICghcGlkKSB7IC8vIENoaWxkIHByb2Nlc3Mu
CisgICAgICAgIGNsb3NlKHNvY2tldHNbMV0pOwogI2lmbmRlZiBOREVCVUcKLSAgICAgICAgZWxz
ZSB7Ci0gICAgICAgICAgICBTdHJpbmcgY21kID0gbWFrZVN0cmluZyhtX2xhdW5jaE9wdGlvbnMu
cHJvY2Vzc0NtZFByZWZpeCwgJyAnLCBleGVjdXRhYmxlUGF0aCwgJyAnLCBzb2NrZXQpOwotICAg
ICAgICAgICAgaWYgKHN5c3RlbShjbWQudXRmOCgpLmRhdGEoKSkgPT0gLTEpIHsKKyAgICAgICAg
aWYgKCFwcmVmaXhlZEV4ZWN1dGFibGVQYXRoLmlzRW1wdHkoKSkgeworICAgICAgICAgICAgLy8g
RklYTUU6IFRoaXMgaXMgbm90IGNvcnJlY3QgYmVjYXVzZSBpdCBpbnZva2VzIHRoZSBzaGVsbAor
ICAgICAgICAgICAgLy8gYW5kIGtlZXBzIHRoaXMgcHJvY2VzcyB3YWl0aW5nLiBTaG91bGQgYmUg
Y2hhbmdlZCB0bworICAgICAgICAgICAgLy8gc29tZXRoaW5nIGxpa2UgZXhlY3ZwKCkuCisgICAg
ICAgICAgICBpZiAoc3lzdGVtKHByZWZpeGVkRXhlY3V0YWJsZVBhdGgudXRmOCgpLmRhdGEoKSkg
PT0gLTEpIHsKICAgICAgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKLSAgICAgICAg
ICAgICAgICByZXR1cm47Ci0gICAgICAgICAgICB9CisgICAgICAgICAgICAgICAgZXhpdChFWElU
X0ZBSUxVUkUpOworICAgICAgICAgICAgfSBlbHNlCisgICAgICAgICAgICAgICAgZXhpdChFWElU
X1NVQ0NFU1MpOwogICAgICAgICB9CiAjZW5kaWYKKyAgICAgICAgZXhlY2woZXhlY3V0YWJsZVBh
dGgudXRmOCgpLmRhdGEoKSwgZXhlY3V0YWJsZVBhdGgudXRmOCgpLmRhdGEoKSwgc29ja2V0LnV0
ZjgoKS5kYXRhKCksIHN0YXRpY19jYXN0PGNoYXIqPigwKSk7CiAgICAgfSBlbHNlIGlmIChwaWQg
PiAwKSB7IC8vIHBhcmVudCBwcm9jZXNzOwogICAgICAgICBjbG9zZShzb2NrZXRzWzBdKTsKICAg
ICAgICAgbV9wcm9jZXNzSWRlbnRpZmllciA9IHBpZDsK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179751</attachid>
            <date>2012-12-17 08:41:41 -0800</date>
            <delta_ts>2012-12-17 08:57:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105021-20121217184332.patch</filename>
            <type>text/plain</type>
            <size>3629</size>
            <attacher name="Thiago Marcos P. Santos">tmpsantos</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3ODk4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggY2RhZjFjMjRiZDFmMDA2
OGViZjk2ZWNlNDJiYzU3NDE1MjY4MzViNC4uMjRkMDJjZGFkMjI4NTgyMjk1Y2MyZjE4NjdiODIw
ZDg2OTIxNzEzZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEyLTEyLTE3ICBUaGlh
Z28gTWFyY29zIFAuIFNhbnRvcyAgPHRoaWFnby5zYW50b3NAaW50ZWwuY29tPgorCisgICAgICAg
IFtFRkxdIFVuaXQgdGVzdHMgcHJvY2VzcyBoYW5naW5nIG9uIFdLMiBSZWxlYXNlIGJvdHMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNTAyMQorCisg
ICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEZvbGxvdy11cCBv
ZiByMTM3NjA1LCB3aGljaCBtYWRlIGl0IG1vcmUgZGlmZmljdWx0IHRvIHJlcHJvZHVjZQorICAg
ICAgICB0aGUgcmFjZSBjb25kaXRpb24gYnV0IGRvZXNuJ3QgZW50aXJlbHkgc29sdmUgdGhlIHBy
b2JsZW0uIE5vdworICAgICAgICB3ZSBhcmUgaGFuZGxpbmcgb25seSBwb2ludHMgaW4gdGhlIG1p
ZGRsZSBvZiB0aGUgZm9yaygpL2V4ZWMoKS4KKworICAgICAgICAqIFVJUHJvY2Vzcy9MYXVuY2hl
ci9lZmwvUHJvY2Vzc0xhdW5jaGVyRWZsLmNwcDoKKyAgICAgICAgKFdlYktpdDo6UHJvY2Vzc0xh
dW5jaGVyOjpsYXVuY2hQcm9jZXNzKToKKwogMjAxMi0xMi0xNyAgT3N3YWxkIEJ1ZGRlbmhhZ2Vu
ICA8b3N3YWxkLmJ1ZGRlbmhhZ2VuQGRpZ2lhLmNvbT4KIAogICAgICAgICBbUXRdIHJlbW92ZSBz
b21lIHVubmVjZXNzYXJ5IENPTkZJRyBhZGRpdGlvbnMKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9lZmwvUHJvY2Vzc0xhdW5jaGVyRWZsLmNwcCBiL1NvdXJj
ZS9XZWJLaXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9lZmwvUHJvY2Vzc0xhdW5jaGVyRWZsLmNwcApp
bmRleCA4YzIxMzEwNjkwM2JjN2UwYTljN2FmYjllNTM3YWI3YTg3NTkyNGRhLi5iMWYxNzQxYTc5
ODQ3MDY3YTE5NTlhMzU5Yjg4OWQ3NTMzNjVmZWQzIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9VSVByb2Nlc3MvTGF1bmNoZXIvZWZsL1Byb2Nlc3NMYXVuY2hlckVmbC5jcHAKKysrIGIvU291
cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5jaGVyL2VmbC9Qcm9jZXNzTGF1bmNoZXJFZmwuY3Bw
CkBAIC00MCwxNCArNDAsMTQgQEAgdm9pZCBQcm9jZXNzTGF1bmNoZXI6OmxhdW5jaFByb2Nlc3Mo
KQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgU3RyaW5nIGV4ZWN1dGFibGVQYXRoOwor
ICAgIGNvbnN0IGNoYXIqIGV4ZWN1dGFibGVQYXRoID0gMDsKICAgICBzd2l0Y2ggKG1fbGF1bmNo
T3B0aW9ucy5wcm9jZXNzVHlwZSkgewogICAgIGNhc2UgV2ViUHJvY2VzczoKLSAgICAgICAgZXhl
Y3V0YWJsZVBhdGggPSBleGVjdXRhYmxlUGF0aE9mV2ViUHJvY2VzcygpOworICAgICAgICBleGVj
dXRhYmxlUGF0aCA9IGV4ZWN1dGFibGVQYXRoT2ZXZWJQcm9jZXNzKCkudXRmOCgpLmRhdGEoKTsK
ICAgICAgICAgYnJlYWs7CiAjaWYgRU5BQkxFKFBMVUdJTl9QUk9DRVNTKQogICAgIGNhc2UgUGx1
Z2luUHJvY2VzczoKLSAgICAgICAgZXhlY3V0YWJsZVBhdGggPSBleGVjdXRhYmxlUGF0aE9mUGx1
Z2luUHJvY2VzcygpOworICAgICAgICBleGVjdXRhYmxlUGF0aCA9IGV4ZWN1dGFibGVQYXRoT2ZQ
bHVnaW5Qcm9jZXNzKCkudXRmOCgpLmRhdGEoKTsKICAgICAgICAgYnJlYWs7CiAjZW5kaWYKICAg
ICBkZWZhdWx0OgpAQCAtNTUsMzAgKzU1LDM0IEBAIHZvaWQgUHJvY2Vzc0xhdW5jaGVyOjpsYXVu
Y2hQcm9jZXNzKCkKICAgICAgICAgcmV0dXJuOwogICAgIH0KIAotICAgIFN0cmluZyBzb2NrZXQg
PSBTdHJpbmc6OmZvcm1hdCgiJWQiLCBzb2NrZXRzWzBdKTsKKyAgICBjaGFyIHNvY2tldFs1XTsK
KyAgICBzbnByaW50Zihzb2NrZXQsIHNpemVvZihzb2NrZXQpLCAiJWQiLCBzb2NrZXRzWzBdKTsK
IAogI2lmbmRlZiBOREVCVUcKLSAgICBTdHJpbmcgcHJlZml4ZWRFeGVjdXRhYmxlUGF0aDsKLSAg
ICBpZiAoIW1fbGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4LmlzRW1wdHkoKSkKLSAgICAg
ICAgcHJlZml4ZWRFeGVjdXRhYmxlUGF0aCA9IG1fbGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJl
Zml4ICsgJyAnICsgZXhlY3V0YWJsZVBhdGggKyAnICcgKyBzb2NrZXQ7CisgICAgY29uc3QgY2hh
ciogcHJlZml4ZWRFeGVjdXRhYmxlUGF0aCA9IDA7CisgICAgU3RyaW5nIHByZWZpeGVkRXhlY3V0
YWJsZVBhdGhTdHI7CisgICAgaWYgKCFtX2xhdW5jaE9wdGlvbnMucHJvY2Vzc0NtZFByZWZpeC5p
c0VtcHR5KCkpIHsKKyAgICAgICAgcHJlZml4ZWRFeGVjdXRhYmxlUGF0aFN0ciA9IG1fbGF1bmNo
T3B0aW9ucy5wcm9jZXNzQ21kUHJlZml4ICsgJyAnICsgZXhlY3V0YWJsZVBhdGggKyAnICcgKyBz
b2NrZXQ7CisgICAgICAgIHByZWZpeGVkRXhlY3V0YWJsZVBhdGggPSBwcmVmaXhlZEV4ZWN1dGFi
bGVQYXRoU3RyLnV0ZjgoKS5kYXRhKCk7CisgICAgfQogI2VuZGlmCiAKICAgICBwaWRfdCBwaWQg
PSBmb3JrKCk7CiAgICAgaWYgKCFwaWQpIHsgLy8gQ2hpbGQgcHJvY2Vzcy4KICAgICAgICAgY2xv
c2Uoc29ja2V0c1sxXSk7CiAjaWZuZGVmIE5ERUJVRwotICAgICAgICBpZiAoIXByZWZpeGVkRXhl
Y3V0YWJsZVBhdGguaXNFbXB0eSgpKSB7CisgICAgICAgIGlmIChwcmVmaXhlZEV4ZWN1dGFibGVQ
YXRoKSB7CiAgICAgICAgICAgICAvLyBGSVhNRTogVGhpcyBpcyBub3QgY29ycmVjdCBiZWNhdXNl
IGl0IGludm9rZXMgdGhlIHNoZWxsCiAgICAgICAgICAgICAvLyBhbmQga2VlcHMgdGhpcyBwcm9j
ZXNzIHdhaXRpbmcuIFNob3VsZCBiZSBjaGFuZ2VkIHRvCiAgICAgICAgICAgICAvLyBzb21ldGhp
bmcgbGlrZSBleGVjdnAoKS4KLSAgICAgICAgICAgIGlmIChzeXN0ZW0ocHJlZml4ZWRFeGVjdXRh
YmxlUGF0aC51dGY4KCkuZGF0YSgpKSA9PSAtMSkgeworICAgICAgICAgICAgaWYgKHN5c3RlbShw
cmVmaXhlZEV4ZWN1dGFibGVQYXRoKSA9PSAtMSkgewogICAgICAgICAgICAgICAgIEFTU0VSVF9O
T1RfUkVBQ0hFRCgpOwogICAgICAgICAgICAgICAgIGV4aXQoRVhJVF9GQUlMVVJFKTsKICAgICAg
ICAgICAgIH0gZWxzZQogICAgICAgICAgICAgICAgIGV4aXQoRVhJVF9TVUNDRVNTKTsKICAgICAg
ICAgfQogI2VuZGlmCi0gICAgICAgIGV4ZWNsKGV4ZWN1dGFibGVQYXRoLnV0ZjgoKS5kYXRhKCks
IGV4ZWN1dGFibGVQYXRoLnV0ZjgoKS5kYXRhKCksIHNvY2tldC51dGY4KCkuZGF0YSgpLCBzdGF0
aWNfY2FzdDxjaGFyKj4oMCkpOworICAgICAgICBleGVjbChleGVjdXRhYmxlUGF0aCwgZXhlY3V0
YWJsZVBhdGgsIHNvY2tldCwgc3RhdGljX2Nhc3Q8Y2hhcio+KDApKTsKICAgICB9IGVsc2UgaWYg
KHBpZCA+IDApIHsgLy8gcGFyZW50IHByb2Nlc3M7CiAgICAgICAgIGNsb3NlKHNvY2tldHNbMF0p
OwogICAgICAgICBtX3Byb2Nlc3NJZGVudGlmaWVyID0gcGlkOwo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>179754</attachid>
            <date>2012-12-17 08:57:59 -0800</date>
            <delta_ts>2012-12-17 09:52:46 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-105021-20121217185950.patch</filename>
            <type>text/plain</type>
            <size>3882</size>
            <attacher name="Thiago Marcos P. Santos">tmpsantos</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM3OTEyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViS2l0Mi9DaGFuZ2VMb2cKaW5kZXggYWRiM2JjNTVhZTc1NDhj
NTY5YzY5NzUxMmI4MjBhZWM1MTk3Y2U4YS4uZmZjNjdhNWQ1OTM4NDU0NTljYmE3NWU5Y2FjY2Fm
MGFjMDEyNWFlZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJLaXQyL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE3IEBACisyMDEyLTEyLTE3ICBUaGlh
Z28gTWFyY29zIFAuIFNhbnRvcyAgPHRoaWFnby5zYW50b3NAaW50ZWwuY29tPgorCisgICAgICAg
IFtFRkxdIFVuaXQgdGVzdHMgcHJvY2VzcyBoYW5naW5nIG9uIFdLMiBSZWxlYXNlIGJvdHMKKyAg
ICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTEwNTAyMQorCisg
ICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGggUm9oZGUgQ2hyaXN0aWFuc2VuLgorCisgICAgICAg
IEZvbGxvdy11cCBvZiByMTM3NjA1LCB3aGljaCBtYWRlIGl0IG1vcmUgZGlmZmljdWx0IHRvIHJl
cHJvZHVjZQorICAgICAgICB0aGUgcmFjZSBjb25kaXRpb24gYnV0IGRvZXNuJ3QgZW50aXJlbHkg
c29sdmUgdGhlIHByb2JsZW0uIE5vdworICAgICAgICB3ZSBhcmUgaGFuZGxpbmcgb25seSBwb2lu
dHMgaW4gdGhlIG1pZGRsZSBvZiB0aGUgZm9yaygpL2V4ZWMoKS4KKworICAgICAgICAqIFVJUHJv
Y2Vzcy9MYXVuY2hlci9lZmwvUHJvY2Vzc0xhdW5jaGVyRWZsLmNwcDoKKyAgICAgICAgKFdlYktp
dDo6UHJvY2Vzc0xhdW5jaGVyOjpsYXVuY2hQcm9jZXNzKToKKwogMjAxMi0xMi0xNyAgTWlraGFp
bCBQb3pkbnlha292ICA8bWlraGFpbC5wb3pkbnlha292QGludGVsLmNvbT4KIAogICAgICAgICBb
V0syXSBUaWxlZEJhY2tpbmdTdG9yZTogY3NzMy9kZXZpY2UtYWRhcHQvdmlld3BvcnQtd2lkdGgt
bm90LWFmZmVjdGluZy1uZXh0LXBhZ2UuaHRtbCBpcyBmbGFreQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYktpdDIvVUlQcm9jZXNzL0xhdW5jaGVyL2VmbC9Qcm9jZXNzTGF1bmNoZXJFZmwuY3BwIGIv
U291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0xhdW5jaGVyL2VmbC9Qcm9jZXNzTGF1bmNoZXJFZmwu
Y3BwCmluZGV4IDhjMjEzMTA2OTAzYmM3ZTBhOWM3YWZiOWU1MzdhYjdhODc1OTI0ZGEuLjRmMzlk
OThkZTYyMDIyMDEzYzJjYWEwMGUzOWMwZmQ0ODhmZWVmMGYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJLaXQyL1VJUHJvY2Vzcy9MYXVuY2hlci9lZmwvUHJvY2Vzc0xhdW5jaGVyRWZsLmNwcAorKysg
Yi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvTGF1bmNoZXIvZWZsL1Byb2Nlc3NMYXVuY2hlckVm
bC5jcHAKQEAgLTQwLDE0ICs0MCwxNCBAQCB2b2lkIFByb2Nlc3NMYXVuY2hlcjo6bGF1bmNoUHJv
Y2VzcygpCiAgICAgICAgIHJldHVybjsKICAgICB9CiAKLSAgICBTdHJpbmcgZXhlY3V0YWJsZVBh
dGg7CisgICAgY29uc3QgY2hhciogZXhlY3V0YWJsZVBhdGggPSAwOwogICAgIHN3aXRjaCAobV9s
YXVuY2hPcHRpb25zLnByb2Nlc3NUeXBlKSB7CiAgICAgY2FzZSBXZWJQcm9jZXNzOgotICAgICAg
ICBleGVjdXRhYmxlUGF0aCA9IGV4ZWN1dGFibGVQYXRoT2ZXZWJQcm9jZXNzKCk7CisgICAgICAg
IGV4ZWN1dGFibGVQYXRoID0gZXhlY3V0YWJsZVBhdGhPZldlYlByb2Nlc3MoKS51dGY4KCkuZGF0
YSgpOwogICAgICAgICBicmVhazsKICNpZiBFTkFCTEUoUExVR0lOX1BST0NFU1MpCiAgICAgY2Fz
ZSBQbHVnaW5Qcm9jZXNzOgotICAgICAgICBleGVjdXRhYmxlUGF0aCA9IGV4ZWN1dGFibGVQYXRo
T2ZQbHVnaW5Qcm9jZXNzKCk7CisgICAgICAgIGV4ZWN1dGFibGVQYXRoID0gZXhlY3V0YWJsZVBh
dGhPZlBsdWdpblByb2Nlc3MoKS51dGY4KCkuZGF0YSgpOwogICAgICAgICBicmVhazsKICNlbmRp
ZgogICAgIGRlZmF1bHQ6CkBAIC01NSwzMCArNTUsMzcgQEAgdm9pZCBQcm9jZXNzTGF1bmNoZXI6
OmxhdW5jaFByb2Nlc3MoKQogICAgICAgICByZXR1cm47CiAgICAgfQogCi0gICAgU3RyaW5nIHNv
Y2tldCA9IFN0cmluZzo6Zm9ybWF0KCIlZCIsIHNvY2tldHNbMF0pOworICAgIGNoYXIgc29ja2V0
WzVdOworICAgIHNucHJpbnRmKHNvY2tldCwgc2l6ZW9mKHNvY2tldCksICIlZCIsIHNvY2tldHNb
MF0pOwogCiAjaWZuZGVmIE5ERUJVRwotICAgIFN0cmluZyBwcmVmaXhlZEV4ZWN1dGFibGVQYXRo
OwotICAgIGlmICghbV9sYXVuY2hPcHRpb25zLnByb2Nlc3NDbWRQcmVmaXguaXNFbXB0eSgpKQot
ICAgICAgICBwcmVmaXhlZEV4ZWN1dGFibGVQYXRoID0gbV9sYXVuY2hPcHRpb25zLnByb2Nlc3ND
bWRQcmVmaXggKyAnICcgKyBleGVjdXRhYmxlUGF0aCArICcgJyArIHNvY2tldDsKKyAgICBjb25z
dCBjaGFyKiBwcmVmaXhlZEV4ZWN1dGFibGVQYXRoID0gMDsKKyAgICBTdHJpbmcgcHJlZml4ZWRF
eGVjdXRhYmxlUGF0aFN0cjsKKyAgICBpZiAoIW1fbGF1bmNoT3B0aW9ucy5wcm9jZXNzQ21kUHJl
Zml4LmlzRW1wdHkoKSkgeworICAgICAgICBwcmVmaXhlZEV4ZWN1dGFibGVQYXRoU3RyID0gbV9s
YXVuY2hPcHRpb25zLnByb2Nlc3NDbWRQcmVmaXggKyAnICcgKyBleGVjdXRhYmxlUGF0aCArICcg
JyArIHNvY2tldDsKKyAgICAgICAgcHJlZml4ZWRFeGVjdXRhYmxlUGF0aCA9IHByZWZpeGVkRXhl
Y3V0YWJsZVBhdGhTdHIudXRmOCgpLmRhdGEoKTsKKyAgICB9CiAjZW5kaWYKIAorICAgIC8vIERv
IG5vdCBwZXJmb3JtIG1lbW9yeSBhbGxvY2F0aW9uIGluIHRoZSBtaWRkbGUgb2YgdGhlIGZvcmso
KQorICAgIC8vIGV4ZWMoKSBiZWxvdy4gRmFzdE1hbGxvYyBjYW4gcG90ZW50aWFsbHkgZGVhZGxv
Y2sgYmVjYXVzZQorICAgIC8vIHRoZSBmb3JrKCkgZG9lc24ndCBpbmhlcml0IHRoZSBydW5uaW5n
IHRocmVhZHMuCiAgICAgcGlkX3QgcGlkID0gZm9yaygpOwogICAgIGlmICghcGlkKSB7IC8vIENo
aWxkIHByb2Nlc3MuCiAgICAgICAgIGNsb3NlKHNvY2tldHNbMV0pOwogI2lmbmRlZiBOREVCVUcK
LSAgICAgICAgaWYgKCFwcmVmaXhlZEV4ZWN1dGFibGVQYXRoLmlzRW1wdHkoKSkgeworICAgICAg
ICBpZiAocHJlZml4ZWRFeGVjdXRhYmxlUGF0aCkgewogICAgICAgICAgICAgLy8gRklYTUU6IFRo
aXMgaXMgbm90IGNvcnJlY3QgYmVjYXVzZSBpdCBpbnZva2VzIHRoZSBzaGVsbAogICAgICAgICAg
ICAgLy8gYW5kIGtlZXBzIHRoaXMgcHJvY2VzcyB3YWl0aW5nLiBTaG91bGQgYmUgY2hhbmdlZCB0
bwogICAgICAgICAgICAgLy8gc29tZXRoaW5nIGxpa2UgZXhlY3ZwKCkuCi0gICAgICAgICAgICBp
ZiAoc3lzdGVtKHByZWZpeGVkRXhlY3V0YWJsZVBhdGgudXRmOCgpLmRhdGEoKSkgPT0gLTEpIHsK
KyAgICAgICAgICAgIGlmIChzeXN0ZW0ocHJlZml4ZWRFeGVjdXRhYmxlUGF0aCkgPT0gLTEpIHsK
ICAgICAgICAgICAgICAgICBBU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICAgICAgICAgICAgICBl
eGl0KEVYSVRfRkFJTFVSRSk7CiAgICAgICAgICAgICB9IGVsc2UKICAgICAgICAgICAgICAgICBl
eGl0KEVYSVRfU1VDQ0VTUyk7CiAgICAgICAgIH0KICNlbmRpZgotICAgICAgICBleGVjbChleGVj
dXRhYmxlUGF0aC51dGY4KCkuZGF0YSgpLCBleGVjdXRhYmxlUGF0aC51dGY4KCkuZGF0YSgpLCBz
b2NrZXQudXRmOCgpLmRhdGEoKSwgc3RhdGljX2Nhc3Q8Y2hhcio+KDApKTsKKyAgICAgICAgZXhl
Y2woZXhlY3V0YWJsZVBhdGgsIGV4ZWN1dGFibGVQYXRoLCBzb2NrZXQsIHN0YXRpY19jYXN0PGNo
YXIqPigwKSk7CiAgICAgfSBlbHNlIGlmIChwaWQgPiAwKSB7IC8vIHBhcmVudCBwcm9jZXNzOwog
ICAgICAgICBjbG9zZShzb2NrZXRzWzBdKTsKICAgICAgICAgbV9wcm9jZXNzSWRlbnRpZmllciA9
IHBpZDsK
</data>

          </attachment>
      

    </bug>

</bugzilla>