<?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>39473</bug_id>
          
          <creation_ts>2010-05-20 23:34:12 -0700</creation_ts>
          <short_desc>[DRT/Chromium] Link resources and load Ahem font for Windows</short_desc>
          <delta_ts>2010-05-22 10:17:31 -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>Tools / Tests</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>Windows Vista</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>
          
          <blocked>35902</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Kent Tamura">tkent</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>dglazkov</cc>
    
    <cc>rolandsteiner</cc>
    
    <cc>tony</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>228767</commentid>
    <comment_count>0</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-05-20 23:34:12 -0700</bug_when>
    <thetext>[DRT/Chromium] Link resources and load Ahem font for Windows</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228769</commentid>
    <comment_count>1</comment_count>
      <attachid>56677</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-05-20 23:43:09 -0700</bug_when>
    <thetext>Created attachment 56677
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228770</commentid>
    <comment_count>2</comment_count>
      <attachid>56677</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2010-05-20 23:51:36 -0700</bug_when>
    <thetext>Comment on attachment 56677
Patch

&gt; +    // Load AHEM font.
&gt; +    // The DRT executable file is placed at:
&gt; +    //  - src/chrome/{Debug,Release}/DumpRenderTree.exe or
&gt; +    //  - WebKit/WebKit/chromium/{Debug,Release}/DumpRenderTree.exe.
&gt; +    // So, WebKit top directory is &quot;../../third_party/WebKit&quot; or &quot;../../..&quot;.

It might be easier to just copy AHEM____.TTF next to DumpRenderTree.exe with a gyp rule.  It makes the code for finding it a lot simpler.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228792</commentid>
    <comment_count>3</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-05-21 01:37:35 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; (From update of attachment 56677 [details])
&gt; &gt; +    // Load AHEM font.
&gt; &gt; +    // The DRT executable file is placed at:
&gt; &gt; +    //  - src/chrome/{Debug,Release}/DumpRenderTree.exe or
&gt; &gt; +    //  - WebKit/WebKit/chromium/{Debug,Release}/DumpRenderTree.exe.
&gt; &gt; +    // So, WebKit top directory is &quot;../../third_party/WebKit&quot; or &quot;../../..&quot;.
&gt; 
&gt; It might be easier to just copy AHEM____.TTF next to DumpRenderTree.exe with a gyp rule.  It makes the code for finding it a lot simpler.

It&apos;s a good idea!  Thanks.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228801</commentid>
    <comment_count>4</comment_count>
      <attachid>56683</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-05-21 02:09:00 -0700</bug_when>
    <thetext>Created attachment 56683
Patch (rev.2)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228805</commentid>
    <comment_count>5</comment_count>
      <attachid>56683</attachid>
    <who name="Tony Chang">tony</who>
    <bug_when>2010-05-21 02:19:02 -0700</bug_when>
    <thetext>Comment on attachment 56683
Patch (rev.2)

The Apple win code just uses AddFontResourceEx instead of AddFontMemResourceEx.  I don&apos;t have a preference between the two functions, but it might be less code.  Anyway, I think this is fine too.  LGTM with two style nits.

&gt; +    ::PathRemoveFileSpec(modulePath);
&gt; +    WCHAR ahemPath[_MAX_PATH];
&gt; +    struct _stat ahemStat;

Nit: Drop struct since it&apos;s not needed in C++.

&gt; +    DWORD numFonts = 1;
&gt; +    HANDLE h = ::AddFontMemResourceEx(fontBuffer, size, 0, &amp;numFonts);

Nit: handle or fontHandle would be a more descriptive variable name.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228817</commentid>
    <comment_count>6</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-05-21 02:47:01 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (From update of attachment 56683 [details])
&gt; The Apple win code just uses AddFontResourceEx instead of AddFontMemResourceEx.  I don&apos;t have a preference between the two functions, but it might be less code.  Anyway, I think this is fine too.  LGTM with two style nits.

I tried to use AddFontResourceEx(), but it failed on my Vista machine.  I couldn&apos;t find the failure reasons and workarounds other than AddFontMemResourceEx().
(AddFontResourceEx() doesn&apos;t provide an error code!)

&gt; &gt; +    ::PathRemoveFileSpec(modulePath);
&gt; &gt; +    WCHAR ahemPath[_MAX_PATH];
&gt; &gt; +    struct _stat ahemStat;
&gt; 
&gt; Nit: Drop struct since it&apos;s not needed in C++.
&gt; 
&gt; &gt; +    DWORD numFonts = 1;
&gt; &gt; +    HANDLE h = ::AddFontMemResourceEx(fontBuffer, size, 0, &amp;numFonts);
&gt; 
&gt; Nit: handle or fontHandle would be a more descriptive variable name.

I&apos;ll fix them.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228827</commentid>
    <comment_count>7</comment_count>
      <attachid>56690</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-05-21 03:04:49 -0700</bug_when>
    <thetext>Created attachment 56690
Patch (rev.3)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228828</commentid>
    <comment_count>8</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-05-21 03:06:34 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; &gt; +    WCHAR ahemPath[_MAX_PATH];
&gt; &gt; +    struct _stat ahemStat;
&gt; 
&gt; Nit: Drop struct since it&apos;s not needed in C++.

Unfortunately, removing &quot;struct&quot; caused an error.  Probably because _stat is a function name too.

&gt; &gt; +    HANDLE h = ::AddFontMemResourceEx(fontBuffer, size, 0, &amp;numFonts);
&gt; 
&gt; Nit: handle or fontHandle would be a more descriptive variable name.

Done.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>228902</commentid>
    <comment_count>9</comment_count>
      <attachid>56690</attachid>
    <who name="Dimitri Glazkov (Google)">dglazkov</who>
    <bug_when>2010-05-21 07:41:21 -0700</bug_when>
    <thetext>Comment on attachment 56690
Patch (rev.3)

ok.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>229275</commentid>
    <comment_count>10</comment_count>
      <attachid>56690</attachid>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-05-22 10:17:20 -0700</bug_when>
    <thetext>Comment on attachment 56690
Patch (rev.3)

Clearing flags on attachment: 56690

Committed r60005: &lt;http://trac.webkit.org/changeset/60005&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>229276</commentid>
    <comment_count>11</comment_count>
    <who name="Kent Tamura">tkent</who>
    <bug_when>2010-05-22 10:17:31 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56677</attachid>
            <date>2010-05-20 23:43:09 -0700</date>
            <delta_ts>2010-05-21 02:08:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-39473-20100521154307.patch</filename>
            <type>text/plain</type>
            <size>7405</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0v
