<?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>32651</bug_id>
          
          <creation_ts>2009-12-17 02:45:58 -0800</creation_ts>
          <short_desc>[Android] MainThreadAndroid introduces a layering violation by calling JavaSharedClient methods</short_desc>
          <delta_ts>2009-12-22 14:33:43 -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>Android</rep_platform>
          <op_sys>Android</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="Steve Block">steveblock</reporter>
          <assigned_to name="Steve Block">steveblock</assigned_to>
          <cc>andreip</cc>
    
    <cc>android-webkit-unforking</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dimich</cc>
    
    <cc>levin</cc>
    
    <cc>sam</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>172693</commentid>
    <comment_count>0</comment_count>
    <who name="Steve Block">steveblock</who>
    <bug_when>2009-12-17 02:45:58 -0800</bug_when>
    <thetext>MainThreadAndroid introduces a layering violation by calling JavaSharedClient methods in WebKit. Instead, it should use PlatformBridge.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172695</commentid>
    <comment_count>1</comment_count>
      <attachid>45048</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2009-12-17 02:51:27 -0800</bug_when>
    <thetext>Created attachment 45048
Patch 1 for Bug 32651</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>172696</commentid>
    <comment_count>2</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-17 02:55:33 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45048 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173203</commentid>
    <comment_count>3</comment_count>
    <who name="Sam Weinig">sam</who>
    <bug_when>2009-12-18 09:45:33 -0800</bug_when>
    <thetext>This is still a layering violation.  JavaScriptCore and WTF should not have dependencies on WebCore.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173211</commentid>
    <comment_count>4</comment_count>
      <attachid>45048</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2009-12-18 10:08:30 -0800</bug_when>
    <thetext>Comment on attachment 45048
Patch 1 for Bug 32651

r- per Sam&apos;s comment.

I think the right thing to do here is to move the implementation from WebCore to wtf.  Then have the WebCore version (if it is still needed) call the wtf version.

&gt; Index: WebCore/platform/android/PlatformBridge.h
&gt; +    static void EnqueueOnMainthread(void (*function)(void*), void* payload);

