<?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>32810</bug_id>
          
          <creation_ts>2009-12-20 21:19:58 -0800</creation_ts>
          <short_desc>Date binding support for Objective-C</short_desc>
          <delta_ts>2010-01-26 20:17:33 -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>All</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>
          <dependson>32698</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kent Tamura">tkent</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>darin</cc>
    
    <cc>eric</cc>
    
    <cc>sam</cc>
    
    <cc>timothy</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>173864</commentid>
    <comment_count>0</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2009-12-20 21:19:58 -0800</bug_when>
    <thetext>Like Bug#32698 for JavaScriptCore, we need to support Date type binding for Objective-C DOM binding.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174174</commentid>
    <comment_count>1</comment_count>
      <attachid>45365</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2009-12-21 21:43:01 -0800</bug_when>
    <thetext>Created attachment 45365
Proposed patch

This patch is similar to patches in Bug#32698 and Bug#32699.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174175</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-21 21:43:53 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45365 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174180</commentid>
    <comment_count>3</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2009-12-21 22:04:21 -0800</bug_when>
    <thetext>Generated code will be:

- (double)valueAsDate
{
    return IMPL-&gt;valueAsDate();
}

- (void)setValueAsDate:(double)newValueAsDate
{
    WebCore::ExceptionCode ec = 0;
    IMPL-&gt;setValueAsDate(newValueAsDate, ec);
    WebCore::raiseOnDOMError(ec);
}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174214</commentid>
    <comment_count>4</comment_count>
      <attachid>45369</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2009-12-22 00:31:09 -0800</bug_when>
    <thetext>Created attachment 45369
Proposed patch (rev.2)

- Remove #ifdef !LANGUAGE_COM.  COM binding support was removed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174215</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-22 00:31:42 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45369 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174291</commentid>
    <comment_count>6</comment_count>
      <attachid>45369</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2009-12-22 10:33:25 -0800</bug_when>
    <thetext>Comment on attachment 45369
Proposed patch (rev.2)

The type should be NSAbsoluteTime, not double.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174292</commentid>
    <comment_count>7</comment_count>
      <attachid>45369</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2009-12-22 10:35:17 -0800</bug_when>
    <thetext>Comment on attachment 45369
Proposed patch (rev.2)

WOuld making IsPrimitiveType return true for Date give you more of the code paths you need with out $idlType eq &quot;Date&quot;? Or is IsPrimitiveType used other places we don&apos;t want for Date? Could those be specialcased for Date?

Seems fine though…</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174294</commentid>
    <comment_count>8</comment_count>
      <attachid>45369</attachid>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2009-12-22 10:36:18 -0800</bug_when>
    <thetext>Comment on attachment 45369
Proposed patch (rev.2)

Darin is right, this should be NSAbsoluteTime.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174297</commentid>
    <comment_count>9</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2009-12-22 10:37:14 -0800</bug_when>
    <thetext>I do think this can be done without adding &quot;Date&quot; in so many different places. Maybe we can claim it&apos;s a primitive type.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174315</commentid>
    <comment_count>10</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2009-12-22 11:27:18 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; The type should be NSAbsoluteTime, not double.

