<?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>114841</bug_id>
          
          <creation_ts>2013-04-18 18:02:02 -0700</creation_ts>
          <short_desc>Objective-C API: Update public header documentation</short_desc>
          <delta_ts>2013-04-23 10:59:29 -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>JavaScriptCore</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="Mark Hahnenberg">mhahnenberg</reporter>
          <assigned_to name="Mark Hahnenberg">mhahnenberg</assigned_to>
          
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>878162</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2013-04-18 18:02:02 -0700</bug_when>
    <thetext>There has been a lot of changes/additions to the Objective-C API during development, so we need to make sure all of the public headers have sufficient and correct documentation prior to final release.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>878163</commentid>
    <comment_count>1</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2013-04-18 18:02:12 -0700</bug_when>
    <thetext>&lt;rdar://problem/13351539&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>878164</commentid>
    <comment_count>2</comment_count>
      <attachid>198783</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2013-04-18 18:03:39 -0700</bug_when>
    <thetext>Created attachment 198783
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>878250</commentid>
    <comment_count>3</comment_count>
      <attachid>198783</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2013-04-18 23:02:42 -0700</bug_when>
    <thetext>Comment on attachment 198783
Patch

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

&gt; Source/JavaScriptCore/API/JSManagedValue.h:36
&gt; +// JSManagedValue represents a &quot;conditionally strong&quot; JSValue. &quot;Conditionally strong&quot; means that 

Maybe we should say &quot;conditionally retained&quot; to match typical ObjC language.

&gt; Source/JavaScriptCore/API/JSManagedValue.h:38
&gt; +// as long as the JSManagedValue object is reachable either through the JavaScript object graph
&gt; +// or through the external Objective-C object graph as reported to the JSVirtualMachine using 

We should be a little clearer here: The JSManagedValue&apos;s JSValue can be reachable through the JS object graph; the JSManageValue itself can be reachable through addManagedReference:withOwner:.

&gt; Source/JavaScriptCore/API/JSManagedValue.h:40
&gt; +// addManagedReference:withOwner:, the corresponding JavaScript value will remain alive inside 
&gt; +// of the JSVirtualMachine. However, if none of these conditions are true, the corresponding 

Let&apos;s say &quot;be retained&quot; here as well.

&gt; Source/JavaScriptCore/API/JSManagedValue.h:42
&gt; +// JavaScript value becomes a weak value, meaning it can be collected by the JavaScript garbage 
&gt; +// collector at any time.

Let&apos;s say &quot;be release&quot; here.

&gt; Source/JavaScriptCore/API/JSVirtualMachine.h:41
&gt; +// addManagedReference:withOwner and removeManagedReference:withOwner allow clients of to make the 

Typo: &quot;clients of the JSVirtualMachine&quot;.

&gt; Source/JavaScriptCore/API/JSVirtualMachine.h:49
&gt; +// There is one caveat to this API: the root of any particular Objective-C object graph must be reachable from
&gt; +// within the JavaScript runtime. For example, a client could install a wrapped Objective-C object 
&gt; +// as a property on the global object within the JSContext. If the external object graph is not 
&gt; +// reachable from within the JSContext then that object graph will not be scanned during garbage
&gt; +// collection, which will cause objects referenced from Objective-C to be prematurely collected.

I think this would read more clearly if you phrased it in terms of what&apos;s required to get correct behavior:

If an Objective-C object is reachable from within the JavaScript runtime, all managed references transitively reachable from it will be scanned by the garbage collector....</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>878561</commentid>
    <comment_count>4</comment_count>
      <attachid>198896</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2013-04-19 10:25:19 -0700</bug_when>
    <thetext>Created attachment 198896
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>879406</commentid>
    <comment_count>5</comment_count>
      <attachid>198896</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2013-04-22 13:27:14 -0700</bug_when>
    <thetext>Comment on attachment 198896
Patch

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

r=me

&gt; Source/JavaScriptCore/API/JSManagedValue.h:42
&gt; +// be retained inside of the JSVirtualMachine. However, if neither of these 

Let&apos;s drop &quot;inside the JSVirtualMachine&quot; here and say, &quot;the corresponding JSValue will be retained&quot;. That puts things more in terms of classical Cocoa programming.

