<?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>95949</bug_id>
          
          <creation_ts>2012-09-06 01:26:54 -0700</creation_ts>
          <short_desc>[GTK] [WK2] Crash when navigating between pages</short_desc>
          <delta_ts>2012-09-07 01:05:45 -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>WebKitGTK</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="Sudarsana Nagineni (babu)">naginenis</reporter>
          <assigned_to name="Sudarsana Nagineni (babu)">naginenis</assigned_to>
          <cc>cgarcia</cc>
    
    <cc>gustavo</cc>
    
    <cc>mrobinson</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>713021</commentid>
    <comment_count>0</comment_count>
    <who name="Sudarsana Nagineni (babu)">naginenis</who>
    <bug_when>2012-09-06 01:26:54 -0700</bug_when>
    <thetext>Observed a crash in webkitURIResponseSetCertificateInfo when navigating between web pages.

#0  0x00007fbb166b0557 in webkitURIResponseSetCertificateInfo (response=0x0, wkCertificate=0xb6fd80) at ../../Source/WebKit2/UIProcess/API/gtk/WebKitURIResponse.cpp:288
288	    response-&gt;priv-&gt;resourceResponse.setSoupMessageCertificate(certificateInfo.certificate());
(gdb) bt
#0  0x00007fbb166b0557 in webkitURIResponseSetCertificateInfo (response=0x0, wkCertificate=0xb6fd80) at ../../Source/WebKit2/UIProcess/API/gtk/WebKitURIResponse.cpp:288
#1  0x00007fbb166be5c0 in setCertificateToMainResource (webView=0x974200) at ../../Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:1108
#2  0x00007fbb166be78e in webkitWebViewLoadChanged (webView=0x974200, loadEvent=WEBKIT_LOAD_COMMITTED) at ../../Source/WebKit2/UIProcess/API/gtk/WebKitWebView.cpp:1152
#3  0x00007fbb166a021d in didCommitLoadForFrame (page=0x9a13b0, frame=0xafe830, userData=0x0, clientInfo=0x974200) at ../../Source/WebKit2/UIProcess/API/gtk/WebKitLoaderClient.cpp:68
#4  0x00007fbb16732a01 in WebKit::WebLoaderClient::didCommitLoadForFrame (this=0x9a13d0, page=0x9a13b0, frame=0xafe830, userData=0x0) at ../../Source/WebKit2/UIProcess/WebLoaderClient.cpp:72
#5  0x00007fbb16740770 in WebKit::WebPageProxy::didCommitLoadForFrame (this=0x9a13b0, frameID=1, mimeType=&quot;text/html&quot;, frameHasCustomRepresentation=false, certificateInfo=..., arguments=0x7fbaa4001250)
    at ../../Source/WebKit2/UIProcess/WebPageProxy.cpp:2029
#6  0x00007fbb1687a33c in CoreIPC::callMemberFunction&lt;WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)(unsigned long, WTF::String const&amp;, bool, WebKit::PlatformCertificateInfo const&amp;, CoreIPC::ArgumentDecoder*), unsigned long, WTF::String, bool, WebKit::PlatformCertificateInfo&gt; (args=..., argumentDecoder=0x7fbaa4001250, object=0x9a13b0, function=
    (void (WebKit::WebPageProxy::*)(WebKit::WebPageProxy * const, unsigned long, const WTF::String &amp;, bool, const WebKit::PlatformCertificateInfo &amp;, CoreIPC::ArgumentDecoder *)) 0x7fbb167405b4 &lt;WebKit::WebPageProxy::didCommitLoadForFrame(unsigned long, WTF::String const&amp;, bool, WebKit::PlatformCertificateInfo const&amp;, CoreIPC::ArgumentDecoder*)&gt;) at ../../Source/WebKit2/Platform/CoreIPC/HandleMessage.h:253
#7  0x00007fbb168765e0 in CoreIPC::handleMessageVariadic&lt;Messages::WebPageProxy::DidCommitLoadForFrame, WebKit::WebPageProxy, void (WebKit::WebPageProxy::*)(unsigned long, WTF::String const&amp;, bool, WebKit::PlatformCertificateInfo const&amp;, CoreIPC::ArgumentDecoder*)&gt; (argumentDecoder=0x7fbaa4001250, object=0x9a13b0, function=
    (void (WebKit::WebPageProxy::*)(WebKit::WebPageProxy * const, unsigned long, const WTF::String &amp;, bool, const WebKit::PlatformCertificateInfo &amp;, CoreIPC::ArgumentDecoder *)) 0x7fbb167405b4 &lt;WebKit::WebPageProxy::didCommitLoadForFrame(unsigned long, WTF::String const&amp;, bool, WebKit::PlatformCertificateInfo const&amp;, CoreIPC::ArgumentDecoder*)&gt;) at ../../Source/WebKit2/Platform/CoreIPC/HandleMessage.h:332
