<?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>26905</bug_id>
          
          <creation_ts>2009-07-01 14:26:35 -0700</creation_ts>
          <short_desc>Don&apos;t use PlatformMessagePortChannel in any files</short_desc>
          <delta_ts>2009-07-01 23:45:07 -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>Platform</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>PC</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="John Abd-El-Malek">jam</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>atwilson</cc>
    
    <cc>fishd</cc>
    
    <cc>sam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>129367</commentid>
    <comment_count>0</comment_count>
    <who name="John Abd-El-Malek">jam</who>
    <bug_when>2009-07-01 14:26:35 -0700</bug_when>
    <thetext>This will allow Chromium port&apos;s version to be implemented outside the WebKit repository.  The reason to do this is so that our version can derive from classes that are in the Chromium repository.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129385</commentid>
    <comment_count>1</comment_count>
      <attachid>32146</attachid>
    <who name="John Abd-El-Malek">jam</who>
    <bug_when>2009-07-01 15:14:27 -0700</bug_when>
    <thetext>Created attachment 32146
Proposed patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129409</commentid>
    <comment_count>2</comment_count>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2009-07-01 16:30:52 -0700</bug_when>
    <thetext>Seems kind strange.  That will make it so that it&apos;s never possible to build a version of WebKit from the WebKit repository.  That seems directly in contrast with historical goals...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129416</commentid>
    <comment_count>3</comment_count>
      <attachid>32146</attachid>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2009-07-01 16:53:16 -0700</bug_when>
    <thetext>Comment on attachment 32146
Proposed patch

&gt; Index: WebCore/ChangeLog
...
&gt; +        Reviewed by NOBODY (OOPS!).
&gt; +
&gt; +        Small refactoring of MessagePortChannel so that a port&apos;s PlatformMessagePortChannel doesn&apos;t
&gt; +        have to reside in the WebKit repository.

I think it would be more accurate to say &quot;so that PlatformMessagePortChannel may
be defined at the WebKit layer&quot;

Otherwise, R=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129425</commentid>
    <comment_count>4</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2009-07-01 17:15:31 -0700</bug_when>
    <thetext>Wouldn&apos;t that be a layering violation?  Or are you considering adding a client interface for that?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129432</commentid>
    <comment_count>5</comment_count>
      <attachid>32166</attachid>
    <who name="John Abd-El-Malek">jam</who>
    <bug_when>2009-07-01 17:56:15 -0700</bug_when>
    <thetext>Created attachment 32166
updated changelog</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129433</commentid>
    <comment_count>6</comment_count>
    <who name="John Abd-El-Malek">jam</who>
    <bug_when>2009-07-01 17:59:21 -0700</bug_when>
    <thetext>Eric: I&apos;m not sure I understand your concern.  If you&apos;re referring to someone just going to webkit.org and fetching/building, that&apos;ll work as before.  I just moved some functions around.

What I did is equivalent to how ResourceHandleInternal is declared in ResourceHandle.h but it&apos;s up to the port to define the class.

Sam: not sure what you mean?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129449</commentid>
    <comment_count>7</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2009-07-01 20:52:00 -0700</bug_when>
    <thetext>&gt; Sam: not sure what you mean?

WebCore classes should not depend on WebKit with the exception of client interfaces. If that does happen, that is considered a layering violation.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129453</commentid>
    <comment_count>8</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2009-07-01 21:43:13 -0700</bug_when>
    <thetext>&gt; WebCore classes should not depend on WebKit with the exception of client
&gt; interfaces. If that does happen, that is considered a layering violation.

The Chromium port works differently to help avoid an extraneous number of interfaces (vtables) between WebKit and WebCore.  Instead, what we do is specify a set of &apos;undefined&apos; functions (see ChromiumBridge) and sometimes &apos;undefined&apos; classes (ResourceHandle is a good example) that are left to the WebKit layer to define.  In the WebKit layer, those undefined WebCore symbols and classes are implemented in terms of WebKit API interfaces (vtables).  Note: This WebKit API I speak of is the Chromium WebKit API, which is still brewing in the Chromium repository (soon to be upstreamed to svn.webkit.org; see my post to webkit-dev if you are interested).  Since only the Chromium port has need to route such things up through WebKit, this helps keep WebCore simple, while keeping the set of dependencies reasonably well scoped.