&gt; Source/JavaScriptCore/API/JSManagedValue.h:44
&gt; +// conditions are true, the corresponding JavaScript value becomes a weak value,
&gt; +// meaning it can be released by the JavaScript garbage collector at any time.

Here, let&apos;s say, &quot;the corresponding JSValue will be released and set to nil&quot;. We can hide the detail that it only becomes nil after the GC notices.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>879979</commentid>
    <comment_count>6</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2013-04-23 10:59:29 -0700</bug_when>
    <thetext>Committed r148974: &lt;http://trac.webkit.org/changeset/148974&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>198783</attachid>
            <date>2013-04-18 18:03:39 -0700</date>
            <delta_ts>2013-04-19 10:25:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114841-20130418180309.patch</filename>
            <type>text/plain</type>
            <size>3705</size>
            <attacher name="Mark Hahnenberg">mhahnenberg</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTQ4NzE4KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBA
CisyMDEzLTA0LTE4ICBNYXJrIEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0BhcHBsZS5jb20+CisK
KyAgICAgICAgT2JqZWN0aXZlLUMgQVBJOiBVcGRhdGUgcHVibGljIGhlYWRlciBkb2N1bWVudGF0
aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTQ4
NDEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRl
ZCBkb2N1bWVudGF0aW9uIGZvciB0aGUgbmV3bHkgYWRkZWQgb2JqZWN0IGxpZmV0aW1lLXJlbGF0
ZWQgc3R1ZmYuCisKKyAgICAgICAgKiBBUEkvSlNNYW5hZ2VkVmFsdWUuaDoKKyAgICAgICAgKiBB
UEkvSlNWaXJ0dWFsTWFjaGluZS5oOgorCiAyMDEzLTA0LTE4ICBNYXJrIEhhaG5lbmJlcmcgIDxt
aGFobmVuYmVyZ0BhcHBsZS5jb20+CiAKICAgICAgICAgQ3Jhc2ggYmVuZWF0aCBKU0M6OkpJVDo6
cHJpdmF0ZUNvbXBpbGVTbG93Q2FzZXMgQCBzdGVwaGVucmRvbmFsZHNvbi5jb20KSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNNYW5hZ2VkVmFsdWUuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTTWFuYWdlZFZhbHVlLmgJKHJldmlzaW9uIDE0ODcx
MykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNNYW5hZ2VkVmFsdWUuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMzMsMTMgKzMzLDI4IEBACiBAY2xhc3MgSlNWYWx1ZTsKIEBjbGFzcyBKU0Nv
bnRleHQ7CiAKKy8vIEpTTWFuYWdlZFZhbHVlIHJlcHJlc2VudHMgYSAiY29uZGl0aW9uYWxseSBz
dHJvbmciIEpTVmFsdWUuICJDb25kaXRpb25hbGx5IHN0cm9uZyIgbWVhbnMgdGhhdCAKKy8vIGFz
IGxvbmcgYXMgdGhlIEpTTWFuYWdlZFZhbHVlIG9iamVjdCBpcyByZWFjaGFibGUgZWl0aGVyIHRo
cm91Z2ggdGhlIEphdmFTY3JpcHQgb2JqZWN0IGdyYXBoCisvLyBvciB0aHJvdWdoIHRoZSBleHRl
cm5hbCBPYmplY3RpdmUtQyBvYmplY3QgZ3JhcGggYXMgcmVwb3J0ZWQgdG8gdGhlIEpTVmlydHVh
bE1hY2hpbmUgdXNpbmcgCisvLyBhZGRNYW5hZ2VkUmVmZXJlbmNlOndpdGhPd25lcjosIHRoZSBj
b3JyZXNwb25kaW5nIEphdmFTY3JpcHQgdmFsdWUgd2lsbCByZW1haW4gYWxpdmUgaW5zaWRlIAor
Ly8gb2YgdGhlIEpTVmlydHVhbE1hY2hpbmUuIEhvd2V2ZXIsIGlmIG5vbmUgb2YgdGhlc2UgY29u
ZGl0aW9ucyBhcmUgdHJ1ZSwgdGhlIGNvcnJlc3BvbmRpbmcgCisvLyBKYXZhU2NyaXB0IHZhbHVl
IGJlY29tZXMgYSB3ZWFrIHZhbHVlLCBtZWFuaW5nIGl0IGNhbiBiZSBjb2xsZWN0ZWQgYnkgdGhl
IEphdmFTY3JpcHQgZ2FyYmFnZSAKKy8vIGNvbGxlY3RvciBhdCBhbnkgdGltZS4KKy8vCisvLyBU
aGUgcHJpbWFyeSB1c2UgY2FzZSBpcyBmb3IgSlNNYW5hZ2VkVmFsdWUgaXMgZm9yIHNhZmVseSBy
ZWZlcmVuY2luZyBKU1ZhbHVlcyBmcm9tIHRoZSBPYmplY3RpdmUtQyBoZWFwLiAKKy8vIEl0IGlz
IGluY29ycmVjdCB0byBzdG9yZSBhIEpTVmFsdWUgaW50byBhbiBPYmplY3RpdmUtQyBoZWFwIG9i
amVjdCwgYXMgdGhpcyBjYW4gdmVyeSBlYXNpbHkgY3JlYXRlIAorLy8gYSByZWZlcmVuY2UgY3lj
bGUsIGtlZXBpbmcgdGhlIGVudGlyZSBKU0NvbnRleHQgYWxpdmUuIAogTlNfQ0xBU1NfQVZBSUxB
QkxFKDEwXzksIE5BKQogQGludGVyZmFjZSBKU01hbmFnZWRWYWx1ZSA6IE5TT2JqZWN0CiAKKy8v
IENvbnZlbmllbmNlIG1ldGhvZCBmb3IgY3JlYXRpbmcgSlNNYW5hZ2VkVmFsdWVzIGZyb20gSlNW
YWx1ZXMuCiArIChKU01hbmFnZWRWYWx1ZSAqKW1hbmFnZWRWYWx1ZVdpdGhWYWx1ZTooSlNWYWx1
ZSAqKXZhbHVlOwogCisvLyBDcmVhdGUgYSBKU01hbmFnZWRWYWx1ZS4KIC0gKGlkKWluaXRXaXRo
VmFsdWU6KEpTVmFsdWUgKil2YWx1ZTsKIAorLy8gR2V0IHRoZSBKU1ZhbHVlIHRvIHdoaWNoIHRo
aXMgSlNNYW5hZ2VkVmFsdWUgcmVmZXJzLiBJZiB0aGUgSmF2YVNjcmlwdCB2YWx1ZSBoYXMgYmVl
biBjb2xsZWN0ZWQsCisvLyB0aGlzIG1ldGhvZCByZXR1cm5zIG5pbC4KIC0gKEpTVmFsdWUgKil2
YWx1ZTsKIAogQGVuZApJbmRleDogU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1ZpcnR1YWxN
YWNoaW5lLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PQotLS0gU291cmNlL0phdmFTY3JpcHRDb3JlL0FQSS9KU1ZpcnR1
YWxNYWNoaW5lLmgJKHJldmlzaW9uIDE0ODcxMykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9B
UEkvSlNWaXJ0dWFsTWFjaGluZS5oCSh3b3JraW5nIGNvcHkpCkBAIC0zNSw4ICszNSwxOSBAQAog
TlNfQ0xBU1NfQVZBSUxBQkxFKDEwXzksIE5BKQogQGludGVyZmFjZSBKU1ZpcnR1YWxNYWNoaW5l
IDogTlNPYmplY3QKIAorLy8gQ3JlYXRlIGEgbmV3IEpTVmlydHVhbE1hY2hpbmUuCiAtIChpZClp
bml0OwogCisvLyBhZGRNYW5hZ2VkUmVmZXJlbmNlOndpdGhPd25lciBhbmQgcmVtb3ZlTWFuYWdl
ZFJlZmVyZW5jZTp3aXRoT3duZXIgYWxsb3cgY2xpZW50cyBvZiB0byBtYWtlIHRoZSAKKy8vIEph
dmFTY3JpcHQgcnVudGltZSBhd2FyZSBvZiBhcmJpdHJhcnkgZXh0ZXJuYWwgT2JqZWN0aXZlLUMg
b2JqZWN0IGdyYXBocy4gVGhlIHJ1bnRpbWUgY2FuIHRoZW4gdXNlIAorLy8gdGhpcyBpbmZvcm1h
dGlvbiB0byBrZWVwIGFsaXZlIGFueSBKYXZhU2NyaXB0IHZhbHVlcyB0aGF0IGFyZSByZWZlcmVu
Y2VkIGZyb20gc29tZXdoZXJlIGluIHNhaWQgb2JqZWN0IGdyYXBoLgorLy8gCisvLyBUaGVyZSBp
cyBvbmUgY2F2ZWF0IHRvIHRoaXMgQVBJOiB0aGUgcm9vdCBvZiBhbnkgcGFydGljdWxhciBPYmpl
Y3RpdmUtQyBvYmplY3QgZ3JhcGggbXVzdCBiZSByZWFjaGFibGUgZnJvbQorLy8gd2l0aGluIHRo
ZSBKYXZhU2NyaXB0IHJ1bnRpbWUuIEZvciBleGFtcGxlLCBhIGNsaWVudCBjb3VsZCBpbnN0YWxs
IGEgd3JhcHBlZCBPYmplY3RpdmUtQyBvYmplY3QgCisvLyBhcyBhIHByb3BlcnR5IG9uIHRoZSBn
bG9iYWwgb2JqZWN0IHdpdGhpbiB0aGUgSlNDb250ZXh0LiBJZiB0aGUgZXh0ZXJuYWwgb2JqZWN0
IGdyYXBoIGlzIG5vdCAKKy8vIHJlYWNoYWJsZSBmcm9tIHdpdGhpbiB0aGUgSlNDb250ZXh0IHRo
ZW4gdGhhdCBvYmplY3QgZ3JhcGggd2lsbCBub3QgYmUgc2Nhbm5lZCBkdXJpbmcgZ2FyYmFnZQor
Ly8gY29sbGVjdGlvbiwgd2hpY2ggd2lsbCBjYXVzZSBvYmplY3RzIHJlZmVyZW5jZWQgZnJvbSBP
YmplY3RpdmUtQyB0byBiZSBwcmVtYXR1cmVseSBjb2xsZWN0ZWQuCisvLwogLSAodm9pZClhZGRN
YW5hZ2VkUmVmZXJlbmNlOihpZClvYmplY3Qgd2l0aE93bmVyOihpZClvd25lcjsKIC0gKHZvaWQp
cmVtb3ZlTWFuYWdlZFJlZmVyZW5jZTooaWQpb2JqZWN0IHdpdGhPd25lcjooaWQpb3duZXI7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>198896</attachid>
            <date>2013-04-19 10:25:19 -0700</date>
            <delta_ts>2013-04-22 13:27:14 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-114841-20130419102448.patch</filename>
            <type>text/plain</type>
            <size>3643</size>
            <attacher name="Mark Hahnenberg">mhahnenberg</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKPT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gU291
cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkocmV2aXNpb24gMTQ4NzE4KQorKysgU291cmNl
L0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwkod29ya2luZyBjb3B5KQpAQCAtMSwzICsxLDE1IEBA
CisyMDEzLTA0LTE4ICBNYXJrIEhhaG5lbmJlcmcgIDxtaGFobmVuYmVyZ0BhcHBsZS5jb20+CisK
KyAgICAgICAgT2JqZWN0aXZlLUMgQVBJOiBVcGRhdGUgcHVibGljIGhlYWRlciBkb2N1bWVudGF0
aW9uCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xMTQ4
NDEKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGRl
ZCBkb2N1bWVudGF0aW9uIGZvciB0aGUgbmV3bHkgYWRkZWQgb2JqZWN0IGxpZmV0aW1lLXJlbGF0
ZWQgc3R1ZmYuCisKKyAgICAgICAgKiBBUEkvSlNNYW5hZ2VkVmFsdWUuaDoKKyAgICAgICAgKiBB
UEkvSlNWaXJ0dWFsTWFjaGluZS5oOgorCiAyMDEzLTA0LTE4ICBNYXJrIEhhaG5lbmJlcmcgIDxt
aGFobmVuYmVyZ0BhcHBsZS5jb20+CiAKICAgICAgICAgQ3Jhc2ggYmVuZWF0aCBKU0M6OkpJVDo6
cHJpdmF0ZUNvbXBpbGVTbG93Q2FzZXMgQCBzdGVwaGVucmRvbmFsZHNvbi5jb20KSW5kZXg6IFNv
dXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNNYW5hZ2VkVmFsdWUuaAo9PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBT
b3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pTTWFuYWdlZFZhbHVlLmgJKHJldmlzaW9uIDE0ODcx
MykKKysrIFNvdXJjZS9KYXZhU2NyaXB0Q29yZS9BUEkvSlNNYW5hZ2VkVmFsdWUuaAkod29ya2lu
ZyBjb3B5KQpAQCAtMzMsMTMgKzMzLDMxIEBACiBAY2xhc3MgSlNWYWx1ZTsKIEBjbGFzcyBKU0Nv
bnRleHQ7CiAKKy8vIEpTTWFuYWdlZFZhbHVlIHJlcHJlc2VudHMgYSAiY29uZGl0aW9uYWxseSBy
ZXRhaW5lZCIgSlNWYWx1ZS4gCisvLyAiQ29uZGl0aW9uYWxseSByZXRhaW5lZCIgbWVhbnMgdGhh
dCBhcyBsb25nIGFzIGVpdGhlciB0aGUgSlNNYW5hZ2VkVmFsdWUgCisvLyBKYXZhU2NyaXB0IHZh
bHVlIGlzIHJlYWNoYWJsZSB0aHJvdWdoIHRoZSBKYXZhU2NyaXB0IG9iamVjdCBncmFwaAorLy8g
b3IgdGhlIEpTTWFuYWdlZFZhbHVlIG9iamVjdCBpcyByZWFjaGFibGUgdGhyb3VnaCB0aGUgZXh0
ZXJuYWwgT2JqZWN0aXZlLUMgCisvLyBvYmplY3QgZ3JhcGggYXMgcmVwb3J0ZWQgdG8gdGhlIEpT
VmlydHVhbE1hY2hpbmUgdXNpbmcgCisvLyBhZGRNYW5hZ2VkUmVmZXJlbmNlOndpdGhPd25lcjos
IHRoZSBjb3JyZXNwb25kaW5nIEphdmFTY3JpcHQgdmFsdWUgd2lsbCAKKy8vIGJlIHJldGFpbmVk
IGluc2lkZSBvZiB0aGUgSlNWaXJ0dWFsTWFjaGluZS4gSG93ZXZlciwgaWYgbmVpdGhlciBvZiB0
aGVzZSAKKy8vIGNvbmRpdGlvbnMgYXJlIHRydWUsIHRoZSBjb3JyZXNwb25kaW5nIEphdmFTY3Jp
cHQgdmFsdWUgYmVjb21lcyBhIHdlYWsgdmFsdWUsCisvLyBtZWFuaW5nIGl0IGNhbiBiZSByZWxl
YXNlZCBieSB0aGUgSmF2YVNjcmlwdCBnYXJiYWdlIGNvbGxlY3RvciBhdCBhbnkgdGltZS4KKy8v
CisvLyBUaGUgcHJpbWFyeSB1c2UgY2FzZSBmb3IgSlNNYW5hZ2VkVmFsdWUgaXMgZm9yIHNhZmVs
eSByZWZlcmVuY2luZyBKU1ZhbHVlcyAKKy8vIGZyb20gdGhlIE9iamVjdGl2ZS1DIGhlYXAuIEl0
IGlzIGluY29ycmVjdCB0byBzdG9yZSBhIEpTVmFsdWUgaW50byBhbiAKKy8vIE9iamVjdGl2ZS1D
IGhlYXAgb2JqZWN0LCBhcyB0aGlzIGNhbiB2ZXJ5IGVhc2lseSBjcmVhdGUgYSByZWZlcmVuY2Ug
Y3ljbGUsIAorLy8ga2VlcGluZyB0aGUgZW50aXJlIEpTQ29udGV4dCBhbGl2ZS4gCiBOU19DTEFT
U19BVkFJTEFCTEUoMTBfOSwgTkEpCiBAaW50ZXJmYWNlIEpTTWFuYWdlZFZhbHVlIDogTlNPYmpl
Y3QKIAorLy8gQ29udmVuaWVuY2UgbWV0aG9kIGZvciBjcmVhdGluZyBKU01hbmFnZWRWYWx1ZXMg
ZnJvbSBKU1ZhbHVlcy4KICsgKEpTTWFuYWdlZFZhbHVlICopbWFuYWdlZFZhbHVlV2l0aFZhbHVl
OihKU1ZhbHVlICopdmFsdWU7CiAKKy8vIENyZWF0ZSBhIEpTTWFuYWdlZFZhbHVlLgogLSAoaWQp
aW5pdFdpdGhWYWx1ZTooSlNWYWx1ZSAqKXZhbHVlOwogCisvLyBHZXQgdGhlIEpTVmFsdWUgdG8g
d2hpY2ggdGhpcyBKU01hbmFnZWRWYWx1ZSByZWZlcnMuIElmIHRoZSBKYXZhU2NyaXB0IHZhbHVl
IGhhcyBiZWVuIGNvbGxlY3RlZCwKKy8vIHRoaXMgbWV0aG9kIHJldHVybnMgbmlsLgogLSAoSlNW
YWx1ZSAqKXZhbHVlOwogCiBAZW5kCkluZGV4OiBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJL0pT
VmlydHVhbE1hY2hpbmUuaAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvSmF2YVNjcmlwdENvcmUvQVBJ
L0pTVmlydHVhbE1hY2hpbmUuaAkocmV2aXNpb24gMTQ4NzEzKQorKysgU291cmNlL0phdmFTY3Jp
cHRDb3JlL0FQSS9KU1ZpcnR1YWxNYWNoaW5lLmgJKHdvcmtpbmcgY29weSkKQEAgLTM1LDggKzM1
LDIxIEBACiBOU19DTEFTU19BVkFJTEFCTEUoMTBfOSwgTkEpCiBAaW50ZXJmYWNlIEpTVmlydHVh
bE1hY2hpbmUgOiBOU09iamVjdAogCisvLyBDcmVhdGUgYSBuZXcgSlNWaXJ0dWFsTWFjaGluZS4K
IC0gKGlkKWluaXQ7CiAKKy8vIGFkZE1hbmFnZWRSZWZlcmVuY2U6d2l0aE93bmVyIGFuZCByZW1v
dmVNYW5hZ2VkUmVmZXJlbmNlOndpdGhPd25lciBhbGxvdyAKKy8vIGNsaWVudHMgb2YgSlNWaXJ0
dWFsTWFjaGluZSB0byBtYWtlIHRoZSBKYXZhU2NyaXB0IHJ1bnRpbWUgYXdhcmUgb2YgCisvLyBh
cmJpdHJhcnkgZXh0ZXJuYWwgT2JqZWN0aXZlLUMgb2JqZWN0IGdyYXBocy4gVGhlIHJ1bnRpbWUg
Y2FuIHRoZW4gdXNlIAorLy8gdGhpcyBpbmZvcm1hdGlvbiB0byByZXRhaW4gYW55IEphdmFTY3Jp
cHQgdmFsdWVzIHRoYXQgYXJlIHJlZmVyZW5jZWQgCisvLyBmcm9tIHNvbWV3aGVyZSBpbiBzYWlk
IG9iamVjdCBncmFwaC4KKy8vIAorLy8gRm9yIGNvcnJlY3QgYmVoYXZpb3IgY2xpZW50cyBtdXN0
IG1ha2UgdGhlaXIgZXh0ZXJuYWwgb2JqZWN0IGdyYXBocyAKKy8vIHJlYWNoYWJsZSBmcm9tIHdp
dGhpbiB0aGUgSmF2YVNjcmlwdCBydW50aW1lLiBJZiBhbiBPYmplY3RpdmUtQyBvYmplY3QgaXMg
CisvLyByZWFjaGFibGUgZnJvbSB3aXRoaW4gdGhlIEphdmFTY3JpcHQgcnVudGltZSwgYWxsIG1h
bmFnZWQgcmVmZXJlbmNlcyAKKy8vIHRyYW5zaXRpdmVseSByZWFjaGFibGUgZnJvbSBpdCBhcyBy
ZWNvcmRlZCB3aXRoIAorLy8gYWRkTWFuYWdlZFJlZmVyZW5jZTp3aXRoT3duZXI6IHdpbGwgYmUg
c2Nhbm5lZCBieSB0aGUgZ2FyYmFnZSBjb2xsZWN0b3IuCisvLyAKIC0gKHZvaWQpYWRkTWFuYWdl
ZFJlZmVyZW5jZTooaWQpb2JqZWN0IHdpdGhPd25lcjooaWQpb3duZXI7CiAtICh2b2lkKXJlbW92
ZU1hbmFnZWRSZWZlcmVuY2U6KGlkKW9iamVjdCB3aXRoT3duZXI6KGlkKW93bmVyOwogCg==
</data>
<flag name="review"
          id="220570"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>