Q2hhbmdlTG9nCmluZGV4IDhhNjhjNGU2ZTg0MzQ1MzNhNzVkZjcyNDk1MDVkOGQ3OTI2MGJmM2Eu
LjAxM2ZlMWZhMzQ0OGQyZjc3OGY1YjVmNTg4NGVmZGU4NzcxMzVmMGMgMTAwNjQ0Ci0tLSBhL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDEyIEBACisyMDEwLTA1LTIwICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBb
RFJUL0Nocm9taXVtXSBMaW5rIHJlc291cmNlcyBhbmQgbG9hZCBBaGVtIGZvbnQgZm9yIFdpbmRv
d3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5NDcz
CisKKyAgICAgICAgKiBXZWJLaXQuZ3lwOiBBZGQgbmV0IGFuZCB3ZWJraXQgcmVzb3VyY2VzIGZv
ciBXaW5kb3dzLgorCiAyMDEwLTA1LTIwICBWaWV0LVRydW5nIEx1dSAgPHZpZXR0cnVuZ2x1dUBj
aHJvbWl1bS5vcmc+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgRGFyaW4gRmlzaGVyLgpkaWZmIC0t
Z2l0IGEvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5neXAgYi9XZWJLaXQvY2hyb21pdW0vV2ViS2l0
Lmd5cAppbmRleCAyNDc0OGY4ZGU0YmUxNjZhOThhMjdhZmM4NDNjNTJkMmYwNTk5ZGFiLi4wMDQy
NmEwYzQ2NmFiMzUxNWFhZDMxZjQyMmRiYTkwMDk2Yjg4NDVmIDEwMDY0NAotLS0gYS9XZWJLaXQv
Y2hyb21pdW0vV2ViS2l0Lmd5cAorKysgYi9XZWJLaXQvY2hyb21pdW0vV2ViS2l0Lmd5cApAQCAt
NTc5LDYgKzU3OSwxNSBAQAogICAgICAgICAgICAgICAgICc8QChkcnRfZmlsZXMpJywKICAgICAg
ICAgICAgIF0sCiAgICAgICAgICAgICAnY29uZGl0aW9ucyc6IFsKKyAgICAgICAgICAgICAgICBb
J09TPT0id2luIicsIHsKKyAgICAgICAgICAgICAgICAgICAgJ3Jlc291cmNlX2luY2x1ZGVfZGly
cyc6IFsnPChTSEFSRURfSU5URVJNRURJQVRFX0RJUikvd2Via2l0J10sCisgICAgICAgICAgICAg
ICAgICAgICdzb3VyY2VzJzogWworICAgICAgICAgICAgICAgICAgICAgICAgJzwoU0hBUkVEX0lO
VEVSTUVESUFURV9ESVIpL25ldC9uZXRfcmVzb3VyY2VzLnJjJywKKyAgICAgICAgICAgICAgICAg
ICAgICAgICc8KFNIQVJFRF9JTlRFUk1FRElBVEVfRElSKS93ZWJraXQvd2Via2l0X2Nocm9taXVt
X3Jlc291cmNlcy5yYycsCisgICAgICAgICAgICAgICAgICAgICAgICAnPChTSEFSRURfSU5URVJN
RURJQVRFX0RJUikvd2Via2l0L3dlYmtpdF9yZXNvdXJjZXMucmMnLAorICAgICAgICAgICAgICAg
ICAgICAgICAgJzwoU0hBUkVEX0lOVEVSTUVESUFURV9ESVIpL3dlYmtpdC93ZWJraXRfc3RyaW5n
c19lbi1VUy5yYycsCisgICAgICAgICAgICAgICAgICAgIF0sCisgICAgICAgICAgICAgICAgfV0s
CiAgICAgICAgICAgICAgICAgWydPUz09Im1hYyInLCB7CiAgICAgICAgICAgICAgICAgICAgICdk
ZXBlbmRlbmNpZXMnOiBbJ0xheW91dFRlc3RIZWxwZXInXSwKIApkaWZmIC0tZ2l0IGEvV2ViS2l0
VG9vbHMvQ2hhbmdlTG9nIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCmluZGV4IDYxNWJkN2NlOGEw
ZTM3YjVjN2Q4OGY5OWEwYjkyMTA1MDA0OGYxOTYuLjAyN2UzOGRjYzAxOTc2Y2ExOGQ1NjUxYThm
OWQ0MWMzODVkYTNmNmQgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZworKysgYi9X
ZWJLaXRUb29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMC0wNS0yMCAgS2VudCBU
YW11cmEgIDx0a2VudEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZ
IChPT1BTISkuCisKKyAgICAgICAgW0RSVC9DaHJvbWl1bV0gTGluayByZXNvdXJjZXMgYW5kIGxv
YWQgQWhlbSBmb250IGZvciBXaW5kb3dzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3Jn
L3Nob3dfYnVnLmNnaT9pZD0zOTQ3MworCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21p
dW0vRHVtcFJlbmRlclRyZWUuY3BwOgorICAgICAgICAobWFpbik6IENhbGwgcGxhdGZvcm1Jbml0
KCkuCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmg6CisgICAg
ICAgICBEZWNsYXJlIHBsYXRmb3JtSW5pdCgpLiBJdCBpcyBub3QgcmVsYXRlZCB0byBUZXN0U2hl
bGwgY2xhc3MsIGJ1dCB0aGUKKyAgICAgICAgIGltcGxlbWVudGF0aW9uIG9mIHBhbHRmb3JtSW5p
dCgpIGlzIHBsYWNlZCBhdCBUZXN0U2hlbGwqLntjcHAsbW19LgorICAgICAgICAqIER1bXBSZW5k
ZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbEd0ay5jcHA6CisgICAgICAgIChwbGF0Zm9ybUluaXQp
OgorICAgICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbE1hYy5tbToKKyAg
ICAgICAgKHBsYXRmb3JtSW5pdCk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
VGVzdFNoZWxsV2luLmNwcDoKKyAgICAgICAgKHBsYXRmb3JtSW5pdCk6CisgICAgICAgICAtIE1h
a2Ugc3Rkb3V0L3N0ZGVyciBiaW5hcnkgbW9kZQorICAgICAgICAgLSBMb2FkIEFoZW0gZm9udAor
CiAyMDEwLTA1LTIwICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBBZGFtIEJhcnRoLgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRl
clRyZWUvY2hyb21pdW0vRHVtcFJlbmRlclRyZWUuY3BwIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRl
clRyZWUvY2hyb21pdW0vRHVtcFJlbmRlclRyZWUuY3BwCmluZGV4IGE5NjQ1MTg3NTBkNzJiYmVl
NTUyYzZmNmJkMmFkYWQ4MmMwNzZlMzQuLmFhODlkZmIzYWI1NGFkZDAzOGU4ZTI3Nzk5NTQzMTAx
NzUwMGFiZTAgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVt
L0R1bXBSZW5kZXJUcmVlLmNwcAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJv
bWl1bS9EdW1wUmVuZGVyVHJlZS5jcHAKQEAgLTU5LDYgKzU5LDcgQEAgc3RhdGljIHZvaWQgcnVu
VGVzdChUZXN0U2hlbGwmIHNoZWxsLCBUZXN0UGFyYW1zJiBwYXJhbXMsIGNvbnN0IHN0cmluZyYg
dGVzdE5hbWUKIGludCBtYWluKGludCBhcmdjLCBjaGFyKiBhcmd2W10pCiB7CiAgICAgd2Via2l0
X3N1cHBvcnQ6OlNldFVwVGVzdEVudmlyb25tZW50KCk7CisgICAgcGxhdGZvcm1Jbml0KCk7CiAK
ICAgICBUZXN0UGFyYW1zIHBhcmFtczsKICAgICBWZWN0b3I8c3RyaW5nPiB0ZXN0czsKZGlmZiAt
LWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbC5oIGIv
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmgKaW5kZXggMjgz
Y2JkNDYwNmU0MzU3N2E1MjljZGI3MmI2Nzg4ZmYyOTZhNmZiNC4uNmRkMDE5ODg3M2NkZDM1MzNk
YTJjNDJlMjQ0ZGRhNTQyNmQ5ZDkxOCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRl
clRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmgKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRy
ZWUvY2hyb21pdW0vVGVzdFNoZWxsLmgKQEAgLTE1MywzICsxNTMsNSBAQCBwcml2YXRlOgogICAg
IEhBTkRMRSBtX2ZpbmlzaGVkRXZlbnQ7CiAjZW5kaWYKIH07CisKK3ZvaWQgcGxhdGZvcm1Jbml0
KCk7CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0
U2hlbGxHdGsuY3BwIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNo
ZWxsR3RrLmNwcAppbmRleCBkNzE4ODFhYmYwMWY5MjFjOGEyYjQwOTJlOWZlYTI5MmQ1NGRiNzY0
Li5lMzFjYTBhYWExZWFhMmVmODhlN2M3ZWIyMDA5NDUwNjU0ZjM2MzJkIDEwMDY0NAotLS0gYS9X
ZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGxHdGsuY3BwCisrKyBi
L1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbEd0ay5jcHAKQEAg
LTYyLDMgKzYyLDcgQEAgdm9pZCBUZXN0U2hlbGw6OndhaXRUZXN0RmluaXNoZWQoKQogICAgIGFs
YXJtKDApOwogICAgIHNpZ25hbChTSUdBTFJNLCBTSUdfREZMKTsKIH0KKwordm9pZCBwbGF0Zm9y
bUluaXQoKQoreworfQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hy
b21pdW0vVGVzdFNoZWxsTWFjLm1tIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21p
dW0vVGVzdFNoZWxsTWFjLm1tCmluZGV4IGVjOGRiYWM0YjM5MzE2Nzk5ODA2NDgxNmE4ZWYyNGQ3
ZjI2ODI0NjMuLjIxOGI2ZDAxMzZkMjQ2NmEwODE4OGQ1ZmU5MzQ5MWIwNGZlMzgxYmYgMTAwNjQ0
Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbE1hYy5t
bQorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGxNYWMu
bW0KQEAgLTEyMywzICsxMjMsNyBAQCB2b2lkIFRlc3RTaGVsbDo6d2FpdFRlc3RGaW5pc2hlZCgp
CiAgICAgW3RocmVhZCBjYW5jZWxdOwogICAgIFt0aHJlYWQgcmVsZWFzZV07CiB9CisKK3ZvaWQg
cGxhdGZvcm1Jbml0KCkKK3sKK30KZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJU
cmVlL2Nocm9taXVtL1Rlc3RTaGVsbFdpbi5jcHAgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJl
ZS9jaHJvbWl1bS9UZXN0U2hlbGxXaW4uY3BwCmluZGV4IDJkODA2YTIxYTdhM2U3ZmZlOTYyMTQy
MDM1NDA0NjU0Y2QyYTQxMjQuLjYwNjA2NTU4NDY1N2IyMzA4YWYwZDc2ODlkMGUxNmNlZWRjMjcy
ZDggMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RT
aGVsbFdpbi5jcHAKKysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVz
dFNoZWxsV2luLmNwcApAQCAtMzIsNyArMzIsMTEgQEAKICNpbmNsdWRlICJUZXN0U2hlbGwuaCIK
IAogI2luY2x1ZGUgIndlYmtpdC9zdXBwb3J0L3dlYmtpdF9zdXBwb3J0LmgiCisjaW5jbHVkZSA8
ZmNudGwuaD4KKyNpbmNsdWRlIDxpby5oPgogI2luY2x1ZGUgPHByb2Nlc3MuaD4KKyNpbmNsdWRl
IDxzaGx3YXBpLmg+CisjaW5jbHVkZSA8c3lzL3N0YXQuaD4KIAogLy8gRGVmYXVsdCB0aW1lb3V0
IGluIG1zIGZvciBmaWxlIHBhZ2UgbG9hZHMgd2hlbiBpbiBsYXlvdXQgdGVzdCBtb2RlLgogY29u
c3QgaW50IGtEZWZhdWx0RmlsZVRlc3RUaW1lb3V0TWlsbGlzZWNzID0gMTAgKiAxMDAwOwpAQCAt
OTgsMyArMTAyLDU2IEBAIHZvaWQgVGVzdFNoZWxsOjp3YWl0VGVzdEZpbmlzaGVkKCkKICAgICAv
LyBXYWl0IHRvIGpvaW4gdGhlIHdhdGNoZG9nIHRocmVhZC4gICh1cCB0byAxcywgdGhlbiBxdWl0
KQogICAgIFdhaXRGb3JTaW5nbGVPYmplY3QodGhyZWFkSGFuZGxlLCAxMDAwKTsKIH0KKwordm9p
ZCBwbGF0Zm9ybUluaXQoKQoreworICAgIC8vIFNldCBzdGRvdXQvc3RkZXJyIGJpbmFyeSBtb2Rl
LgorICAgIF9zZXRtb2RlKF9maWxlbm8oc3Rkb3V0KSwgX09fQklOQVJZKTsKKyAgICBfc2V0bW9k
ZShfZmlsZW5vKHN0ZGVyciksIF9PX0JJTkFSWSk7CisKKyAgICAvLyBMb2FkIEFIRU0gZm9udC4K
KyAgICAvLyBUaGUgRFJUIGV4ZWN1dGFibGUgZmlsZSBpcyBwbGFjZWQgYXQ6CisgICAgLy8gIC0g
c3JjL2Nocm9tZS97RGVidWcsUmVsZWFzZX0vRHVtcFJlbmRlclRyZWUuZXhlIG9yCisgICAgLy8g
IC0gV2ViS2l0L1dlYktpdC9jaHJvbWl1bS97RGVidWcsUmVsZWFzZX0vRHVtcFJlbmRlclRyZWUu
ZXhlLgorICAgIC8vIFNvLCBXZWJLaXQgdG9wIGRpcmVjdG9yeSBpcyAiLi4vLi4vdGhpcmRfcGFy
dHkvV2ViS2l0IiBvciAiLi4vLi4vLi4iLgorICAgIFdDSEFSIG1vZHVsZVBhdGhbX01BWF9QQVRI
XTsKKyAgICBpZiAoITo6R2V0TW9kdWxlRmlsZU5hbWUoMCwgbW9kdWxlUGF0aCwgX01BWF9QQVRI
KSkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkNhbid0IGdldCB0aGUgbW9kdWxlIHBhdGgu
XG4iKTsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9CisgICAgOjpQYXRoUmVtb3ZlRmlsZVNwZWMo
bW9kdWxlUGF0aCk7CisgICAgY29uc3QgV0NIQVIqIGFoZW1QYXRoRnJvbVdlYktpdCA9IEwiV2Vi
S2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvZm9udHMvQUhFTV9fX18uVFRGIjsKKyAgICBXQ0hB
UiBhaGVtUGF0aFtfTUFYX1BBVEhdOworICAgIHN0cnVjdCBfc3RhdCBhaGVtU3RhdDsKKyAgICBh
aGVtUGF0aFtfTUFYX1BBVEggLSAxXSA9IDA7CisgICAgX3Nud3ByaW50ZihhaGVtUGF0aCwgX01B
WF9QQVRIIC0gMSwgTCIlcy8uLi8uLi90aGlyZF9wYXJ0eS9XZWJLaXQvJXMiLCBtb2R1bGVQYXRo
LCBhaGVtUGF0aEZyb21XZWJLaXQpOworICAgIGlmIChfd3N0YXQoYWhlbVBhdGgsICZhaGVtU3Rh
dCkgPT0gLTEpIHsKKyAgICAgICAgX3Nud3ByaW50ZihhaGVtUGF0aCwgX01BWF9QQVRIIC0gMSwg
TCIlcy8uLi8uLi8uLi8lcyIsIG1vZHVsZVBhdGgsIGFoZW1QYXRoRnJvbVdlYktpdCk7CisgICAg
ICAgIGlmIChfd3N0YXQoYWhlbVBhdGgsICZhaGVtU3RhdCkgPT0gLTEpIHsKKyAgICAgICAgICAg
IGZwcmludGYoc3RkZXJyLCAiQ2FuJ3QgYWNjZXNzOiAnJVMnXG4iLCBhaGVtUGF0aCk7CisgICAg
ICAgICAgICBleGl0KDEpOworICAgICAgICB9CisgICAgfQorCisgICAgRklMRSogZnAgPSBfd2Zv
cGVuKGFoZW1QYXRoLCBMInJiIik7CisgICAgaWYgKCFmcCkgeworICAgICAgICBfd3BlcnJvcihh
aGVtUGF0aCk7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQorICAgIHNpemVfdCBzaXplID0gYWhl
bVN0YXQuc3Rfc2l6ZTsKKyAgICBjaGFyKiBmb250QnVmZmVyID0gbmV3IGNoYXJbc2l6ZV07Cisg
ICAgaWYgKGZyZWFkKGZvbnRCdWZmZXIsIDEsIHNpemUsIGZwKSAhPSBzaXplKSB7CisgICAgICAg
IGZwcmludGYoc3RkZXJyLCAiQ2FuJ3QgcmVhZCB0aGUgZm9udDogJyVTJ1xuIiwgYWhlbVBhdGgp
OworICAgICAgICBmY2xvc2UoZnApOworICAgICAgICBleGl0KDEpOworICAgIH0KKyAgICBmY2xv
c2UoZnApOworICAgIERXT1JEIG51bUZvbnRzID0gMTsKKyAgICBIQU5ETEUgaCA9IDo6QWRkRm9u
dE1lbVJlc291cmNlRXgoZm9udEJ1ZmZlciwgc2l6ZSwgMCwgJm51bUZvbnRzKTsKKyAgICBkZWxl
dGVbXSBmb250QnVmZmVyOyAvLyBPUyBvd25zIGEgY29weSBvZiB0aGUgYnVmZmVyLgorICAgIGlm
ICghaCkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkZhaWxlZCB0byByZWdpc3RlciBBaGVt
IGZvbnQ6ICclUydcbiIsIGFoZW1QYXRoKTsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9CisgICAg
Ly8gV2UgZG9uJ3QgbmVlZCB0byByZWxlYXNlIHRoZSBmb250IGV4cGxpY2l0bHkuCit9Cg==
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56683</attachid>
            <date>2010-05-21 02:09:00 -0700</date>
            <delta_ts>2010-05-21 03:04:42 -0700</delta_ts>
            <desc>Patch (rev.2)</desc>
            <filename>bug-39473-20100521180858.patch</filename>
            <type>text/plain</type>
            <size>8088</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0v
