<?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>31906</bug_id>
          
          <creation_ts>2009-11-26 01:50:00 -0800</creation_ts>
          <short_desc>Allow custom memory allocation control for classes of the rendering and storage directory in WebCore</short_desc>
          <delta_ts>2009-11-29 07:57:34 -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>WebCore Misc.</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Zoltan Horvath">zoltan</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>eric</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>166683</commentid>
    <comment_count>0</comment_count>
      <attachid>43910</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2009-11-26 01:50:00 -0800</bug_when>
    <thetext>Created attachment 43910
Patch

Reviewed by NOBODY (OOPS!).

Allow custom memory allocation control for classes of the rendering and storage directory in WebCore
https://bugs.webkit.org/show_bug.cgi?id=

Inherits the following classes from Noncopyable because these are instantiated
by &apos;new&apos; and no need to be copyable:

class/struct name               - instantiated at: WebCore/&apos;location&apos;

class SQLTransactionClient      - storage/DatabaseThread.cpp:45
class SQLTransactionCoordinator - storage/DatabaseThread.cpp:46
class OriginUsageRecord         - storage/OriginQuotaManager.cpp:66
class DatabaseTracker           - storage/DatabaseTracker.cpp:62
class ScrollbarTheme            - (its child class) rendering/RenderScrollbarTheme.cpp:35
class RenderSelectionInfoBase   - (its child class) rendering/RenderView.cpp:310
class RenderOverflow            - rendering/RenderBox.cpp:2846
struct FillLayer                - css/CSSStyleSelector.cpp:197

Inherits the following classes from FastAllocBase because these are instantiated by &apos;new&apos;:

struct ShadowData               - rendering/style/ShadowData.cpp:35
class CounterContent            - css/CSSStyleSelector.cpp:4111

* platform/ScrollbarTheme.h:
* rendering/RenderOverflow.h:
* rendering/RenderSelectionInfo.h:
* rendering/style/CounterContent.h:
* rendering/style/FillLayer.h:
* rendering/style/ShadowData.h:
* storage/DatabaseTracker.h:
* storage/OriginUsageRecord.h:
* storage/SQLTransactionClient.h:
* storage/SQLTransactionCoordinator.h:</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166805</commentid>
    <comment_count>1</comment_count>
      <attachid>43910</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-11-26 20:13:26 -0800</bug_when>
    <thetext>Comment on attachment 43910
Patch

Is ShadowData really copyable?  It seems the weak pointer would make it not.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166845</commentid>
    <comment_count>2</comment_count>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2009-11-26 23:49:23 -0800</bug_when>
    <thetext>There was a compile failed on MAC with Noncopyable ShadowData, compiler said that ShadowData is instantiated in an initialization list.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166847</commentid>
    <comment_count>3</comment_count>
      <attachid>43910</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2009-11-26 23:50:19 -0800</bug_when>
    <thetext>Comment on attachment 43910
Patch