If you think about it, this is actually very similar to the WebKitSystemInterface approach that PLATFORM(MAC) uses.  That encapsulates the set of additional dependencies required by the PLATFORM(MAC) port of WebCore.  In Chromium&apos;s case, we preferred to bridge up to the embedder instead of having the embedder also provide support below WebCore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129467</commentid>
    <comment_count>9</comment_count>
    <who name="Darin Fisher (:fishd, Google)">fishd</who>
    <bug_when>2009-07-01 23:27:32 -0700</bug_when>
    <thetext>Landed as:  http://trac.webkit.org/changeset/45467</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>129469</commentid>
    <comment_count>10</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2009-07-01 23:45:07 -0700</bug_when>
    <thetext>(In reply to comment #8)
&gt; &gt; WebCore classes should not depend on WebKit with the exception of client
&gt; &gt; interfaces. If that does happen, that is considered a layering violation.
&gt; 
&gt; The Chromium port works differently to help avoid an extraneous number of
&gt; interfaces (vtables) between WebKit and WebCore.  Instead, what we do is
&gt; specify a set of &apos;undefined&apos; functions (see ChromiumBridge) and sometimes
&gt; &apos;undefined&apos; classes (ResourceHandle is a good example) that are left to the
&gt; WebKit layer to define.  In the WebKit layer, those undefined WebCore symbols
&gt; and classes are implemented in terms of WebKit API interfaces (vtables).  Note:
&gt; This WebKit API I speak of is the Chromium WebKit API, which is still brewing
&gt; in the Chromium repository (soon to be upstreamed to svn.webkit.org; see my
&gt; post to webkit-dev if you are interested).  Since only the Chromium port has
&gt; need to route such things up through WebKit, this helps keep WebCore simple,
&gt; while keeping the set of dependencies reasonably well scoped.
&gt; 
&gt; If you think about it, this is actually very similar to the
&gt; WebKitSystemInterface approach that PLATFORM(MAC) uses.  That encapsulates the
&gt; set of additional dependencies required by the PLATFORM(MAC) port of WebCore. 
&gt; In Chromium&apos;s case, we preferred to bridge up to the embedder instead of having
&gt; the embedder also provide support below WebCore.
&gt; 

While this bug is probably the wrong venue to have this discussion, I do want to state that I don&apos;t think ports making different architectural decisions is good idea for the health of the project.  It is something I seriously object to.  In previous discussions with members of the Chromium team it has been indicated that the bridge was a temporary measure and the existing forms of abstraction would be adopted and extended where necessary (glue on the bottom in WebCore/platform/ and glue on top in the form of client interfaces).  </thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>32146</attachid>
            <date>2009-07-01 15:14:27 -0700</date>
            <delta_ts>2009-07-01 17:56:15 -0700</delta_ts>
            <desc>Proposed patch</desc>
            <filename>mp1.txt</filename>
            <type>text/plain</type>
            <size>4709</size>
            <attacher name="John Abd-El-Malek">jam</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NTQ1MikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjIgQEAKKzIwMDktMDctMDEgIEpvaG4gQWJkLUVsLU1hbGVrICA8amFtQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBTbWFsbCByZWZhY3RvcmluZyBvZiBNZXNzYWdlUG9ydENoYW5uZWwgc28gdGhhdCBhIHBvcnQn
cyBQbGF0Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbCBkb2Vzbid0CisgICAgICAgIGhhdmUgdG8gcmVz
aWRlIGluIHRoZSBXZWJLaXQgcmVwb3NpdG9yeS4KKworICAgICAgICBodHRwczovL2J1Z3Mud2Vi
a2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MjY5MDUKKworICAgICAgICAqIGRvbS9NZXNzYWdlQ2hh
bm5lbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZXNzYWdlQ2hhbm5lbDo6TWVzc2FnZUNoYW5u
ZWwpOgorICAgICAgICAqIGRvbS9NZXNzYWdlUG9ydENoYW5uZWwuY3BwOgorICAgICAgICAqIGRv
bS9NZXNzYWdlUG9ydENoYW5uZWwuaDoKKyAgICAgICAgKiBkb20vZGVmYXVsdC9QbGF0Zm9ybU1l
c3NhZ2VQb3J0Q2hhbm5lbC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpNZXNzYWdlUG9ydENoYW5u
ZWw6OmNyZWF0ZUNoYW5uZWwpOgorICAgICAgICAoV2ViQ29yZTo6TWVzc2FnZVBvcnRDaGFubmVs
OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6TWVzc2FnZVBvcnRDaGFubmVsOjpNZXNzYWdl
UG9ydENoYW5uZWwpOgorICAgICAgICAoV2ViQ29yZTo6TWVzc2FnZVBvcnRDaGFubmVsOjp+TWVz
c2FnZVBvcnRDaGFubmVsKToKKwogMjAwOS0wNy0wMSAgQ2hyaXMgRmxlaXphY2ggIDxjZmxlaXph
Y2hAYXBwbGUuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEJldGggRGFraW4uCkluZGV4OiBX
ZWJDb3JlL2RvbS9NZXNzYWdlQ2hhbm5lbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20v
TWVzc2FnZUNoYW5uZWwuY3BwCShyZXZpc2lvbiA0NTQ0NSkKKysrIFdlYkNvcmUvZG9tL01lc3Nh
Z2VDaGFubmVsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjgsNyArMjgsNyBAQAogI2luY2x1ZGUg
Ik1lc3NhZ2VDaGFubmVsLmgiCiAKICNpbmNsdWRlICJNZXNzYWdlUG9ydC5oIgotI2luY2x1ZGUg
IlBsYXRmb3JtTWVzc2FnZVBvcnRDaGFubmVsLmgiCisjaW5jbHVkZSAiTWVzc2FnZVBvcnRDaGFu
bmVsLmgiCiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtMzYsNyArMzYsNyBAQCBNZXNzYWdl
Q2hhbm5lbDo6TWVzc2FnZUNoYW5uZWwoU2NyaXB0RXhlCiAgICAgOiBtX3BvcnQxKE1lc3NhZ2VQ
b3J0OjpjcmVhdGUoKmNvbnRleHQpKQogICAgICwgbV9wb3J0MihNZXNzYWdlUG9ydDo6Y3JlYXRl
KCpjb250ZXh0KSkKIHsKLSAgICBQbGF0Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbDo6Y3JlYXRlQ2hh
bm5lbChtX3BvcnQxLmdldCgpLCBtX3BvcnQyLmdldCgpKTsKKyAgICBNZXNzYWdlUG9ydENoYW5u
ZWw6OmNyZWF0ZUNoYW5uZWwobV9wb3J0MS5nZXQoKSwgbV9wb3J0Mi5nZXQoKSk7CiB9CiAKIE1l
c3NhZ2VDaGFubmVsOjp+TWVzc2FnZUNoYW5uZWwoKQpJbmRleDogV2ViQ29yZS9kb20vTWVzc2Fn
ZVBvcnRDaGFubmVsLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9NZXNzYWdlUG9ydENo
YW5uZWwuY3BwCShyZXZpc2lvbiA0NTQ0NSkKKysrIFdlYkNvcmUvZG9tL01lc3NhZ2VQb3J0Q2hh
bm5lbC5jcHAJKHdvcmtpbmcgY29weSkKQEAgLTMwLDE0ICszMCw4IEBACiAjaW5jbHVkZSAiY29u
ZmlnLmgiCiAjaW5jbHVkZSAiTWVzc2FnZVBvcnRDaGFubmVsLmgiCiAKLSNpbmNsdWRlICJQbGF0
Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbC5oIgotCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKLVBhc3NP
d25QdHI8TWVzc2FnZVBvcnRDaGFubmVsPiBNZXNzYWdlUG9ydENoYW5uZWw6OmNyZWF0ZShQYXNz
UmVmUHRyPFBsYXRmb3JtTWVzc2FnZVBvcnRDaGFubmVsPiBjaGFubmVsKQotewotICAgIHJldHVy
biBuZXcgTWVzc2FnZVBvcnRDaGFubmVsKGNoYW5uZWwpOwotfQogCiBQYXNzT3duUHRyPE1lc3Nh
Z2VQb3J0Q2hhbm5lbDo6RXZlbnREYXRhPiBNZXNzYWdlUG9ydENoYW5uZWw6OkV2ZW50RGF0YTo6
Y3JlYXRlKGNvbnN0IFN0cmluZyYgbWVzc2FnZSwgUGFzc093blB0cjxNZXNzYWdlUG9ydENoYW5u
ZWw+IGNoYW5uZWwpCiB7CkBAIC01MCwxNSArNDQsNCBAQCBNZXNzYWdlUG9ydENoYW5uZWw6OkV2
ZW50RGF0YTo6RXZlbnREYXRhCiB7CiB9CiAKLU1lc3NhZ2VQb3J0Q2hhbm5lbDo6TWVzc2FnZVBv
cnRDaGFubmVsKFBhc3NSZWZQdHI8UGxhdGZvcm1NZXNzYWdlUG9ydENoYW5uZWw+IGNoYW5uZWwp
Ci0gICAgOiBtX2NoYW5uZWwoY2hhbm5lbCkKLXsKLX0KLQotTWVzc2FnZVBvcnRDaGFubmVsOjp+
TWVzc2FnZVBvcnRDaGFubmVsKCkKLXsKLSAgICAvLyBNYWtlIHN1cmUgd2UgY2xvc2Ugb3VyIHBs
YXRmb3JtIGNoYW5uZWwgd2hlbiB0aGUgYmFzZSBpcyBmcmVlZCwgdG8ga2VlcCB0aGUgY2hhbm5l
bCBvYmplY3RzIGZyb20gbGVha2luZy4KLSAgICBtX2NoYW5uZWwtPmNsb3NlKCk7Ci19Ci0KIH0g
Ly8gbmFtZXNwYWNlIFdlYkNvcmUKSW5kZXg6IFdlYkNvcmUvZG9tL01lc3NhZ2VQb3J0Q2hhbm5l
bC5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvZG9tL01lc3NhZ2VQb3J0Q2hhbm5lbC5oCShyZXZp
c2lvbiA0NTQ0NSkKKysrIFdlYkNvcmUvZG9tL01lc3NhZ2VQb3J0Q2hhbm5lbC5oCSh3b3JraW5n
IGNvcHkpCkBAIC01MCw2ICs1MCw4IEBAIG5hbWVzcGFjZSBXZWJDb3JlIHsKICAgICAvLyBJdCBh
Y3RzIGFzIGEgd3JhcHBlciBhcm91bmQgdGhlIHBsYXRmb3JtLWRlcGVuZGVudCBQbGF0Zm9ybU1l
c3NhZ2VQb3J0Q2hhbm5lbCBpbXBsZW1lbnRhdGlvbiB3aGljaCBlbnN1cmVzIHRoYXQgdGhlIHBs
YXRmb3JtLWRlcGVuZGVudCBjbG9zZSgpIG1ldGhvZCBpcyBpbnZva2VkIGJlZm9yZSBkZXN0cnVj
dGlvbi4KICAgICBjbGFzcyBNZXNzYWdlUG9ydENoYW5uZWwgOiBOb25jb3B5YWJsZSB7CiAgICAg
cHVibGljOgorICAgICAgICBzdGF0aWMgdm9pZCBjcmVhdGVDaGFubmVsKFBhc3NSZWZQdHI8TWVz
c2FnZVBvcnQ+LCBQYXNzUmVmUHRyPE1lc3NhZ2VQb3J0Pik7CisKICAgICAgICAgLy8gQ3JlYXRl
cyBhIG5ldyB3cmFwcGVyIGZvciB0aGUgcGFzc2VkIGNoYW5uZWwuCiAgICAgICAgIHN0YXRpYyBQ
YXNzT3duUHRyPE1lc3NhZ2VQb3J0Q2hhbm5lbD4gY3JlYXRlKFBhc3NSZWZQdHI8UGxhdGZvcm1N
ZXNzYWdlUG9ydENoYW5uZWw+KTsKIApJbmRleDogV2ViQ29yZS9kb20vZGVmYXVsdC9QbGF0Zm9y
bU1lc3NhZ2VQb3J0Q2hhbm5lbC5jcHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2ViQ29yZS9kb20vZGVmYXVs
dC9QbGF0Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbC5jcHAJKHJldmlzaW9uIDQ1NDQ1KQorKysgV2Vi
Q29yZS9kb20vZGVmYXVsdC9QbGF0Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbC5jcHAJKHdvcmtpbmcg
Y29weSkKQEAgLTM3LDYgKzM3LDI3IEBACiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKIC8vIE1lc3Nh
Z2VQb3J0Q2hhbm5lbCBpbXBsZW1lbnRhdGlvbnMgLSBqdXN0IGRlbGVnYXRlIHRvIHRoZSBQbGF0
Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbC4KK3ZvaWQgTWVzc2FnZVBvcnRDaGFubmVsOjpjcmVhdGVD
aGFubmVsKFBhc3NSZWZQdHI8TWVzc2FnZVBvcnQ+IHBvcnQxLCBQYXNzUmVmUHRyPE1lc3NhZ2VQ
b3J0PiBwb3J0MikKK3sKKyAgICBQbGF0Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbDo6Y3JlYXRlQ2hh
bm5lbChwb3J0MSwgcG9ydDIpOworfQorCitQYXNzT3duUHRyPE1lc3NhZ2VQb3J0Q2hhbm5lbD4g
TWVzc2FnZVBvcnRDaGFubmVsOjpjcmVhdGUoUGFzc1JlZlB0cjxQbGF0Zm9ybU1lc3NhZ2VQb3J0
Q2hhbm5lbD4gY2hhbm5lbCkKK3sKKyAgICByZXR1cm4gbmV3IE1lc3NhZ2VQb3J0Q2hhbm5lbChj
aGFubmVsKTsKK30KKworTWVzc2FnZVBvcnRDaGFubmVsOjpNZXNzYWdlUG9ydENoYW5uZWwoUGFz
c1JlZlB0cjxQbGF0Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbD4gY2hhbm5lbCkKKyAgICA6IG1fY2hh
bm5lbChjaGFubmVsKQoreworfQorCitNZXNzYWdlUG9ydENoYW5uZWw6On5NZXNzYWdlUG9ydENo
YW5uZWwoKQoreworICAgIC8vIE1ha2Ugc3VyZSB3ZSBjbG9zZSBvdXIgcGxhdGZvcm0gY2hhbm5l
bCB3aGVuIHRoZSBiYXNlIGlzIGZyZWVkLCB0byBrZWVwIHRoZSBjaGFubmVsIG9iamVjdHMgZnJv
bSBsZWFraW5nLgorICAgIG1fY2hhbm5lbC0+Y2xvc2UoKTsKK30KKwogYm9vbCBNZXNzYWdlUG9y
dENoYW5uZWw6OmVudGFuZ2xlSWZPcGVuKE1lc3NhZ2VQb3J0KiBwb3J0KQogewogICAgIHJldHVy
biBtX2NoYW5uZWwtPmVudGFuZ2xlSWZPcGVuKHBvcnQpOwo=
</data>
<flag name="review"
          id="16648"
          type_id="1"
          status="-"
          setter="fishd"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>32166</attachid>
            <date>2009-07-01 17:56:15 -0700</date>
            <delta_ts>2009-07-01 22:19:51 -0700</delta_ts>
            <desc>updated changelog</desc>
            <filename>mp2.txt</filename>
            <type>text/plain</type>
            <size>4687</size>
            <attacher name="John Abd-El-Malek">jam</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYkNvcmUvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYkNvcmUvQ2hhbmdlTG9n
CShyZXZpc2lvbiA0NTQ1MikKKysrIFdlYkNvcmUvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBA
IC0xLDMgKzEsMjIgQEAKKzIwMDktMDctMDEgIEpvaG4gQWJkLUVsLU1hbGVrICA8amFtQGNocm9t
aXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAg
ICBTbWFsbCByZWZhY3RvcmluZyBvZiBNZXNzYWdlUG9ydENoYW5uZWwgc28gdGhhdCBQbGF0Zm9y
bU1lc3NhZ2VQb3J0Q2hhbm5lbCBtYXkgYmUgZGVmaW5lZCBhdAorICAgICAgICB0aGUgV2ViS2l0
IGxheWVyLgorCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9p
ZD0yNjkwNQorCisgICAgICAgICogZG9tL01lc3NhZ2VDaGFubmVsLmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6Ok1lc3NhZ2VDaGFubmVsOjpNZXNzYWdlQ2hhbm5lbCk6CisgICAgICAgICogZG9tL01l
c3NhZ2VQb3J0Q2hhbm5lbC5jcHA6CisgICAgICAgICogZG9tL01lc3NhZ2VQb3J0Q2hhbm5lbC5o
OgorICAgICAgICAqIGRvbS9kZWZhdWx0L1BsYXRmb3JtTWVzc2FnZVBvcnRDaGFubmVsLmNwcDoK
KyAgICAgICAgKFdlYkNvcmU6Ok1lc3NhZ2VQb3J0Q2hhbm5lbDo6Y3JlYXRlQ2hhbm5lbCk6Cisg
ICAgICAgIChXZWJDb3JlOjpNZXNzYWdlUG9ydENoYW5uZWw6OmNyZWF0ZSk6CisgICAgICAgIChX
ZWJDb3JlOjpNZXNzYWdlUG9ydENoYW5uZWw6Ok1lc3NhZ2VQb3J0Q2hhbm5lbCk6CisgICAgICAg
IChXZWJDb3JlOjpNZXNzYWdlUG9ydENoYW5uZWw6On5NZXNzYWdlUG9ydENoYW5uZWwpOgorCiAy
MDA5LTA3LTAxICBDaHJpcyBGbGVpemFjaCAgPGNmbGVpemFjaEBhcHBsZS5jb20+CiAKICAgICAg
ICAgUmV2aWV3ZWQgYnkgQmV0aCBEYWtpbi4KSW5kZXg6IFdlYkNvcmUvZG9tL01lc3NhZ2VDaGFu
bmVsLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9NZXNzYWdlQ2hhbm5lbC5jcHAJKHJl
dmlzaW9uIDQ1NDQ1KQorKysgV2ViQ29yZS9kb20vTWVzc2FnZUNoYW5uZWwuY3BwCSh3b3JraW5n
IGNvcHkpCkBAIC0yOCw3ICsyOCw3IEBACiAjaW5jbHVkZSAiTWVzc2FnZUNoYW5uZWwuaCIKIAog
I2luY2x1ZGUgIk1lc3NhZ2VQb3J0LmgiCi0jaW5jbHVkZSAiUGxhdGZvcm1NZXNzYWdlUG9ydENo
YW5uZWwuaCIKKyNpbmNsdWRlICJNZXNzYWdlUG9ydENoYW5uZWwuaCIKIAogbmFtZXNwYWNlIFdl
YkNvcmUgewogCkBAIC0zNiw3ICszNiw3IEBAIE1lc3NhZ2VDaGFubmVsOjpNZXNzYWdlQ2hhbm5l
bChTY3JpcHRFeGUKICAgICA6IG1fcG9ydDEoTWVzc2FnZVBvcnQ6OmNyZWF0ZSgqY29udGV4dCkp
CiAgICAgLCBtX3BvcnQyKE1lc3NhZ2VQb3J0OjpjcmVhdGUoKmNvbnRleHQpKQogewotICAgIFBs
YXRmb3JtTWVzc2FnZVBvcnRDaGFubmVsOjpjcmVhdGVDaGFubmVsKG1fcG9ydDEuZ2V0KCksIG1f
cG9ydDIuZ2V0KCkpOworICAgIE1lc3NhZ2VQb3J0Q2hhbm5lbDo6Y3JlYXRlQ2hhbm5lbChtX3Bv
cnQxLmdldCgpLCBtX3BvcnQyLmdldCgpKTsKIH0KIAogTWVzc2FnZUNoYW5uZWw6On5NZXNzYWdl
Q2hhbm5lbCgpCkluZGV4OiBXZWJDb3JlL2RvbS9NZXNzYWdlUG9ydENoYW5uZWwuY3BwCj09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT0KLS0tIFdlYkNvcmUvZG9tL01lc3NhZ2VQb3J0Q2hhbm5lbC5jcHAJKHJldmlzaW9uIDQ1
NDQ1KQorKysgV2ViQ29yZS9kb20vTWVzc2FnZVBvcnRDaGFubmVsLmNwcAkod29ya2luZyBjb3B5
KQpAQCAtMzAsMTQgKzMwLDggQEAKICNpbmNsdWRlICJjb25maWcuaCIKICNpbmNsdWRlICJNZXNz
YWdlUG9ydENoYW5uZWwuaCIKIAotI2luY2x1ZGUgIlBsYXRmb3JtTWVzc2FnZVBvcnRDaGFubmVs
LmgiCi0KIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotUGFzc093blB0cjxNZXNzYWdlUG9ydENoYW5u
ZWw+IE1lc3NhZ2VQb3J0Q2hhbm5lbDo6Y3JlYXRlKFBhc3NSZWZQdHI8UGxhdGZvcm1NZXNzYWdl
UG9ydENoYW5uZWw+IGNoYW5uZWwpCi17Ci0gICAgcmV0dXJuIG5ldyBNZXNzYWdlUG9ydENoYW5u
ZWwoY2hhbm5lbCk7Ci19CiAKIFBhc3NPd25QdHI8TWVzc2FnZVBvcnRDaGFubmVsOjpFdmVudERh
dGE+IE1lc3NhZ2VQb3J0Q2hhbm5lbDo6RXZlbnREYXRhOjpjcmVhdGUoY29uc3QgU3RyaW5nJiBt
ZXNzYWdlLCBQYXNzT3duUHRyPE1lc3NhZ2VQb3J0Q2hhbm5lbD4gY2hhbm5lbCkKIHsKQEAgLTUw
LDE1ICs0NCw0IEBAIE1lc3NhZ2VQb3J0Q2hhbm5lbDo6RXZlbnREYXRhOjpFdmVudERhdGEKIHsK
IH0KIAotTWVzc2FnZVBvcnRDaGFubmVsOjpNZXNzYWdlUG9ydENoYW5uZWwoUGFzc1JlZlB0cjxQ
bGF0Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbD4gY2hhbm5lbCkKLSAgICA6IG1fY2hhbm5lbChjaGFu
bmVsKQotewotfQotCi1NZXNzYWdlUG9ydENoYW5uZWw6On5NZXNzYWdlUG9ydENoYW5uZWwoKQot
ewotICAgIC8vIE1ha2Ugc3VyZSB3ZSBjbG9zZSBvdXIgcGxhdGZvcm0gY2hhbm5lbCB3aGVuIHRo
ZSBiYXNlIGlzIGZyZWVkLCB0byBrZWVwIHRoZSBjaGFubmVsIG9iamVjdHMgZnJvbSBsZWFraW5n
LgotICAgIG1fY2hhbm5lbC0+Y2xvc2UoKTsKLX0KLQogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpJ
bmRleDogV2ViQ29yZS9kb20vTWVzc2FnZVBvcnRDaGFubmVsLmgKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gV2Vi
Q29yZS9kb20vTWVzc2FnZVBvcnRDaGFubmVsLmgJKHJldmlzaW9uIDQ1NDQ1KQorKysgV2ViQ29y
ZS9kb20vTWVzc2FnZVBvcnRDaGFubmVsLmgJKHdvcmtpbmcgY29weSkKQEAgLTUwLDYgKzUwLDgg
QEAgbmFtZXNwYWNlIFdlYkNvcmUgewogICAgIC8vIEl0IGFjdHMgYXMgYSB3cmFwcGVyIGFyb3Vu
ZCB0aGUgcGxhdGZvcm0tZGVwZW5kZW50IFBsYXRmb3JtTWVzc2FnZVBvcnRDaGFubmVsIGltcGxl
bWVudGF0aW9uIHdoaWNoIGVuc3VyZXMgdGhhdCB0aGUgcGxhdGZvcm0tZGVwZW5kZW50IGNsb3Nl
KCkgbWV0aG9kIGlzIGludm9rZWQgYmVmb3JlIGRlc3RydWN0aW9uLgogICAgIGNsYXNzIE1lc3Nh
Z2VQb3J0Q2hhbm5lbCA6IE5vbmNvcHlhYmxlIHsKICAgICBwdWJsaWM6CisgICAgICAgIHN0YXRp
YyB2b2lkIGNyZWF0ZUNoYW5uZWwoUGFzc1JlZlB0cjxNZXNzYWdlUG9ydD4sIFBhc3NSZWZQdHI8
TWVzc2FnZVBvcnQ+KTsKKwogICAgICAgICAvLyBDcmVhdGVzIGEgbmV3IHdyYXBwZXIgZm9yIHRo
ZSBwYXNzZWQgY2hhbm5lbC4KICAgICAgICAgc3RhdGljIFBhc3NPd25QdHI8TWVzc2FnZVBvcnRD
aGFubmVsPiBjcmVhdGUoUGFzc1JlZlB0cjxQbGF0Zm9ybU1lc3NhZ2VQb3J0Q2hhbm5lbD4pOwog
CkluZGV4OiBXZWJDb3JlL2RvbS9kZWZhdWx0L1BsYXRmb3JtTWVzc2FnZVBvcnRDaGFubmVsLmNw
cAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09Ci0tLSBXZWJDb3JlL2RvbS9kZWZhdWx0L1BsYXRmb3JtTWVzc2FnZVBvcnRD
aGFubmVsLmNwcAkocmV2aXNpb24gNDU0NDUpCisrKyBXZWJDb3JlL2RvbS9kZWZhdWx0L1BsYXRm
b3JtTWVzc2FnZVBvcnRDaGFubmVsLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzcsNiArMzcsMjcg
QEAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAogLy8gTWVzc2FnZVBvcnRDaGFubmVsIGltcGxlbWVu
dGF0aW9ucyAtIGp1c3QgZGVsZWdhdGUgdG8gdGhlIFBsYXRmb3JtTWVzc2FnZVBvcnRDaGFubmVs
Lgordm9pZCBNZXNzYWdlUG9ydENoYW5uZWw6OmNyZWF0ZUNoYW5uZWwoUGFzc1JlZlB0cjxNZXNz
YWdlUG9ydD4gcG9ydDEsIFBhc3NSZWZQdHI8TWVzc2FnZVBvcnQ+IHBvcnQyKQoreworICAgIFBs
YXRmb3JtTWVzc2FnZVBvcnRDaGFubmVsOjpjcmVhdGVDaGFubmVsKHBvcnQxLCBwb3J0Mik7Cit9
CisKK1Bhc3NPd25QdHI8TWVzc2FnZVBvcnRDaGFubmVsPiBNZXNzYWdlUG9ydENoYW5uZWw6OmNy
ZWF0ZShQYXNzUmVmUHRyPFBsYXRmb3JtTWVzc2FnZVBvcnRDaGFubmVsPiBjaGFubmVsKQorewor
ICAgIHJldHVybiBuZXcgTWVzc2FnZVBvcnRDaGFubmVsKGNoYW5uZWwpOworfQorCitNZXNzYWdl
UG9ydENoYW5uZWw6Ok1lc3NhZ2VQb3J0Q2hhbm5lbChQYXNzUmVmUHRyPFBsYXRmb3JtTWVzc2Fn
ZVBvcnRDaGFubmVsPiBjaGFubmVsKQorICAgIDogbV9jaGFubmVsKGNoYW5uZWwpCit7Cit9CisK
K01lc3NhZ2VQb3J0Q2hhbm5lbDo6fk1lc3NhZ2VQb3J0Q2hhbm5lbCgpCit7CisgICAgLy8gTWFr
ZSBzdXJlIHdlIGNsb3NlIG91ciBwbGF0Zm9ybSBjaGFubmVsIHdoZW4gdGhlIGJhc2UgaXMgZnJl
ZWQsIHRvIGtlZXAgdGhlIGNoYW5uZWwgb2JqZWN0cyBmcm9tIGxlYWtpbmcuCisgICAgbV9jaGFu
bmVsLT5jbG9zZSgpOworfQorCiBib29sIE1lc3NhZ2VQb3J0Q2hhbm5lbDo6ZW50YW5nbGVJZk9w
ZW4oTWVzc2FnZVBvcnQqIHBvcnQpCiB7CiAgICAgcmV0dXJuIG1fY2hhbm5lbC0+ZW50YW5nbGVJ
Zk9wZW4ocG9ydCk7Cg==
</data>
<flag name="review"
          id="16664"
          type_id="1"
          status="+"
          setter="fishd"
    />
          </attachment>
      

    </bug>

</bugzilla>