<?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>255789</bug_id>
          
          <creation_ts>2023-04-21 08:20:51 -0700</creation_ts>
          <short_desc>AX: Move attributedStringForNSRange off the main thread when possible.</short_desc>
          <delta_ts>2023-04-21 17:29:26 -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>Accessibility</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Andres Gonzalez">andresg_22</reporter>
          <assigned_to name="Andres Gonzalez">andresg_22</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>andresg_22</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1950374</commentid>
    <comment_count>0</comment_count>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-04-21 08:20:51 -0700</bug_when>
    <thetext>.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1950375</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2023-04-21 08:21:04 -0700</bug_when>
    <thetext>&lt;rdar://problem/108369924&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1950384</commentid>
    <comment_count>2</comment_count>
      <attachid>466029</attachid>
    <who name="Andres Gonzalez">andresg_22</who>
    <bug_when>2023-04-21 08:41:14 -0700</bug_when>
    <thetext>Created attachment 466029
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1950523</commentid>
    <comment_count>3</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2023-04-21 17:29:24 -0700</bug_when>
    <thetext>Committed 263270@main (d910e37f80bb): &lt;https://commits.webkit.org/263270@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 466029.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>466029</attachid>
            <date>2023-04-21 08:41:14 -0700</date>
            <delta_ts>2023-04-21 17:29:25 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-255789-20230421114113.patch</filename>
            <type>text/plain</type>
            <size>12099</size>
            <attacher name="Andres Gonzalez">andresg_22</attacher>
            
              <data encoding="base64">RnJvbSAxNjgzYWE2Y2I4MTY5MGZjMzJhMjMyMjZhMGU3OGE2OTczNjkxZGY3IE1vbiBTZXAgMTcg