&gt; Index: WebCore/ChangeLog
&gt; ===================================================================
&gt; --- WebCore/ChangeLog	(revision 51407)
&gt; +++ WebCore/ChangeLog	(working copy)
&gt; @@ -1,3 +1,40 @@
&gt; +2009-11-26  Zoltan Horvath  &lt;zoltan@webkit.org&gt;
&gt; +
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        Allow custom memory allocation control for classes of the rendering and storage directory in WebCore
&gt; +        https://bugs.webkit.org/show_bug.cgi?id=
&gt; +
&gt; +        Inherits the following classes from Noncopyable because these are instantiated
&gt; +        by &apos;new&apos; and no need to be copyable:
&gt; +
&gt; +        class/struct name               - instantiated at: WebCore/&apos;location&apos;
&gt; +
&gt; +        class SQLTransactionClient      - storage/DatabaseThread.cpp:45
&gt; +        class SQLTransactionCoordinator - storage/DatabaseThread.cpp:46
&gt; +        class OriginUsageRecord         - storage/OriginQuotaManager.cpp:66
&gt; +        class DatabaseTracker           - storage/DatabaseTracker.cpp:62
&gt; +        class ScrollbarTheme            - (its child class) rendering/RenderScrollbarTheme.cpp:35
&gt; +        class RenderSelectionInfoBase   - (its child class) rendering/RenderView.cpp:310
&gt; +        class RenderOverflow            - rendering/RenderBox.cpp:2846
&gt; +        struct FillLayer                - css/CSSStyleSelector.cpp:197
&gt; +
&gt; +        Inherits the following classes from FastAllocBase because these are instantiated by &apos;new&apos;:
&gt; +
&gt; +        struct ShadowData               - rendering/style/ShadowData.cpp:35
&gt; +        class CounterContent            - css/CSSStyleSelector.cpp:4111
&gt; +
&gt; +        * platform/ScrollbarTheme.h:
&gt; +        * rendering/RenderOverflow.h:
&gt; +        * rendering/RenderSelectionInfo.h:
&gt; +        * rendering/style/CounterContent.h:
&gt; +        * rendering/style/FillLayer.h:
&gt; +        * rendering/style/ShadowData.h:
&gt; +        * storage/DatabaseTracker.h:
&gt; +        * storage/OriginUsageRecord.h:
&gt; +        * storage/SQLTransactionClient.h:
&gt; +        * storage/SQLTransactionCoordinator.h:
&gt; +
&gt;  2009-11-26  SÃ¸ren Gjesse  &lt;sgjesse@chromium.org&gt;
&gt;  
&gt;          Reviewed by Pavel Feldman.
&gt; Index: WebCore/platform/ScrollbarTheme.h
&gt; ===================================================================
&gt; --- WebCore/platform/ScrollbarTheme.h	(revision 51407)
&gt; +++ WebCore/platform/ScrollbarTheme.h	(working copy)
&gt; @@ -36,7 +36,7 @@ class PlatformMouseEvent;
&gt;  class Scrollbar;
&gt;  class ScrollView;
&gt;  
&gt; -class ScrollbarTheme {
&gt; +class ScrollbarTheme : public Noncopyable {
&gt;  public:
&gt;      virtual ~ScrollbarTheme() {};
&gt;  
&gt; Index: WebCore/rendering/RenderOverflow.h
&gt; ===================================================================
&gt; --- WebCore/rendering/RenderOverflow.h	(revision 51407)
&gt; +++ WebCore/rendering/RenderOverflow.h	(working copy)
&gt; @@ -37,7 +37,7 @@ namespace WebCore
&gt;  // Examples of visual overflow are shadows, text stroke (and eventually outline and border-image).
&gt;  
&gt;  // This object is allocated only when some of these fields have non-default values in the owning box.
&gt; -class RenderOverflow {
&gt; +class RenderOverflow : public Noncopyable {
&gt;  public:
&gt;      RenderOverflow(const IntRect&amp; defaultRect = IntRect()) 
&gt;          : m_topLayoutOverflow(defaultRect.y())
&gt; Index: WebCore/rendering/RenderSelectionInfo.h
&gt; ===================================================================
&gt; --- WebCore/rendering/RenderSelectionInfo.h	(revision 51407)
&gt; +++ WebCore/rendering/RenderSelectionInfo.h	(working copy)
&gt; @@ -30,7 +30,7 @@
&gt;  
&gt;  namespace WebCore {
&gt;  
&gt; -class RenderSelectionInfoBase {
&gt; +class RenderSelectionInfoBase : public Noncopyable {
&gt;  public:
&gt;      RenderSelectionInfoBase()
&gt;          : m_object(0)
&gt; Index: WebCore/rendering/style/CounterContent.h
&gt; ===================================================================
&gt; --- WebCore/rendering/style/CounterContent.h	(revision 51407)
&gt; +++ WebCore/rendering/style/CounterContent.h	(working copy)
&gt; @@ -30,7 +30,7 @@
&gt;  
&gt;  namespace WebCore {
&gt;  
&gt; -class CounterContent {
&gt; +class CounterContent : public FastAllocBase {
&gt;  public:
&gt;      CounterContent(const AtomicString&amp; identifier, EListStyleType style, const AtomicString&amp; separator)
&gt;          : m_identifier(identifier)
&gt; Index: WebCore/rendering/style/FillLayer.h
&gt; ===================================================================
&gt; --- WebCore/rendering/style/FillLayer.h	(revision 51407)
&gt; +++ WebCore/rendering/style/FillLayer.h	(working copy)
&gt; @@ -59,7 +59,7 @@ struct FillSize {
&gt;      LengthSize size;
&gt;  };
&gt;  
&gt; -struct FillLayer {
&gt; +struct FillLayer : Noncopyable {
&gt;  public:
&gt;      FillLayer(EFillLayerType);
&gt;      ~FillLayer();
&gt; Index: WebCore/rendering/style/ShadowData.h
&gt; ===================================================================
&gt; --- WebCore/rendering/style/ShadowData.h	(revision 51407)
&gt; +++ WebCore/rendering/style/ShadowData.h	(working copy)
&gt; @@ -26,6 +26,7 @@
&gt;  #define ShadowData_h
&gt;  
&gt;  #include &quot;Color.h&quot;
&gt; +#include &lt;wtf/FastAllocBase.h&gt;
&gt;  
&gt;  namespace WebCore {
&gt;  
&gt; @@ -33,7 +34,7 @@ enum ShadowStyle { Normal, Inset };
&gt;  
&gt;  // This struct holds information about shadows for the text-shadow and box-shadow properties.
&gt;  
&gt; -struct ShadowData {
&gt; +struct ShadowData : FastAllocBase {
&gt;      ShadowData()
&gt;          : x(0)
&gt;          , y(0)
&gt; Index: WebCore/storage/DatabaseTracker.h
&gt; ===================================================================
&gt; --- WebCore/storage/DatabaseTracker.h	(revision 51407)
&gt; +++ WebCore/storage/DatabaseTracker.h	(working copy)
&gt; @@ -55,7 +55,7 @@ struct SecurityOriginHash;
&gt;  struct SecurityOriginTraits;
&gt;  #endif // !PLATFORM(CHROMIUM)
&gt;  
&gt; -class DatabaseTracker {
&gt; +class DatabaseTracker : public Noncopyable {
&gt;  public:
&gt;      static DatabaseTracker&amp; tracker();
&gt;  
&gt; Index: WebCore/storage/OriginUsageRecord.h
&gt; ===================================================================
&gt; --- WebCore/storage/OriginUsageRecord.h	(revision 51407)
&gt; +++ WebCore/storage/OriginUsageRecord.h	(working copy)
&gt; @@ -40,7 +40,7 @@ namespace WebCore {
&gt;  
&gt;  // Objects of this class can be used from multiple threads with external synchronization.
&gt;  // String arguments are also supposed to be deeply copied by the caller when necessary.
&gt; -class OriginUsageRecord {
&gt; +class OriginUsageRecord : public Noncopyable {
&gt;  public:
&gt;      OriginUsageRecord();
&gt;  
&gt; Index: WebCore/storage/SQLTransactionClient.h
&gt; ===================================================================
&gt; --- WebCore/storage/SQLTransactionClient.h	(revision 51407)
&gt; +++ WebCore/storage/SQLTransactionClient.h	(working copy)
&gt; @@ -31,13 +31,15 @@
&gt;  #ifndef SQLTransactionClient_h
&gt;  #define SQLTransactionClient_h
&gt;  
&gt; +#include &lt;wtf/Noncopyable.h&gt;
&gt; +
&gt;  namespace WebCore {
&gt;  
&gt;      class SQLTransaction;
&gt;  
&gt;      // A client to the SQLTransaction class. Allows SQLTransaction to notify interested
&gt;      // parties that certain things have happened in a transaction.
&gt; -    class SQLTransactionClient {
&gt; +    class SQLTransactionClient : public Noncopyable {
&gt;      public:
&gt;          void didCommitTransaction(SQLTransaction*);
&gt;          void didExecuteStatement(SQLTransaction*);
&gt; Index: WebCore/storage/SQLTransactionCoordinator.h
&gt; ===================================================================
&gt; --- WebCore/storage/SQLTransactionCoordinator.h	(revision 51407)
&gt; +++ WebCore/storage/SQLTransactionCoordinator.h	(working copy)
&gt; @@ -42,7 +42,7 @@ namespace WebCore {
&gt;  
&gt;      class SQLTransaction;
&gt;  
&gt; -    class SQLTransactionCoordinator {
&gt; +    class SQLTransactionCoordinator : public Noncopyable {
&gt;      public:
&gt;          void acquireLock(SQLTransaction*);
&gt;          void releaseLock(SQLTransaction*);</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166848</commentid>
    <comment_count>4</comment_count>
      <attachid>43910</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-11-26 23:52:38 -0800</bug_when>
    <thetext>Comment on attachment 43910
Patch

Rejecting patch 43910 from commit-queue.

Failed to run &quot;[&apos;WebKitTools/Scripts/build-webkit&apos;]&quot; exit_code: 1
Last 500 characters of output:
CommitQueue/WebCore/svg/SVGSVGElement.cpp -o /Users/eseidel/Projects/CommitQueue/WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/i386/SVGSVGElement.o
** BUILD FAILED **

The following build commands failed:
WebCore:
	Distributed-CompileC /Users/eseidel/Projects/CommitQueue/WebKitBuild/WebCore.build/Release/WebCore.build/Objects-normal/i386/FillLayer.o /Users/eseidel/Projects/CommitQueue/WebCore/rendering/style/FillLayer.cpp normal i386 c++ com.apple.compilers.gcc.4_2
(1 failure)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>166856</commentid>
    <comment_count>5</comment_count>
      <attachid>43936</attachid>
    <who name="Zoltan Horvath">zoltan</who>
    <bug_when>2009-11-27 00:07:24 -0800</bug_when>
    <thetext>Created attachment 43936
proposed patch

The problem with FillLayer is similar to the ShadowData problem. Unfortunately, my developer mac hardware failed, so I couldn&apos;t update the patch. Now i think it will be okay.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>167079</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-11-29 07:46:20 -0800</bug_when>
    <thetext>(In reply to comment #2)
&gt; There was a compile failed on MAC with Noncopyable ShadowData, compiler said
&gt; that ShadowData is instantiated in an initialization list.

Oh.  Well, that would be easy enough to fix using a constructor instead. :)  But OK.  In the future we could leave comments next to classes (FIXME&apos;s) where classes should be NonCopyable, but can&apos;t for reasons such as this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>167080</commentid>
    <comment_count>7</comment_count>
      <attachid>43936</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-11-29 07:46:54 -0800</bug_when>
    <thetext>Comment on attachment 43936
proposed patch

LGTM</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>167082</commentid>
    <comment_count>8</comment_count>
      <attachid>43936</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-11-29 07:57:27 -0800</bug_when>
    <thetext>Comment on attachment 43936
proposed patch

Clearing flags on attachment: 43936

Committed r51466: &lt;http://trac.webkit.org/changeset/51466&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>167083</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-11-29 07:57:34 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>43910</attachid>
            <date>2009-11-26 01:50:00 -0800</date>
            <delta_ts>2009-11-27 00:07:24 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>20091126104958.patch</filename>
            <type>text/plain</type>
            <size>7332</size>
            <attacher name="Zoltan Horvath">zoltan</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA1MTQwNykKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsNDAgQEAKKzIwMDktMTEtMjYgIFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtp
dC5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAg
QWxsb3cgY3VzdG9tIG1lbW9yeSBhbGxvY2F0aW9uIGNvbnRyb2wgZm9yIGNsYXNzZXMgb2YgdGhl
IHJlbmRlcmluZyBhbmQgc3RvcmFnZSBkaXJlY3RvcnkgaW4gV2ViQ29yZQorICAgICAgICBodHRw
czovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9CisKKyAgICAgICAgSW5oZXJpdHMg
dGhlIGZvbGxvd2luZyBjbGFzc2VzIGZyb20gTm9uY29weWFibGUgYmVjYXVzZSB0aGVzZSBhcmUg
aW5zdGFudGlhdGVkCisgICAgICAgIGJ5ICduZXcnIGFuZCBubyBuZWVkIHRvIGJlIGNvcHlhYmxl
OgorCisgICAgICAgIGNsYXNzL3N0cnVjdCBuYW1lICAgICAgICAgICAgICAgLSBpbnN0YW50aWF0
ZWQgYXQ6IFdlYkNvcmUvJ2xvY2F0aW9uJworCisgICAgICAgIGNsYXNzIFNRTFRyYW5zYWN0aW9u
Q2xpZW50ICAgICAgLSBzdG9yYWdlL0RhdGFiYXNlVGhyZWFkLmNwcDo0NQorICAgICAgICBjbGFz
cyBTUUxUcmFuc2FjdGlvbkNvb3JkaW5hdG9yIC0gc3RvcmFnZS9EYXRhYmFzZVRocmVhZC5jcHA6
NDYKKyAgICAgICAgY2xhc3MgT3JpZ2luVXNhZ2VSZWNvcmQgICAgICAgICAtIHN0b3JhZ2UvT3Jp
Z2luUXVvdGFNYW5hZ2VyLmNwcDo2NgorICAgICAgICBjbGFzcyBEYXRhYmFzZVRyYWNrZXIgICAg
ICAgICAgIC0gc3RvcmFnZS9EYXRhYmFzZVRyYWNrZXIuY3BwOjYyCisgICAgICAgIGNsYXNzIFNj
cm9sbGJhclRoZW1lICAgICAgICAgICAgLSAoaXRzIGNoaWxkIGNsYXNzKSByZW5kZXJpbmcvUmVu
ZGVyU2Nyb2xsYmFyVGhlbWUuY3BwOjM1CisgICAgICAgIGNsYXNzIFJlbmRlclNlbGVjdGlvbklu
Zm9CYXNlICAgLSAoaXRzIGNoaWxkIGNsYXNzKSByZW5kZXJpbmcvUmVuZGVyVmlldy5jcHA6MzEw
CisgICAgICAgIGNsYXNzIFJlbmRlck92ZXJmbG93ICAgICAgICAgICAgLSByZW5kZXJpbmcvUmVu
ZGVyQm94LmNwcDoyODQ2CisgICAgICAgIHN0cnVjdCBGaWxsTGF5ZXIgICAgICAgICAgICAgICAg
LSBjc3MvQ1NTU3R5bGVTZWxlY3Rvci5jcHA6MTk3CisKKyAgICAgICAgSW5oZXJpdHMgdGhlIGZv
bGxvd2luZyBjbGFzc2VzIGZyb20gRmFzdEFsbG9jQmFzZSBiZWNhdXNlIHRoZXNlIGFyZSBpbnN0
YW50aWF0ZWQgYnkgJ25ldyc6CisKKyAgICAgICAgc3RydWN0IFNoYWRvd0RhdGEgICAgICAgICAg
ICAgICAtIHJlbmRlcmluZy9zdHlsZS9TaGFkb3dEYXRhLmNwcDozNQorICAgICAgICBjbGFzcyBD
b3VudGVyQ29udGVudCAgICAgICAgICAgIC0gY3NzL0NTU1N0eWxlU2VsZWN0b3IuY3BwOjQxMTEK
KworICAgICAgICAqIHBsYXRmb3JtL1Njcm9sbGJhclRoZW1lLmg6CisgICAgICAgICogcmVuZGVy
aW5nL1JlbmRlck92ZXJmbG93Lmg6CisgICAgICAgICogcmVuZGVyaW5nL1JlbmRlclNlbGVjdGlv
bkluZm8uaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5bGUvQ291bnRlckNvbnRlbnQuaDoKKyAg
ICAgICAgKiByZW5kZXJpbmcvc3R5bGUvRmlsbExheWVyLmg6CisgICAgICAgICogcmVuZGVyaW5n
L3N0eWxlL1NoYWRvd0RhdGEuaDoKKyAgICAgICAgKiBzdG9yYWdlL0RhdGFiYXNlVHJhY2tlci5o
OgorICAgICAgICAqIHN0b3JhZ2UvT3JpZ2luVXNhZ2VSZWNvcmQuaDoKKyAgICAgICAgKiBzdG9y
YWdlL1NRTFRyYW5zYWN0aW9uQ2xpZW50Lmg6CisgICAgICAgICogc3RvcmFnZS9TUUxUcmFuc2Fj
dGlvbkNvb3JkaW5hdG9yLmg6CisKIDIwMDktMTEtMjYgIFPDuHJlbiBHamVzc2UgIDxzZ2plc3Nl
QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBQYXZlbCBGZWxkbWFuLgpJbmRl
eDogV2ViQ29yZS9wbGF0Zm9ybS9TY3JvbGxiYXJUaGVtZS5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcGxhdGZvcm0vU2Nyb2xsYmFyVGhlbWUuaAkocmV2aXNpb24gNTE0MDcpCisrKyBXZWJDb3Jl
L3BsYXRmb3JtL1Njcm9sbGJhclRoZW1lLmgJKHdvcmtpbmcgY29weSkKQEAgLTM2LDcgKzM2LDcg
QEAgY2xhc3MgUGxhdGZvcm1Nb3VzZUV2ZW50OwogY2xhc3MgU2Nyb2xsYmFyOwogY2xhc3MgU2Ny
b2xsVmlldzsKIAotY2xhc3MgU2Nyb2xsYmFyVGhlbWUgeworY2xhc3MgU2Nyb2xsYmFyVGhlbWUg
OiBwdWJsaWMgTm9uY29weWFibGUgewogcHVibGljOgogICAgIHZpcnR1YWwgflNjcm9sbGJhclRo
ZW1lKCkge307CiAKSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck92ZXJmbG93LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT3ZlcmZsb3cuaAkocmV2aXNpb24g
NTE0MDcpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPdmVyZmxvdy5oCSh3b3JraW5nIGNv
cHkpCkBAIC0zNyw3ICszNyw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlCiAvLyBFeGFtcGxlcyBvZiB2
aXN1YWwgb3ZlcmZsb3cgYXJlIHNoYWRvd3MsIHRleHQgc3Ryb2tlIChhbmQgZXZlbnR1YWxseSBv
dXRsaW5lIGFuZCBib3JkZXItaW1hZ2UpLgogCiAvLyBUaGlzIG9iamVjdCBpcyBhbGxvY2F0ZWQg
b25seSB3aGVuIHNvbWUgb2YgdGhlc2UgZmllbGRzIGhhdmUgbm9uLWRlZmF1bHQgdmFsdWVzIGlu
IHRoZSBvd25pbmcgYm94LgotY2xhc3MgUmVuZGVyT3ZlcmZsb3cgeworY2xhc3MgUmVuZGVyT3Zl
cmZsb3cgOiBwdWJsaWMgTm9uY29weWFibGUgewogcHVibGljOgogICAgIFJlbmRlck92ZXJmbG93
KGNvbnN0IEludFJlY3QmIGRlZmF1bHRSZWN0ID0gSW50UmVjdCgpKSAKICAgICAgICAgOiBtX3Rv
cExheW91dE92ZXJmbG93KGRlZmF1bHRSZWN0LnkoKSkKSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5n
L1JlbmRlclNlbGVjdGlvbkluZm8uaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9S
ZW5kZXJTZWxlY3Rpb25JbmZvLmgJKHJldmlzaW9uIDUxNDA3KQorKysgV2ViQ29yZS9yZW5kZXJp
bmcvUmVuZGVyU2VsZWN0aW9uSW5mby5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMCw3ICszMCw3IEBA
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgUmVuZGVyU2VsZWN0aW9uSW5mb0Jhc2Ug
eworY2xhc3MgUmVuZGVyU2VsZWN0aW9uSW5mb0Jhc2UgOiBwdWJsaWMgTm9uY29weWFibGUgewog
cHVibGljOgogICAgIFJlbmRlclNlbGVjdGlvbkluZm9CYXNlKCkKICAgICAgICAgOiBtX29iamVj
dCgwKQpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvQ291bnRlckNvbnRlbnQuaAo9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Db3VudGVyQ29udGVudC5oCShyZXZp
c2lvbiA1MTQwNykKKysrIFdlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0NvdW50ZXJDb250ZW50LmgJ
KHdvcmtpbmcgY29weSkKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNlIFdlYkNvcmUgewog
Ci1jbGFzcyBDb3VudGVyQ29udGVudCB7CitjbGFzcyBDb3VudGVyQ29udGVudCA6IHB1YmxpYyBG
YXN0QWxsb2NCYXNlIHsKIHB1YmxpYzoKICAgICBDb3VudGVyQ29udGVudChjb25zdCBBdG9taWNT
dHJpbmcmIGlkZW50aWZpZXIsIEVMaXN0U3R5bGVUeXBlIHN0eWxlLCBjb25zdCBBdG9taWNTdHJp
bmcmIHNlcGFyYXRvcikKICAgICAgICAgOiBtX2lkZW50aWZpZXIoaWRlbnRpZmllcikKSW5kZXg6
IFdlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0ZpbGxMYXllci5oCj09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL0ZpbGxMYXllci5oCShyZXZpc2lvbiA1MTQwNykKKysrIFdlYkNv
cmUvcmVuZGVyaW5nL3N0eWxlL0ZpbGxMYXllci5oCSh3b3JraW5nIGNvcHkpCkBAIC01OSw3ICs1
OSw3IEBAIHN0cnVjdCBGaWxsU2l6ZSB7CiAgICAgTGVuZ3RoU2l6ZSBzaXplOwogfTsKIAotc3Ry
dWN0IEZpbGxMYXllciB7CitzdHJ1Y3QgRmlsbExheWVyIDogTm9uY29weWFibGUgewogcHVibGlj
OgogICAgIEZpbGxMYXllcihFRmlsbExheWVyVHlwZSk7CiAgICAgfkZpbGxMYXllcigpOwpJbmRl
eDogV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU2hhZG93RGF0YS5oCj09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdl
YkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NoYWRvd0RhdGEuaAkocmV2aXNpb24gNTE0MDcpCisrKyBX
ZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TaGFkb3dEYXRhLmgJKHdvcmtpbmcgY29weSkKQEAgLTI2
LDYgKzI2LDcgQEAKICNkZWZpbmUgU2hhZG93RGF0YV9oCiAKICNpbmNsdWRlICJDb2xvci5oIgor
I2luY2x1ZGUgPHd0Zi9GYXN0QWxsb2NCYXNlLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApA
QCAtMzMsNyArMzQsNyBAQCBlbnVtIFNoYWRvd1N0eWxlIHsgTm9ybWFsLCBJbnNldCB9OwogCiAv
LyBUaGlzIHN0cnVjdCBob2xkcyBpbmZvcm1hdGlvbiBhYm91dCBzaGFkb3dzIGZvciB0aGUgdGV4
dC1zaGFkb3cgYW5kIGJveC1zaGFkb3cgcHJvcGVydGllcy4KIAotc3RydWN0IFNoYWRvd0RhdGEg
eworc3RydWN0IFNoYWRvd0RhdGEgOiBGYXN0QWxsb2NCYXNlIHsKICAgICBTaGFkb3dEYXRhKCkK
ICAgICAgICAgOiB4KDApCiAgICAgICAgICwgeSgwKQpJbmRleDogV2ViQ29yZS9zdG9yYWdlL0Rh
dGFiYXNlVHJhY2tlci5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvc3RvcmFnZS9EYXRhYmFzZVRy
YWNrZXIuaAkocmV2aXNpb24gNTE0MDcpCisrKyBXZWJDb3JlL3N0b3JhZ2UvRGF0YWJhc2VUcmFj
a2VyLmgJKHdvcmtpbmcgY29weSkKQEAgLTU1LDcgKzU1LDcgQEAgc3RydWN0IFNlY3VyaXR5T3Jp
Z2luSGFzaDsKIHN0cnVjdCBTZWN1cml0eU9yaWdpblRyYWl0czsKICNlbmRpZiAvLyAhUExBVEZP
Uk0oQ0hST01JVU0pCiAKLWNsYXNzIERhdGFiYXNlVHJhY2tlciB7CitjbGFzcyBEYXRhYmFzZVRy
YWNrZXIgOiBwdWJsaWMgTm9uY29weWFibGUgewogcHVibGljOgogICAgIHN0YXRpYyBEYXRhYmFz
ZVRyYWNrZXImIHRyYWNrZXIoKTsKIApJbmRleDogV2ViQ29yZS9zdG9yYWdlL09yaWdpblVzYWdl
UmVjb3JkLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdG9yYWdlL09yaWdpblVzYWdlUmVjb3Jk
LmgJKHJldmlzaW9uIDUxNDA3KQorKysgV2ViQ29yZS9zdG9yYWdlL09yaWdpblVzYWdlUmVjb3Jk
LmgJKHdvcmtpbmcgY29weSkKQEAgLTQwLDcgKzQwLDcgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewog
CiAvLyBPYmplY3RzIG9mIHRoaXMgY2xhc3MgY2FuIGJlIHVzZWQgZnJvbSBtdWx0aXBsZSB0aHJl
YWRzIHdpdGggZXh0ZXJuYWwgc3luY2hyb25pemF0aW9uLgogLy8gU3RyaW5nIGFyZ3VtZW50cyBh
cmUgYWxzbyBzdXBwb3NlZCB0byBiZSBkZWVwbHkgY29waWVkIGJ5IHRoZSBjYWxsZXIgd2hlbiBu
ZWNlc3NhcnkuCi1jbGFzcyBPcmlnaW5Vc2FnZVJlY29yZCB7CitjbGFzcyBPcmlnaW5Vc2FnZVJl
Y29yZCA6IHB1YmxpYyBOb25jb3B5YWJsZSB7CiBwdWJsaWM6CiAgICAgT3JpZ2luVXNhZ2VSZWNv
cmQoKTsKIApJbmRleDogV2ViQ29yZS9zdG9yYWdlL1NRTFRyYW5zYWN0aW9uQ2xpZW50LmgKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gV2ViQ29yZS9zdG9yYWdlL1NRTFRyYW5zYWN0aW9uQ2xpZW50LmgJKHJldmlz
aW9uIDUxNDA3KQorKysgV2ViQ29yZS9zdG9yYWdlL1NRTFRyYW5zYWN0aW9uQ2xpZW50LmgJKHdv
cmtpbmcgY29weSkKQEAgLTMxLDEzICszMSwxNSBAQAogI2lmbmRlZiBTUUxUcmFuc2FjdGlvbkNs
aWVudF9oCiAjZGVmaW5lIFNRTFRyYW5zYWN0aW9uQ2xpZW50X2gKIAorI2luY2x1ZGUgPHd0Zi9O
b25jb3B5YWJsZS5oPgorCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKICAgICBjbGFzcyBTUUxUcmFu
c2FjdGlvbjsKIAogICAgIC8vIEEgY2xpZW50IHRvIHRoZSBTUUxUcmFuc2FjdGlvbiBjbGFzcy4g
QWxsb3dzIFNRTFRyYW5zYWN0aW9uIHRvIG5vdGlmeSBpbnRlcmVzdGVkCiAgICAgLy8gcGFydGll
cyB0aGF0IGNlcnRhaW4gdGhpbmdzIGhhdmUgaGFwcGVuZWQgaW4gYSB0cmFuc2FjdGlvbi4KLSAg
ICBjbGFzcyBTUUxUcmFuc2FjdGlvbkNsaWVudCB7CisgICAgY2xhc3MgU1FMVHJhbnNhY3Rpb25D
bGllbnQgOiBwdWJsaWMgTm9uY29weWFibGUgewogICAgIHB1YmxpYzoKICAgICAgICAgdm9pZCBk
aWRDb21taXRUcmFuc2FjdGlvbihTUUxUcmFuc2FjdGlvbiopOwogICAgICAgICB2b2lkIGRpZEV4
ZWN1dGVTdGF0ZW1lbnQoU1FMVHJhbnNhY3Rpb24qKTsKSW5kZXg6IFdlYkNvcmUvc3RvcmFnZS9T
UUxUcmFuc2FjdGlvbkNvb3JkaW5hdG9yLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9zdG9yYWdl
L1NRTFRyYW5zYWN0aW9uQ29vcmRpbmF0b3IuaAkocmV2aXNpb24gNTE0MDcpCisrKyBXZWJDb3Jl
L3N0b3JhZ2UvU1FMVHJhbnNhY3Rpb25Db29yZGluYXRvci5oCSh3b3JraW5nIGNvcHkpCkBAIC00
Miw3ICs0Miw3IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogICAgIGNsYXNzIFNRTFRyYW5zYWN0
aW9uOwogCi0gICAgY2xhc3MgU1FMVHJhbnNhY3Rpb25Db29yZGluYXRvciB7CisgICAgY2xhc3Mg
U1FMVHJhbnNhY3Rpb25Db29yZGluYXRvciA6IHB1YmxpYyBOb25jb3B5YWJsZSB7CiAgICAgcHVi
bGljOgogICAgICAgICB2b2lkIGFjcXVpcmVMb2NrKFNRTFRyYW5zYWN0aW9uKik7CiAgICAgICAg
IHZvaWQgcmVsZWFzZUxvY2soU1FMVHJhbnNhY3Rpb24qKTsK
</data>
<flag name="review"
          id="25654"
          type_id="1"
          status="+"
          setter="eric"
    />
    <flag name="commit-queue"
          id="25686"
          type_id="3"
          status="-"
          setter="commit-queue"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>43936</attachid>
            <date>2009-11-27 00:07:24 -0800</date>
            <delta_ts>2009-11-29 07:57:27 -0800</delta_ts>
            <desc>proposed patch</desc>
            <filename>csut.patch</filename>
            <type>text/plain</type>
            <size>7174</size>
            <attacher name="Zoltan Horvath">zoltan</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvc3RvcmFnZS9TUUxUcmFuc2FjdGlvbkNsaWVudC5oCj09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0K
LS0tIFdlYkNvcmUvc3RvcmFnZS9TUUxUcmFuc2FjdGlvbkNsaWVudC5oCShyZXZpc2lvbiA1MTQy
OSkKKysrIFdlYkNvcmUvc3RvcmFnZS9TUUxUcmFuc2FjdGlvbkNsaWVudC5oCSh3b3JraW5nIGNv
cHkpCkBAIC0zMSwxMyArMzEsMTUgQEAKICNpZm5kZWYgU1FMVHJhbnNhY3Rpb25DbGllbnRfaAog
I2RlZmluZSBTUUxUcmFuc2FjdGlvbkNsaWVudF9oCiAKKyNpbmNsdWRlIDx3dGYvTm9uY29weWFi
bGUuaD4KKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiAgICAgY2xhc3MgU1FMVHJhbnNhY3Rpb247
CiAKICAgICAvLyBBIGNsaWVudCB0byB0aGUgU1FMVHJhbnNhY3Rpb24gY2xhc3MuIEFsbG93cyBT
UUxUcmFuc2FjdGlvbiB0byBub3RpZnkgaW50ZXJlc3RlZAogICAgIC8vIHBhcnRpZXMgdGhhdCBj
ZXJ0YWluIHRoaW5ncyBoYXZlIGhhcHBlbmVkIGluIGEgdHJhbnNhY3Rpb24uCi0gICAgY2xhc3Mg
U1FMVHJhbnNhY3Rpb25DbGllbnQgeworICAgIGNsYXNzIFNRTFRyYW5zYWN0aW9uQ2xpZW50IDog
cHVibGljIE5vbmNvcHlhYmxlIHsKICAgICBwdWJsaWM6CiAgICAgICAgIHZvaWQgZGlkQ29tbWl0
VHJhbnNhY3Rpb24oU1FMVHJhbnNhY3Rpb24qKTsKICAgICAgICAgdm9pZCBkaWRFeGVjdXRlU3Rh
dGVtZW50KFNRTFRyYW5zYWN0aW9uKik7CkluZGV4OiBXZWJDb3JlL3N0b3JhZ2UvT3JpZ2luVXNh
Z2VSZWNvcmQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N0b3JhZ2UvT3JpZ2luVXNhZ2VSZWNv
cmQuaAkocmV2aXNpb24gNTE0MjkpCisrKyBXZWJDb3JlL3N0b3JhZ2UvT3JpZ2luVXNhZ2VSZWNv
cmQuaAkod29ya2luZyBjb3B5KQpAQCAtNDAsNyArNDAsNyBAQAogCiAvLyBPYmplY3RzIG9mIHRo
aXMgY2xhc3MgY2FuIGJlIHVzZWQgZnJvbSBtdWx0aXBsZSB0aHJlYWRzIHdpdGggZXh0ZXJuYWwg
c3luY2hyb25pemF0aW9uLgogLy8gU3RyaW5nIGFyZ3VtZW50cyBhcmUgYWxzbyBzdXBwb3NlZCB0
byBiZSBkZWVwbHkgY29waWVkIGJ5IHRoZSBjYWxsZXIgd2hlbiBuZWNlc3NhcnkuCi1jbGFzcyBP
cmlnaW5Vc2FnZVJlY29yZCB7CitjbGFzcyBPcmlnaW5Vc2FnZVJlY29yZCA6IHB1YmxpYyBOb25j
b3B5YWJsZSB7CiBwdWJsaWM6CiAgICAgT3JpZ2luVXNhZ2VSZWNvcmQoKTsKIApJbmRleDogV2Vi
Q29yZS9zdG9yYWdlL1NRTFRyYW5zYWN0aW9uQ29vcmRpbmF0b3IuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBX
ZWJDb3JlL3N0b3JhZ2UvU1FMVHJhbnNhY3Rpb25Db29yZGluYXRvci5oCShyZXZpc2lvbiA1MTQy
OSkKKysrIFdlYkNvcmUvc3RvcmFnZS9TUUxUcmFuc2FjdGlvbkNvb3JkaW5hdG9yLmgJKHdvcmtp
bmcgY29weSkKQEAgLTQyLDcgKzQyLDcgQEAKIAogICAgIGNsYXNzIFNRTFRyYW5zYWN0aW9uOwog
Ci0gICAgY2xhc3MgU1FMVHJhbnNhY3Rpb25Db29yZGluYXRvciB7CisgICAgY2xhc3MgU1FMVHJh
bnNhY3Rpb25Db29yZGluYXRvciA6IHB1YmxpYyBOb25jb3B5YWJsZSB7CiAgICAgcHVibGljOgog
ICAgICAgICB2b2lkIGFjcXVpcmVMb2NrKFNRTFRyYW5zYWN0aW9uKik7CiAgICAgICAgIHZvaWQg
cmVsZWFzZUxvY2soU1FMVHJhbnNhY3Rpb24qKTsKSW5kZXg6IFdlYkNvcmUvc3RvcmFnZS9EYXRh
YmFzZVRyYWNrZXIuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3N0b3JhZ2UvRGF0YWJhc2VUcmFj
a2VyLmgJKHJldmlzaW9uIDUxNDI5KQorKysgV2ViQ29yZS9zdG9yYWdlL0RhdGFiYXNlVHJhY2tl
ci5oCSh3b3JraW5nIGNvcHkpCkBAIC01NSw3ICs1NSw3IEBACiBzdHJ1Y3QgU2VjdXJpdHlPcmln
aW5UcmFpdHM7CiAjZW5kaWYgLy8gIVBMQVRGT1JNKENIUk9NSVVNKQogCi1jbGFzcyBEYXRhYmFz
ZVRyYWNrZXIgeworY2xhc3MgRGF0YWJhc2VUcmFja2VyIDogcHVibGljIE5vbmNvcHlhYmxlIHsK
IHB1YmxpYzoKICAgICBzdGF0aWMgRGF0YWJhc2VUcmFja2VyJiB0cmFja2VyKCk7CiAKSW5kZXg6
IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9nCShyZXZp
c2lvbiA1MTQyOSkKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMg
KzEsNDAgQEAKKzIwMDktMTEtMjYgIFpvbHRhbiBIb3J2YXRoICA8em9sdGFuQHdlYmtpdC5vcmc+
CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgRXJpYyBTZWlkZWwuCisKKyAgICAgICAgQWxsb3cgY3Vz
dG9tIG1lbW9yeSBhbGxvY2F0aW9uIGNvbnRyb2wgZm9yIGNsYXNzZXMgb2YgdGhlIHJlbmRlcmlu
ZyBhbmQgc3RvcmFnZSBkaXJlY3RvcnkgaW4gV2ViQ29yZQorICAgICAgICBodHRwczovL2J1Z3Mu
d2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzE5MDYKKworICAgICAgICBJbmhlcml0cyB0aGUg
Zm9sbG93aW5nIGNsYXNzZXMgZnJvbSBOb25jb3B5YWJsZSBiZWNhdXNlIHRoZXNlIGFyZSBpbnN0
YW50aWF0ZWQKKyAgICAgICAgYnkgJ25ldycgYW5kIG5vIG5lZWQgdG8gYmUgY29weWFibGU6CisK
KyAgICAgICAgY2xhc3Mvc3RydWN0IG5hbWUgICAgICAgICAgICAgICAtIGluc3RhbnRpYXRlZCBh
dDogV2ViQ29yZS8nbG9jYXRpb24nCisKKyAgICAgICAgY2xhc3MgU1FMVHJhbnNhY3Rpb25DbGll
bnQgICAgICAtIHN0b3JhZ2UvRGF0YWJhc2VUaHJlYWQuY3BwOjQ1CisgICAgICAgIGNsYXNzIFNR
TFRyYW5zYWN0aW9uQ29vcmRpbmF0b3IgLSBzdG9yYWdlL0RhdGFiYXNlVGhyZWFkLmNwcDo0Ngor
ICAgICAgICBjbGFzcyBPcmlnaW5Vc2FnZVJlY29yZCAgICAgICAgIC0gc3RvcmFnZS9PcmlnaW5R
dW90YU1hbmFnZXIuY3BwOjY2CisgICAgICAgIGNsYXNzIERhdGFiYXNlVHJhY2tlciAgICAgICAg
ICAgLSBzdG9yYWdlL0RhdGFiYXNlVHJhY2tlci5jcHA6NjIKKyAgICAgICAgY2xhc3MgU2Nyb2xs
YmFyVGhlbWUgICAgICAgICAgICAtIChpdHMgY2hpbGQgY2xhc3MpIHJlbmRlcmluZy9SZW5kZXJT
Y3JvbGxiYXJUaGVtZS5jcHA6MzUKKyAgICAgICAgY2xhc3MgUmVuZGVyU2VsZWN0aW9uSW5mb0Jh
c2UgICAtIChpdHMgY2hpbGQgY2xhc3MpIHJlbmRlcmluZy9SZW5kZXJWaWV3LmNwcDozMTAKKyAg
ICAgICAgY2xhc3MgUmVuZGVyT3ZlcmZsb3cgICAgICAgICAgICAtIHJlbmRlcmluZy9SZW5kZXJC
b3guY3BwOjI4NDYKKworICAgICAgICBJbmhlcml0cyB0aGUgZm9sbG93aW5nIGNsYXNzZXMgZnJv
bSBGYXN0QWxsb2NCYXNlIGJlY2F1c2UgdGhlc2UgYXJlIGluc3RhbnRpYXRlZCBieSAnbmV3JzoK
KworICAgICAgICBzdHJ1Y3QgRmlsbExheWVyICAgICAgICAgICAgICAgIC0gY3NzL0NTU1N0eWxl
U2VsZWN0b3IuY3BwOjE5NworICAgICAgICBzdHJ1Y3QgU2hhZG93RGF0YSAgICAgICAgICAgICAg
IC0gcmVuZGVyaW5nL3N0eWxlL1NoYWRvd0RhdGEuY3BwOjM1CisgICAgICAgIGNsYXNzIENvdW50
ZXJDb250ZW50ICAgICAgICAgICAgLSBjc3MvQ1NTU3R5bGVTZWxlY3Rvci5jcHA6NDExMQorCisg
ICAgICAgICogcGxhdGZvcm0vU2Nyb2xsYmFyVGhlbWUuaDoKKyAgICAgICAgKiByZW5kZXJpbmcv
UmVuZGVyT3ZlcmZsb3cuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvUmVuZGVyU2VsZWN0aW9uSW5m
by5oOgorICAgICAgICAqIHJlbmRlcmluZy9zdHlsZS9Db3VudGVyQ29udGVudC5oOgorICAgICAg
ICAqIHJlbmRlcmluZy9zdHlsZS9GaWxsTGF5ZXIuaDoKKyAgICAgICAgKiByZW5kZXJpbmcvc3R5
bGUvU2hhZG93RGF0YS5oOgorICAgICAgICAqIHN0b3JhZ2UvRGF0YWJhc2VUcmFja2VyLmg6Cisg
ICAgICAgICogc3RvcmFnZS9PcmlnaW5Vc2FnZVJlY29yZC5oOgorICAgICAgICAqIHN0b3JhZ2Uv
U1FMVHJhbnNhY3Rpb25DbGllbnQuaDoKKyAgICAgICAgKiBzdG9yYWdlL1NRTFRyYW5zYWN0aW9u
Q29vcmRpbmF0b3IuaDoKKwogMjAwOS0xMS0yNiAgU2hpbmljaGlybyBIYW1hamkgIDxoYW1hamlA
Y2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhbiBCZXJuc3RlaW4uCkluZGV4
OiBXZWJDb3JlL3BsYXRmb3JtL1Njcm9sbGJhclRoZW1lLmgKPT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29y
ZS9wbGF0Zm9ybS9TY3JvbGxiYXJUaGVtZS5oCShyZXZpc2lvbiA1MTQyOSkKKysrIFdlYkNvcmUv
cGxhdGZvcm0vU2Nyb2xsYmFyVGhlbWUuaAkod29ya2luZyBjb3B5KQpAQCAtMzYsNyArMzYsNyBA
QAogY2xhc3MgU2Nyb2xsYmFyOwogY2xhc3MgU2Nyb2xsVmlldzsKIAotY2xhc3MgU2Nyb2xsYmFy
VGhlbWUgeworY2xhc3MgU2Nyb2xsYmFyVGhlbWUgOiBwdWJsaWMgTm9uY29weWFibGUgewogcHVi
bGljOgogICAgIHZpcnR1YWwgflNjcm9sbGJhclRoZW1lKCkge307CiAKSW5kZXg6IFdlYkNvcmUv
cmVuZGVyaW5nL1JlbmRlclNlbGVjdGlvbkluZm8uaAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3Jl
bmRlcmluZy9SZW5kZXJTZWxlY3Rpb25JbmZvLmgJKHJldmlzaW9uIDUxNDI5KQorKysgV2ViQ29y
ZS9yZW5kZXJpbmcvUmVuZGVyU2VsZWN0aW9uSW5mby5oCSh3b3JraW5nIGNvcHkpCkBAIC0zMCw3
ICszMCw3IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotY2xhc3MgUmVuZGVyU2VsZWN0aW9u
SW5mb0Jhc2UgeworY2xhc3MgUmVuZGVyU2VsZWN0aW9uSW5mb0Jhc2UgOiBwdWJsaWMgTm9uY29w
eWFibGUgewogcHVibGljOgogICAgIFJlbmRlclNlbGVjdGlvbkluZm9CYXNlKCkKICAgICAgICAg
OiBtX29iamVjdCgwKQpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvUmVuZGVyT3ZlcmZsb3cuaAo9
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9SZW5kZXJPdmVyZmxvdy5oCShyZXZpc2lv
biA1MTQyOSkKKysrIFdlYkNvcmUvcmVuZGVyaW5nL1JlbmRlck92ZXJmbG93LmgJKHdvcmtpbmcg
Y29weSkKQEAgLTM3LDcgKzM3LDcgQEAKIC8vIEV4YW1wbGVzIG9mIHZpc3VhbCBvdmVyZmxvdyBh
cmUgc2hhZG93cywgdGV4dCBzdHJva2UgKGFuZCBldmVudHVhbGx5IG91dGxpbmUgYW5kIGJvcmRl
ci1pbWFnZSkuCiAKIC8vIFRoaXMgb2JqZWN0IGlzIGFsbG9jYXRlZCBvbmx5IHdoZW4gc29tZSBv
ZiB0aGVzZSBmaWVsZHMgaGF2ZSBub24tZGVmYXVsdCB2YWx1ZXMgaW4gdGhlIG93bmluZyBib3gu
Ci1jbGFzcyBSZW5kZXJPdmVyZmxvdyB7CitjbGFzcyBSZW5kZXJPdmVyZmxvdyA6IHB1YmxpYyBO
b25jb3B5YWJsZSB7CiBwdWJsaWM6CiAgICAgUmVuZGVyT3ZlcmZsb3coY29uc3QgSW50UmVjdCYg
ZGVmYXVsdFJlY3QgPSBJbnRSZWN0KCkpIAogICAgICAgICA6IG1fdG9wTGF5b3V0T3ZlcmZsb3co
ZGVmYXVsdFJlY3QueSgpKQpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvU2hhZG93RGF0
YS5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL1NoYWRvd0RhdGEuaAko
cmV2aXNpb24gNTE0MjkpCisrKyBXZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9TaGFkb3dEYXRhLmgJ
KHdvcmtpbmcgY29weSkKQEAgLTI2LDYgKzI2LDcgQEAKICNkZWZpbmUgU2hhZG93RGF0YV9oCiAK
ICNpbmNsdWRlICJDb2xvci5oIgorI2luY2x1ZGUgPHd0Zi9GYXN0QWxsb2NCYXNlLmg+CiAKIG5h
bWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtMzMsNyArMzQsNyBAQAogCiAvLyBUaGlzIHN0cnVjdCBo
b2xkcyBpbmZvcm1hdGlvbiBhYm91dCBzaGFkb3dzIGZvciB0aGUgdGV4dC1zaGFkb3cgYW5kIGJv
eC1zaGFkb3cgcHJvcGVydGllcy4KIAotc3RydWN0IFNoYWRvd0RhdGEgeworc3RydWN0IFNoYWRv
d0RhdGEgOiBGYXN0QWxsb2NCYXNlIHsKICAgICBTaGFkb3dEYXRhKCkKICAgICAgICAgOiB4KDAp
CiAgICAgICAgICwgeSgwKQpJbmRleDogV2ViQ29yZS9yZW5kZXJpbmcvc3R5bGUvQ291bnRlckNv
bnRlbnQuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL3JlbmRlcmluZy9zdHlsZS9Db3VudGVyQ29u
dGVudC5oCShyZXZpc2lvbiA1MTQyOSkKKysrIFdlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0NvdW50
ZXJDb250ZW50LmgJKHdvcmtpbmcgY29weSkKQEAgLTMwLDcgKzMwLDcgQEAKIAogbmFtZXNwYWNl
IFdlYkNvcmUgewogCi1jbGFzcyBDb3VudGVyQ29udGVudCB7CitjbGFzcyBDb3VudGVyQ29udGVu
dCA6IHB1YmxpYyBGYXN0QWxsb2NCYXNlIHsKIHB1YmxpYzoKICAgICBDb3VudGVyQ29udGVudChj
b25zdCBBdG9taWNTdHJpbmcmIGlkZW50aWZpZXIsIEVMaXN0U3R5bGVUeXBlIHN0eWxlLCBjb25z
dCBBdG9taWNTdHJpbmcmIHNlcGFyYXRvcikKICAgICAgICAgOiBtX2lkZW50aWZpZXIoaWRlbnRp
ZmllcikKSW5kZXg6IFdlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0ZpbGxMYXllci5oCj09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT0KLS0tIFdlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0ZpbGxMYXllci5oCShyZXZpc2lvbiA1MTQy
OSkKKysrIFdlYkNvcmUvcmVuZGVyaW5nL3N0eWxlL0ZpbGxMYXllci5oCSh3b3JraW5nIGNvcHkp
CkBAIC01OSw3ICs1OSw3IEBACiAgICAgTGVuZ3RoU2l6ZSBzaXplOwogfTsKIAotc3RydWN0IEZp
bGxMYXllciB7CitzdHJ1Y3QgRmlsbExheWVyIDogRmFzdEFsbG9jQmFzZSB7CiBwdWJsaWM6CiAg
ICAgRmlsbExheWVyKEVGaWxsTGF5ZXJUeXBlKTsKICAgICB+RmlsbExheWVyKCk7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>