#8  0x00007fbb168738dc in WebKit::WebPageProxy::didReceiveWebPageProxyMessage (this=0x9a13b0, messageID=..., arguments=0x7fbaa4001250) at DerivedSources/WebKit2/WebPageProxyMessageReceiver.cpp:271
#9  0x00007fbb1673f221 in WebKit::WebPageProxy::didReceiveMessage (this=0x9a13b0, connection=0xa6dba0, messageID=..., arguments=0x7fbaa4001250) at ../../Source/WebKit2/UIProcess/WebPageProxy.cpp:1788
#10 0x00007fbb16772c20 in WebKit::WebProcessProxy::didReceiveMessage (this=0x9964f0, connection=0xa6dba0, messageID=..., arguments=0x7fbaa4001250) at ../../Source/WebKit2/UIProcess/WebProcessProxy.cpp:430
#11 0x00007fbb1670916c in WebKit::WebConnectionToWebProcess::didReceiveMessage (this=0xa6db50, connection=0xa6dba0, messageID=..., arguments=0x7fbaa4001250)
    at ../../Source/WebKit2/UIProcess/WebConnectionToWebProcess.cpp:92
#12 0x00007fbb1661588b in CoreIPC::Connection::dispatchMessage (this=0xa6dba0, message=...) at ../../Source/WebKit2/Platform/CoreIPC/Connection.cpp:691
#13 0x00007fbb16615a29 in CoreIPC::Connection::dispatchOneMessage (this=0xa6dba0) at ../../Source/WebKit2/Platform/CoreIPC/Connection.cpp:717
#14 0x00007fbb1661fbe6 in WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;::operator() (this=0x7fbaa40012c0, c=0xa6dba0) at ../../Source/WTF/wtf/Functional.h:174
#15 0x00007fbb1661f9ec in WTF::BoundFunctionImpl&lt;WTF::FunctionWrapper&lt;void (CoreIPC::Connection::*)()&gt;, void (CoreIPC::Connection*)&gt;::operator()() (this=0x7fbaa40012b0)
    at ../../Source/WTF/wtf/Functional.h:406
#16 0x00007fbb16624a2e in WTF::Function&lt;void ()&gt;::operator()() const (this=0x7fffa9008840) at ../../Source/WTF/wtf/Functional.h:614
#17 0x00007fbb171f7711 in WebCore::RunLoop::performWork (this=0x965e40) at ../../Source/WebCore/platform/RunLoop.cpp:87
#18 0x00007fbb17c694ae in WebCore::RunLoop::queueWork (runLoop=0x965e40) at ../../Source/WebCore/platform/gtk/RunLoopGtk.cpp:102
#19 0x00007fbb151f1c9a in g_main_dispatch (context=0x86d440) at /build/buildd/glib2.0-2.32.1/./glib/gmain.c:2515
#20 g_main_context_dispatch (context=0x86d440) at /build/buildd/glib2.0-2.32.1/./glib/gmain.c:3052
#21 0x00007fbb151f2060 in g_main_context_iterate (dispatch=1, block=&lt;optimized out&gt;, context=0x86d440, self=&lt;optimized out&gt;) at /build/buildd/glib2.0-2.32.1/./glib/gmain.c:3123
#22 g_main_context_iterate (context=0x86d440, block=&lt;optimized out&gt;, dispatch=1, self=&lt;optimized out&gt;) at /build/buildd/glib2.0-2.32.1/./glib/gmain.c:3060
#23 0x00007fbb151f245a in g_main_loop_run (loop=0xa93740) at /build/buildd/glib2.0-2.32.1/./glib/gmain.c:3317
#24 0x00007fbb15bb725d in gtk_main () at /build/buildd/gtk+3.0-3.4.1/./gtk/gtkmain.c:1165
#25 0x000000000040b650 in main (argc=1, argv=0x7fffa9008ae8) at ../../Tools/MiniBrowser/gtk/main.c:233
(gdb) p response
$1 = (WebKitURIResponse *) 0x0
(gdb)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713101</commentid>
    <comment_count>1</comment_count>
      <attachid>162461</attachid>
    <who name="Sudarsana Nagineni (babu)">naginenis</who>
    <bug_when>2012-09-06 03:03:18 -0700</bug_when>
    <thetext>Created attachment 162461
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713103</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-09-06 03:05:05 -0700</bug_when>
    <thetext>Thanks for the patch. If this patch contains new public API please make sure it follows the guidelines for new WebKit2 GTK+ API. See http://trac.webkit.org/wiki/WebKitGTK/AddingNewWebKit2API</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713128</commentid>
    <comment_count>3</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-09-06 03:26:14 -0700</bug_when>
    <thetext>Is it possible that when the load has been commited and we have a main resource, the resource hasn&apos;t received a response yet? Is the crash easily reproducible or does it randomly happens?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713154</commentid>
    <comment_count>4</comment_count>
    <who name="Sudarsana Nagineni (babu)">naginenis</who>
    <bug_when>2012-09-06 04:13:03 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Is it possible that when the load has been commited and we have a main resource, the resource hasn&apos;t received a response yet?
By looking at the stack trace and code, I can confirm that the load has been committed and we have a main resource, but the response is still missing.

&gt;Is the crash easily reproducible or does it randomly happens?
yes, it is reproducible, but not always. 

Here are the steps:
1. Open MiniBrowser and load http://www.youtube.com
2. Click on any video link.
3. Navigate back/forward several times while pages are loading.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713180</commentid>
    <comment_count>5</comment_count>
      <attachid>162478</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-09-06 05:03:07 -0700</bug_when>
    <thetext>Created attachment 162478