Q2hhbmdlTG9nCmluZGV4IDhhNjhjNGU2ZTg0MzQ1MzNhNzVkZjcyNDk1MDVkOGQ3OTI2MGJmM2Eu
LmNjYjk5MDQyNTY4YmRjMGNlYjEzYjY1ODc4ZDdhZTkwMzExZDc5ZWIgMTAwNjQ0Ci0tLSBhL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDEwLTA1LTIwICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBb
RFJUL0Nocm9taXVtXSBMaW5rIHJlc291cmNlcyBhbmQgbG9hZCBBaGVtIGZvbnQgZm9yIFdpbmRv
d3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5NDcz
CisKKyAgICAgICAgKiBXZWJLaXQuZ3lwOgorICAgICAgICAgIEFkZCBuZXQgYW5kIHdlYmtpdCBy
ZXNvdXJjZXMgZm9yIFdpbmRvd3MuCisgICAgICAgICAgQ29weSBBSEVNX19fXy5UVEYgdG8gRHVt
cFJlbmRlclRyZWUuZXhlIGRpcmVjdG9yeS4KKwogMjAxMC0wNS0yMCAgVmlldC1UcnVuZyBMdXUg
IDx2aWV0dHJ1bmdsdXVAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmlu
IEZpc2hlci4KZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9XZWJLaXQuZ3lwIGIvV2ViS2l0
L2Nocm9taXVtL1dlYktpdC5neXAKaW5kZXggMjQ3NDhmOGRlNGJlMTY2YTk4YTI3YWZjODQzYzUy
ZDJmMDU5OWRhYi4uOTRkN2E0Njg4MTc5MDBlN2FjMWQ3YWEwZjEyZmJhMDBhYzAxNjU3ZSAxMDA2
NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5neXAKKysrIGIvV2ViS2l0L2Nocm9taXVt
L1dlYktpdC5neXAKQEAgLTQ3LDYgKzQ3LDcgQEAKICAgICAgICAgICAgICAgICAnY2hyb21pdW1f
c3JjX2Rpcic6ICcuLi8uLi8uLi8uLicsCiAgICAgICAgICAgICB9XSwKICAgICAgICAgXSwKKyAg
ICAgICAgJ2FoZW1fcGF0aCc6ICcuLi8uLi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9m
b250cy9BSEVNX19fXy5UVEYnLAogICAgIH0sCiAgICAgJ3RhcmdldHMnOiBbCiAgICAgICAgIHsK
QEAgLTU3OSwxMSArNTgwLDI0IEBACiAgICAgICAgICAgICAgICAgJzxAKGRydF9maWxlcyknLAog
ICAgICAgICAgICAgXSwKICAgICAgICAgICAgICdjb25kaXRpb25zJzogWworICAgICAgICAgICAg
ICAgIFsnT1M9PSJ3aW4iJywgeworICAgICAgICAgICAgICAgICAgICAncmVzb3VyY2VfaW5jbHVk
ZV9kaXJzJzogWyc8KFNIQVJFRF9JTlRFUk1FRElBVEVfRElSKS93ZWJraXQnXSwKKyAgICAgICAg
ICAgICAgICAgICAgJ3NvdXJjZXMnOiBbCisgICAgICAgICAgICAgICAgICAgICAgICc8KFNIQVJF
RF9JTlRFUk1FRElBVEVfRElSKS9uZXQvbmV0X3Jlc291cmNlcy5yYycsCisgICAgICAgICAgICAg
ICAgICAgICAgICc8KFNIQVJFRF9JTlRFUk1FRElBVEVfRElSKS93ZWJraXQvd2Via2l0X2Nocm9t
aXVtX3Jlc291cmNlcy5yYycsCisgICAgICAgICAgICAgICAgICAgICAgICc8KFNIQVJFRF9JTlRF
Uk1FRElBVEVfRElSKS93ZWJraXQvd2Via2l0X3Jlc291cmNlcy5yYycsCisgICAgICAgICAgICAg
ICAgICAgICAgICc8KFNIQVJFRF9JTlRFUk1FRElBVEVfRElSKS93ZWJraXQvd2Via2l0X3N0cmlu
Z3NfZW4tVVMucmMnLAorICAgICAgICAgICAgICAgICAgICBdLAorICAgICAgICAgICAgICAgICAg
ICAnY29waWVzJzogW3sKKyAgICAgICAgICAgICAgICAgICAgICAgJ2Rlc3RpbmF0aW9uJzogJzwo
UFJPRFVDVF9ESVIpJywKKyAgICAgICAgICAgICAgICAgICAgICAgJ2ZpbGVzJzogWyc8KGFoZW1f
cGF0aCknXSwKKyAgICAgICAgICAgICAgICAgICAgfV0sCisgICAgICAgICAgICAgICAgfV0sCiAg
ICAgICAgICAgICAgICAgWydPUz09Im1hYyInLCB7CiAgICAgICAgICAgICAgICAgICAgICdkZXBl
bmRlbmNpZXMnOiBbJ0xheW91dFRlc3RIZWxwZXInXSwKIAogICAgICAgICAgICAgICAgICAgICAn
bWFjX2J1bmRsZV9yZXNvdXJjZXMnOiBbCi0gICAgICAgICAgICAgICAgICAgICAgICAnLi4vLi4v
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvZm9udHMvQUhFTV9fX18uVFRGJywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICc8KGFoZW1fcGF0aCknLAogICAgICAgICAgICAgICAgICAgICAg
ICAgJy4uLy4uL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2ZvbnRzL1dlYktpdFdlaWdodFdh
dGNoZXIxMDAudHRmJywKICAgICAgICAgICAgICAgICAgICAgICAgICcuLi8uLi9XZWJLaXRUb29s
cy9EdW1wUmVuZGVyVHJlZS9mb250cy9XZWJLaXRXZWlnaHRXYXRjaGVyMjAwLnR0ZicsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAnLi4vLi4vV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvZm9u
dHMvV2ViS2l0V2VpZ2h0V2F0Y2hlcjMwMC50dGYnLApkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMv
Q2hhbmdlTG9nIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCmluZGV4IDYxNWJkN2NlOGEwZTM3YjVj
N2Q4OGY5OWEwYjkyMTA1MDA0OGYxOTYuLjAyN2UzOGRjYzAxOTc2Y2ExOGQ1NjUxYThmOWQ0MWMz
ODVkYTNmNmQgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZworKysgYi9XZWJLaXRU
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMC0wNS0yMCAgS2VudCBUYW11cmEg
IDx0a2VudEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgW0RSVC9DaHJvbWl1bV0gTGluayByZXNvdXJjZXMgYW5kIGxvYWQgQWhl
bSBmb250IGZvciBXaW5kb3dzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zOTQ3MworCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRHVt
cFJlbmRlclRyZWUuY3BwOgorICAgICAgICAobWFpbik6IENhbGwgcGxhdGZvcm1Jbml0KCkuCisg
ICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmg6CisgICAgICAgICBE
ZWNsYXJlIHBsYXRmb3JtSW5pdCgpLiBJdCBpcyBub3QgcmVsYXRlZCB0byBUZXN0U2hlbGwgY2xh
c3MsIGJ1dCB0aGUKKyAgICAgICAgIGltcGxlbWVudGF0aW9uIG9mIHBhbHRmb3JtSW5pdCgpIGlz
IHBsYWNlZCBhdCBUZXN0U2hlbGwqLntjcHAsbW19LgorICAgICAgICAqIER1bXBSZW5kZXJUcmVl
L2Nocm9taXVtL1Rlc3RTaGVsbEd0ay5jcHA6CisgICAgICAgIChwbGF0Zm9ybUluaXQpOgorICAg
ICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbE1hYy5tbToKKyAgICAgICAg
KHBsYXRmb3JtSW5pdCk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNo
ZWxsV2luLmNwcDoKKyAgICAgICAgKHBsYXRmb3JtSW5pdCk6CisgICAgICAgICAtIE1ha2Ugc3Rk
b3V0L3N0ZGVyciBiaW5hcnkgbW9kZQorICAgICAgICAgLSBMb2FkIEFoZW0gZm9udAorCiAyMDEw
LTA1LTIwICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBBZGFtIEJhcnRoLgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vRHVtcFJlbmRlclRyZWUuY3BwIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vRHVtcFJlbmRlclRyZWUuY3BwCmluZGV4IGE5NjQ1MTg3NTBkNzJiYmVlNTUyYzZm
NmJkMmFkYWQ4MmMwNzZlMzQuLjhmMjkyZWRlNGQ1Nzc1NTA2MWZlYjJlZjdkOGQxYTRkMTNiZDA1
ZGQgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0R1bXBS
ZW5kZXJUcmVlLmNwcAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9E
dW1wUmVuZGVyVHJlZS5jcHAKQEAgLTM2LDYgKzM2LDggQEAKIAogdXNpbmcgbmFtZXNwYWNlIHN0
ZDsKIAordm9pZCBwbGF0Zm9ybUluaXQoKTsKKwogc3RhdGljIGNvbnN0IGNoYXIgb3B0aW9uQ29t
cGxleFRleHRbXSA9ICItLWNvbXBsZXgtdGV4dCI7CiBzdGF0aWMgY29uc3QgY2hhciBvcHRpb25E
dW1wQWxsUGl4ZWxzW10gPSAiLS1kdW1wLWFsbC1waXhlbHMiOwogc3RhdGljIGNvbnN0IGNoYXIg
b3B0aW9uTm90cmVlW10gPSAiLS1ub3RyZWUiOwpAQCAtNTksNiArNjEsNyBAQCBzdGF0aWMgdm9p
ZCBydW5UZXN0KFRlc3RTaGVsbCYgc2hlbGwsIFRlc3RQYXJhbXMmIHBhcmFtcywgY29uc3Qgc3Ry
aW5nJiB0ZXN0TmFtZQogaW50IG1haW4oaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkKIHsKICAgICB3
ZWJraXRfc3VwcG9ydDo6U2V0VXBUZXN0RW52aXJvbm1lbnQoKTsKKyAgICBwbGF0Zm9ybUluaXQo
KTsKIAogICAgIFRlc3RQYXJhbXMgcGFyYW1zOwogICAgIFZlY3RvcjxzdHJpbmc+IHRlc3RzOwpk
aWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxs
LmggYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuaAppbmRl
eCAyODNjYmQ0NjA2ZTQzNTc3YTUyOWNkYjcyYjY3ODhmZjI5NmE2ZmI0Li42ZGQwMTk4ODczY2Rk
MzUzM2RhMmM0MmUyNDRkZGE1NDI2ZDlkOTE4IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuaAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuaApAQCAtMTUzLDMgKzE1Myw1IEBAIHByaXZhdGU6
CiAgICAgSEFORExFIG1fZmluaXNoZWRFdmVudDsKICNlbmRpZgogfTsKKwordm9pZCBwbGF0Zm9y
bUluaXQoKTsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVt
L1Rlc3RTaGVsbEd0ay5jcHAgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9U
ZXN0U2hlbGxHdGsuY3BwCmluZGV4IGQ3MTg4MWFiZjAxZjkyMWM4YTJiNDA5MmU5ZmVhMjkyZDU0
ZGI3NjQuLmUzMWNhMGFhYTFlYWEyZWY4OGU3YzdlYjIwMDk0NTA2NTRmMzYzMmQgMTAwNjQ0Ci0t
LSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbEd0ay5jcHAK
KysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsR3RrLmNw
cApAQCAtNjIsMyArNjIsNyBAQCB2b2lkIFRlc3RTaGVsbDo6d2FpdFRlc3RGaW5pc2hlZCgpCiAg
ICAgYWxhcm0oMCk7CiAgICAgc2lnbmFsKFNJR0FMUk0sIFNJR19ERkwpOwogfQorCit2b2lkIHBs
YXRmb3JtSW5pdCgpCit7Cit9CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJl
ZS9jaHJvbWl1bS9UZXN0U2hlbGxNYWMubW0gYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9j
aHJvbWl1bS9UZXN0U2hlbGxNYWMubW0KaW5kZXggZWM4ZGJhYzRiMzkzMTY3OTk4MDY0ODE2YThl
ZjI0ZDdmMjY4MjQ2My4uMjE4YjZkMDEzNmQyNDY2YTA4MTg4ZDVmZTkzNDkxYjA0ZmUzODFiZiAx
MDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxs
TWFjLm1tCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVs
bE1hYy5tbQpAQCAtMTIzLDMgKzEyMyw3IEBAIHZvaWQgVGVzdFNoZWxsOjp3YWl0VGVzdEZpbmlz
aGVkKCkKICAgICBbdGhyZWFkIGNhbmNlbF07CiAgICAgW3RocmVhZCByZWxlYXNlXTsKIH0KKwor
dm9pZCBwbGF0Zm9ybUluaXQoKQoreworfQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJl
bmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsV2luLmNwcCBiL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbFdpbi5jcHAKaW5kZXggMmQ4MDZhMjFhN2EzZTdmZmU5
NjIxNDIwMzU0MDQ2NTRjZDJhNDEyNC4uYjRhMTA5NjQ1OGU0ZTdhNzQ3MTM5M2VjMTE2ZWRhOWFj
NDA1Y2ZiMiAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
VGVzdFNoZWxsV2luLmNwcAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1
bS9UZXN0U2hlbGxXaW4uY3BwCkBAIC0zMiw3ICszMiwxMSBAQAogI2luY2x1ZGUgIlRlc3RTaGVs
bC5oIgogCiAjaW5jbHVkZSAid2Via2l0L3N1cHBvcnQvd2Via2l0X3N1cHBvcnQuaCIKKyNpbmNs
dWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGlvLmg+CiAjaW5jbHVkZSA8cHJvY2Vzcy5oPgorI2lu
Y2x1ZGUgPHNobHdhcGkuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgogCiAvLyBEZWZhdWx0IHRp
bWVvdXQgaW4gbXMgZm9yIGZpbGUgcGFnZSBsb2FkcyB3aGVuIGluIGxheW91dCB0ZXN0IG1vZGUu
CiBjb25zdCBpbnQga0RlZmF1bHRGaWxlVGVzdFRpbWVvdXRNaWxsaXNlY3MgPSAxMCAqIDEwMDA7
CkBAIC05OCwzICsxMDIsNDkgQEAgdm9pZCBUZXN0U2hlbGw6OndhaXRUZXN0RmluaXNoZWQoKQog
ICAgIC8vIFdhaXQgdG8gam9pbiB0aGUgd2F0Y2hkb2cgdGhyZWFkLiAgKHVwIHRvIDFzLCB0aGVu
IHF1aXQpCiAgICAgV2FpdEZvclNpbmdsZU9iamVjdCh0aHJlYWRIYW5kbGUsIDEwMDApOwogfQor
Cit2b2lkIHBsYXRmb3JtSW5pdCgpCit7CisgICAgLy8gU2V0IHN0ZG91dC9zdGRlcnIgYmluYXJ5
IG1vZGUuCisgICAgX3NldG1vZGUoX2ZpbGVubyhzdGRvdXQpLCBfT19CSU5BUlkpOworICAgIF9z
ZXRtb2RlKF9maWxlbm8oc3RkZXJyKSwgX09fQklOQVJZKTsKKworICAgIC8vIExvYWQgQWhlbSBm
b250LgorICAgIC8vIEFIRU1fX19fLlRURiBpcyBjb3BpZWQgdG8gdGhlIGRpcmVjdG9yeSBvZiBE
dW1wUmVuZGVyVHJlZS5leGUgYnkgV2ViS2l0Lmd5cC4KKyAgICBXQ0hBUiBtb2R1bGVQYXRoW19N
QVhfUEFUSF07CisgICAgaWYgKCE6OkdldE1vZHVsZUZpbGVOYW1lKDAsIG1vZHVsZVBhdGgsIF9N
QVhfUEFUSCkpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJDYW4ndCBnZXQgdGhlIG1vZHVs
ZSBwYXRoLlxuIik7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQorICAgIDo6UGF0aFJlbW92ZUZp
bGVTcGVjKG1vZHVsZVBhdGgpOworICAgIFdDSEFSIGFoZW1QYXRoW19NQVhfUEFUSF07CisgICAg
c3RydWN0IF9zdGF0IGFoZW1TdGF0OworICAgIGFoZW1QYXRoW19NQVhfUEFUSCAtIDFdID0gMDsK
KyAgICBfc253cHJpbnRmKGFoZW1QYXRoLCBfTUFYX1BBVEggLSAxLCBMIiVzL0FIRU1fX19fLlRU
RiIsIG1vZHVsZVBhdGgpOworICAgIGlmIChfd3N0YXQoYWhlbVBhdGgsICZhaGVtU3RhdCkgPT0g
LTEpIHsKKyAgICAgICAgZnByaW50ZihzdGRlcnIsICJDYW4ndCBhY2Nlc3M6ICclUydcbiIsIGFo
ZW1QYXRoKTsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9CisKKyAgICBGSUxFKiBmcCA9IF93Zm9w
ZW4oYWhlbVBhdGgsIEwicmIiKTsKKyAgICBpZiAoIWZwKSB7CisgICAgICAgIF93cGVycm9yKGFo
ZW1QYXRoKTsKKyAgICAgICAgZXhpdCgxKTsKKyAgICB9CisgICAgc2l6ZV90IHNpemUgPSBhaGVt
U3RhdC5zdF9zaXplOworICAgIGNoYXIqIGZvbnRCdWZmZXIgPSBuZXcgY2hhcltzaXplXTsKKyAg
ICBpZiAoZnJlYWQoZm9udEJ1ZmZlciwgMSwgc2l6ZSwgZnApICE9IHNpemUpIHsKKyAgICAgICAg
ZnByaW50ZihzdGRlcnIsICJDYW4ndCByZWFkIHRoZSBmb250OiAnJVMnXG4iLCBhaGVtUGF0aCk7
CisgICAgICAgIGZjbG9zZShmcCk7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQorICAgIGZjbG9z
ZShmcCk7CisgICAgRFdPUkQgbnVtRm9udHMgPSAxOworICAgIEhBTkRMRSBoID0gOjpBZGRGb250
TWVtUmVzb3VyY2VFeChmb250QnVmZmVyLCBzaXplLCAwLCAmbnVtRm9udHMpOworICAgIGRlbGV0
ZVtdIGZvbnRCdWZmZXI7IC8vIE9TIG93bnMgYSBjb3B5IG9mIHRoZSBidWZmZXIuCisgICAgaWYg
KCFoKSB7CisgICAgICAgIGZwcmludGYoc3RkZXJyLCAiRmFpbGVkIHRvIHJlZ2lzdGVyIEFoZW0g
Zm9udDogJyVTJ1xuIiwgYWhlbVBhdGgpOworICAgICAgICBleGl0KDEpOworICAgIH0KKyAgICAv
LyBXZSBkb24ndCBuZWVkIHRvIHJlbGVhc2UgdGhlIGZvbnQgZXhwbGljaXRseS4KK30K
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>56690</attachid>
            <date>2010-05-21 03:04:49 -0700</date>
            <delta_ts>2010-05-22 10:17:19 -0700</delta_ts>
            <desc>Patch (rev.3)</desc>
            <filename>bug-39473-20100521190447.patch</filename>
            <type>text/plain</type>
            <size>7974</size>
            <attacher name="Kent Tamura">tkent</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cgYi9XZWJLaXQvY2hyb21pdW0v