fwiw, bad casing &quot;Mainthread&quot;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173287</commentid>
    <comment_count>5</comment_count>
    <who name="Andrei Popescu">andreip</who>
    <bug_when>2009-12-18 13:04:45 -0800</bug_when>
    <thetext>(In reply to comment #4)
&gt; (From update of attachment 45048 [details])
&gt; r- per Sam&apos;s comment.
&gt; 
&gt; I think the right thing to do here is to move the implementation from WebCore
&gt; to wtf.  Then have the WebCore version (if it is still needed) call the wtf
&gt; version.
&gt; 

Sadly, the implementation is pretty complex and I am not sure it&apos;s feasible to move it all inside wtf. Instead, we could just do what Chromium does. In fact, we could even reuse ChromiumThreading if the naming wouldn&apos;t introduce some confusion.

So how about we just copy ChromiumThreading and call it AndroidThreading?

Thanks,
Andrei</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173300</commentid>
    <comment_count>6</comment_count>
    <who name="David Levin">levin</who>
    <bug_when>2009-12-18 13:26:56 -0800</bug_when>
    <thetext>(In reply to comment #5)
&gt; So how about we just copy ChromiumThreading and call it AndroidThreading?

The chromium version basically is calling out to the &quot;chromium platform&quot; (but not WebCore/platform). If you did something similar here, that seems like it would be fine.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173322</commentid>
    <comment_count>7</comment_count>
    <who name="Andrei Popescu">andreip</who>
    <bug_when>2009-12-18 13:55:46 -0800</bug_when>
    <thetext>(In reply to comment #6)
&gt; (In reply to comment #5)
&gt; &gt; So how about we just copy ChromiumThreading and call it AndroidThreading?
&gt; 
&gt; The chromium version basically is calling out to the &quot;chromium platform&quot; (but
&gt; not WebCore/platform). If you did something similar here, that seems like it
&gt; would be fine.

Cool, thanks. Steve&apos;s now on vacation so I&apos;ll update the patch to reflect this discussion.

Andrei</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173981</commentid>
    <comment_count>8</comment_count>
      <attachid>45335</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2009-12-21 09:24:48 -0800</bug_when>
    <thetext>Created attachment 45335
Patch 2 for Bug 32651

Updated patch to use AndroidThreading, as discussed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>173982</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2009-12-21 09:28:04 -0800</bug_when>
    <thetext>style-queue ran check-webkit-style on attachment 45335 without any errors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174361</commentid>
    <comment_count>10</comment_count>
      <attachid>45335</attachid>
    <who name="David Levin">levin</who>
    <bug_when>2009-12-22 13:31:23 -0800</bug_when>
    <thetext>Comment on attachment 45335
Patch 2 for Bug 32651

&gt; Index: JavaScriptCore/wtf/android/AndroidThreading.h
&gt; + * Copyright 2009, The Android Open Source Project


Please consider this format (which is more typical of WK headers):
   * Copyright (C) 2009 The Android Open Source Project</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174385</commentid>
    <comment_count>11</comment_count>
      <attachid>45335</attachid>
    <who name="Steve Block">steveblock</who>
    <bug_when>2009-12-22 14:10:19 -0800</bug_when>
    <thetext>Comment on attachment 45335
Patch 2 for Bug 32651

&gt; Please consider this format (which is more typical of WK headers):
&gt;   * Copyright (C) 2009 The Android Open Source Project
This style is used throughout all Android WebKit files, so I thinks it&apos;s best to leave it as it is.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174404</commentid>
    <comment_count>12</comment_count>
      <attachid>45335</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-12-22 14:33:38 -0800</bug_when>
    <thetext>Comment on attachment 45335
Patch 2 for Bug 32651

Clearing flags on attachment: 45335

Committed r52503: &lt;http://trac.webkit.org/changeset/52503&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>174405</commentid>
    <comment_count>13</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2009-12-22 14:33:43 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45048</attachid>
            <date>2009-12-17 02:51:27 -0800</date>
            <delta_ts>2009-12-21 09:24:48 -0800</delta_ts>
            <desc>Patch 1 for Bug 32651</desc>
            <filename>enqueueOnMainThread.txt</filename>
            <type>text/plain</type>
            <size>2638</size>
            <attacher name="Steve Block">steveblock</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDUyMjQyKQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTMgQEAKKzIwMDktMTItMTcgIFN0ZXZlIEJs
b2NrICA8c3RldmVibG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFVzZSBQbGF0Zm9ybUJyaWRnZSBpbnN0ZWFkIG9mIGNhbGxp
bmcgSmF2YVNoYXJlZENsaWVudCBkaXJlY3RseSBpbiBNYWluVGhyZWFkQW5kcm9pZC4KKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTMyNjUxCisKKyAgICAg
ICAgKiB3dGYvYW5kcm9pZC9NYWluVGhyZWFkQW5kcm9pZC5jcHA6IE1vZGlmaWVkCisgICAgICAg
IChXVEY6OnNjaGVkdWxlRGlzcGF0Y2hGdW5jdGlvbnNPbk1haW5UaHJlYWQpOiBDYWxsIFBsYXRm
b3JtQnJpZGdlOjpFbnF1ZXVlT25NYWludGhyZWFkLgorCiAyMDA5LTEyLTE2ICBHZW9mZnJleSBH
YXJlbiAgPGdnYXJlbkBhcHBsZS5jb20+CiAKICAgICAgICAgUmV2aWV3ZWQgYnkgT2xpdmVyIEh1
bnQuCkluZGV4OiBKYXZhU2NyaXB0Q29yZS93dGYvYW5kcm9pZC9NYWluVGhyZWFkQW5kcm9pZC5j
cHAKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PQotLS0gSmF2YVNjcmlwdENvcmUvd3RmL2FuZHJvaWQvTWFpblRocmVhZEFu
ZHJvaWQuY3BwCShyZXZpc2lvbiA1MjIwMikKKysrIEphdmFTY3JpcHRDb3JlL3d0Zi9hbmRyb2lk
L01haW5UaHJlYWRBbmRyb2lkLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMjYsOSArMjYsOSBAQAog
I2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk1haW5UaHJlYWQuaCIKIAotI2luY2x1ZGUg
IkphdmFTaGFyZWRDbGllbnQuaCIKKyNpbmNsdWRlICJQbGF0Zm9ybUJyaWRnZS5oIgogCi11c2lu
ZyBuYW1lc3BhY2UgYW5kcm9pZDsKK3VzaW5nIG5hbWVzcGFjZSBXZWJDb3JlOwogCiBuYW1lc3Bh
Y2UgV1RGIHsKIApAQCAtNDQsNyArNDQsNyBAQCB2b2lkIGluaXRpYWxpemVNYWluVGhyZWFkUGxh
dGZvcm0oKQogCiB2b2lkIHNjaGVkdWxlRGlzcGF0Y2hGdW5jdGlvbnNPbk1haW5UaHJlYWQoKQog
ewotICAgIEphdmFTaGFyZWRDbGllbnQ6OkVucXVldWVGdW5jdGlvblB0cih0aW1lb3V0RmlyZWQs
IDApOworICAgIFBsYXRmb3JtQnJpZGdlOjpFbnF1ZXVlT25NYWluVGhyZWFkKHRpbWVvdXRGaXJl
ZCwgMCk7CiB9CiAKIH0gLy8gbmFtZXNwYWNlIFdURgpJbmRleDogV2ViQ29yZS9DaGFuZ2VMb2cK
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PQotLS0gV2ViQ29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDUyMjQyKQorKysgV2Vi
Q29yZS9DaGFuZ2VMb2cJKHdvcmtpbmcgY29weSkKQEAgLTEsMyArMSwxNCBAQAorMjAwOS0xMi0x
NyAgU3RldmUgQmxvY2sgIDxzdGV2ZWJsb2NrQGdvb2dsZS5jb20+CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXNlIFBsYXRmb3JtQnJpZGdlIGluc3Rl
YWQgb2YgY2FsbGluZyBKYXZhU2hhcmVkQ2xpZW50IGRpcmVjdGx5IGluIE1haW5UaHJlYWRBbmRy
b2lkLgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzI2
NTEKKworICAgICAgICBObyBjaGFuZ2UgaW4gYmVoYXZpb3IsIHNvIG5vIG5ldyB0ZXN0cy4KKwor
ICAgICAgICAqIHBsYXRmb3JtL2FuZHJvaWQvUGxhdGZvcm1CcmlkZ2UuaDogTW9kaWZpZWQuIEFk
ZHMgRW5xdWV1ZUZ1bmN0aW9uUHRyLgorCiAyMDA5LTEyLTE1IE1PUklUQSBIYWppbWUgPG1vcnJp
dGFAZ21haWwuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEVyaWMgU2VpZGVsLgpJbmRleDog
V2ViQ29yZS9wbGF0Zm9ybS9hbmRyb2lkL1BsYXRmb3JtQnJpZGdlLmgKPT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0g
V2ViQ29yZS9wbGF0Zm9ybS9hbmRyb2lkL1BsYXRmb3JtQnJpZGdlLmgJKHJldmlzaW9uIDUyMjAy
KQorKysgV2ViQ29yZS9wbGF0Zm9ybS9hbmRyb2lkL1BsYXRmb3JtQnJpZGdlLmgJKHdvcmtpbmcg
Y29weSkKQEAgLTQ4LDYgKzQ4LDggQEAgcHVibGljOgogICAgIC8vIEtleUdlbmVyYXRvcgogICAg
IHN0YXRpYyBXVEY6OlZlY3RvcjxTdHJpbmc+IGdldFN1cHBvcnRlZEtleVN0cmVuZ3RoTGlzdCgp
OwogICAgIHN0YXRpYyBTdHJpbmcgZ2V0U2lnbmVkUHVibGljS2V5QW5kQ2hhbGxlbmdlU3RyaW5n
KHVuc2lnbmVkIGluZGV4LCBjb25zdCBTdHJpbmcmIGNoYWxsZW5nZSwgY29uc3QgS1VSTCYpOwor
ICAgIC8vIFRocmVhZGluZworICAgIHN0YXRpYyB2b2lkIEVucXVldWVPbk1haW50aHJlYWQodm9p
ZCAoKmZ1bmN0aW9uKSh2b2lkKiksIHZvaWQqIHBheWxvYWQpOwogfTsKIH0KICNlbmRpZiAvLyBQ
bGF0Zm9ybUJyaWRnZV9oCg==
</data>
<flag name="review"
          id="27005"
          type_id="1"
          status="-"
          setter="levin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>45335</attachid>
            <date>2009-12-21 09:24:48 -0800</date>
            <delta_ts>2009-12-22 14:33:38 -0800</delta_ts>
            <desc>Patch 2 for Bug 32651</desc>
            <filename>enqueueOnMainThread2.txt</filename>
            <type>text/plain</type>
            <size>4618</size>
            <attacher name="Steve Block">steveblock</attacher>
            
              <data encoding="base64">SW5kZXg6IEphdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBKYXZhU2NyaXB0
Q29yZS9DaGFuZ2VMb2cJKHJldmlzaW9uIDUyNDQ2KQorKysgSmF2YVNjcmlwdENvcmUvQ2hhbmdl
TG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMjAgQEAKKzIwMDktMTItMjEgIFN0ZXZlIEJs
b2NrICA8c3RldmVibG9ja0Bnb29nbGUuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9E
WSAoT09QUyEpLgorCisgICAgICAgIFVwZGF0ZXMgQW5kcm9pZCdzIHNjaGVkdWxlRGlzcGF0Y2hG
dW5jdGlvbnNPbk1haW5UaHJlYWQoKSB0byB1c2UgbmV3CisgICAgICAgIEFuZHJvaWRUaHJlYWRp
bmcgY2xhc3MsIHJhdGhlciB0aGFuIHVzaW5nIEphdmFTaGFyZWRDbGllbnQgZGlyZWN0bHkuCisg
ICAgICAgIFRoaXMgZml4ZXMgdGhlIGN1cnJlbnQgbGF5ZXJpbmcgdmlvbGF0aW9uLgorICAgICAg
ICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MzI2NTEKKworICAgICAg
ICBUaGUgcGF0dGVybiBpcyBjb3BpZWQgZnJvbSBDaHJvbWl1bSwgd2hpY2ggdXNlcyB0aGUgQ2hy
b21pdW1UaHJlYWRpbmcKKyAgICAgICAgY2xhc3MuIFRoaXMgcGF0Y2ggYWxzbyBmaXhlcyB0aGUg
c3R5bGUgaW4gQ2hyb21pdW1UaHJlYWRpbmcuaC4KKworICAgICAgICAqIHd0Zi9hbmRyb2lkL0Fu
ZHJvaWRUaHJlYWRpbmcuaDogQWRkZWQuIERlY2xhcmVzIEFuZHJvaWRUaHJlYWRpbmcuCisgICAg
ICAgICogd3RmL2FuZHJvaWQvTWFpblRocmVhZEFuZHJvaWQuY3BwOiBNb2RpZmllZAorICAgICAg
ICAoV1RGOjpzY2hlZHVsZURpc3BhdGNoRnVuY3Rpb25zT25NYWluVGhyZWFkKTogVXNlcyBBbmRy
b2lkVGhyZWFkaW5nLgorICAgICAgICAqIHd0Zi9jaHJvbWl1bS9DaHJvbWl1bVRocmVhZGluZy5o
OiBNb2RpZmllZC4gRml4ZXMgc3R5bGUuCisKIDIwMDktMTItMTggIExhc3psbyBHb21ib3MgIDxs
YXN6bG8uMS5nb21ib3NAbm9raWEuY29tPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEtlbm5ldGgg
Um9oZGUgQ2hyaXN0aWFuc2VuLgpJbmRleDogSmF2YVNjcmlwdENvcmUvd3RmL2FuZHJvaWQvQW5k
cm9pZFRocmVhZGluZy5oCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL3d0Zi9hbmRyb2lk
L0FuZHJvaWRUaHJlYWRpbmcuaAkocmV2aXNpb24gMCkKKysrIEphdmFTY3JpcHRDb3JlL3d0Zi9h
bmRyb2lkL0FuZHJvaWRUaHJlYWRpbmcuaAkocmV2aXNpb24gMCkKQEAgLTAsMCArMSwzOSBAQAor
LyoKKyAqIENvcHlyaWdodCAyMDA5LCBUaGUgQW5kcm9pZCBPcGVuIFNvdXJjZSBQcm9qZWN0Cisg
KgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJpbmFyeSBmb3Jtcywg
d2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0ZWQgcHJvdmlkZWQg
dGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6CisgKiAgKiBSZWRpc3Ry
aWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3ZlIGNvcHlyaWdodAor
ICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhlIGZvbGxvd2luZyBk
aXNjbGFpbWVyLgorICogICogUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBmb3JtIG11c3QgcmVw
cm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhpcyBsaXN0IG9mIGNv
bmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUKKyAqICAgIGRvY3Vt
ZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRoIHRoZSBkaXN0cmli
dXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBUSEUgQ09QWVJJR0hU
IEhPTERFUlMgYGBBUyBJUycnIEFORCBBTlkKKyAqIEVYUFJFU1MgT1IgSU1QTElFRCBXQVJSQU5U
SUVTLCBJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywgVEhFCisgKiBJTVBMSUVEIFdBUlJB
TlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFORCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIKKyAq
IFBVUlBPU0UgQVJFIERJU0NMQUlNRUQuICBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQ09QWVJJR0hU
IE9XTkVSIE9SCisgKiBDT05UUklCVVRPUlMgQkUgTElBQkxFIEZPUiBBTlkgRElSRUNULCBJTkRJ
UkVDVCwgSU5DSURFTlRBTCwgU1BFQ0lBTCwKKyAqIEVYRU1QTEFSWSwgT1IgQ09OU0VRVUVOVElB
TCBEQU1BR0VTIChJTkNMVURJTkcsIEJVVCBOT1QgTElNSVRFRCBUTywKKyAqIFBST0NVUkVNRU5U
IE9GIFNVQlNUSVRVVEUgR09PRFMgT1IgU0VSVklDRVM7IExPU1MgT0YgVVNFLCBEQVRBLCBPUgor
ICogUFJPRklUUzsgT1IgQlVTSU5FU1MgSU5URVJSVVBUSU9OKSBIT1dFVkVSIENBVVNFRCBBTkQg
T04gQU5ZIFRIRU9SWQorICogT0YgTElBQklMSVRZLCBXSEVUSEVSIElOIENPTlRSQUNULCBTVFJJ
Q1QgTElBQklMSVRZLCBPUiBUT1JUCisgKiAoSU5DTFVESU5HIE5FR0xJR0VOQ0UgT1IgT1RIRVJX
SVNFKSBBUklTSU5HIElOIEFOWSBXQVkgT1VUIE9GIFRIRSBVU0UKKyAqIE9GIFRISVMgU09GVFdB
UkUsIEVWRU4gSUYgQURWSVNFRCBPRiBUSEUgUE9TU0lCSUxJVFkgT0YgU1VDSCBEQU1BR0UuCisg
Ki8KKworI2lmbmRlZiBBbmRyb2lkVGhyZWFkaW5nX2gKKyNkZWZpbmUgQW5kcm9pZFRocmVhZGlu
Z19oCisKK25hbWVzcGFjZSBXVEYgeworCisvLyBBbiBpbnRlcmZhY2UgdG8gdGhlIGVtYmVkZGlu
ZyBsYXllciwgd2hpY2ggcHJvdmlkZXMgdGhyZWFkaW5nIHN1cHBvcnQuCitjbGFzcyBBbmRyb2lk
VGhyZWFkaW5nIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMgdm9pZCBzY2hlZHVsZURpc3BhdGNoRnVu
Y3Rpb25zT25NYWluVGhyZWFkKCk7Cit9OworCit9IC8vIG5hbWVzcGFjZSBXVEYKKworI2VuZGlm
IC8vIEFuZHJvaWRUaHJlYWRpbmdfaApJbmRleDogSmF2YVNjcmlwdENvcmUvd3RmL2FuZHJvaWQv
TWFpblRocmVhZEFuZHJvaWQuY3BwCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIEphdmFTY3JpcHRDb3JlL3d0Zi9h
bmRyb2lkL01haW5UaHJlYWRBbmRyb2lkLmNwcAkocmV2aXNpb24gNTIyMDIpCisrKyBKYXZhU2Ny
aXB0Q29yZS93dGYvYW5kcm9pZC9NYWluVGhyZWFkQW5kcm9pZC5jcHAJKHdvcmtpbmcgY29weSkK
QEAgLTI2LDI1ICsyNiwxNyBAQAogI2luY2x1ZGUgImNvbmZpZy5oIgogI2luY2x1ZGUgIk1haW5U
aHJlYWQuaCIKIAotI2luY2x1ZGUgIkphdmFTaGFyZWRDbGllbnQuaCIKLQotdXNpbmcgbmFtZXNw
YWNlIGFuZHJvaWQ7CisjaW5jbHVkZSAiQW5kcm9pZFRocmVhZGluZy5oIgogCiBuYW1lc3BhY2Ug
V1RGIHsKIAotLy8gQ2FsbGJhY2sgaW4gdGhlIG1haW4gdGhyZWFkLgotc3RhdGljIHZvaWQgdGlt
ZW91dEZpcmVkKHZvaWQqKQotewotICAgIGRpc3BhdGNoRnVuY3Rpb25zRnJvbU1haW5UaHJlYWQo
KTsKLX0KLQogdm9pZCBpbml0aWFsaXplTWFpblRocmVhZFBsYXRmb3JtKCkKIHsKIH0KIAogdm9p
ZCBzY2hlZHVsZURpc3BhdGNoRnVuY3Rpb25zT25NYWluVGhyZWFkKCkKIHsKLSAgICBKYXZhU2hh
cmVkQ2xpZW50OjpFbnF1ZXVlRnVuY3Rpb25QdHIodGltZW91dEZpcmVkLCAwKTsKKyAgICBBbmRy
b2lkVGhyZWFkaW5nOjpzY2hlZHVsZURpc3BhdGNoRnVuY3Rpb25zT25NYWluVGhyZWFkKCk7CiB9
CiAKIH0gLy8gbmFtZXNwYWNlIFdURgpJbmRleDogSmF2YVNjcmlwdENvcmUvd3RmL2Nocm9taXVt
L0Nocm9taXVtVGhyZWFkaW5nLmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQotLS0gSmF2YVNjcmlwdENvcmUvd3RmL2No
cm9taXVtL0Nocm9taXVtVGhyZWFkaW5nLmgJKHJldmlzaW9uIDUyMjAyKQorKysgSmF2YVNjcmlw
dENvcmUvd3RmL2Nocm9taXVtL0Nocm9taXVtVGhyZWFkaW5nLmgJKHdvcmtpbmcgY29weSkKQEAg
LTMzLDEyICszMywxMiBAQAogCiBuYW1lc3BhY2UgV1RGIHsKIAotICAgIC8vIEFuIGludGVyZmFj
ZSB0byB0aGUgZW1iZWRkaW5nIGxheWVyLCB3aGljaCBwcm92aWRlcyB0aHJlYWRpbmcgc3VwcG9y
dC4KLSAgICBjbGFzcyBDaHJvbWl1bVRocmVhZGluZyB7Ci0gICAgcHVibGljOgotICAgICAgICBz
dGF0aWMgdm9pZCBpbml0aWFsaXplTWFpblRocmVhZCgpOwotICAgICAgICBzdGF0aWMgdm9pZCBz
Y2hlZHVsZURpc3BhdGNoRnVuY3Rpb25zT25NYWluVGhyZWFkKCk7Ci0gICAgfTsKKy8vIEFuIGlu
dGVyZmFjZSB0byB0aGUgZW1iZWRkaW5nIGxheWVyLCB3aGljaCBwcm92aWRlcyB0aHJlYWRpbmcg
c3VwcG9ydC4KK2NsYXNzIENocm9taXVtVGhyZWFkaW5nIHsKK3B1YmxpYzoKKyAgICBzdGF0aWMg
dm9pZCBpbml0aWFsaXplTWFpblRocmVhZCgpOworICAgIHN0YXRpYyB2b2lkIHNjaGVkdWxlRGlz
cGF0Y2hGdW5jdGlvbnNPbk1haW5UaHJlYWQoKTsKK307CiAKIH0gLy8gbmFtZXNwYWNlIFdURgog
Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>