A different patch

I&apos;ve checked the problem and it&apos;s related to bug https://bugs.webkit.org/show_bug.cgi?id=91478. For pages loaded from the history cache, the parameter isMainResource is always true, so all subresources are considered the main one. When the loca committed signal is emitted, the mainResource variable doesn&apos;t point to the main resource, but to the last subresources that is being loaded in this moment, and it can happen that the response hasn&apos;t been received yet for such subresource. So, we can simply assume that the main resource of the main frame is the main resource of the web view, and that when the load has been committed the main resource has already received a response.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713207</commentid>
    <comment_count>6</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2012-09-06 06:01:46 -0700</bug_when>
    <thetext>(In reply to comment #5)

&gt; I&apos;ve checked the problem and it&apos;s related to bug https://bugs.webkit.org/show_bug.cgi?id=91478. For pages loaded from the history cache, the parameter isMainResource is always true, so all subresources are considered the main one.

Certainly this must be a bug in the platform-independent code?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713215</commentid>
    <comment_count>7</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-09-06 06:05:44 -0700</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #5)
&gt; 
&gt; &gt; I&apos;ve checked the problem and it&apos;s related to bug https://bugs.webkit.org/show_bug.cgi?id=91478. For pages loaded from the history cache, the parameter isMainResource is always true, so all subresources are considered the main one.
&gt; 
&gt; Certainly this must be a bug in the platform-independent code?

No, see bug #91478, we were incorrectly assuming that the resource loaded for the main frame that is provisionally loaded is the main resource of the web view. WebKit1 has the same issue, but in WebKit1 get_main_resource() calls the loader to get the main resource, so it doesn&apos;t need to assume anything.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713219</commentid>
    <comment_count>8</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2012-09-06 06:13:30 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (In reply to comment #6)
&gt; &gt; (In reply to comment #5)
&gt; &gt; 
&gt; &gt; &gt; I&apos;ve checked the problem and it&apos;s related to bug https://bugs.webkit.org/show_bug.cgi?id=91478. For pages loaded from the history cache, the parameter isMainResource is always true, so all subresources are considered the main one.
&gt; &gt; 
&gt; &gt; Certainly this must be a bug in the platform-independent code?
&gt; 
&gt; No, see bug #91478, we were incorrectly assuming that the resource loaded for the main frame that is provisionally loaded is the main resource of the web view. WebKit1 has the same issue, but in WebKit1 get_main_resource() calls the loader to get the main resource, so it doesn&apos;t need to assume anything.

If my understanding of what you are saying is correct, &quot;the parameters isMainResource is always true&quot; for pages loaded from the history cache. That means that many resources will be created with isMainResource set to true, so they won&apos;t be correctly instantiated (see webkit_web_resource_get_data).  So it seems to fix this bug you we must fix the value of isMainResource passed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713222</commentid>
    <comment_count>9</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-09-06 06:18:03 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; (In reply to comment #7)
&gt; &gt; (In reply to comment #6)
&gt; &gt; &gt; (In reply to comment #5)
&gt; &gt; &gt; 
&gt; &gt; &gt; &gt; I&apos;ve checked the problem and it&apos;s related to bug https://bugs.webkit.org/show_bug.cgi?id=91478. For pages loaded from the history cache, the parameter isMainResource is always true, so all subresources are considered the main one.
&gt; &gt; &gt; 
&gt; &gt; &gt; Certainly this must be a bug in the platform-independent code?
&gt; &gt; 
&gt; &gt; No, see bug #91478, we were incorrectly assuming that the resource loaded for the main frame that is provisionally loaded is the main resource of the web view. WebKit1 has the same issue, but in WebKit1 get_main_resource() calls the loader to get the main resource, so it doesn&apos;t need to assume anything.
&gt; 
&gt; If my understanding of what you are saying is correct, &quot;the parameters isMainResource is always true&quot; for pages loaded from the history cache. That means that many resources will be created with isMainResource set to true, so they won&apos;t be correctly instantiated (see webkit_web_resource_get_data).  So it seems to fix this bug you we must fix the value of isMainResource passed.

isMainResource is actually pageIsProvisionallyLoading, so maybe we should simply change the name of the variable (isMainResource) because it&apos;s not always true. That&apos;s the assumption that was wrong. But we still need to check if it&apos;s the first resource or not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713225</commentid>
    <comment_count>10</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-09-06 06:19:58 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #8)
&gt; &gt; (In reply to comment #7)
&gt; &gt; &gt; (In reply to comment #6)
&gt; &gt; &gt; &gt; (In reply to comment #5)
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; &gt; I&apos;ve checked the problem and it&apos;s related to bug https://bugs.webkit.org/show_bug.cgi?id=91478. For pages loaded from the history cache, the parameter isMainResource is always true, so all subresources are considered the main one.
&gt; &gt; &gt; &gt; 
&gt; &gt; &gt; &gt; Certainly this must be a bug in the platform-independent code?
&gt; &gt; &gt; 
&gt; &gt; &gt; No, see bug #91478, we were incorrectly assuming that the resource loaded for the main frame that is provisionally loaded is the main resource of the web view. WebKit1 has the same issue, but in WebKit1 get_main_resource() calls the loader to get the main resource, so it doesn&apos;t need to assume anything.
&gt; &gt; 
&gt; &gt; If my understanding of what you are saying is correct, &quot;the parameters isMainResource is always true&quot; for pages loaded from the history cache. That means that many resources will be created with isMainResource set to true, so they won&apos;t be correctly instantiated (see webkit_web_resource_get_data).  So it seems to fix this bug you we must fix the value of isMainResource passed.
&gt; 
&gt; isMainResource is actually pageIsProvisionallyLoading, so maybe we should simply change the name of the variable (isMainResource) because it&apos;s not always true. That&apos;s the assumption that was wrong. But we still need to check if it&apos;s the first resource or not.

btw, the reason why it&apos;s not always true is because pages loaded from the history cache don&apos;t go through the provisional state, they transition directly to committed, because they are already in the cache.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713312</commentid>
    <comment_count>11</comment_count>
    <who name="Martin Robinson">mrobinson</who>
    <bug_when>2012-09-06 08:25:09 -0700</bug_when>
    <thetext>(In reply to comment #9)

&gt; isMainResource is actually pageIsProvisionallyLoading, so maybe we should simply change the name of the variable (isMainResource) because it&apos;s not always true. That&apos;s the assumption that was wrong. But we still need to check if it&apos;s the first resource or not.

It looks like there is no surefire way that I can easily see to detect when a resource is the main resource, so this sounds like a good approach. I think we also need to correct the value passed to webkitWebResourceCreate, as isMainResource is incorrect.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713322</commentid>
    <comment_count>12</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-09-06 08:37:59 -0700</bug_when>
    <thetext>(In reply to comment #11)
&gt; (In reply to comment #9)
&gt; 
&gt; &gt; isMainResource is actually pageIsProvisionallyLoading, so maybe we should simply change the name of the variable (isMainResource) because it&apos;s not always true. That&apos;s the assumption that was wrong. But we still need to check if it&apos;s the first resource or not.
&gt; 
&gt; It looks like there is no surefire way that I can easily see to detect when a resource is the main resource, so this sounds like a good approach. I think we also need to correct the value passed to webkitWebResourceCreate, as isMainResource is incorrect.

Yes, that was my conclusion too, what we know for sure is that we need the main resource loaded to load subresources, so the first resource we load for the main frame has to be the main one. I&apos;ll change isMainResource to pageIsProvisionallyLoading before landing if patch gets approved.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713376</commentid>
    <comment_count>13</comment_count>
      <attachid>162525</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-09-06 09:44:40 -0700</bug_when>
    <thetext>Created attachment 162525
Updated patch

Remove the isMainResource parameter because it&apos;s now unused and pass the correct value to resource constructor.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713383</commentid>
    <comment_count>14</comment_count>
      <attachid>162461</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-09-06 09:51:43 -0700</bug_when>
    <thetext>Comment on attachment 162461
Patch

Thanks for the patch, we decided to follow a different approach to fix the source of the problem.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>713385</commentid>
    <comment_count>15</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2012-09-06 09:53:35 -0700</bug_when>
    <thetext>Committed r127750: &lt;http://trac.webkit.org/changeset/127750&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>714250</commentid>
    <comment_count>16</comment_count>
    <who name="Sudarsana Nagineni (babu)">naginenis</who>
    <bug_when>2012-09-07 01:05:45 -0700</bug_when>
    <thetext>(In reply to comment #14)
&gt; Thanks for the patch, we decided to follow a different approach to fix the source of the problem.

Thanks for the proper fix, Carlos.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162461</attachid>
            <date>2012-09-06 03:03:18 -0700</date>
            <delta_ts>2012-09-06 09:51:43 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>95949.patch</filename>
            <type>text/plain</type>
            <size>1754</size>
            <attacher name="Sudarsana Nagineni (babu)">naginenis</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCBmNTZkMWQyLi5hNjE3Mzc0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTYg
QEAKKzIwMTItMDktMDYgIFN1ZGFyc2FuYSBOYWdpbmVuaSAgPHN1ZGFyc2FuYS5uYWdpbmVuaUBs
aW51eC5pbnRlbC5jb20+CisKKyAgICAgICAgW0dUS10gW1dLMl0gQ3Jhc2ggd2hlbiBuYXZpZ2F0
aW5nIGJldHdlZW4gcGFnZXMKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19i
dWcuY2dpP2lkPTk1OTQ5CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisK
KyAgICAgICAgQWRkZWQgYSBOVUxMLWNoZWNrIGZvciBXZWJLaXRVUklSZXNwb25zZSBhcyBpdCBj
YW4gYmUgTlVMTCBJZiB0aGUKKyAgICAgICAgcmVzcG9uc2UgaGFzIG5vdCB5ZXQgcmVjZWl2ZWQg
ZnJvbSB0aGUgc2VydmVyLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2Vi
Vmlldy5jcHA6CisgICAgICAgIChzZXRDZXJ0aWZpY2F0ZVRvTWFpblJlc291cmNlKToKKwogMjAx
Mi0wOS0wNSAgUnl1YW4gQ2hvaSAgPHJ5dWFuLmNob2lAc2Ftc3VuZy5jb20+CiAKICAgICAgICAg
W0VGTF1bV0syXSBJbXBsZW1lbnQgbWlzc2luZyBmZWF0dXJlIHRvIHN1cHBvcnQgPHNlbGVjdD4g
dGFnCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRX
ZWJWaWV3LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZp
ZXcuY3BwCmluZGV4IGVlODZkNDQuLjhjMGQ2M2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwCisrKyBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwCkBAIC0xMTA0LDggKzExMDQsOSBA
QCBzdGF0aWMgdm9pZCBzZXRDZXJ0aWZpY2F0ZVRvTWFpblJlc291cmNlKFdlYktpdFdlYlZpZXcq
IHdlYlZpZXcpCiAgICAgV2ViS2l0V2ViVmlld1ByaXZhdGUqIHByaXYgPSB3ZWJWaWV3LT5wcml2
OwogICAgIEFTU0VSVChwcml2LT5tYWluUmVzb3VyY2UuZ2V0KCkpOwogCi0gICAgd2Via2l0VVJJ
UmVzcG9uc2VTZXRDZXJ0aWZpY2F0ZUluZm8od2Via2l0X3dlYl9yZXNvdXJjZV9nZXRfcmVzcG9u
c2UocHJpdi0+bWFpblJlc291cmNlLmdldCgpKSwKLSAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICBXS0ZyYW1lR2V0Q2VydGlmaWNhdGVJbmZvKHdlYmtpdFdlYlJlc291cmNl
R2V0RnJhbWUocHJpdi0+bWFpblJlc291cmNlLmdldCgpKSkpOworICAgIFdlYktpdFVSSVJlc3Bv
bnNlKiByZXNwb25zZSA9IHdlYmtpdF93ZWJfcmVzb3VyY2VfZ2V0X3Jlc3BvbnNlKHByaXYtPm1h
aW5SZXNvdXJjZS5nZXQoKSk7CisgICAgaWYgKHJlc3BvbnNlKQorICAgICAgICB3ZWJraXRVUklS
ZXNwb25zZVNldENlcnRpZmljYXRlSW5mbyhyZXNwb25zZSwgV0tGcmFtZUdldENlcnRpZmljYXRl
SW5mbyh3ZWJraXRXZWJSZXNvdXJjZUdldEZyYW1lKHByaXYtPm1haW5SZXNvdXJjZS5nZXQoKSkp
KTsKIH0KIAogc3RhdGljIHZvaWQgd2Via2l0V2ViVmlld0VtaXRMb2FkQ2hhbmdlZChXZWJLaXRX
ZWJWaWV3KiB3ZWJWaWV3LCBXZWJLaXRMb2FkRXZlbnQgbG9hZEV2ZW50KQo=
</data>
<flag name="review"
          id="173578"
          type_id="1"
          status="-"
          setter="cgarcia"
    />
    <flag name="commit-queue"
          id="173579"
          type_id="3"
          status="-"
          setter="cgarcia"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162478</attachid>
            <date>2012-09-06 05:03:07 -0700</date>
            <delta_ts>2012-09-06 09:44:40 -0700</delta_ts>
            <desc>A different patch</desc>
            <filename>wk2-crash.diff</filename>
            <type>text/plain</type>
            <size>1684</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCBmNTZkMWQyLi5iZWU3MzhmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTkg
QEAKKzIwMTItMDktMDYgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIFtXSzJdIENyYXNoIHdoZW4gbmF2aWdhdGluZyBiZXR3ZWVuIHBh
Z2VzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NTk0
OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvIG5v
dCB0cnVzdCBpc01haW5SZXNvdXJjZSBwYXJhbWV0ZXIgaW4KKyAgICAgICAgd2Via2l0V2ViVmll
d1Jlc291cmNlTG9hZFN0YXJ0ZWQoKSwgYmVjYXVzZSBpdCdzIGFsd2F5cyB0cnVlIGZvcgorICAg
ICAgICBhbGwgc3VicmVzb3VyY2VzIG9mIHBhZ2VzIGxvYWRlZCBmcm9tIHRoZSBoaXN0b3J5IGNh
Y2hlLiBXZSBjYW4KKyAgICAgICAgc2ltcGx5IGFzc3VtZSB0aGF0IHRoZSBmaXJzdCByZXNvdXJj
ZSBsb2FkZWQgZm9yIHRoZSBtYWluIGZyYW1lCisgICAgICAgIGlzIHRoZSBtYWluIHdlYiB2aWV3
IHJlc291cmNlLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5j
cHA6CisgICAgICAgICh3ZWJraXRXZWJWaWV3UmVzb3VyY2VMb2FkU3RhcnRlZCk6CisKIDIwMTIt
MDktMDUgIFJ5dWFuIENob2kgIDxyeXVhbi5jaG9pQHNhbXN1bmcuY29tPgogCiAgICAgICAgIFtF
RkxdW1dLMl0gSW1wbGVtZW50IG1pc3NpbmcgZmVhdHVyZSB0byBzdXBwb3J0IDxzZWxlY3Q+IHRh
ZwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2Vi
Vmlldy5jcHAgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3
LmNwcAppbmRleCBlZTg2ZDQ0Li4yZGVlYWI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9V
SVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNwcApAQCAtMTMxNSw3ICsxMzE1LDcgQEAg
dm9pZCB3ZWJraXRXZWJWaWV3UmVzb3VyY2VMb2FkU3RhcnRlZChXZWJLaXRXZWJWaWV3KiB3ZWJW
aWV3LCBXS0ZyYW1lUmVmIHdrRnJhbWUKIHsKICAgICBXZWJLaXRXZWJWaWV3UHJpdmF0ZSogcHJp
diA9IHdlYlZpZXctPnByaXY7CiAgICAgV2ViS2l0V2ViUmVzb3VyY2UqIHJlc291cmNlID0gd2Vi
a2l0V2ViUmVzb3VyY2VDcmVhdGUod2tGcmFtZSwgcmVxdWVzdCwgaXNNYWluUmVzb3VyY2UpOwot
ICAgIGlmIChXS0ZyYW1lSXNNYWluRnJhbWUod2tGcmFtZSkgJiYgKGlzTWFpblJlc291cmNlIHx8
ICFwcml2LT5tYWluUmVzb3VyY2UpKSB7CisgICAgaWYgKFdLRnJhbWVJc01haW5GcmFtZSh3a0Zy
YW1lKSAmJiAhcHJpdi0+bWFpblJlc291cmNlKSB7CiAgICAgICAgIHByaXYtPm1haW5SZXNvdXJj
ZSA9IHJlc291cmNlOwogICAgICAgICB3YWl0Rm9yTWFpblJlc291cmNlUmVzcG9uc2VJZldhaXRp
bmdGb3JSZXNvdXJjZSh3ZWJWaWV3KTsKICAgICB9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>162525</attachid>
            <date>2012-09-06 09:44:40 -0700</date>
            <delta_ts>2012-09-06 09:45:38 -0700</delta_ts>
            <desc>Updated patch</desc>
            <filename>wk2-crash2.diff</filename>
            <type>text/plain</type>
            <size>4616</size>
            <attacher name="Carlos Garcia Campos">cgarcia</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJLaXQyL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJLaXQyL0No
YW5nZUxvZwppbmRleCAxMDRiNjEyLi4yNmY5N2ZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViS2l0
Mi9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYktpdDIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMjIg
QEAKKzIwMTItMDktMDYgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8Y2dhcmNpYUBpZ2FsaWEuY29t
PgorCisgICAgICAgIFtHVEtdIFtXSzJdIENyYXNoIHdoZW4gbmF2aWdhdGluZyBiZXR3ZWVuIHBh
Z2VzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD05NTk0
OQorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIERvIG5v
dCB0cnVzdCBpc01haW5SZXNvdXJjZSBwYXJhbWV0ZXIgaW4KKyAgICAgICAgd2Via2l0V2ViVmll
d1Jlc291cmNlTG9hZFN0YXJ0ZWQoKSwgYmVjYXVzZSBpdCdzIGFsd2F5cyB0cnVlIGZvcgorICAg
ICAgICBhbGwgc3VicmVzb3VyY2VzIG9mIHBhZ2VzIGxvYWRlZCBmcm9tIHRoZSBoaXN0b3J5IGNh
Y2hlLiBXZSBjYW4KKyAgICAgICAgc2ltcGx5IGFzc3VtZSB0aGF0IHRoZSBmaXJzdCByZXNvdXJj
ZSBsb2FkZWQgZm9yIHRoZSBtYWluIGZyYW1lCisgICAgICAgIGlzIHRoZSBtYWluIHdlYiB2aWV3
IHJlc291cmNlLgorCisgICAgICAgICogVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0UmVzb3VyY2VM
b2FkQ2xpZW50LmNwcDoKKyAgICAgICAgKGRpZEluaXRpYXRlTG9hZEZvclJlc291cmNlKToKKyAg
ICAgICAgKiBVSVByb2Nlc3MvQVBJL2d0ay9XZWJLaXRXZWJWaWV3LmNwcDoKKyAgICAgICAgKHdl
YmtpdFdlYlZpZXdSZXNvdXJjZUxvYWRTdGFydGVkKToKKyAgICAgICAgKiBVSVByb2Nlc3MvQVBJ
L2d0ay9XZWJLaXRXZWJWaWV3UHJpdmF0ZS5oOgorCiAyMDEyLTA5LTA2ICBDaHJpc3RvcGhlIER1
bWV6ICA8Y2hyaXN0b3BoZS5kdW1lekBpbnRlbC5jb20+CiAKICAgICAgICAgW0VGTF1bV0syXSBQ
cm92aWRlIGltcGxlbWVudGF0aW9uIGZvciBXZWJQYWdlOjpwZXJmb3JtRGVmYXVsdEJlaGF2aW9y
Rm9yS2V5RXZlbnQoKQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9n
dGsvV2ViS2l0UmVzb3VyY2VMb2FkQ2xpZW50LmNwcCBiL1NvdXJjZS9XZWJLaXQyL1VJUHJvY2Vz
cy9BUEkvZ3RrL1dlYktpdFJlc291cmNlTG9hZENsaWVudC5jcHAKaW5kZXggMWNkOGFhZi4uYjM4
MTYxMSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0
UmVzb3VyY2VMb2FkQ2xpZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJ
L2d0ay9XZWJLaXRSZXNvdXJjZUxvYWRDbGllbnQuY3BwCkBAIC0zOCw3ICszOCw3IEBAIHVzaW5n
IG5hbWVzcGFjZSBXZWJLaXQ7CiBzdGF0aWMgdm9pZCBkaWRJbml0aWF0ZUxvYWRGb3JSZXNvdXJj
ZShXS1BhZ2VSZWYsIFdLRnJhbWVSZWYgd2tGcmFtZSwgdWludDY0X3QgcmVzb3VyY2VJZGVudGlm
aWVyLCBXS1VSTFJlcXVlc3RSZWYgd2tSZXF1ZXN0LCBib29sIHBhZ2VJc1Byb3Zpc2lvbmFsbHlM
b2FkaW5nLCBjb25zdCB2b2lkKiBjbGllbnRJbmZvKQogewogICAgIEdSZWZQdHI8V2ViS2l0VVJJ
UmVxdWVzdD4gcmVxdWVzdCA9IGFkb3B0R1JlZih3ZWJraXRVUklSZXF1ZXN0Q3JlYXRlRm9yUmVz
b3VyY2VSZXF1ZXN0KHRvSW1wbCh3a1JlcXVlc3QpLT5yZXNvdXJjZVJlcXVlc3QoKSkpOwotICAg
IHdlYmtpdFdlYlZpZXdSZXNvdXJjZUxvYWRTdGFydGVkKFdFQktJVF9XRUJfVklFVyhjbGllbnRJ
bmZvKSwgd2tGcmFtZSwgcmVzb3VyY2VJZGVudGlmaWVyLCByZXF1ZXN0LmdldCgpLCBwYWdlSXNQ
cm92aXNpb25hbGx5TG9hZGluZyk7CisgICAgd2Via2l0V2ViVmlld1Jlc291cmNlTG9hZFN0YXJ0
ZWQoV0VCS0lUX1dFQl9WSUVXKGNsaWVudEluZm8pLCB3a0ZyYW1lLCByZXNvdXJjZUlkZW50aWZp
ZXIsIHJlcXVlc3QuZ2V0KCkpOwogfQogCiBzdGF0aWMgdm9pZCBkaWRTZW5kUmVxdWVzdEZvclJl
c291cmNlKFdLUGFnZVJlZiwgV0tGcmFtZVJlZiwgdWludDY0X3QgcmVzb3VyY2VJZGVudGlmaWVy
LCBXS1VSTFJlcXVlc3RSZWYgd2tSZXF1ZXN0LCBXS1VSTFJlc3BvbnNlUmVmIHdrUmVkaXJlY3RS
ZXNwb25zZSwgY29uc3Qgdm9pZCogY2xpZW50SW5mbykKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJL
aXQyL1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXcuY3BwIGIvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlldy5jcHAKaW5kZXggZWU4NmQ0NC4uNmZlZmI2
NSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2Vi
Vmlldy5jcHAKKysrIGIvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2Vi
Vmlldy5jcHAKQEAgLTEzMTEsMTEgKzEzMTEsMTIgQEAgc3RhdGljIHZvaWQgd2FpdEZvck1haW5S
ZXNvdXJjZVJlc3BvbnNlSWZXYWl0aW5nRm9yUmVzb3VyY2UoV2ViS2l0V2ViVmlldyogd2ViVmkK
ICAgICAgICAgZ19zaWduYWxfY29ubmVjdChwcml2LT5tYWluUmVzb3VyY2UuZ2V0KCksICJub3Rp
Znk6OnJlc3BvbnNlIiwgR19DQUxMQkFDSyhtYWluUmVzb3VyY2VSZXNwb25zZUNoYW5nZWRDYWxs
YmFjayksIHdlYlZpZXcpOwogfQogCi12b2lkIHdlYmtpdFdlYlZpZXdSZXNvdXJjZUxvYWRTdGFy
dGVkKFdlYktpdFdlYlZpZXcqIHdlYlZpZXcsIFdLRnJhbWVSZWYgd2tGcmFtZSwgdWludDY0X3Qg
cmVzb3VyY2VJZGVudGlmaWVyLCBXZWJLaXRVUklSZXF1ZXN0KiByZXF1ZXN0LCBib29sIGlzTWFp
blJlc291cmNlKQordm9pZCB3ZWJraXRXZWJWaWV3UmVzb3VyY2VMb2FkU3RhcnRlZChXZWJLaXRX
ZWJWaWV3KiB3ZWJWaWV3LCBXS0ZyYW1lUmVmIHdrRnJhbWUsIHVpbnQ2NF90IHJlc291cmNlSWRl
bnRpZmllciwgV2ViS2l0VVJJUmVxdWVzdCogcmVxdWVzdCkKIHsKICAgICBXZWJLaXRXZWJWaWV3
UHJpdmF0ZSogcHJpdiA9IHdlYlZpZXctPnByaXY7CisgICAgYm9vbCBpc01haW5SZXNvdXJjZSA9
IFdLRnJhbWVJc01haW5GcmFtZSh3a0ZyYW1lKSAmJiAhcHJpdi0+bWFpblJlc291cmNlOwogICAg
IFdlYktpdFdlYlJlc291cmNlKiByZXNvdXJjZSA9IHdlYmtpdFdlYlJlc291cmNlQ3JlYXRlKHdr
RnJhbWUsIHJlcXVlc3QsIGlzTWFpblJlc291cmNlKTsKLSAgICBpZiAoV0tGcmFtZUlzTWFpbkZy
YW1lKHdrRnJhbWUpICYmIChpc01haW5SZXNvdXJjZSB8fCAhcHJpdi0+bWFpblJlc291cmNlKSkg
eworICAgIGlmIChpc01haW5SZXNvdXJjZSkgewogICAgICAgICBwcml2LT5tYWluUmVzb3VyY2Ug
PSByZXNvdXJjZTsKICAgICAgICAgd2FpdEZvck1haW5SZXNvdXJjZVJlc3BvbnNlSWZXYWl0aW5n
Rm9yUmVzb3VyY2Uod2ViVmlldyk7CiAgICAgfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYktpdDIv
VUlQcm9jZXNzL0FQSS9ndGsvV2ViS2l0V2ViVmlld1ByaXZhdGUuaCBiL1NvdXJjZS9XZWJLaXQy
L1VJUHJvY2Vzcy9BUEkvZ3RrL1dlYktpdFdlYlZpZXdQcml2YXRlLmgKaW5kZXggZjI5ODZkMS4u
NWFkMjg1MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYktpdDIvVUlQcm9jZXNzL0FQSS9ndGsvV2Vi
S2l0V2ViVmlld1ByaXZhdGUuaAorKysgYi9Tb3VyY2UvV2ViS2l0Mi9VSVByb2Nlc3MvQVBJL2d0
ay9XZWJLaXRXZWJWaWV3UHJpdmF0ZS5oCkBAIC00Nyw3ICs0Nyw3IEBAIHZvaWQgd2Via2l0V2Vi
Vmlld01ha2VQZXJtaXNzaW9uUmVxdWVzdChXZWJLaXRXZWJWaWV3KiwgV2ViS2l0UGVybWlzc2lv
blJlcXVlc3QqCiB2b2lkIHdlYmtpdFdlYlZpZXdNYWtlUG9saWN5RGVjaXNpb24oV2ViS2l0V2Vi
VmlldyosIFdlYktpdFBvbGljeURlY2lzaW9uVHlwZSwgV2ViS2l0UG9saWN5RGVjaXNpb24qKTsK
IHZvaWQgd2Via2l0V2ViVmlld01vdXNlVGFyZ2V0Q2hhbmdlZChXZWJLaXRXZWJWaWV3KiwgV0tI
aXRUZXN0UmVzdWx0UmVmLCB1bnNpZ25lZCBtb2RpZmllcnMpOwogdm9pZCB3ZWJraXRXZWJWaWV3
UHJpbnRGcmFtZShXZWJLaXRXZWJWaWV3KiwgV0tGcmFtZVJlZik7Ci12b2lkIHdlYmtpdFdlYlZp
ZXdSZXNvdXJjZUxvYWRTdGFydGVkKFdlYktpdFdlYlZpZXcqLCBXS0ZyYW1lUmVmLCB1aW50NjRf
dCByZXNvdXJjZUlkZW50aWZpZXIsIFdlYktpdFVSSVJlcXVlc3QqLCBib29sIGlzTWFpblJlc291
cmNlKTsKK3ZvaWQgd2Via2l0V2ViVmlld1Jlc291cmNlTG9hZFN0YXJ0ZWQoV2ViS2l0V2ViVmll
dyosIFdLRnJhbWVSZWYsIHVpbnQ2NF90IHJlc291cmNlSWRlbnRpZmllciwgV2ViS2l0VVJJUmVx
dWVzdCopOwogdm9pZCB3ZWJraXRXZWJWaWV3UnVuRmlsZUNob29zZXJSZXF1ZXN0KFdlYktpdFdl
YlZpZXcqLCBXZWJLaXRGaWxlQ2hvb3NlclJlcXVlc3QqKTsKIFdlYktpdFdlYlJlc291cmNlKiB3
ZWJraXRXZWJWaWV3R2V0TG9hZGluZ1dlYlJlc291cmNlKFdlYktpdFdlYlZpZXcqLCB1aW50NjRf
dCByZXNvdXJjZUlkZW50aWZpZXIpOwogdm9pZCB3ZWJraXRXZWJWaWV3UmVtb3ZlTG9hZGluZ1dl
YlJlc291cmNlKFdlYktpdFdlYlZpZXcqLCB1aW50NjRfdCByZXNvdXJjZUlkZW50aWZpZXIpOwo=
</data>
<flag name="review"
          id="173666"
          type_id="1"
          status="+"
          setter="mrobinson"
    />
          </attachment>
      

    </bug>

</bugzilla>