Would you give me information about NSAbsoluteTime please?
I couldn&apos;t find it in header files and references.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174320</commentid>
    <comment_count>11</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2009-12-22 11:40:43 -0800</bug_when>
    <thetext>(In reply to comment #10)
&gt; Would you give me information about NSAbsoluteTime please?
&gt; I couldn&apos;t find it in header files and references.

Oops, sorry. It&apos;s NSTimeInterval (from NSDate.h). There should be an NSAbsoluteTime, but there is not!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174321</commentid>
    <comment_count>12</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2009-12-22 11:43:01 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; Oops, sorry. It&apos;s NSTimeInterval (from NSDate.h). There should be an
&gt; NSAbsoluteTime, but there is not!

But also, dates inside WebKit are in seconds from a base of 1970, whereas in AppKit they have a base of 2001. So we will need to correct by kCFAbsoluteTimeIntervalSince1970 as we do in CurrentTime.cpp.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174342</commentid>
    <comment_count>13</comment_count>
    <who name="Timothy Hatcher">timothy</who>
    <bug_when>2009-12-22 13:00:14 -0800</bug_when>
    <thetext>(In reply to comment #11)
&gt; (In reply to comment #10)
&gt; &gt; Would you give me information about NSAbsoluteTime please?
&gt; &gt; I couldn&apos;t find it in header files and references.
&gt; 
&gt; Oops, sorry. It&apos;s NSTimeInterval (from NSDate.h). There should be an
&gt; NSAbsoluteTime, but there is not!

There is CFAbsoluteTime, documented with an epoch of 2001. But I think NSTimeInterval is better to use since we are not a CF API.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174744</commentid>
    <comment_count>14</comment_count>
      <attachid>45464</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2009-12-23 23:46:26 -0800</bug_when>
    <thetext>Created attachment 45464
Proposed patch (rev.3)

- Map Date to NSTimeInterval
- Introduce functions to convert double from/to NSTimeInterval.
- Make Date a primitive type</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174745</commentid>
    <comment_count>15</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-23 23:51:45 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45464 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184741</commentid>
    <comment_count>16</comment_count>
      <attachid>45464</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2010-01-26 14:30:33 -0800</bug_when>
    <thetext>Comment on attachment 45464
Proposed patch (rev.3)

Looks good to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>184915</commentid>
    <comment_count>17</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-01-26 20:17:33 -0800</bug_when>
    <thetext>Committed r53890: &lt;http://trac.webkit.org/changeset/53890&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45365</attachid>
            <date>2009-12-21 21:43:01 -0800</date>
            <delta_ts>2009-12-22 00:31:09 -0800</delta_ts>
            <desc>Proposed patch</desc>
            <filename>0001-objc-date.patch</filename>
            <type>text/plain</type>
            <size>4761</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">RnJvbSBkM2E2OGViNjA2M2I2YWU0YmU4ODg3OTE4YjQ1MTFjZTZkODQ3MmI1IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW50IFRhbXVyYSA8dGtlbnRAY2hyb21pdW0ub3JnPgpEYXRl
OiBUdWUsIDIyIERlYyAyMDA5IDE0OjM4OjMzICswOTAwClN1YmplY3Q6IFtQQVRDSF0gb2JqYy1k
YXRlCgotLS0KIFdlYkNvcmUvQ2hhbmdlTG9nICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8
ICAgMTIgKysrKysrKysrKysrCiBXZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRv
ck9iakMucG0gfCAgIDExICsrKysrKystLS0tCiBXZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVu
dC5pZGwgICAgICAgICAgICAgfCAgICA0ICsrLS0KIDMgZmlsZXMgY2hhbmdlZCwgMjEgaW5zZXJ0
aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9XZWJDb3JlL0NoYW5nZUxvZyBi
L1dlYkNvcmUvQ2hhbmdlTG9nCmluZGV4IGFmOWYxN2IuLjhiMGM1NWQgMTAwNjQ0Ci0tLSBhL1dl
YkNvcmUvQ2hhbmdlTG9nCisrKyBiL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAK
KzIwMDktMTItMjEgIEtlbnQgVGFtdXJhICA8dGtlbnRAY2hyb21pdW0ub3JnPgorCisgICAgICAg
IFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIEFkZCBEYXRlIHR5cGUgc3Vw
cG9ydCBmb3IgT2JqZWN0aXZlLUMgYmluZGluZy4KKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtp
dC5vcmcvc2hvd19idWcuY2dpP2lkPTMyODEwCisKKyAgICAgICAgVGhlIERhdGUgdHlwZSBpbiBJ
RExzIGlzIG1hcHBlZCB0byBkb3VibGUgaW4gT2JqZWN0aXZlLUMuCisKKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtOgorICAgICAgICAqIGh0bWwvSFRNTElu
cHV0RWxlbWVudC5pZGw6IFJlbW92ZSBPYmplY3RpdmUtQyBleGNsdXNpb24gZm9yIHZhbHVlQXNE
YXRlLgorCiAyMDA5LTEyLTIxICBGdW1pdG9zaGkgVWthaSAgPHVrYWlAY2hyb21pdW0ub3JnPgog
CiAgICAgICAgIFJldmlld2VkIGJ5IEFsZXhleSBQcm9za3VyeWFrb3YuCmRpZmYgLS1naXQgYS9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0gYi9XZWJDb3JlL2Jp
bmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0KaW5kZXggOTEyNDhjNS4uZGVhZjY5
YiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpD
LnBtCisrKyBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbQpA
QCAtMzE2LDYgKzMxNiw3IEBAIHN1YiBHZXRDbGFzc05hbWUKICAgICByZXR1cm4gIkJPT0wiIGlm
ICRuYW1lIGVxICJib29sZWFuIjsKICAgICByZXR1cm4gInVuc2lnbmVkIiBpZiAkbmFtZSBlcSAi
dW5zaWduZWQgbG9uZyI7CiAgICAgcmV0dXJuICJpbnQiIGlmICRuYW1lIGVxICJsb25nIjsKKyAg
ICByZXR1cm4gImRvdWJsZSIgaWYgJG5hbWUgZXEgIkRhdGUiOwogICAgIHJldHVybiAiRE9NQWJz
dHJhY3RWaWV3IiBpZiAkbmFtZSBlcSAiRE9NV2luZG93IjsKICAgICByZXR1cm4gJG5hbWUgaWYg
JGNvZGVHZW5lcmF0b3ItPklzUHJpbWl0aXZlVHlwZSgkbmFtZSkgb3IgJG5hbWUgZXEgIkRPTUlt
cGxlbWVudGF0aW9uIiBvciAkbmFtZSBlcSAiRE9NVGltZVN0YW1wIjsKIApAQCAtNDQ2LDcgKzQ0
Nyw3IEBAIHN1YiBHZXRPYmpDVHlwZQogICAgIG15ICRuYW1lID0gR2V0Q2xhc3NOYW1lKCR0eXBl
KTsKIAogICAgIHJldHVybiAiaWQgPCRuYW1lPiIgaWYgSXNQcm90b2NvbFR5cGUoJHR5cGUpOwot
ICAgIHJldHVybiAkbmFtZSBpZiAkY29kZUdlbmVyYXRvci0+SXNQcmltaXRpdmVUeXBlKCR0eXBl
KSBvciAkdHlwZSBlcSAiRE9NVGltZVN0YW1wIjsKKyAgICByZXR1cm4gJG5hbWUgaWYgJGNvZGVH
ZW5lcmF0b3ItPklzUHJpbWl0aXZlVHlwZSgkdHlwZSkgb3IgJHR5cGUgZXEgIkRPTVRpbWVTdGFt
cCIgb3IgJHR5cGUgZXEgIkRhdGUiOwogICAgIHJldHVybiAidW5zaWduZWQgc2hvcnQiIGlmICR0
eXBlIGVxICJDb21wYXJlSG93IiBvciAkdHlwZSBlcSAiU1ZHUGFpbnRUeXBlIjsKICAgICByZXR1
cm4gIiRuYW1lICoiOwogfQpAQCAtNDc2LDcgKzQ3Nyw4IEBAIHN1YiBHZXRQcm9wZXJ0eUF0dHJp
YnV0ZXMKIHN1YiBDb252ZXJzaW9uTmVlZGVkCiB7CiAgICAgbXkgJHR5cGUgPSAkY29kZUdlbmVy
YXRvci0+U3RyaXBNb2R1bGUoc2hpZnQpOwotCisgICAgIyBEYXRlIG1heSBiZSBhIHBvaW50ZXIg
dHlwZSBpbiBnZW5lcmFsLCBidXQgd2UgdHJlYXQgaXQgYXMgZG91YmxlIGluIE9iamVjdGl2ZS1D
LgorICAgIHJldHVybiAwIGlmICR0eXBlIGVxICJEYXRlIjsKICAgICByZXR1cm4gISRjb2RlR2Vu
ZXJhdG9yLT5Jc05vblBvaW50ZXJUeXBlKCR0eXBlKSAmJiAhJGNvZGVHZW5lcmF0b3ItPklzU3Ry
aW5nVHlwZSgkdHlwZSkgJiYgIUlzTmF0aXZlT2JqQ1R5cGUoJHR5cGUpOwogfQogCkBAIC00ODUs
NyArNDg3LDcgQEAgc3ViIEdldE9iakNUeXBlR2V0dGVyCiAgICAgbXkgJGFyZ05hbWUgPSBzaGlm
dDsKICAgICBteSAkdHlwZSA9ICRjb2RlR2VuZXJhdG9yLT5TdHJpcE1vZHVsZShzaGlmdCk7CiAK
LSAgICByZXR1cm4gJGFyZ05hbWUgaWYgJGNvZGVHZW5lcmF0b3ItPklzUHJpbWl0aXZlVHlwZSgk
dHlwZSkgb3IgJGNvZGVHZW5lcmF0b3ItPklzU3RyaW5nVHlwZSgkdHlwZSkgb3IgSXNOYXRpdmVP
YmpDVHlwZSgkdHlwZSk7CisgICAgcmV0dXJuICRhcmdOYW1lIGlmICRjb2RlR2VuZXJhdG9yLT5J
c1ByaW1pdGl2ZVR5cGUoJHR5cGUpIG9yICRjb2RlR2VuZXJhdG9yLT5Jc1N0cmluZ1R5cGUoJHR5
cGUpIG9yIElzTmF0aXZlT2JqQ1R5cGUoJHR5cGUpIG9yICR0eXBlIGVxICJEYXRlIjsKICAgICBy
ZXR1cm4gJGFyZ05hbWUgLiAiTm9kZSIgaWYgJHR5cGUgZXEgIkV2ZW50VGFyZ2V0IjsKICAgICBy
ZXR1cm4gInN0YXRpY19jYXN0PFdlYkNvcmU6OlJhbmdlOjpDb21wYXJlSG93PigkYXJnTmFtZSki
IGlmICR0eXBlIGVxICJDb21wYXJlSG93IjsKICAgICByZXR1cm4gInN0YXRpY19jYXN0PFdlYkNv
cmU6OlNWR1BhaW50OjpTVkdQYWludFR5cGU+KCRhcmdOYW1lKSIgaWYgJHR5cGUgZXEgIlNWR1Bh
aW50VHlwZSI7CkBAIC01MjcsNiArNTI5LDcgQEAgc3ViIEFkZEluY2x1ZGVzRm9yVHlwZQogICAg
IG15ICR0eXBlID0gJGNvZGVHZW5lcmF0b3ItPlN0cmlwTW9kdWxlKHNoaWZ0KTsKIAogICAgIHJl
dHVybiBpZiAkY29kZUdlbmVyYXRvci0+SXNOb25Qb2ludGVyVHlwZSgkdHlwZSk7CisgICAgcmV0
dXJuIGlmICR0eXBlIGVxICJEYXRlIjsKIAogICAgIGlmIChJc05hdGl2ZU9iakNUeXBlKCR0eXBl
KSkgewogICAgICAgICBpZiAoJHR5cGUgZXEgIkNvbG9yIikgewpAQCAtMTI4OCw3ICsxMjkxLDcg
QEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAgICAgICAgICBwdXNoKEBpbXBs
Q29udGVudCwgJHNldHRlclNpZyk7CiAgICAgICAgICAgICAgICAgcHVzaChAaW1wbENvbnRlbnQs
ICJ7XG4iKTsKIAotICAgICAgICAgICAgICAgIHVubGVzcyAoJGNvZGVHZW5lcmF0b3ItPklzUHJp
bWl0aXZlVHlwZSgkaWRsVHlwZSkgb3IgJGNvZGVHZW5lcmF0b3ItPklzU3RyaW5nVHlwZSgkaWRs
VHlwZSkpIHsKKyAgICAgICAgICAgICAgICB1bmxlc3MgKCRjb2RlR2VuZXJhdG9yLT5Jc1ByaW1p
dGl2ZVR5cGUoJGlkbFR5cGUpIG9yICRjb2RlR2VuZXJhdG9yLT5Jc1N0cmluZ1R5cGUoJGlkbFR5
cGUpIG9yICRpZGxUeXBlIGVxICJEYXRlIikgewogICAgICAgICAgICAgICAgICAgICBwdXNoKEBp
bXBsQ29udGVudCwgIiAgICBBU1NFUlQoJGFyZ05hbWUpO1xuXG4iKTsKICAgICAgICAgICAgICAg
ICB9CiAKZGlmZiAtLWdpdCBhL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmlkbCBiL1dl
YkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmlkbAppbmRleCBkMzU1ZDY5Li5jYWQ3MThjIDEw
MDY0NAotLS0gYS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5pZGwKKysrIGIvV2ViQ29y
ZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaWRsCkBAIC02Nyw4ICs2Nyw4IEBAIG1vZHVsZSBodG1s
IHsKICAgICAgICAgICAgICAgICAgYXR0cmlidXRlIFtDb252ZXJ0TnVsbFRvTnVsbFN0cmluZywg
SlNDQ3VzdG9tR2V0dGVyXSBET01TdHJpbmcgdHlwZTsgLy8gcmVhZG9ubHkgZHJvcHBlZCBhcyBw
YXJ0IG9mIERPTSBsZXZlbCAyCiAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBbQ29udmVydE51
bGxUb051bGxTdHJpbmddIERPTVN0cmluZyB1c2VNYXA7CiAgICAgICAgICAgICAgICAgIGF0dHJp
YnV0ZSBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyB2YWx1ZTsKLSNpZiBkZWZp
bmVkKExBTkdVQUdFX0pBVkFTQ1JJUFQpICYmIExBTkdVQUdFX0pBVkFTQ1JJUFQKLSAgICAgICAg
ICAgICAgICAgLy8gRklYTUU6IEFkZCBEYXRlIHN1cHBvcnQgZm9yIE9iamVjdGl2ZS1DIGFuZCBD
T00uCisjaWYgIWRlZmluZWQoTEFOR1VBR0VfQ09NKSB8fCAhTEFOR1VBR0VfQ09NCisgICAgICAg
ICAgICAgICAgIC8vIEZJWE1FOiBBZGQgRGF0ZSBzdXBwb3J0IGZvciBDT00uCiAgICAgICAgICAg
ICAgICAgIGF0dHJpYnV0ZSBEYXRlICAgICAgICAgICAgdmFsdWVBc0RhdGUgc2V0dGVyIHJhaXNl
cyhET01FeGNlcHRpb24pOwogI2VuZGlmCiAjaWYgZGVmaW5lZChFTkFCTEVfREFUQUxJU1QpICYm
IEVOQUJMRV9EQVRBTElTVAotLSAKMS42LjMuMwoK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45369</attachid>
            <date>2009-12-22 00:31:09 -0800</date>
            <delta_ts>2009-12-23 23:46:26 -0800</delta_ts>
            <desc>Proposed patch (rev.2)</desc>
            <filename>0001-objc-date-2.patch</filename>
            <type>text/plain</type>
            <size>4734</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">RnJvbSBmODg3MDZiMGQzMDJlM2I0NTg1OWEzOWU1MmUxZDQ1OWVlNTkxNmM0IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW50IFRhbXVyYSA8dGtlbnRAY2hyb21pdW0ub3JnPgpEYXRl
OiBUdWUsIDIyIERlYyAyMDA5IDE0OjM4OjMzICswOTAwClN1YmplY3Q6IFtQQVRDSF0gb2JqYy1k
YXRlLTIKCi0tLQogV2ViQ29yZS9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAxMiArKysrKysrKysrKysKIFdlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJh
dG9yT2JqQy5wbSB8ICAgMTEgKysrKysrKy0tLS0KIFdlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVt
ZW50LmlkbCAgICAgICAgICAgICB8ICAgIDMgLS0tCiAzIGZpbGVzIGNoYW5nZWQsIDE5IGluc2Vy
dGlvbnMoKyksIDcgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cg
Yi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBhZjlmMTdiLi44YjBjNTVkIDEwMDY0NAotLS0gYS9X
ZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE1IEBA
CisyMDA5LTEyLTIxICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVtLm9yZz4KKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBBZGQgRGF0ZSB0eXBlIHN1
cHBvcnQgZm9yIE9iamVjdGl2ZS1DIGJpbmRpbmcuCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMjgxMAorCisgICAgICAgIFRoZSBEYXRlIHR5cGUgaW4g
SURMcyBpcyBtYXBwZWQgdG8gZG91YmxlIGluIE9iamVjdGl2ZS1DLgorCisgICAgICAgICogYmlu
ZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbToKKyAgICAgICAgKiBodG1sL0hUTUxJ
bnB1dEVsZW1lbnQuaWRsOiBSZW1vdmUgT2JqZWN0aXZlLUMgZXhjbHVzaW9uIGZvciB2YWx1ZUFz
RGF0ZS4KKwogMjAwOS0xMi0yMSAgRnVtaXRvc2hpIFVrYWkgIDx1a2FpQGNocm9taXVtLm9yZz4K
IAogICAgICAgICBSZXZpZXdlZCBieSBBbGV4ZXkgUHJvc2t1cnlha292LgpkaWZmIC0tZ2l0IGEv
V2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtIGIvV2ViQ29yZS9i
aW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtCmluZGV4IDkxMjQ4YzUuLmRlYWY2
OWIgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2Jq
Qy5wbQorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0K
QEAgLTMxNiw2ICszMTYsNyBAQCBzdWIgR2V0Q2xhc3NOYW1lCiAgICAgcmV0dXJuICJCT09MIiBp
ZiAkbmFtZSBlcSAiYm9vbGVhbiI7CiAgICAgcmV0dXJuICJ1bnNpZ25lZCIgaWYgJG5hbWUgZXEg
InVuc2lnbmVkIGxvbmciOwogICAgIHJldHVybiAiaW50IiBpZiAkbmFtZSBlcSAibG9uZyI7Cisg
ICAgcmV0dXJuICJkb3VibGUiIGlmICRuYW1lIGVxICJEYXRlIjsKICAgICByZXR1cm4gIkRPTUFi
c3RyYWN0VmlldyIgaWYgJG5hbWUgZXEgIkRPTVdpbmRvdyI7CiAgICAgcmV0dXJuICRuYW1lIGlm
ICRjb2RlR2VuZXJhdG9yLT5Jc1ByaW1pdGl2ZVR5cGUoJG5hbWUpIG9yICRuYW1lIGVxICJET01J
bXBsZW1lbnRhdGlvbiIgb3IgJG5hbWUgZXEgIkRPTVRpbWVTdGFtcCI7CiAKQEAgLTQ0Niw3ICs0
NDcsNyBAQCBzdWIgR2V0T2JqQ1R5cGUKICAgICBteSAkbmFtZSA9IEdldENsYXNzTmFtZSgkdHlw
ZSk7CiAKICAgICByZXR1cm4gImlkIDwkbmFtZT4iIGlmIElzUHJvdG9jb2xUeXBlKCR0eXBlKTsK
LSAgICByZXR1cm4gJG5hbWUgaWYgJGNvZGVHZW5lcmF0b3ItPklzUHJpbWl0aXZlVHlwZSgkdHlw
ZSkgb3IgJHR5cGUgZXEgIkRPTVRpbWVTdGFtcCI7CisgICAgcmV0dXJuICRuYW1lIGlmICRjb2Rl
R2VuZXJhdG9yLT5Jc1ByaW1pdGl2ZVR5cGUoJHR5cGUpIG9yICR0eXBlIGVxICJET01UaW1lU3Rh
bXAiIG9yICR0eXBlIGVxICJEYXRlIjsKICAgICByZXR1cm4gInVuc2lnbmVkIHNob3J0IiBpZiAk
dHlwZSBlcSAiQ29tcGFyZUhvdyIgb3IgJHR5cGUgZXEgIlNWR1BhaW50VHlwZSI7CiAgICAgcmV0
dXJuICIkbmFtZSAqIjsKIH0KQEAgLTQ3Niw3ICs0NzcsOCBAQCBzdWIgR2V0UHJvcGVydHlBdHRy
aWJ1dGVzCiBzdWIgQ29udmVyc2lvbk5lZWRlZAogewogICAgIG15ICR0eXBlID0gJGNvZGVHZW5l
cmF0b3ItPlN0cmlwTW9kdWxlKHNoaWZ0KTsKLQorICAgICMgRGF0ZSBtYXkgYmUgYSBwb2ludGVy
IHR5cGUgaW4gZ2VuZXJhbCwgYnV0IHdlIHRyZWF0IGl0IGFzIGRvdWJsZSBpbiBPYmplY3RpdmUt
Qy4KKyAgICByZXR1cm4gMCBpZiAkdHlwZSBlcSAiRGF0ZSI7CiAgICAgcmV0dXJuICEkY29kZUdl
bmVyYXRvci0+SXNOb25Qb2ludGVyVHlwZSgkdHlwZSkgJiYgISRjb2RlR2VuZXJhdG9yLT5Jc1N0
cmluZ1R5cGUoJHR5cGUpICYmICFJc05hdGl2ZU9iakNUeXBlKCR0eXBlKTsKIH0KIApAQCAtNDg1
LDcgKzQ4Nyw3IEBAIHN1YiBHZXRPYmpDVHlwZUdldHRlcgogICAgIG15ICRhcmdOYW1lID0gc2hp
ZnQ7CiAgICAgbXkgJHR5cGUgPSAkY29kZUdlbmVyYXRvci0+U3RyaXBNb2R1bGUoc2hpZnQpOwog
Ci0gICAgcmV0dXJuICRhcmdOYW1lIGlmICRjb2RlR2VuZXJhdG9yLT5Jc1ByaW1pdGl2ZVR5cGUo
JHR5cGUpIG9yICRjb2RlR2VuZXJhdG9yLT5Jc1N0cmluZ1R5cGUoJHR5cGUpIG9yIElzTmF0aXZl
T2JqQ1R5cGUoJHR5cGUpOworICAgIHJldHVybiAkYXJnTmFtZSBpZiAkY29kZUdlbmVyYXRvci0+
SXNQcmltaXRpdmVUeXBlKCR0eXBlKSBvciAkY29kZUdlbmVyYXRvci0+SXNTdHJpbmdUeXBlKCR0
eXBlKSBvciBJc05hdGl2ZU9iakNUeXBlKCR0eXBlKSBvciAkdHlwZSBlcSAiRGF0ZSI7CiAgICAg
cmV0dXJuICRhcmdOYW1lIC4gIk5vZGUiIGlmICR0eXBlIGVxICJFdmVudFRhcmdldCI7CiAgICAg
cmV0dXJuICJzdGF0aWNfY2FzdDxXZWJDb3JlOjpSYW5nZTo6Q29tcGFyZUhvdz4oJGFyZ05hbWUp
IiBpZiAkdHlwZSBlcSAiQ29tcGFyZUhvdyI7CiAgICAgcmV0dXJuICJzdGF0aWNfY2FzdDxXZWJD
b3JlOjpTVkdQYWludDo6U1ZHUGFpbnRUeXBlPigkYXJnTmFtZSkiIGlmICR0eXBlIGVxICJTVkdQ
YWludFR5cGUiOwpAQCAtNTI3LDYgKzUyOSw3IEBAIHN1YiBBZGRJbmNsdWRlc0ZvclR5cGUKICAg
ICBteSAkdHlwZSA9ICRjb2RlR2VuZXJhdG9yLT5TdHJpcE1vZHVsZShzaGlmdCk7CiAKICAgICBy
ZXR1cm4gaWYgJGNvZGVHZW5lcmF0b3ItPklzTm9uUG9pbnRlclR5cGUoJHR5cGUpOworICAgIHJl
dHVybiBpZiAkdHlwZSBlcSAiRGF0ZSI7CiAKICAgICBpZiAoSXNOYXRpdmVPYmpDVHlwZSgkdHlw
ZSkpIHsKICAgICAgICAgaWYgKCR0eXBlIGVxICJDb2xvciIpIHsKQEAgLTEyODgsNyArMTI5MSw3
IEBAIHN1YiBHZW5lcmF0ZUltcGxlbWVudGF0aW9uCiAgICAgICAgICAgICAgICAgcHVzaChAaW1w
bENvbnRlbnQsICRzZXR0ZXJTaWcpOwogICAgICAgICAgICAgICAgIHB1c2goQGltcGxDb250ZW50
LCAie1xuIik7CiAKLSAgICAgICAgICAgICAgICB1bmxlc3MgKCRjb2RlR2VuZXJhdG9yLT5Jc1By
aW1pdGl2ZVR5cGUoJGlkbFR5cGUpIG9yICRjb2RlR2VuZXJhdG9yLT5Jc1N0cmluZ1R5cGUoJGlk
bFR5cGUpKSB7CisgICAgICAgICAgICAgICAgdW5sZXNzICgkY29kZUdlbmVyYXRvci0+SXNQcmlt
aXRpdmVUeXBlKCRpZGxUeXBlKSBvciAkY29kZUdlbmVyYXRvci0+SXNTdHJpbmdUeXBlKCRpZGxU
eXBlKSBvciAkaWRsVHlwZSBlcSAiRGF0ZSIpIHsKICAgICAgICAgICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICIgICAgQVNTRVJUKCRhcmdOYW1lKTtcblxuIik7CiAgICAgICAgICAgICAg
ICAgfQogCmRpZmYgLS1naXQgYS9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5pZGwgYi9X
ZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5pZGwKaW5kZXggZDM1NWQ2OS4uNjYyMGQ5NiAx
MDA2NDQKLS0tIGEvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaWRsCisrKyBiL1dlYkNv
cmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmlkbApAQCAtNjcsMTAgKzY3LDcgQEAgbW9kdWxlIGh0
bWwgewogICAgICAgICAgICAgICAgICBhdHRyaWJ1dGUgW0NvbnZlcnROdWxsVG9OdWxsU3RyaW5n
LCBKU0NDdXN0b21HZXR0ZXJdIERPTVN0cmluZyB0eXBlOyAvLyByZWFkb25seSBkcm9wcGVkIGFz
IHBhcnQgb2YgRE9NIGxldmVsIDIKICAgICAgICAgICAgICAgICAgYXR0cmlidXRlIFtDb252ZXJ0
TnVsbFRvTnVsbFN0cmluZ10gRE9NU3RyaW5nIHVzZU1hcDsKICAgICAgICAgICAgICAgICAgYXR0
cmlidXRlIFtDb252ZXJ0TnVsbFRvTnVsbFN0cmluZ10gRE9NU3RyaW5nIHZhbHVlOwotI2lmIGRl
ZmluZWQoTEFOR1VBR0VfSkFWQVNDUklQVCkgJiYgTEFOR1VBR0VfSkFWQVNDUklQVAotICAgICAg
ICAgICAgICAgICAvLyBGSVhNRTogQWRkIERhdGUgc3VwcG9ydCBmb3IgT2JqZWN0aXZlLUMgYW5k
IENPTS4KICAgICAgICAgICAgICAgICAgYXR0cmlidXRlIERhdGUgICAgICAgICAgICB2YWx1ZUFz
RGF0ZSBzZXR0ZXIgcmFpc2VzKERPTUV4Y2VwdGlvbik7Ci0jZW5kaWYKICNpZiBkZWZpbmVkKEVO
QUJMRV9EQVRBTElTVCkgJiYgRU5BQkxFX0RBVEFMSVNUCiAgICAgICAgIHJlYWRvbmx5IGF0dHJp
YnV0ZSBIVE1MT3B0aW9uRWxlbWVudCBzZWxlY3RlZE9wdGlvbjsKICNlbmRpZgotLSAKMS42LjMu
MwoK
</data>
<flag name="review"
          id="27398"
          type_id="1"
          status="-"
          setter="timothy"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45464</attachid>
            <date>2009-12-23 23:46:26 -0800</date>
            <delta_ts>2010-01-26 19:58:10 -0800</delta_ts>
            <desc>Proposed patch (rev.3)</desc>
            <filename>0001-objc-date-3.patch</filename>
            <type>text/plain</type>
            <size>8734</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">RnJvbSAxYjNkNmQ4NjI0MWM1MWYwOWY4M2E3NzM4MDVmOTZiMDUzMDVjN2IzIE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBLZW50IFRhbXVyYSA8dGtlbnRAY2hyb21pdW0ub3JnPgpEYXRl
OiBUdWUsIDIyIERlYyAyMDA5IDE0OjM4OjMzICswOTAwClN1YmplY3Q6IFtQQVRDSF0gb2JqYy1k
YXRlLTMKCi0tLQogV2ViQ29yZS9DaGFuZ2VMb2cgICAgICAgICAgICAgICAgICAgICAgICAgICAg
IHwgICAxNiArKysrKysrKysrKysrKysrCiBXZWJDb3JlL2JpbmRpbmdzL29iamMvRE9NSW50ZXJu
YWwuaCAgICAgICAgICAgfCAgIDEwICsrKysrKysrKysKIFdlYkNvcmUvYmluZGluZ3Mvc2NyaXB0
cy9Db2RlR2VuZXJhdG9yLnBtICAgICB8ICAgIDMgKystCiBXZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvQ29kZUdlbmVyYXRvckpTLnBtICAgfCAgIDExICsrKysrLS0tLS0tCiBXZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0gfCAgICA3ICsrKysrKy0KIFdlYkNvcmUv
YmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0gICB8ICAgIDcgKystLS0tLQogV2Vi
Q29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaWRsICAgICAgICAgICAgIHwgICAgMyAtLS0KIDcg
ZmlsZXMgY2hhbmdlZCwgNDEgaW5zZXJ0aW9ucygrKSwgMTYgZGVsZXRpb25zKC0pCgpkaWZmIC0t
Z2l0IGEvV2ViQ29yZS9DaGFuZ2VMb2cgYi9XZWJDb3JlL0NoYW5nZUxvZwppbmRleCBhZjlmMTdi
Li5kNjY0N2Y5IDEwMDY0NAotLS0gYS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9XZWJDb3JlL0No
YW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDA5LTEyLTIzICBLZW50IFRhbXVyYSAgPHRrZW50
QGNocm9taXVtLm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKwor
ICAgICAgICBBZGQgRGF0ZSB0eXBlIHN1cHBvcnQgZm9yIE9iamVjdGl2ZS1DIGJpbmRpbmcuCisg
ICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0zMjgxMAorCisg
ICAgICAgIFRoZSBEYXRlIHR5cGUgaW4gSURMcyBpcyBtYXBwZWQgdG8gTlNUaW1lSW50ZXJ2YWwg
aW4gT2JqZWN0aXZlLUMuCisKKyAgICAgICAgKiBiaW5kaW5ncy9vYmpjL0RPTUludGVybmFsLmg6
IEFkZCBraXQoKSBhbmQgY29yZSgpIGZvciBOU1RpbWVJbnRlcnZhbC4KKyAgICAgICAgKiBiaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3IucG06IE1ha2UgRGF0ZSBhIHByaW1pdGl2ZSB0eXBl
LgorICAgICAgICAqIGJpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvckpTLnBtOiBNb3ZlIHNv
bWUgY29kZSBmb3IgdGhlIENvZGVHZWVucmF0b3IucG0gY2hhbmdlLgorICAgICAgICAqIGJpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG06CisgICAgICAgICogYmluZGluZ3Mvc2Ny
aXB0cy9Db2RlR2VuZXJhdG9yVjgucG06IE1vdmUgc29tZSBjb2RlIGZvciB0aGUgQ29kZUdlZW5y
YXRvci5wbSBjaGFuZ2UuCisgICAgICAgICogaHRtbC9IVE1MSW5wdXRFbGVtZW50LmlkbDogUmVt
b3ZlIE9iamVjdGl2ZS1DIGV4Y2x1c2lvbiBmb3IgdmFsdWVBc0RhdGUuCisKIDIwMDktMTItMjEg
IEZ1bWl0b3NoaSBVa2FpICA8dWthaUBjaHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQg
YnkgQWxleGV5IFByb3NrdXJ5YWtvdi4KZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3Mvb2Jq
Yy9ET01JbnRlcm5hbC5oIGIvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUludGVybmFsLmgKaW5k
ZXggNzJmNjNkMi4uNmQyNDQyYiAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RP
TUludGVybmFsLmgKKysrIGIvV2ViQ29yZS9iaW5kaW5ncy9vYmpjL0RPTUludGVybmFsLmgKQEAg
LTg3LDMgKzg3LDEzIEBAIFdlYkNvcmU6Ok5vZGVGaWx0ZXIqIGNvcmUoRE9NTm9kZUZpbHRlciAq
KTsKIERPTU5hdGl2ZVhQYXRoTlNSZXNvbHZlciAqa2l0KFdlYkNvcmU6OlhQYXRoTlNSZXNvbHZl
ciopOwogV2ViQ29yZTo6WFBhdGhOU1Jlc29sdmVyKiBjb3JlKERPTU5hdGl2ZVhQYXRoTlNSZXNv
bHZlciAqKTsKICNlbmRpZiAvLyBFTkFCTEUoWFBBVEgpCisKK2lubGluZSBOU1RpbWVJbnRlcnZh
bCBraXQoZG91YmxlIG1zU2luY2VFcG9jaCkKK3sKKyAgICByZXR1cm4gbXNTaW5jZUVwb2NoIC8g
MTAwMC4wIC0gTlNUaW1lSW50ZXJ2YWxTaW5jZTE5NzA7Cit9CisKK2lubGluZSBkb3VibGUgY29y
ZShOU1RpbWVJbnRlcnZhbCBzZWMpCit7CisgICAgcmV0dXJuIHNlYyAqIDEwMDAuMCArIE5TVGlt
ZUludGVydmFsU2luY2UxOTcwOworfQpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3IucG0gYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVy
YXRvci5wbQppbmRleCA1NGMzOWQ1Li5kYzNjN2MwIDEwMDY0NAotLS0gYS9XZWJDb3JlL2JpbmRp
bmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvci5wbQorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3Njcmlw
dHMvQ29kZUdlbmVyYXRvci5wbQpAQCAtNDMsNyArNDMsOCBAQCBteSAlcHJpbWl0aXZlVHlwZUhh
c2ggPSAoImludCIgPT4gMSwgInNob3J0IiA9PiAxLCAibG9uZyIgPT4gMSwgImxvbmcgbG9uZyIg
PT4gMQogICAgICAgICAgICAgICAgICAgICAgICAgICJ1bnNpZ25lZCBpbnQiID0+IDEsICJ1bnNp
Z25lZCBzaG9ydCIgPT4gMSwKICAgICAgICAgICAgICAgICAgICAgICAgICAidW5zaWduZWQgbG9u
ZyIgPT4gMSwgInVuc2lnbmVkIGxvbmcgbG9uZyIgPT4gMSwgCiAgICAgICAgICAgICAgICAgICAg
ICAgICAgImZsb2F0IiA9PiAxLCAiZG91YmxlIiA9PiAxLCAKLSAgICAgICAgICAgICAgICAgICAg
ICAgICAiYm9vbGVhbiIgPT4gMSwgInZvaWQiID0+IDEpOworICAgICAgICAgICAgICAgICAgICAg
ICAgICJib29sZWFuIiA9PiAxLCAidm9pZCIgPT4gMSwKKyAgICAgICAgICAgICAgICAgICAgICAg
ICAiRGF0ZSIgPT4gMSk7CiAKIG15ICVwb2RUeXBlSGFzaCA9ICgiU1ZHTnVtYmVyIiA9PiAxLCAi
U1ZHVHJhbnNmb3JtIiA9PiAxKTsKIG15ICVwb2RUeXBlc1dpdGhXcml0YWJsZVByb3BlcnRpZXNI
YXNoID0gKCJTVkdBbmdsZSIgPT4gMSwgIlNWR0xlbmd0aCIgPT4gMSwgIlNWR01hdHJpeCIgPT4g
MSwgIlNWR1BvaW50IiA9PiAxLCAiU1ZHUHJlc2VydmVBc3BlY3RSYXRpbyIgPT4gMSwgIlNWR1Jl
Y3QiID0+IDEpOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5kaW5ncy9zY3JpcHRzL0NvZGVHZW5l
cmF0b3JKUy5wbSBiL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9ySlMucG0K
aW5kZXggYTVlNmJiNi4uMmE3YTVjNSAxMDA2NDQKLS0tIGEvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JKUy5wbQorKysgYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29k
ZUdlbmVyYXRvckpTLnBtCkBAIC0xODcsOCArMTg3LDYgQEAgc3ViIEFkZEluY2x1ZGVzRm9yVHlw
ZQogICAgICMgcmVvcmdhbml6YXRpb24sIHdlIHdvbid0IG5lZWQgdGhlc2Ugc3BlY2lhbCBjYXNl
cy4KICAgICBpZiAoJGNvZGVHZW5lcmF0b3ItPklzUHJpbWl0aXZlVHlwZSgkdHlwZSkgb3IgQXZv
aWRJbmNsdXNpb25PZlR5cGUoJHR5cGUpCiAgICAgICAgIG9yICR0eXBlIGVxICJET01TdHJpbmci
IG9yICR0eXBlIGVxICJET01PYmplY3QiIG9yICR0eXBlIGVxICJBcnJheSIpIHsKLSAgICB9IGVs
c2lmICgkdHlwZSBlcSAiRGF0ZSIpIHsKLSAgICAgICAgJGltcGxJbmNsdWRlc3siPHJ1bnRpbWUv
RGF0ZUluc3RhbmNlLmg+In0gPSAxOwogICAgIH0gZWxzaWYgKCR0eXBlID1+IC9TVkdQYXRoU2Vn
LykgewogICAgICAgICAkam9pbmVkTmFtZSA9ICR0eXBlOwogICAgICAgICAkam9pbmVkTmFtZSA9
fiBzL0Fic3xSZWwvLzsKQEAgLTE5MDMsNyArMTkwMSwxMSBAQCBzdWIgTmF0aXZlVG9KU1ZhbHVl
CiAgICAgbXkgJHR5cGUgPSAkY29kZUdlbmVyYXRvci0+U3RyaXBNb2R1bGUoJHNpZ25hdHVyZS0+
dHlwZSk7CiAKICAgICByZXR1cm4gImpzQm9vbGVhbigkdmFsdWUpIiBpZiAkdHlwZSBlcSAiYm9v
bGVhbiI7Ci0gICAgCisKKyAgICAjIE5lZWQgdG8gY2hlY2sgRGF0ZSB0eXBlIGJlZm9yZSBJc1By
aW1pdGl2ZVR5cGUoKS4KKyAgICBpZiAoJHR5cGUgZXEgIkRhdGUiKSB7CisgICAgICAgIHJldHVy
biAianNEYXRlT3JOdWxsKGV4ZWMsICR2YWx1ZSkiOworICAgIH0KICAgICBpZiAoJGNvZGVHZW5l
cmF0b3ItPklzUHJpbWl0aXZlVHlwZSgkdHlwZSkgb3IgJHR5cGUgZXEgIlNWR1BhaW50VHlwZSIg
b3IgJHR5cGUgZXEgIkRPTVRpbWVTdGFtcCIpIHsKICAgICAgICAgJGltcGxJbmNsdWRlc3siPHJ1
bnRpbWUvSlNOdW1iZXJDZWxsLmg+In0gPSAxOwogICAgICAgICByZXR1cm4gImpzTnVtYmVyKGV4
ZWMsICR2YWx1ZSkiOwpAQCAtMTk5MCw5ICsxOTkyLDYgQEAgc3ViIE5hdGl2ZVRvSlNWYWx1ZQog
ICAgIH0gZWxzaWYgKCR0eXBlIGVxICJTZXJpYWxpemVkU2NyaXB0VmFsdWUiKSB7CiAgICAgICAg
ICRpbXBsSW5jbHVkZXN7IiR0eXBlLmgifSA9IDE7CiAgICAgICAgIHJldHVybiAiJHZhbHVlLT5k
ZXNlcmlhbGl6ZShleGVjKSI7Ci0gICAgfSBlbHNpZiAoJHR5cGUgZXEgIkRhdGUiKSB7Ci0gICAg
ICAgICRpbXBsSW5jbHVkZXN7IjxydW50aW1lL0RhdGVJbnN0YW5jZS5oPiJ9ID0gMTsKLSAgICAg
ICAgcmV0dXJuICJqc0RhdGVPck51bGwoZXhlYywgJHZhbHVlKSI7CiAgICAgfSBlbHNlIHsKICAg
ICAgICAgIyBEZWZhdWx0LCBpbmNsdWRlIGhlYWRlciB3aXRoIHNhbWUgbmFtZS4KICAgICAgICAg
JGltcGxJbmNsdWRlc3siSlMkdHlwZS5oIn0gPSAxOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtIGIvV2ViQ29yZS9iaW5kaW5ncy9zY3Jp
cHRzL0NvZGVHZW5lcmF0b3JPYmpDLnBtCmluZGV4IDkxMjQ4YzUuLmVhNjdkMTUgMTAwNjQ0Ci0t
LSBhL1dlYkNvcmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yT2JqQy5wbQorKysgYi9X
ZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29kZUdlbmVyYXRvck9iakMucG0KQEAgLTMxNiw2ICsz
MTYsNyBAQCBzdWIgR2V0Q2xhc3NOYW1lCiAgICAgcmV0dXJuICJCT09MIiBpZiAkbmFtZSBlcSAi
Ym9vbGVhbiI7CiAgICAgcmV0dXJuICJ1bnNpZ25lZCIgaWYgJG5hbWUgZXEgInVuc2lnbmVkIGxv
bmciOwogICAgIHJldHVybiAiaW50IiBpZiAkbmFtZSBlcSAibG9uZyI7CisgICAgcmV0dXJuICJO
U1RpbWVJbnRlcnZhbCIgaWYgJG5hbWUgZXEgIkRhdGUiOwogICAgIHJldHVybiAiRE9NQWJzdHJh
Y3RWaWV3IiBpZiAkbmFtZSBlcSAiRE9NV2luZG93IjsKICAgICByZXR1cm4gJG5hbWUgaWYgJGNv
ZGVHZW5lcmF0b3ItPklzUHJpbWl0aXZlVHlwZSgkbmFtZSkgb3IgJG5hbWUgZXEgIkRPTUltcGxl
bWVudGF0aW9uIiBvciAkbmFtZSBlcSAiRE9NVGltZVN0YW1wIjsKIApAQCAtMTIyMSw3ICsxMjIy
LDcgQEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAgICAgICAgICAkZ2V0dGVy
Q29udGVudFRhaWwgLj0gIikiOwogICAgICAgICAgICAgfSBlbHNpZiAoJGF0dHJpYnV0ZS0+c2ln
bmF0dXJlLT5leHRlbmRlZEF0dHJpYnV0ZXMtPnsiQ29udmVydEZyb21TdHJpbmcifSkgewogICAg
ICAgICAgICAgICAgICRnZXR0ZXJDb250ZW50VGFpbCAuPSAiLnRvSW50KCkiOwotICAgICAgICAg
ICAgfSBlbHNpZiAoJGNvZGVHZW5lcmF0b3ItPklzUG9kVHlwZSgkaWRsVHlwZSkpIHsKKyAgICAg
ICAgICAgIH0gZWxzaWYgKCRjb2RlR2VuZXJhdG9yLT5Jc1BvZFR5cGUoJGlkbFR5cGUpIG9yICRp
ZGxUeXBlIGVxICJEYXRlIikgewogICAgICAgICAgICAgICAgICRnZXR0ZXJDb250ZW50SGVhZCA9
ICJraXQoJGdldHRlckNvbnRlbnRIZWFkIjsKICAgICAgICAgICAgICAgICAkZ2V0dGVyQ29udGVu
dFRhaWwgLj0gIikiOwogICAgICAgICAgICAgfSBlbHNpZiAoSXNQcm90b2NvbFR5cGUoJGlkbFR5
cGUpIGFuZCAkaWRsVHlwZSBuZSAiRXZlbnRUYXJnZXQiKSB7CkBAIC0xMjkyLDYgKzEyOTMsMTAg
QEAgc3ViIEdlbmVyYXRlSW1wbGVtZW50YXRpb24KICAgICAgICAgICAgICAgICAgICAgcHVzaChA
aW1wbENvbnRlbnQsICIgICAgQVNTRVJUKCRhcmdOYW1lKTtcblxuIik7CiAgICAgICAgICAgICAg
ICAgfQogCisgICAgICAgICAgICAgICAgaWYgKCRpZGxUeXBlIGVxICJEYXRlIikgeworICAgICAg
ICAgICAgICAgICAgICAkYXJnID0gImNvcmUoIiAuICRhcmcgLiAiKSI7CisgICAgICAgICAgICAg
ICAgfQorCiAgICAgICAgICAgICAgICAgaWYgKCRwb2RUeXBlKSB7CiAgICAgICAgICAgICAgICAg
ICAgICMgU3BlY2lhbCBjYXNlIGZvciBET01TVkdOdW1iZXIKICAgICAgICAgICAgICAgICAgICAg
aWYgKCRwb2RUeXBlIGVxICJmbG9hdCIpIHsKZGlmZiAtLWdpdCBhL1dlYkNvcmUvYmluZGluZ3Mv
c2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0gYi9XZWJDb3JlL2JpbmRpbmdzL3NjcmlwdHMvQ29k
ZUdlbmVyYXRvclY4LnBtCmluZGV4IDcxYzY1MGUuLmIwNWE4NDkgMTAwNjQ0Ci0tLSBhL1dlYkNv
cmUvYmluZGluZ3Mvc2NyaXB0cy9Db2RlR2VuZXJhdG9yVjgucG0KKysrIGIvV2ViQ29yZS9iaW5k
aW5ncy9zY3JpcHRzL0NvZGVHZW5lcmF0b3JWOC5wbQpAQCAtMTU2LDcgKzE1Niw3IEBAIHN1YiBB
ZGRJbmNsdWRlc0ZvclR5cGUKIAogICAgICMgV2hlbiB3ZSdyZSBmaW5pc2hlZCB3aXRoIHRoZSBv
bmUtZmlsZS1wZXItY2xhc3MKICAgICAjIHJlb3JnYW5pemF0aW9uLCB3ZSB3b24ndCBuZWVkIHRo
ZXNlIHNwZWNpYWwgY2FzZXMuCi0gICAgaWYgKCRjb2RlR2VuZXJhdG9yLT5Jc1ByaW1pdGl2ZVR5
cGUoJHR5cGUpIG9yIEF2b2lkSW5jbHVzaW9uT2ZUeXBlKCR0eXBlKSBvciAkdHlwZSBlcSAiRGF0
ZSIpIHsKKyAgICBpZiAoJGNvZGVHZW5lcmF0b3ItPklzUHJpbWl0aXZlVHlwZSgkdHlwZSkgb3Ig
QXZvaWRJbmNsdXNpb25PZlR5cGUoJHR5cGUpKSB7CiAgICAgfSBlbHNpZiAoJHR5cGUgPX4gL1NW
R1BhdGhTZWcvKSB7CiAgICAgICAgICRqb2luZWROYW1lID0gJHR5cGU7CiAgICAgICAgICRqb2lu
ZWROYW1lID1+IHMvQWJzfFJlbC8vOwpAQCAtMjMyNiw2ICsyMzI2LDcgQEAgc3ViIFJldHVybk5h
dGl2ZVRvSlNWYWx1ZQogICAgIHJldHVybiAicmV0dXJuIHY4OjpJbnRlZ2VyOjpOZXcoJHZhbHVl
KSIgaWYgJG5hdGl2ZVR5cGUgZXEgImludCI7CiAgICAgcmV0dXJuICJyZXR1cm4gdjg6OkludGVn
ZXI6Ok5ld0Zyb21VbnNpZ25lZCgkdmFsdWUpIiBpZiAkbmF0aXZlVHlwZSBlcSAidW5zaWduZWQi
OwogCisgICAgcmV0dXJuICJyZXR1cm4gdjhEYXRlT3JOdWxsKCR2YWx1ZSk7IiBpZiAkdHlwZSBl
cSAiRGF0ZSI7CiAgICAgcmV0dXJuICJyZXR1cm4gdjg6Ok51bWJlcjo6TmV3KCR2YWx1ZSkiIGlm
ICRjb2RlR2VuZXJhdG9yLT5Jc1ByaW1pdGl2ZVR5cGUoJHR5cGUpIG9yICR0eXBlIGVxICJTVkdQ
YWludFR5cGUiOwogCiAgICAgaWYgKCRjb2RlR2VuZXJhdG9yLT5Jc1N0cmluZ1R5cGUoJHR5cGUp
KSB7CkBAIC0yMzgzLDEwICsyMzg0LDYgQEAgc3ViIFJldHVybk5hdGl2ZVRvSlNWYWx1ZQogICAg
ICAgICByZXR1cm4gInJldHVybiBXb3JrZXJDb250ZXh0RXhlY3V0aW9uUHJveHk6OmNvbnZlcnRU
b1Y4T2JqZWN0KFY4Q2xhc3NJbmRleDo6JGNsYXNzSW5kZXgsICR2YWx1ZSkiOwogICAgIH0KIAot
ICAgIGlmICgkdHlwZSBlcSAiRGF0ZSIpIHsKLSAgICAgICAgcmV0dXJuICJyZXR1cm4gdjhEYXRl
T3JOdWxsKCR2YWx1ZSk7IjsKLSAgICB9Ci0KICAgICBlbHNlIHsKICAgICAgICAgJGltcGxJbmNs
dWRlc3sid3RmL1JlZkNvdW50ZWQuaCJ9ID0gMTsKICAgICAgICAgJGltcGxJbmNsdWRlc3sid3Rm
L1JlZlB0ci5oIn0gPSAxOwpkaWZmIC0tZ2l0IGEvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1l
bnQuaWRsIGIvV2ViQ29yZS9odG1sL0hUTUxJbnB1dEVsZW1lbnQuaWRsCmluZGV4IGQzNTVkNjku
LjY2MjBkOTYgMTAwNjQ0Ci0tLSBhL1dlYkNvcmUvaHRtbC9IVE1MSW5wdXRFbGVtZW50LmlkbAor
KysgYi9XZWJDb3JlL2h0bWwvSFRNTElucHV0RWxlbWVudC5pZGwKQEAgLTY3LDEwICs2Nyw3IEBA
IG1vZHVsZSBodG1sIHsKICAgICAgICAgICAgICAgICAgYXR0cmlidXRlIFtDb252ZXJ0TnVsbFRv
TnVsbFN0cmluZywgSlNDQ3VzdG9tR2V0dGVyXSBET01TdHJpbmcgdHlwZTsgLy8gcmVhZG9ubHkg
ZHJvcHBlZCBhcyBwYXJ0IG9mIERPTSBsZXZlbCAyCiAgICAgICAgICAgICAgICAgIGF0dHJpYnV0
ZSBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyB1c2VNYXA7CiAgICAgICAgICAg
ICAgICAgIGF0dHJpYnV0ZSBbQ29udmVydE51bGxUb051bGxTdHJpbmddIERPTVN0cmluZyB2YWx1
ZTsKLSNpZiBkZWZpbmVkKExBTkdVQUdFX0pBVkFTQ1JJUFQpICYmIExBTkdVQUdFX0pBVkFTQ1JJ
UFQKLSAgICAgICAgICAgICAgICAgLy8gRklYTUU6IEFkZCBEYXRlIHN1cHBvcnQgZm9yIE9iamVj
dGl2ZS1DIGFuZCBDT00uCiAgICAgICAgICAgICAgICAgIGF0dHJpYnV0ZSBEYXRlICAgICAgICAg
ICAgdmFsdWVBc0RhdGUgc2V0dGVyIHJhaXNlcyhET01FeGNlcHRpb24pOwotI2VuZGlmCiAjaWYg
ZGVmaW5lZChFTkFCTEVfREFUQUxJU1QpICYmIEVOQUJMRV9EQVRBTElTVAogICAgICAgICByZWFk
b25seSBhdHRyaWJ1dGUgSFRNTE9wdGlvbkVsZW1lbnQgc2VsZWN0ZWRPcHRpb247CiAjZW5kaWYK
LS0gCjEuNi4zLjMKCg==
</data>
<flag name="review"
          id="27512"
          type_id="1"
          status="+"
          setter="eric"
    />
    <flag name="commit-queue"
          id="29913"
          type_id="3"
          status="-"
          setter="tkent"
    />
          </attachment>
      

    </bug>

</bugzilla>