Q2hhbmdlTG9nCmluZGV4IDhhNjhjNGU2ZTg0MzQ1MzNhNzVkZjcyNDk1MDVkOGQ3OTI2MGJmM2Eu
LmNjYjk5MDQyNTY4YmRjMGNlYjEzYjY1ODc4ZDdhZTkwMzExZDc5ZWIgMTAwNjQ0Ci0tLSBhL1dl
YktpdC9jaHJvbWl1bS9DaGFuZ2VMb2cKKysrIGIvV2ViS2l0L2Nocm9taXVtL0NoYW5nZUxvZwpA
QCAtMSwzICsxLDE0IEBACisyMDEwLTA1LTIwICBLZW50IFRhbXVyYSAgPHRrZW50QGNocm9taXVt
Lm9yZz4KKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBb
RFJUL0Nocm9taXVtXSBMaW5rIHJlc291cmNlcyBhbmQgbG9hZCBBaGVtIGZvbnQgZm9yIFdpbmRv
d3MKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTM5NDcz
CisKKyAgICAgICAgKiBXZWJLaXQuZ3lwOgorICAgICAgICAgIEFkZCBuZXQgYW5kIHdlYmtpdCBy
ZXNvdXJjZXMgZm9yIFdpbmRvd3MuCisgICAgICAgICAgQ29weSBBSEVNX19fXy5UVEYgdG8gRHVt
cFJlbmRlclRyZWUuZXhlIGRpcmVjdG9yeS4KKwogMjAxMC0wNS0yMCAgVmlldC1UcnVuZyBMdXUg
IDx2aWV0dHJ1bmdsdXVAY2hyb21pdW0ub3JnPgogCiAgICAgICAgIFJldmlld2VkIGJ5IERhcmlu
IEZpc2hlci4KZGlmZiAtLWdpdCBhL1dlYktpdC9jaHJvbWl1bS9XZWJLaXQuZ3lwIGIvV2ViS2l0
L2Nocm9taXVtL1dlYktpdC5neXAKaW5kZXggMjQ3NDhmOGRlNGJlMTY2YTk4YTI3YWZjODQzYzUy
ZDJmMDU5OWRhYi4uOTRkN2E0Njg4MTc5MDBlN2FjMWQ3YWEwZjEyZmJhMDBhYzAxNjU3ZSAxMDA2
NDQKLS0tIGEvV2ViS2l0L2Nocm9taXVtL1dlYktpdC5neXAKKysrIGIvV2ViS2l0L2Nocm9taXVt
L1dlYktpdC5neXAKQEAgLTQ3LDYgKzQ3LDcgQEAKICAgICAgICAgICAgICAgICAnY2hyb21pdW1f
c3JjX2Rpcic6ICcuLi8uLi8uLi8uLicsCiAgICAgICAgICAgICB9XSwKICAgICAgICAgXSwKKyAg
ICAgICAgJ2FoZW1fcGF0aCc6ICcuLi8uLi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9xdC9m
b250cy9BSEVNX19fXy5UVEYnLAogICAgIH0sCiAgICAgJ3RhcmdldHMnOiBbCiAgICAgICAgIHsK
QEAgLTU3OSwxMSArNTgwLDI0IEBACiAgICAgICAgICAgICAgICAgJzxAKGRydF9maWxlcyknLAog
ICAgICAgICAgICAgXSwKICAgICAgICAgICAgICdjb25kaXRpb25zJzogWworICAgICAgICAgICAg
ICAgIFsnT1M9PSJ3aW4iJywgeworICAgICAgICAgICAgICAgICAgICAncmVzb3VyY2VfaW5jbHVk
ZV9kaXJzJzogWyc8KFNIQVJFRF9JTlRFUk1FRElBVEVfRElSKS93ZWJraXQnXSwKKyAgICAgICAg
ICAgICAgICAgICAgJ3NvdXJjZXMnOiBbCisgICAgICAgICAgICAgICAgICAgICAgICc8KFNIQVJF
RF9JTlRFUk1FRElBVEVfRElSKS9uZXQvbmV0X3Jlc291cmNlcy5yYycsCisgICAgICAgICAgICAg
ICAgICAgICAgICc8KFNIQVJFRF9JTlRFUk1FRElBVEVfRElSKS93ZWJraXQvd2Via2l0X2Nocm9t
aXVtX3Jlc291cmNlcy5yYycsCisgICAgICAgICAgICAgICAgICAgICAgICc8KFNIQVJFRF9JTlRF
Uk1FRElBVEVfRElSKS93ZWJraXQvd2Via2l0X3Jlc291cmNlcy5yYycsCisgICAgICAgICAgICAg
ICAgICAgICAgICc8KFNIQVJFRF9JTlRFUk1FRElBVEVfRElSKS93ZWJraXQvd2Via2l0X3N0cmlu
Z3NfZW4tVVMucmMnLAorICAgICAgICAgICAgICAgICAgICBdLAorICAgICAgICAgICAgICAgICAg
ICAnY29waWVzJzogW3sKKyAgICAgICAgICAgICAgICAgICAgICAgJ2Rlc3RpbmF0aW9uJzogJzwo
UFJPRFVDVF9ESVIpJywKKyAgICAgICAgICAgICAgICAgICAgICAgJ2ZpbGVzJzogWyc8KGFoZW1f
cGF0aCknXSwKKyAgICAgICAgICAgICAgICAgICAgfV0sCisgICAgICAgICAgICAgICAgfV0sCiAg
ICAgICAgICAgICAgICAgWydPUz09Im1hYyInLCB7CiAgICAgICAgICAgICAgICAgICAgICdkZXBl
bmRlbmNpZXMnOiBbJ0xheW91dFRlc3RIZWxwZXInXSwKIAogICAgICAgICAgICAgICAgICAgICAn
bWFjX2J1bmRsZV9yZXNvdXJjZXMnOiBbCi0gICAgICAgICAgICAgICAgICAgICAgICAnLi4vLi4v
V2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvcXQvZm9udHMvQUhFTV9fX18uVFRGJywKKyAgICAg
ICAgICAgICAgICAgICAgICAgICc8KGFoZW1fcGF0aCknLAogICAgICAgICAgICAgICAgICAgICAg
ICAgJy4uLy4uL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2ZvbnRzL1dlYktpdFdlaWdodFdh
dGNoZXIxMDAudHRmJywKICAgICAgICAgICAgICAgICAgICAgICAgICcuLi8uLi9XZWJLaXRUb29s
cy9EdW1wUmVuZGVyVHJlZS9mb250cy9XZWJLaXRXZWlnaHRXYXRjaGVyMjAwLnR0ZicsCiAgICAg
ICAgICAgICAgICAgICAgICAgICAnLi4vLi4vV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvZm9u
dHMvV2ViS2l0V2VpZ2h0V2F0Y2hlcjMwMC50dGYnLApkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMv
Q2hhbmdlTG9nIGIvV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCmluZGV4IDYxNWJkN2NlOGEwZTM3YjVj
N2Q4OGY5OWEwYjkyMTA1MDA0OGYxOTYuLjAyN2UzOGRjYzAxOTc2Y2ExOGQ1NjUxYThmOWQ0MWMz
ODVkYTNmNmQgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0NoYW5nZUxvZworKysgYi9XZWJLaXRU
b29scy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwyNCBAQAorMjAxMC0wNS0yMCAgS2VudCBUYW11cmEg
IDx0a2VudEBjaHJvbWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgW0RSVC9DaHJvbWl1bV0gTGluayByZXNvdXJjZXMgYW5kIGxvYWQgQWhl
bSBmb250IGZvciBXaW5kb3dzCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3df
YnVnLmNnaT9pZD0zOTQ3MworCisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vRHVt
cFJlbmRlclRyZWUuY3BwOgorICAgICAgICAobWFpbik6IENhbGwgcGxhdGZvcm1Jbml0KCkuCisg
ICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsLmg6CisgICAgICAgICBE
ZWNsYXJlIHBsYXRmb3JtSW5pdCgpLiBJdCBpcyBub3QgcmVsYXRlZCB0byBUZXN0U2hlbGwgY2xh
c3MsIGJ1dCB0aGUKKyAgICAgICAgIGltcGxlbWVudGF0aW9uIG9mIHBhbHRmb3JtSW5pdCgpIGlz
IHBsYWNlZCBhdCBUZXN0U2hlbGwqLntjcHAsbW19LgorICAgICAgICAqIER1bXBSZW5kZXJUcmVl
L2Nocm9taXVtL1Rlc3RTaGVsbEd0ay5jcHA6CisgICAgICAgIChwbGF0Zm9ybUluaXQpOgorICAg
ICAgICAqIER1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbE1hYy5tbToKKyAgICAgICAg
KHBsYXRmb3JtSW5pdCk6CisgICAgICAgICogRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNo
ZWxsV2luLmNwcDoKKyAgICAgICAgKHBsYXRmb3JtSW5pdCk6CisgICAgICAgICAtIE1ha2Ugc3Rk
b3V0L3N0ZGVyciBiaW5hcnkgbW9kZQorICAgICAgICAgLSBMb2FkIEFoZW0gZm9udAorCiAyMDEw
LTA1LTIwICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KIAogICAgICAgICBSZXZpZXdl
ZCBieSBBZGFtIEJhcnRoLgpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vRHVtcFJlbmRlclRyZWUuY3BwIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUv
Y2hyb21pdW0vRHVtcFJlbmRlclRyZWUuY3BwCmluZGV4IGE5NjQ1MTg3NTBkNzJiYmVlNTUyYzZm
NmJkMmFkYWQ4MmMwNzZlMzQuLjhmMjkyZWRlNGQ1Nzc1NTA2MWZlYjJlZjdkOGQxYTRkMTNiZDA1
ZGQgMTAwNjQ0Ci0tLSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL0R1bXBS
ZW5kZXJUcmVlLmNwcAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9E
dW1wUmVuZGVyVHJlZS5jcHAKQEAgLTM2LDYgKzM2LDggQEAKIAogdXNpbmcgbmFtZXNwYWNlIHN0
ZDsKIAordm9pZCBwbGF0Zm9ybUluaXQoKTsKKwogc3RhdGljIGNvbnN0IGNoYXIgb3B0aW9uQ29t
cGxleFRleHRbXSA9ICItLWNvbXBsZXgtdGV4dCI7CiBzdGF0aWMgY29uc3QgY2hhciBvcHRpb25E
dW1wQWxsUGl4ZWxzW10gPSAiLS1kdW1wLWFsbC1waXhlbHMiOwogc3RhdGljIGNvbnN0IGNoYXIg
b3B0aW9uTm90cmVlW10gPSAiLS1ub3RyZWUiOwpAQCAtNTksNiArNjEsNyBAQCBzdGF0aWMgdm9p
ZCBydW5UZXN0KFRlc3RTaGVsbCYgc2hlbGwsIFRlc3RQYXJhbXMmIHBhcmFtcywgY29uc3Qgc3Ry
aW5nJiB0ZXN0TmFtZQogaW50IG1haW4oaW50IGFyZ2MsIGNoYXIqIGFyZ3ZbXSkKIHsKICAgICB3
ZWJraXRfc3VwcG9ydDo6U2V0VXBUZXN0RW52aXJvbm1lbnQoKTsKKyAgICBwbGF0Zm9ybUluaXQo
KTsKIAogICAgIFRlc3RQYXJhbXMgcGFyYW1zOwogICAgIFZlY3RvcjxzdHJpbmc+IHRlc3RzOwpk
aWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxs
LmggYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuaAppbmRl
eCAyODNjYmQ0NjA2ZTQzNTc3YTUyOWNkYjcyYjY3ODhmZjI5NmE2ZmI0Li42ZGQwMTk4ODczY2Rk
MzUzM2RhMmM0MmUyNDRkZGE1NDI2ZDlkOTE4IDEwMDY0NAotLS0gYS9XZWJLaXRUb29scy9EdW1w
UmVuZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuaAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVu
ZGVyVHJlZS9jaHJvbWl1bS9UZXN0U2hlbGwuaApAQCAtMTUzLDMgKzE1Myw1IEBAIHByaXZhdGU6
CiAgICAgSEFORExFIG1fZmluaXNoZWRFdmVudDsKICNlbmRpZgogfTsKKwordm9pZCBwbGF0Zm9y
bUluaXQoKTsKZGlmZiAtLWdpdCBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVt
L1Rlc3RTaGVsbEd0ay5jcHAgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1bS9U
ZXN0U2hlbGxHdGsuY3BwCmluZGV4IGQ3MTg4MWFiZjAxZjkyMWM4YTJiNDA5MmU5ZmVhMjkyZDU0
ZGI3NjQuLmUzMWNhMGFhYTFlYWEyZWY4OGU3YzdlYjIwMDk0NTA2NTRmMzYzMmQgMTAwNjQ0Ci0t
LSBhL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbEd0ay5jcHAK
KysrIGIvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsR3RrLmNw
cApAQCAtNjIsMyArNjIsNyBAQCB2b2lkIFRlc3RTaGVsbDo6d2FpdFRlc3RGaW5pc2hlZCgpCiAg
ICAgYWxhcm0oMCk7CiAgICAgc2lnbmFsKFNJR0FMUk0sIFNJR19ERkwpOwogfQorCit2b2lkIHBs
YXRmb3JtSW5pdCgpCit7Cit9CmRpZmYgLS1naXQgYS9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJl
ZS9jaHJvbWl1bS9UZXN0U2hlbGxNYWMubW0gYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9j
aHJvbWl1bS9UZXN0U2hlbGxNYWMubW0KaW5kZXggZWM4ZGJhYzRiMzkzMTY3OTk4MDY0ODE2YThl
ZjI0ZDdmMjY4MjQ2My4uMjE4YjZkMDEzNmQyNDY2YTA4MTg4ZDVmZTkzNDkxYjA0ZmUzODFiZiAx
MDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxs
TWFjLm1tCisrKyBiL1dlYktpdFRvb2xzL0R1bXBSZW5kZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVs
bE1hYy5tbQpAQCAtMTIzLDMgKzEyMyw3IEBAIHZvaWQgVGVzdFNoZWxsOjp3YWl0VGVzdEZpbmlz
aGVkKCkKICAgICBbdGhyZWFkIGNhbmNlbF07CiAgICAgW3RocmVhZCByZWxlYXNlXTsKIH0KKwor
dm9pZCBwbGF0Zm9ybUluaXQoKQoreworfQpkaWZmIC0tZ2l0IGEvV2ViS2l0VG9vbHMvRHVtcFJl
bmRlclRyZWUvY2hyb21pdW0vVGVzdFNoZWxsV2luLmNwcCBiL1dlYktpdFRvb2xzL0R1bXBSZW5k
ZXJUcmVlL2Nocm9taXVtL1Rlc3RTaGVsbFdpbi5jcHAKaW5kZXggMmQ4MDZhMjFhN2EzZTdmZmU5
NjIxNDIwMzU0MDQ2NTRjZDJhNDEyNC4uZTBlMGFmMWIzMWMzM2ZmYmQ2OTM0NWQ2YmIxZGFhNGRj
N2FiZmI1OCAxMDA2NDQKLS0tIGEvV2ViS2l0VG9vbHMvRHVtcFJlbmRlclRyZWUvY2hyb21pdW0v
VGVzdFNoZWxsV2luLmNwcAorKysgYi9XZWJLaXRUb29scy9EdW1wUmVuZGVyVHJlZS9jaHJvbWl1
bS9UZXN0U2hlbGxXaW4uY3BwCkBAIC0zMiw3ICszMiwxMSBAQAogI2luY2x1ZGUgIlRlc3RTaGVs
bC5oIgogCiAjaW5jbHVkZSAid2Via2l0L3N1cHBvcnQvd2Via2l0X3N1cHBvcnQuaCIKKyNpbmNs
dWRlIDxmY250bC5oPgorI2luY2x1ZGUgPGlvLmg+CiAjaW5jbHVkZSA8cHJvY2Vzcy5oPgorI2lu
Y2x1ZGUgPHNobHdhcGkuaD4KKyNpbmNsdWRlIDxzeXMvc3RhdC5oPgogCiAvLyBEZWZhdWx0IHRp
bWVvdXQgaW4gbXMgZm9yIGZpbGUgcGFnZSBsb2FkcyB3aGVuIGluIGxheW91dCB0ZXN0IG1vZGUu
CiBjb25zdCBpbnQga0RlZmF1bHRGaWxlVGVzdFRpbWVvdXRNaWxsaXNlY3MgPSAxMCAqIDEwMDA7
CkBAIC05OCwzICsxMDIsNDcgQEAgdm9pZCBUZXN0U2hlbGw6OndhaXRUZXN0RmluaXNoZWQoKQog
ICAgIC8vIFdhaXQgdG8gam9pbiB0aGUgd2F0Y2hkb2cgdGhyZWFkLiAgKHVwIHRvIDFzLCB0aGVu
IHF1aXQpCiAgICAgV2FpdEZvclNpbmdsZU9iamVjdCh0aHJlYWRIYW5kbGUsIDEwMDApOwogfQor
Cit2b2lkIHBsYXRmb3JtSW5pdCgpCit7CisgICAgLy8gU2V0IHN0ZG91dC9zdGRlcnIgYmluYXJ5
IG1vZGUuCisgICAgX3NldG1vZGUoX2ZpbGVubyhzdGRvdXQpLCBfT19CSU5BUlkpOworICAgIF9z
ZXRtb2RlKF9maWxlbm8oc3RkZXJyKSwgX09fQklOQVJZKTsKKworICAgIC8vIExvYWQgQWhlbSBm
b250LgorICAgIC8vIEFIRU1fX19fLlRURiBpcyBjb3BpZWQgdG8gdGhlIGRpcmVjdG9yeSBvZiBE
dW1wUmVuZGVyVHJlZS5leGUgYnkgV2ViS2l0Lmd5cC4KKyAgICBXQ0hBUiBwYXRoW19NQVhfUEFU
SF07CisgICAgaWYgKCE6OkdldE1vZHVsZUZpbGVOYW1lKDAsIHBhdGgsIF9NQVhfUEFUSCkpIHsK
KyAgICAgICAgZnByaW50ZihzdGRlcnIsICJDYW4ndCBnZXQgdGhlIG1vZHVsZSBwYXRoLlxuIik7
CisgICAgICAgIGV4aXQoMSk7CisgICAgfQorICAgIDo6UGF0aFJlbW92ZUZpbGVTcGVjKHBhdGgp
OworICAgIHdjc2NhdF9zKHBhdGgsIF9NQVhfUEFUSCwgTCIvQUhFTV9fX18uVFRGIik7CisgICAg
c3RydWN0IF9zdGF0IGFoZW1TdGF0OworICAgIGlmIChfd3N0YXQocGF0aCwgJmFoZW1TdGF0KSA9
PSAtMSkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkNhbid0IGFjY2VzczogJyVTJ1xuIiwg
cGF0aCk7CisgICAgICAgIGV4aXQoMSk7CisgICAgfQorCisgICAgRklMRSogZnAgPSBfd2ZvcGVu
KHBhdGgsIEwicmIiKTsKKyAgICBpZiAoIWZwKSB7CisgICAgICAgIF93cGVycm9yKHBhdGgpOwor
ICAgICAgICBleGl0KDEpOworICAgIH0KKyAgICBzaXplX3Qgc2l6ZSA9IGFoZW1TdGF0LnN0X3Np
emU7CisgICAgY2hhciogZm9udEJ1ZmZlciA9IG5ldyBjaGFyW3NpemVdOworICAgIGlmIChmcmVh
ZChmb250QnVmZmVyLCAxLCBzaXplLCBmcCkgIT0gc2l6ZSkgeworICAgICAgICBmcHJpbnRmKHN0
ZGVyciwgIkNhbid0IHJlYWQgdGhlIGZvbnQ6ICclUydcbiIsIHBhdGgpOworICAgICAgICBmY2xv
c2UoZnApOworICAgICAgICBleGl0KDEpOworICAgIH0KKyAgICBmY2xvc2UoZnApOworICAgIERX
T1JEIG51bUZvbnRzID0gMTsKKyAgICBIQU5ETEUgZm9udEhhbmRsZSA9IDo6QWRkRm9udE1lbVJl
c291cmNlRXgoZm9udEJ1ZmZlciwgc2l6ZSwgMCwgJm51bUZvbnRzKTsKKyAgICBkZWxldGVbXSBm
b250QnVmZmVyOyAvLyBPUyBvd25zIGEgY29weSBvZiB0aGUgYnVmZmVyLgorICAgIGlmICghZm9u
dEhhbmRsZSkgeworICAgICAgICBmcHJpbnRmKHN0ZGVyciwgIkZhaWxlZCB0byByZWdpc3RlciBB
aGVtIGZvbnQ6ICclUydcbiIsIHBhdGgpOworICAgICAgICBleGl0KDEpOworICAgIH0KKyAgICAv
LyBXZSBkb24ndCBuZWVkIHRvIHJlbGVhc2UgdGhlIGZvbnQgZXhwbGljaXRseS4KK30K
</data>

          </attachment>
      

    </bug>

</bugzilla>