MDA6MDA6MDAgMjAwMQpGcm9tOiBBbmRyZXMgR29uemFsZXogPGFuZHJlc2dfMjJAYXBwbGUuY29t
PgpEYXRlOiBUaHUsIDEzIEFwciAyMDIzIDIxOjI2OjQ4IC0wNDAwClN1YmplY3Q6IFtQQVRDSF0g
QVg6IE1vdmUgYXR0cmlidXRlZFN0cmluZ0Zvck5TUmFuZ2Ugb2ZmIHRoZSBtYWluIHRocmVhZCB3
aGVuCiBwb3NzaWJsZS4gaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTI1
NTc4OQogPHJkYXI6Ly9wcm9ibGVtLzEwODM2OTkyND4KClJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgoKVGhpcyBwYXRjaCBhdm9pZHMgaGl0dGluZyB0aGUgbWFpbiB0aHJlYWQgZm9yIHJlcXVl
c3RzIG9mIHRoZSBBdHRyaWJ1dGVkU3RyaW5nIGZvciBOU1JhbmdlcyBjb250YWluZWQgaW4gYSB0
ZXh0IGNvbnRyb2wuIFRoYXQgaXMgdGhlIG1vc3QgY29tbW9uIGNhc2UgZHVyaW5nIHRleHQgZWRp
dGluZy4gVG8gYWNjb21wbGlzaCB0aGlzLCB0ZXh0TWFya2VyUmFuZ2VGb3JOU1JhbmdlIG5lZWRz
IHRvIGJ1aWxkIGEgVGV4dE1hcmtlclJhbmdlIGJhc2VkIG9uIENoYXJhY3Rlck9mZnNldHMgYW5k
IG5vdCBpbiBWaXNpYmxlUG9zaXRpb25zLiBJbiBhZGRpdGlvbiwgdGhlIHJhbmdlcyB1c2VkIGlu
IGNhY2hpbmcgdGhlIFRleHRDb250ZW50IGFuZCB0aGUgQXR0cmlidXRlZFN0cmluZyBhbHNvIG5l
ZWQgdG8gYmUgYmFzZWQgb24gQ2hhcmFjdGVyT2Zmc2V0cy4KCiogU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9BWFRleHRNYXJrZXIuaDoKKFdlYkNvcmU6OkFYVGV4dE1hcmtlclJhbmdlOjpv
cGVyYXRvciBib29sIGNvbnN0KTogQ2xlYW4gdXAuCiogU291cmNlL1dlYkNvcmUvYWNjZXNzaWJp
bGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcDoKKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlPYmpl
Y3Q6OnRleHRDb250ZW50IGNvbnN0KToKKiBTb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2Nv
Y29hL0FjY2Vzc2liaWxpdHlPYmplY3RDb2NvYS5tbToKKFdlYkNvcmU6OkFjY2Vzc2liaWxpdHlP
YmplY3Q6OnRleHRNYXJrZXJSYW5nZUZvck5TUmFuZ2UgY29uc3QpOgoqIFNvdXJjZS9XZWJDb3Jl
L2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL21hYy9BWElzb2xhdGVkT2JqZWN0TWFjLm1tOgoo
V2ViQ29yZTo6QVhJc29sYXRlZE9iamVjdDo6aW5pdGlhbGl6ZVBsYXRmb3JtUHJvcGVydGllcyk6
CihXZWJDb3JlOjpBWElzb2xhdGVkT2JqZWN0Ojp0ZXh0TWFya2VyUmFuZ2VGb3JOU1JhbmdlIGNv
bnN0KToKKFdlYkNvcmU6OkFYSXNvbGF0ZWRPYmplY3Q6OmF0dHJpYnV0ZWRTdHJpbmdGb3JUZXh0
TWFya2VyUmFuZ2UgY29uc3QpOgooV2ViQ29yZTo6QVhJc29sYXRlZE9iamVjdDo6Y2FjaGVkQXR0
cmlidXRlZFN0cmluZ0ZvclRleHRNYXJrZXJSYW5nZSBjb25zdCk6IERlbGV0ZWQuCiogU291cmNl
L1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5oOgoq
IFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvbWFjL1dlYkFjY2Vzc2liaWxpdHlPYmplY3RX
cmFwcGVyTWFjLm1tOgooLVtXZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlciBhdHRyaWJ1dGVk
U3RyaW5nRm9yTlNSYW5nZTpdKToKKC1bV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgcnRm
Rm9yTlNSYW5nZTpdKToKKC1bV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgYWNjZXNzaWJp
bGl0eUF0dHJpYnV0ZVZhbHVlOmZvclBhcmFtZXRlcjpdKToKKC1bV2ViQWNjZXNzaWJpbGl0eU9i
amVjdFdyYXBwZXIgZG9BWEF0dHJpYnV0ZWRTdHJpbmdGb3JSYW5nZTpdKTogUmVuYW1lZC4KKC1b
V2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXIgZG9BWFJURkZvclJhbmdlOl0pOiBSZW5hbWVk
LgotLS0KIFNvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUZXh0TWFya2VyLmggICB8ICAy
ICstCiAuLi4vYWNjZXNzaWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcCAgICAgfCAgNyAr
KystCiAuLi4vY29jb2EvQWNjZXNzaWJpbGl0eU9iamVjdENvY29hLm1tICAgICAgICAgfCAxNCAr
KysrKysrLQogLi4uL2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkT2JqZWN0LmggICAgICAgICAgIHwg
IDEgLQogLi4uL2lzb2xhdGVkdHJlZS9tYWMvQVhJc29sYXRlZE9iamVjdE1hYy5tbSAgIHwgMzMg
KysrKysrKysrKy0tLS0tLS0tLQogLi4uL21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBl
ck1hYy5tbSAgIHwgMjUgKysrKysrKy0tLS0tLS0KIDYgZmlsZXMgY2hhbmdlZCwgNDggaW5zZXJ0
aW9ucygrKSwgMzQgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9BWFRleHRNYXJrZXIuaCBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkv
QVhUZXh0TWFya2VyLmgKaW5kZXggMjUzNDY3ZTkwMjUwLi5mMDA2ZjY2YWMxODkgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvQVhUZXh0TWFya2VyLmgKKysrIGIvU291
cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BWFRleHRNYXJrZXIuaApAQCAtMTUxLDcgKzE1MSw3
IEBAIHB1YmxpYzoKICAgICBBWFRleHRNYXJrZXJSYW5nZShBWElEIHRyZWVJRCwgQVhJRCBvYmpl
Y3RJRCwgdW5zaWduZWQgb2Zmc2V0LCB1bnNpZ25lZCBsZW5ndGgpOwogICAgIEFYVGV4dE1hcmtl
clJhbmdlKCkgPSBkZWZhdWx0OwogCi0gICAgb3BlcmF0b3IgYm9vbCgpIGNvbnN0IHsgcmV0dXJu
ICFtX3N0YXJ0LmlzTnVsbCgpICYmICFtX2VuZC5pc051bGwoKTsgfQorICAgIG9wZXJhdG9yIGJv
b2woKSBjb25zdCB7IHJldHVybiBtX3N0YXJ0ICYmIG1fZW5kOyB9CiAgICAgb3BlcmF0b3IgVmlz
aWJsZVBvc2l0aW9uUmFuZ2UoKSBjb25zdDsKICAgICBzdGQ6Om9wdGlvbmFsPFNpbXBsZVJhbmdl
PiBzaW1wbGVSYW5nZSgpIGNvbnN0OwogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L0FjY2Vzc2liaWxpdHlPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvYWNjZXNz
aWJpbGl0eS9BY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcAppbmRleCBlY2UxNGE0ODhhYzQuLjY4MzMz
ZjYzYzg5NyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9BY2Nlc3Np
YmlsaXR5T2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L0FjY2Vz
c2liaWxpdHlPYmplY3QuY3BwCkBAIC0yODM4LDcgKzI4MzgsMTIgQEAgc3RkOjpvcHRpb25hbDxT
dHJpbmc+IEFjY2Vzc2liaWxpdHlPYmplY3Q6OnRleHRDb250ZW50KCkgY29uc3QKICAgICBpZiAo
IWhhc1RleHRDb250ZW50KCkpCiAgICAgICAgIHJldHVybiBzdGQ6Om51bGxvcHQ7CiAKLSAgICBp
ZiAoYXV0byByYW5nZSA9IHNpbXBsZVJhbmdlKCkpCisgICAgc3RkOjpvcHRpb25hbDxTaW1wbGVS
YW5nZT4gcmFuZ2U7CisgICAgaWYgKGlzVGV4dENvbnRyb2woKSkKKyAgICAgICAgcmFuZ2UgPSBy
YW5nZUZvclBsYWluVGV4dFJhbmdlKHsgMCwgdGV4dCgpLmxlbmd0aCgpIH0pOworICAgIGVsc2UK
KyAgICAgICAgcmFuZ2UgPSBzaW1wbGVSYW5nZSgpOworICAgIGlmIChyYW5nZSkKICAgICAgICAg
cmV0dXJuIHN0cmluZ0ZvclJhbmdlKCpyYW5nZSk7CiAgICAgcmV0dXJuIHN0ZDo6bnVsbG9wdDsK
IH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvY29jb2EvQWNjZXNz
aWJpbGl0eU9iamVjdENvY29hLm1tIGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9jb2Nv
YS9BY2Nlc3NpYmlsaXR5T2JqZWN0Q29jb2EubW0KaW5kZXggZDA1MDk0ODY0Y2RhLi45ZDk3MDM1
ODA2NzggMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvY29jb2EvQWNj
ZXNzaWJpbGl0eU9iamVjdENvY29hLm1tCisrKyBiL1NvdXJjZS9XZWJDb3JlL2FjY2Vzc2liaWxp
dHkvY29jb2EvQWNjZXNzaWJpbGl0eU9iamVjdENvY29hLm1tCkBAIC0yMTcsNyArMjE3LDE5IEBA
IEFYVGV4dE1hcmtlclJhbmdlIEFjY2Vzc2liaWxpdHlPYmplY3Q6OnRleHRNYXJrZXJSYW5nZUZv
ck5TUmFuZ2UoY29uc3QgTlNSYW5nZSYKIHsKICAgICBpZiAocmFuZ2UubG9jYXRpb24gPT0gTlNO
b3RGb3VuZCkKICAgICAgICAgcmV0dXJuIHsgfTsKLSAgICByZXR1cm4geyB2aXNpYmxlUG9zaXRp
b25Gb3JJbmRleChyYW5nZS5sb2NhdGlvbiksIHZpc2libGVQb3NpdGlvbkZvckluZGV4KHJhbmdl
LmxvY2F0aW9uICsgcmFuZ2UubGVuZ3RoKSB9OworCisgICAgaWYgKCFpc1RleHRDb250cm9sKCkp
CisgICAgICAgIHJldHVybiB7IHZpc2libGVQb3NpdGlvbkZvckluZGV4KHJhbmdlLmxvY2F0aW9u
KSwgdmlzaWJsZVBvc2l0aW9uRm9ySW5kZXgocmFuZ2UubG9jYXRpb24gKyByYW5nZS5sZW5ndGgp
IH07CisKKyAgICBpZiAocmFuZ2UubG9jYXRpb24gKyByYW5nZS5sZW5ndGggPiB0ZXh0KCkubGVu
Z3RoKCkpCisgICAgICAgIHJldHVybiB7IH07CisKKyAgICBpZiAoYXV0byogY2FjaGUgPSBheE9i
amVjdENhY2hlKCkpIHsKKyAgICAgICAgYXV0byBzdGFydCA9IGNhY2hlLT5jaGFyYWN0ZXJPZmZz
ZXRGb3JJbmRleChyYW5nZS5sb2NhdGlvbiwgdGhpcyk7CisgICAgICAgIGF1dG8gZW5kID0gY2Fj
aGUtPmNoYXJhY3Rlck9mZnNldEZvckluZGV4KHJhbmdlLmxvY2F0aW9uICsgcmFuZ2UubGVuZ3Ro
LCB0aGlzKTsKKyAgICAgICAgcmV0dXJuIGNhY2hlLT5yYW5nZUZvclVub3JkZXJlZENoYXJhY3Rl
ck9mZnNldHMoc3RhcnQsIGVuZCk7CisgICAgfQorICAgIHJldHVybiB7IH07CiB9CiAKIC8vIE5T
QXR0cmlidXRlZFN0cmluZyBzdXBwb3J0LgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNj
ZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5oIGIvU291cmNlL1dlYkNv
cmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5oCmluZGV4IDFl
YWI1Njk1NzMwMy4uYzJjNDFkNGI1NGNmIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9BWElzb2xhdGVkT2JqZWN0LmgKKysrIGIvU291cmNlL1dl
YkNvcmUvYWNjZXNzaWJpbGl0eS9pc29sYXRlZHRyZWUvQVhJc29sYXRlZE9iamVjdC5oCkBAIC00
NzIsNyArNDcyLDYgQEAgcHJpdmF0ZToKICAgICB1bnNpZ25lZCB0ZXh0TGVuZ3RoKCkgY29uc3Qg
b3ZlcnJpZGU7CiAjaWYgUExBVEZPUk0oQ09DT0EpCiAgICAgUmV0YWluUHRyPE5TQXR0cmlidXRl
ZFN0cmluZz4gYXR0cmlidXRlZFN0cmluZ0ZvclRleHRNYXJrZXJSYW5nZShBWFRleHRNYXJrZXJS
YW5nZSYmLCBTcGVsbENoZWNrKSBjb25zdCBvdmVycmlkZTsKLSAgICBOU0F0dHJpYnV0ZWRTdHJp
bmcgKmNhY2hlZEF0dHJpYnV0ZWRTdHJpbmdGb3JUZXh0TWFya2VyUmFuZ2UoY29uc3QgQVhUZXh0
TWFya2VyUmFuZ2UmLCBTcGVsbENoZWNrKSBjb25zdDsKICNlbmRpZgogICAgIEFYT2JqZWN0Q2Fj
aGUqIGF4T2JqZWN0Q2FjaGUoKSBjb25zdCBvdmVycmlkZTsKICAgICBFbGVtZW50KiBhY3Rpb25F
bGVtZW50KCkgY29uc3Qgb3ZlcnJpZGU7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9hY2Nl
c3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9tYWMvQVhJc29sYXRlZE9iamVjdE1hYy5tbSBiL1NvdXJj
ZS9XZWJDb3JlL2FjY2Vzc2liaWxpdHkvaXNvbGF0ZWR0cmVlL21hYy9BWElzb2xhdGVkT2JqZWN0
TWFjLm1tCmluZGV4IDZhMjIyNWI2MWMxZS4uMzAzNjhhMTliMGI2IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9tYWMvQVhJc29sYXRlZE9iamVj
dE1hYy5tbQorKysgYi9Tb3VyY2UvV2ViQ29yZS9hY2Nlc3NpYmlsaXR5L2lzb2xhdGVkdHJlZS9t
YWMvQVhJc29sYXRlZE9iamVjdE1hYy5tbQpAQCAtNDEsNyArNDEsMTIgQEAgdm9pZCBBWElzb2xh
dGVkT2JqZWN0Ojppbml0aWFsaXplUGxhdGZvcm1Qcm9wZXJ0aWVzKGNvbnN0IFJlZjxjb25zdCBB
Y2Nlc3NpYmlsaXQKIAogICAgIFJldGFpblB0cjxOU0F0dHJpYnV0ZWRTdHJpbmc+IGF0dHJpYnV0
ZWRUZXh0OwogICAgIGlmIChvYmplY3QtPmhhc0F0dHJpYnV0ZWRUZXh0KCkpIHsKLSAgICAgICAg
aWYgKGF1dG8gcmFuZ2UgPSBvYmplY3QtPnNpbXBsZVJhbmdlKCkpIHsKKyAgICAgICAgc3RkOjpv
cHRpb25hbDxTaW1wbGVSYW5nZT4gcmFuZ2U7CisgICAgICAgIGlmIChpc1RleHRDb250cm9sKCkp
CisgICAgICAgICAgICByYW5nZSA9IHJhbmdlRm9yUGxhaW5UZXh0UmFuZ2UoeyAwLCBvYmplY3Qt
PnRleHQoKS5sZW5ndGgoKSB9KTsKKyAgICAgICAgZWxzZQorICAgICAgICAgICAgcmFuZ2UgPSBv
YmplY3QtPnNpbXBsZVJhbmdlKCk7CisgICAgICAgIGlmIChyYW5nZSkgewogICAgICAgICAgICAg
aWYgKChhdHRyaWJ1dGVkVGV4dCA9IG9iamVjdC0+YXR0cmlidXRlZFN0cmluZ0ZvclJhbmdlKCpy
YW5nZSwgU3BlbGxDaGVjazo6WWVzKSkpCiAgICAgICAgICAgICAgICAgc2V0UHJvcGVydHkoQVhQ
cm9wZXJ0eU5hbWU6OkF0dHJpYnV0ZWRUZXh0LCBhdHRyaWJ1dGVkVGV4dCk7CiAgICAgICAgIH0K
QEAgLTE2MywyOSArMTY4LDI1IEBAIHVuc2lnbmVkIEFYSXNvbGF0ZWRPYmplY3Q6OnRleHRMZW5n
dGgoKSBjb25zdAogCiBSZXRhaW5QdHI8TlNBdHRyaWJ1dGVkU3RyaW5nPiBBWElzb2xhdGVkT2Jq
ZWN0OjphdHRyaWJ1dGVkU3RyaW5nRm9yVGV4dE1hcmtlclJhbmdlKEFYVGV4dE1hcmtlclJhbmdl
JiYgbWFya2VyUmFuZ2UsIFNwZWxsQ2hlY2sgc3BlbGxDaGVjaykgY29uc3QKIHsKLSAgICBpZiAo
TlNBdHRyaWJ1dGVkU3RyaW5nICpjYWNoZWRTdHJpbmcgPSBjYWNoZWRBdHRyaWJ1dGVkU3RyaW5n
Rm9yVGV4dE1hcmtlclJhbmdlKG1hcmtlclJhbmdlLCBzcGVsbENoZWNrKSkKLSAgICAgICAgcmV0
dXJuIGNhY2hlZFN0cmluZzsKLQotICAgIHJldHVybiBBY2Nlc3NpYmlsaXR5OjpyZXRyaWV2ZVZh
bHVlRnJvbU1haW5UaHJlYWQ8UmV0YWluUHRyPE5TQXR0cmlidXRlZFN0cmluZz4+KFttYXJrZXJS
YW5nZSA9IFdURk1vdmUobWFya2VyUmFuZ2UpLCAmc3BlbGxDaGVjaywgdGhpc10gKCkgbXV0YWJs
ZSAtPiBSZXRhaW5QdHI8TlNBdHRyaWJ1dGVkU3RyaW5nPiB7Ci0gICAgICAgIGlmIChSZWZQdHIg
YXhPYmplY3QgPSBhc3NvY2lhdGVkQVhPYmplY3QoKSkKLSAgICAgICAgICAgIHJldHVybiBheE9i
amVjdC0+YXR0cmlidXRlZFN0cmluZ0ZvclRleHRNYXJrZXJSYW5nZShXVEZNb3ZlKG1hcmtlclJh
bmdlKSwgc3BlbGxDaGVjayk7Ci0gICAgICAgIHJldHVybiB7IH07Ci0gICAgfSk7Ci19CisgICAg
aWYgKCFtYXJrZXJSYW5nZSkKKyAgICAgICAgcmV0dXJuIG5pbDsKIAotTlNBdHRyaWJ1dGVkU3Ry
aW5nICpBWElzb2xhdGVkT2JqZWN0OjpjYWNoZWRBdHRyaWJ1dGVkU3RyaW5nRm9yVGV4dE1hcmtl
clJhbmdlKGNvbnN0IEFYVGV4dE1hcmtlclJhbmdlJiBtYXJrZXJSYW5nZSwgU3BlbGxDaGVjayBz
cGVsbENoZWNrKSBjb25zdAotewogICAgIC8vIEF0IHRoZSBtb21lbnQgd2UgYXJlIG9ubHkgaGFu
ZGxpbmcgcmFuZ2VzIHRoYXQgYXJlIGNvbnRhaW5lZCBpbiBhIHNpbmdsZSBvYmplY3QsIGFuZCBm
b3Igd2hpY2ggd2UgY2FjaGVkIHRoZSBBdHRyaWJ1dGVTdHJpbmcuCiAgICAgLy8gRklYTUU6IEV4
dGVuZCB0byBjYXNlcyB3aGVyZSB0aGUgcmFuZ2UgZXhwYW5kcyBtdWx0aXBsZSBvYmplY3RzLgog
CisgICAgYXV0byBhdHRyaWJ1dGVkVGV4dCA9IHByb3BlcnR5VmFsdWU8UmV0YWluUHRyPE5TQXR0
cmlidXRlZFN0cmluZz4+KEFYUHJvcGVydHlOYW1lOjpBdHRyaWJ1dGVkVGV4dCk7CisgICAgaWYg
KCFhdHRyaWJ1dGVkVGV4dCkgeworICAgICAgICByZXR1cm4gQWNjZXNzaWJpbGl0eTo6cmV0cmll
dmVWYWx1ZUZyb21NYWluVGhyZWFkPFJldGFpblB0cjxOU0F0dHJpYnV0ZWRTdHJpbmc+PihbbWFy
a2VyUmFuZ2UgPSBXVEZNb3ZlKG1hcmtlclJhbmdlKSwgJnNwZWxsQ2hlY2ssIHRoaXNdICgpIG11
dGFibGUgLT4gUmV0YWluUHRyPE5TQXR0cmlidXRlZFN0cmluZz4geworICAgICAgICAgICAgaWYg
KFJlZlB0ciBheE9iamVjdCA9IGFzc29jaWF0ZWRBWE9iamVjdCgpKQorICAgICAgICAgICAgICAg
IHJldHVybiBheE9iamVjdC0+YXR0cmlidXRlZFN0cmluZ0ZvclRleHRNYXJrZXJSYW5nZShXVEZN
b3ZlKG1hcmtlclJhbmdlKSwgc3BlbGxDaGVjayk7CisgICAgICAgICAgICByZXR1cm4geyB9Owor
ICAgICAgICB9KTsKKyAgICB9CisKICAgICBhdXRvIG5zUmFuZ2UgPSBtYXJrZXJSYW5nZS5uc1Jh
bmdlKCk7CiAgICAgaWYgKCFuc1JhbmdlKQogICAgICAgICByZXR1cm4gbmlsOwogCi0gICAgYXV0
byBhdHRyaWJ1dGVkVGV4dCA9IHByb3BlcnR5VmFsdWU8UmV0YWluUHRyPE5TQXR0cmlidXRlZFN0
cmluZz4+KEFYUHJvcGVydHlOYW1lOjpBdHRyaWJ1dGVkVGV4dCk7Ci0gICAgaWYgKCFhdHRyaWJ1
dGVkVGV4dCkKLSAgICAgICAgcmV0dXJuIG5pbDsKLQogICAgIGlmICghYXR0cmlidXRlZFN0cmlu
Z0NvbnRhaW5zUmFuZ2UoYXR0cmlidXRlZFRleHQuZ2V0KCksICpuc1JhbmdlKSkKICAgICAgICAg
cmV0dXJuIG5pbDsKIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9t
YWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0gYi9Tb3VyY2UvV2ViQ29yZS9h
Y2Nlc3NpYmlsaXR5L21hYy9XZWJBY2Nlc3NpYmlsaXR5T2JqZWN0V3JhcHBlck1hYy5tbQppbmRl
eCA1OTk5MmQwZjBjZWQuLjYzNjQ2M2MxZTEyNyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUv
YWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVjdFdyYXBwZXJNYWMubW0KKysr
IGIvU291cmNlL1dlYkNvcmUvYWNjZXNzaWJpbGl0eS9tYWMvV2ViQWNjZXNzaWJpbGl0eU9iamVj
dFdyYXBwZXJNYWMubW0KQEAgLTI4MDEsMTYgKzI4MDEsMTIgQEAgQUxMT1dfREVQUkVDQVRFRF9J
TVBMRU1FTlRBVElPTlNfRU5ECiAKIC8vIFRoZSBDRkF0dHJpYnV0ZWRTdHJpbmdUeXBlIHJlcHJl
c2VudGF0aW9uIG9mIHRoZSB0ZXh0IGFzc29jaWF0ZWQgd2l0aCB0aGlzIGFjY2Vzc2liaWxpdHkK
IC8vIG9iamVjdCB0aGF0IGlzIHNwZWNpZmllZCBieSB0aGUgZ2l2ZW4gcmFuZ2UuCi0tIChOU0F0
dHJpYnV0ZWRTdHJpbmcgKilkb0FYQXR0cmlidXRlZFN0cmluZ0ZvclJhbmdlOihOU1JhbmdlKXJh
bmdlCistIChOU0F0dHJpYnV0ZWRTdHJpbmcgKilhdHRyaWJ1dGVkU3RyaW5nRm9yTlNSYW5nZToo
Y29uc3QgTlNSYW5nZSYpcmFuZ2UKIHsKLSAgICByZXR1cm4gQWNjZXNzaWJpbGl0eTo6cmV0cmll
dmVBdXRvcmVsZWFzZWRWYWx1ZUZyb21NYWluVGhyZWFkPE5TQXR0cmlidXRlZFN0cmluZyAqPihb
JnJhbmdlLCBwcm90ZWN0ZWRTZWxmID0gcmV0YWluUHRyKHNlbGYpXSAoKSAtPiBSZXRhaW5QdHI8
TlNBdHRyaWJ1dGVkU3RyaW5nPiB7Ci0gICAgICAgIGF1dG8qIGJhY2tpbmdPYmplY3QgPSBwcm90
ZWN0ZWRTZWxmLmdldCgpLmF4QmFja2luZ09iamVjdDsKLSAgICAgICAgaWYgKCFiYWNraW5nT2Jq
ZWN0KQotICAgICAgICAgICAgcmV0dXJuIG5pbDsKLQotICAgICAgICBhdXRvIHdlYlJhbmdlID0g
YmFja2luZ09iamVjdC0+cmFuZ2VGb3JQbGFpblRleHRSYW5nZShyYW5nZSk7Ci0gICAgICAgIHJl
dHVybiBbcHJvdGVjdGVkU2VsZiBhdHRyaWJ1dGVkU3RyaW5nRm9yVGV4dE1hcmtlclJhbmdlOnRl
eHRNYXJrZXJSYW5nZUZyb21SYW5nZShiYWNraW5nT2JqZWN0LT5heE9iamVjdENhY2hlKCksIHdl
YlJhbmdlKSBzcGVsbENoZWNrOkFYQ29yZU9iamVjdDo6U3BlbGxDaGVjazo6WWVzXTsKLSAgICB9
KTsKKyAgICBhdXRvKiBiYWNraW5nT2JqZWN0ID0gc2VsZi5heEJhY2tpbmdPYmplY3Q7CisgICAg
aWYgKCFiYWNraW5nT2JqZWN0KQorICAgICAgICByZXR1cm4gbmlsOworICAgIHJldHVybiBiYWNr
aW5nT2JqZWN0LT5hdHRyaWJ1dGVkU3RyaW5nRm9yVGV4dE1hcmtlclJhbmdlKGJhY2tpbmdPYmpl
Y3QtPnRleHRNYXJrZXJSYW5nZUZvck5TUmFuZ2UocmFuZ2UpLCBBWENvcmVPYmplY3Q6OlNwZWxs
Q2hlY2s6OlllcykuYXV0b3JlbGVhc2UoKTsKIH0KIAogLSAoTlNJbnRlZ2VyKV9pbmRleEZvclRl
eHRNYXJrZXI6KEFYVGV4dE1hcmtlclJlZiltYXJrZXJSZWYKQEAgLTI4NTQsOSArMjg1MCw5IEBA
IC0gKEFYVGV4dE1hcmtlclJlZilfdGV4dE1hcmtlckZvckluZGV4OihOU0ludGVnZXIpdGV4dElu
ZGV4CiAKIC8vIFRoZSBSVEYgcmVwcmVzZW50YXRpb24gb2YgdGhlIHRleHQgYXNzb2NpYXRlZCB3
aXRoIHRoaXMgYWNjZXNzaWJpbGl0eSBvYmplY3QgdGhhdCBpcwogLy8gc3BlY2lmaWVkIGJ5IHRo
ZSBnaXZlbiByYW5nZS4KLS0gKE5TRGF0YSAqKWRvQVhSVEZGb3JSYW5nZTooTlNSYW5nZSlyYW5n
ZQorLSAoTlNEYXRhICopcnRmRm9yTlNSYW5nZTooY29uc3QgTlNSYW5nZSYpcmFuZ2UKIHsKLSAg
ICBOU0F0dHJpYnV0ZWRTdHJpbmcgKmF0dHJTdHJpbmcgPSBbc2VsZiBkb0FYQXR0cmlidXRlZFN0
cmluZ0ZvclJhbmdlOnJhbmdlXTsKKyAgICBOU0F0dHJpYnV0ZWRTdHJpbmcgKmF0dHJTdHJpbmcg
PSBbc2VsZiBhdHRyaWJ1dGVkU3RyaW5nRm9yTlNSYW5nZTpyYW5nZV07CiAgICAgcmV0dXJuIFth
dHRyU3RyaW5nIFJURkZyb21SYW5nZTpOU01ha2VSYW5nZSgwLCBhdHRyU3RyaW5nLmxlbmd0aCkg
ZG9jdW1lbnRBdHRyaWJ1dGVzOkB7IH1dOwogfQogCkBAIC0zMzkyLDYgKzMzODgsNyBAQCBBTExP
V19ERVBSRUNBVEVEX0lNUExFTUVOVEFUSU9OU19FTkQKICAgICAgICAgICAgIGF1dG8qIGNhY2hl
ID0gYmFja2luZ09iamVjdC0+YXhPYmplY3RDYWNoZSgpOwogICAgICAgICAgICAgaWYgKCFjYWNo
ZSkKICAgICAgICAgICAgICAgICByZXR1cm4gU3RyaW5nKCk7CisKICAgICAgICAgICAgIGF1dG8g
c3RhcnQgPSBjYWNoZS0+Y2hhcmFjdGVyT2Zmc2V0Rm9ySW5kZXgocmFuZ2UubG9jYXRpb24sIGJh
Y2tpbmdPYmplY3QpOwogICAgICAgICAgICAgYXV0byBlbmQgPSBjYWNoZS0+Y2hhcmFjdGVyT2Zm
c2V0Rm9ySW5kZXgocmFuZ2UubG9jYXRpb24gKyByYW5nZS5sZW5ndGgsIGJhY2tpbmdPYmplY3Qp
OwogICAgICAgICAgICAgYXV0byByYW5nZSA9IGNhY2hlLT5yYW5nZUZvclVub3JkZXJlZENoYXJh
Y3Rlck9mZnNldHMoc3RhcnQsIGVuZCk7CkBAIC0zNjI3LDExICszNjI0LDExIEBAIEFMTE9XX0RF
UFJFQ0FURURfSU1QTEVNRU5UQVRJT05TX0VORAogICAgICAgICAgICAgcmV0dXJuIFtOU1ZhbHVl
IHZhbHVlV2l0aFJlY3Q6cmVjdF07CiAgICAgICAgIH0KIAotICAgICAgICBpZiAoW2F0dHJpYnV0
ZSBpc0VxdWFsVG9TdHJpbmc6IChOU1N0cmluZyopa0FYUlRGRm9yUmFuZ2VQYXJhbWV0ZXJpemVk
QXR0cmlidXRlXSkKLSAgICAgICAgICAgIHJldHVybiByYW5nZVNldCA/IFtzZWxmIGRvQVhSVEZG
b3JSYW5nZTpyYW5nZV0gOiBuaWw7CisgICAgICAgIGlmIChbYXR0cmlidXRlIGlzRXF1YWxUb1N0
cmluZzooTlNTdHJpbmcgKilrQVhSVEZGb3JSYW5nZVBhcmFtZXRlcml6ZWRBdHRyaWJ1dGVdKQor
ICAgICAgICAgICAgcmV0dXJuIHJhbmdlU2V0ID8gW3NlbGYgcnRmRm9yTlNSYW5nZTpyYW5nZV0g
OiBuaWw7CiAKICAgICAgICAgaWYgKFthdHRyaWJ1dGUgaXNFcXVhbFRvU3RyaW5nOihOU1N0cmlu
ZyAqKWtBWEF0dHJpYnV0ZWRTdHJpbmdGb3JSYW5nZVBhcmFtZXRlcml6ZWRBdHRyaWJ1dGVdKQot
ICAgICAgICAgICAgcmV0dXJuIHJhbmdlU2V0ID8gW3NlbGYgZG9BWEF0dHJpYnV0ZWRTdHJpbmdG
b3JSYW5nZTpyYW5nZV0gOiBuaWw7CisgICAgICAgICAgICByZXR1cm4gcmFuZ2VTZXQgPyBbc2Vs
ZiBhdHRyaWJ1dGVkU3RyaW5nRm9yTlNSYW5nZTpyYW5nZV0gOiBuaWw7CiAKICAgICAgICAgaWYg
KFthdHRyaWJ1dGUgaXNFcXVhbFRvU3RyaW5nOiAoTlNTdHJpbmcqKWtBWFN0eWxlUmFuZ2VGb3JJ
bmRleFBhcmFtZXRlcml6ZWRBdHRyaWJ1dGVdKSB7CiAgICAgICAgICAgICBQbGFpblRleHRSYW5n
ZSB0ZXh0UmFuZ2UgPSBiYWNraW5nT2JqZWN0LT5kb0FYU3R5bGVSYW5nZUZvckluZGV4KFtudW1i
ZXIgaW50VmFsdWVdKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>