<?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>177755</bug_id>
          
          <creation_ts>2017-10-02 10:43:32 -0700</creation_ts>
          <short_desc>[GTK] Support the &quot;system&quot; CSS font family</short_desc>
          <delta_ts>2017-10-31 23:21:34 -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>WebKitGTK</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=178388</see_also>
          <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>178624</blocked>
    
    <blocked>177814</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Adrian Perez">aperez</reporter>
          <assigned_to name="Adrian Perez">aperez</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>buildbot</cc>
    
    <cc>cgarcia</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>mark.lam</cc>
    
    <cc>mcatanzaro</cc>
    
    <cc>mmaxfield</cc>
    
    <cc>sam</cc>
    
    <cc>timothy</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1355302</commentid>
    <comment_count>0</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-10-02 10:43:32 -0700</bug_when>
    <thetext>Some info about this feature:

  https://webkit.org/blog/3709/using-the-system-font-in-web-content/
  https://jonathantneal.github.io/system-font-css/
  https://lists.w3.org/Archives/Public/www-style/2015Jul/0169.html

The TL;DR is that using “font-family: -webkit-system” (I think WebKit only
has a prefixed implementation) should select the system UI font. In GTK+
we would obtain this from the “GtkSettings::gtk-font-name” property.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1355363</commentid>
    <comment_count>1</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-10-02 11:47:20 -0700</bug_when>
    <thetext>(In reply to Adrian Perez from comment #0)
&gt; Some info about this feature:
&gt; 
&gt;   https://webkit.org/blog/3709/using-the-system-font-in-web-content/
&gt;   https://jonathantneal.github.io/system-font-css/
&gt;   https://lists.w3.org/Archives/Public/www-style/2015Jul/0169.html
&gt; 
&gt; The TL;DR is that using “font-family: -webkit-system” (I think WebKit only
&gt; has a prefixed implementation) should select the system UI font. In GTK+
&gt; we would obtain this from the “GtkSettings::gtk-font-name” property.

Correction: it&apos;s “font-family: -webkit-system-font”</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1355457</commentid>
    <comment_count>2</comment_count>
      <attachid>322423</attachid>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-10-02 13:39:49 -0700</bug_when>
    <thetext>Created attachment 322423
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1355460</commentid>
    <comment_count>3</comment_count>
    <who name="Build Bot">buildbot</who>
    <bug_when>2017-10-02 13:43:01 -0700</bug_when>
    <thetext>Attachment 322423 did not pass style-queue:


ERROR: Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp:334:  Line contains only semicolon. If this should be an empty statement, use { } instead.  [whitespace/semicolon] [5]
Total errors found: 1 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1355487</commentid>
    <comment_count>4</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-10-02 14:13:06 -0700</bug_when>
    <thetext>(In reply to Build Bot from comment #3)
 
&gt; ERROR: Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp:334: 
&gt; Line contains only semicolon. If this should be an empty statement, use { }
&gt; instead.  [whitespace/semicolon] [5]

This style checker failure is expected. I cannot think of a nice way of
adding the conditional compilation here without having the hanging semicolon
and without adding the elements somewhere in the middle. If that&apos;s okay with
reviewers, I suggest to land the patch despite this.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1355719</commentid>
    <comment_count>5</comment_count>
      <attachid>322423</attachid>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2017-10-03 00:19:46 -0700</bug_when>
    <thetext>Comment on attachment 322423
Patch

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

&gt; Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp:333
&gt; +#if PLATFORM(GTK)
&gt; +        || equalLettersIgnoringASCIICase(familyNameString, &quot;-webkit-system-font&quot;)
&gt; +        || equalLettersIgnoringASCIICase(familyNameString, &quot;-webkit-system-ui&quot;)
&gt; +#endif

You can mode the ifdefed code to the beginning, since the order doesn&apos;t matter, right?

&gt; Source/WebCore/platform/graphics/gtk/GdkCairoUtilities.cpp:61
&gt; +String getDefaultGtkSystemUiFont()

I would call this just defaultGtkSystemFont().

&gt; Source/WebCore/platform/graphics/gtk/GdkCairoUtilities.cpp:67
&gt; +    auto spaceChar = strrchr(fontString.get(), &apos; &apos;);

auto*

&gt; Source/WebCore/platform/graphics/gtk/GdkCairoUtilities.cpp:68
&gt; +    return String::fromUTF8(fontString.get(), spaceChar - fontString.get());

I know we are always expecting a valid font name - space - size string, but I would either assert if that&apos;s not the case or handling that case, I don&apos;t know what happens if the user sets an an empty string in the dconf setting, for example. Since we have a duplicated string, maybe it&apos;s easier to set &apos;\0&apos; in the place of the last space (if found), and then just use String::fromUTF8().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1355749</commentid>
    <comment_count>6</comment_count>
      <attachid>322423</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-10-03 02:21:13 -0700</bug_when>
    <thetext>Comment on attachment 322423
Patch

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

I agree with the r+, but I have more comments to address before landing.

This should go in GdkUtilities.[h,cpp], not GdkCairoUtilities. It has nothing to do with Cairo.

Both the remote inspector and Epiphany should be updated to use -webkit-system-font instead of that stupid confusing menu font.

It should be implemented for WPE as well, just hardcode the result as &quot;sans&quot;.

You get bonus points for the layout test, thank you!

&gt; Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp:168
&gt; +#endif

Implement it for WPE as well:

#if PLATFORM(GTK)
    return defaultGtkSystemFont();
#else
    return &quot;sans-serif&quot;;
#endif

&gt;&gt; Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp:333
&gt;&gt; +#endif
&gt; 
&gt; You can mode the ifdefed code to the beginning, since the order doesn&apos;t matter, right?

Just remove the ifdefs, this can be implemented on all platforms. The non-GTK way to get the default system font would be &quot;fc-match sans&quot; and we can accomplish that by just returning &quot;sans-serif&quot;.

&gt;&gt; Source/WebCore/platform/graphics/gtk/GdkCairoUtilities.cpp:61
&gt;&gt; +String getDefaultGtkSystemUiFont()
&gt; 
&gt; I would call this just defaultGtkSystemFont().

And in any case, we do capitalize two-letter acronyms in WebKit, so it should have been getDefaultGtkSystemUIFont</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1355774</commentid>
    <comment_count>7</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-10-03 03:57:03 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #6)
&gt; Comment on attachment 322423 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=322423&amp;action=review
&gt; 
&gt; I agree with the r+, but I have more comments to address before landing.
&gt; 
&gt; This should go in GdkUtilities.[h,cpp], not GdkCairoUtilities. It has
&gt; nothing to do with Cairo.

Probably you mean using GtkUtilities.{h,cpp} (there is no GdkUtilities.{h,cpp}).

The code was added in GdkCairoUtilities.{h,cpp} because there was already
font-related code there. I&apos;ll move it.


&gt; It should be implemented for WPE as well, just hardcode the result as &quot;sans&quot;.

I&apos;m not sure about this, check my reasoning below.
 
&gt; &gt;&gt; Source/WebCore/platform/graphics/freetype/FontCacheFreeType.cpp:333
&gt; &gt;&gt; +#endif
&gt; &gt; 
&gt; &gt; You can mode the ifdefed code to the beginning, since the order doesn&apos;t matter, right?

Yes, it just does not look beautiful because then there are a few lines
with checks for non-prefixed items, then the two prefixed items in the
middle, then more non-prefixed ones... I&apos;ll just move it to the middle,
but aesthetically it looks a bit “meh”.
 
&gt; Just remove the ifdefs, this can be implemented on all platforms. The
&gt; non-GTK way to get the default system font would be &quot;fc-match sans&quot; and we
&gt; can accomplish that by just returning &quot;sans-serif&quot;.

Thing is... “sans-serif” does not necessarily return the “system font”
for WPE. Actually, there is no concept of “system font” for WPE because
there is no toolkit or no environment always known to be available and
that has a system font setting. Therefore it seems more correct to me
to *not* implement this for WPE. Authors can still fallback to picking
“sans-serif” iff that is their intention:

  font-family: -webkit-system-font, sans-serif;

(Which they should be ding anyway, if they want to support web engines
other than WebKit!)

&gt; &gt;&gt; Source/WebCore/platform/graphics/gtk/GdkCairoUtilities.cpp:61
&gt; &gt;&gt; +String getDefaultGtkSystemUiFont()
&gt; &gt; 
&gt; &gt; I would call this just defaultGtkSystemFont().
&gt; 
&gt; And in any case, we do capitalize two-letter acronyms in WebKit, so it
&gt; should have been getDefaultGtkSystemUIFont

I&apos;ll update the patch to use “defaulGtkSystemFont()”. Simple is good :-)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1355781</commentid>
    <comment_count>8</comment_count>
      <attachid>322510</attachid>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-10-03 04:47:45 -0700</bug_when>
    <thetext>Created attachment 322510
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1355958</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-03 12:20:50 -0700</bug_when>
    <thetext>The commit-queue encountered the following flaky tests while processing attachment 322510:

media/modern-media-controls/seek-backward-support/seek-backward-support.html bug 174916 (authors: graouts@apple.com, mcatanzaro@igalia.com, and ryanhaddad@apple.com)
The commit-queue is continuing to process your patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1355961</commentid>
    <comment_count>10</comment_count>
      <attachid>322510</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-03 12:21:23 -0700</bug_when>
    <thetext>Comment on attachment 322510
Patch

Clearing flags on attachment: 322510

Committed r222800: &lt;http://trac.webkit.org/changeset/222800&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1355962</commentid>
    <comment_count>11</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-10-03 12:21:24 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1361214</commentid>
    <comment_count>12</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-10-17 04:21:36 -0700</bug_when>
    <thetext>*** Bug 174027 has been marked as a duplicate of this bug. ***</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364940</commentid>
    <comment_count>13</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2017-10-26 11:39:13 -0700</bug_when>
    <thetext>I don&apos;t know how GTK does it, but on macOS and iOS, the system font actually represents a whole fallback list (so it appears to handle every language). We have support for this in WebKit. If GTK&apos;s system font works the same way, you can use the same infrastructure.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1364986</commentid>
    <comment_count>14</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2017-10-26 13:05:22 -0700</bug_when>
    <thetext>No, for WebKitGTK+ the system font is one font family stored by GtkSettings. For WPE, it&apos;s just &quot;sans&quot; since that&apos;s an alias that will be resolved to something appropriate by Fontconfig.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1366719</commentid>
    <comment_count>15</comment_count>
    <who name="Adrian Perez">aperez</who>
    <bug_when>2017-10-31 18:19:50 -0700</bug_when>
    <thetext>(In reply to Michael Catanzaro from comment #14)
&gt; No, for WebKitGTK+ the system font is one font family stored by GtkSettings.
&gt; For WPE, it&apos;s just &quot;sans&quot; since that&apos;s an alias that will be resolved to
&gt; something appropriate by Fontconfig.

Sorry, but that is not correct. This patch has *NOT* added support for WPE
because there is no “system” environment (and hence no toolkit, no settings,
no nothing), and therefore it&apos;s not reasonable to provide a default.

What I am thinking may make sense is making the “system-ui” generic family
configurable via the public API, in the same way that the default sans-serif,
cursive, etc. generic fonts can be — I am working on a patch which does that
but still needs some love (*very* WIP version at http://sprunge.us/IfGI which
I think will be for bug #178624 once I have some time to finish it)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1366777</commentid>
    <comment_count>16</comment_count>
    <who name="Myles C. Maxfield">mmaxfield</who>
    <bug_when>2017-10-31 23:21:34 -0700</bug_when>
    <thetext>(In reply to Adrian Perez from comment #15)
&gt; (In reply to Michael Catanzaro from comment #14)
&gt; &gt; No, for WebKitGTK+ the system font is one font family stored by GtkSettings.
&gt; &gt; For WPE, it&apos;s just &quot;sans&quot; since that&apos;s an alias that will be resolved to
&gt; &gt; something appropriate by Fontconfig.
&gt; 
&gt; Sorry, but that is not correct. This patch has *NOT* added support for WPE
&gt; because there is no “system” environment (and hence no toolkit, no settings,
&gt; no nothing), and therefore it&apos;s not reasonable to provide a default.
&gt; 
&gt; What I am thinking may make sense is making the “system-ui” generic family
&gt; configurable via the public API, in the same way that the default sans-serif,
&gt; cursive, etc. generic fonts can be — I am working on a patch which does that
&gt; but still needs some love (*very* WIP version at http://sprunge.us/IfGI which
&gt; I think will be for bug #178624 once I have some time to finish it)

Maybe this is a stupid question, but if there’s “no nothing,” how does system integration work? Things like form controls?</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>322423</attachid>
            <date>2017-10-02 13:39:49 -0700</date>
            <delta_ts>2017-10-03 04:47:17 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-177755-20171002223940.patch</filename>
            <type>text/plain</type>
            <size>7907</size>
            <attacher name="Adrian Perez">aperez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIyNzAyCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggMDE1NjcwNTEwMDYyNGM0
Zjk5MGE2Nzk5ZjhlNDk4MmZmMzg0YmMzYi4uNTdlMWE5MTVmZjY4YzYzMmM3NzRkYjAzMjVlYjA2
MTFiNzdiZTI5MCAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE3LTEwLTAyICBBZHJp
YW4gUGVyZXogZGUgQ2FzdHJvICA8YXBlcmV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dUS10g
U3VwcG9ydCB0aGUgInN5c3RlbSIgQ1NTIGZvbnQgZmFtaWx5CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzc3NTUKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBPYnRhaW4gdGhlIHN5c3RlbSBVSSBmb250IGZy
b20gdGhlIEd0a1NldHRpbmdzOjpndGstZm9udC1uYW1lIHByb3BlcnR5CisKKyAgICAgICAgVGVz
dDogcGxhdGZvcm0vZ3RrL2ZvbnRzL3N5c3RlbUZvbnQuaHRtbAorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJlZVR5cGUuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Z2V0RmFtaWx5TmFtZVN0cmluZ0Zyb21GYW1pbHkpOiBVc2UgZ2V0RGVmYXVsdEd0a1N5
c3RlbVVpRm9udCgpCisgICAgICAgIHRvIGhhbmRsZSAtd2Via2l0LXN5c3RlbS1mb250IGFuZCAt
d2Via2l0LXN5c3RlbS11aS4KKyAgICAgICAgKFdlYkNvcmU6OmlzQ29tbW9ubHlVc2VkR2VuZXJp
Y0ZhbWlseSk6IEhhbmRsZSAtd2Via2l0LXN5c3RlbS1mb250IGFuZAorICAgICAgICAtd2Via2l0
LXN5c3RlbS11aSBhcyBnZW5lcmljIGZhbWlseSBuYW1lcy4KKyAgICAgICAgKiBwbGF0Zm9ybS9n
cmFwaGljcy9ndGsvR2RrQ2Fpcm9VdGlsaXRpZXMuY3BwOgorICAgICAgICAoV2ViQ29yZTo6Z2V0
RGVmYXVsdEd0a1N5c3RlbVVpRm9udCk6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBo
aWNzL2d0ay9HZGtDYWlyb1V0aWxpdGllcy5oOiBBZGQgcHJvdG90eXBlIGZvciBnZXREZWZhdWx0
R3RrU3lzdGVtVWlGb250KCkKKwogMjAxNy0xMC0wMSAgUnlvc3VrZSBOaXdhICA8cm5pd2FAd2Vi
a2l0Lm9yZz4KIAogICAgICAgICBQYXN0ZWJvYXJkIHNob3VsZG4ndCBhZGQgIkZpbGVzIiBhcyBh
IHR5cGUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0
eXBlL0ZvbnRDYWNoZUZyZWVUeXBlLmNwcCBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBo
aWNzL2ZyZWV0eXBlL0ZvbnRDYWNoZUZyZWVUeXBlLmNwcAppbmRleCAxNThhY2Q4MWU4YjczNzA1
NjVkZjMyY2NkYjlhZWJiYmY0NjNkMzhmLi5iMWQwYWEyZDNjMTM3YzU2YjIwNDY3YjhlY2ZhMGU0
NTZlMmMyMzFhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9m
cmVldHlwZS9Gb250Q2FjaGVGcmVlVHlwZS5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJlZVR5cGUuY3BwCkBAIC0zMyw2ICszMywx
MCBAQAogI2luY2x1ZGUgPHd0Zi9Bc3NlcnRpb25zLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0
cmluZy5oPgogCisjaWYgUExBVEZPUk0oR1RLKQorI2luY2x1ZGUgIkdka0NhaXJvVXRpbGl0aWVz
LmgiCisjZW5kaWYKKwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiB2b2lkIEZvbnRDYWNoZTo6cGxh
dGZvcm1Jbml0KCkKQEAgLTE1Nyw2ICsxNjEsMTIgQEAgc3RhdGljIFN0cmluZyBnZXRGYW1pbHlO
YW1lU3RyaW5nRnJvbUZhbWlseShjb25zdCBBdG9taWNTdHJpbmcmIGZhbWlseSkKICAgICAgICAg
cmV0dXJuICJjdXJzaXZlIjsKICAgICBpZiAoZmFtaWx5ID09IGZhbnRhc3lGYW1pbHkpCiAgICAg
ICAgIHJldHVybiAiZmFudGFzeSI7CisKKyNpZiBQTEFURk9STShHVEspCisgICAgaWYgKGZhbWls
eSA9PSBzeXN0ZW1VaUZhbWlseSB8fCBmYW1pbHkgPT0gIi13ZWJraXQtc3lzdGVtLWZvbnQiKQor
ICAgICAgICByZXR1cm4gZ2V0RGVmYXVsdEd0a1N5c3RlbVVpRm9udCgpOworI2VuZGlmCisKICAg
ICByZXR1cm4gIiI7CiB9CiAKQEAgLTMxNiw3ICszMjYsMTIgQEAgc3RhdGljIGlubGluZSBib29s
IGlzQ29tbW9ubHlVc2VkR2VuZXJpY0ZhbWlseShjb25zdCBTdHJpbmcmIGZhbWlseU5hbWVTdHJp
bmcpCiAgICAgICAgIHx8IGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKGZhbWlseU5hbWVT
dHJpbmcsICJzZXJpZiIpCiAgICAgICAgIHx8IGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNl
KGZhbWlseU5hbWVTdHJpbmcsICJtb25vc3BhY2UiKQogICAgICAgICB8fCBlcXVhbExldHRlcnNJ
Z25vcmluZ0FTQ0lJQ2FzZShmYW1pbHlOYW1lU3RyaW5nLCAiZmFudGFzeSIpCi0gICAgICAgIHx8
IGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKGZhbWlseU5hbWVTdHJpbmcsICJjdXJzaXZl
Iik7CisgICAgICAgIHx8IGVxdWFsTGV0dGVyc0lnbm9yaW5nQVNDSUlDYXNlKGZhbWlseU5hbWVT
dHJpbmcsICJjdXJzaXZlIikKKyNpZiBQTEFURk9STShHVEspCisgICAgICAgIHx8IGVxdWFsTGV0
dGVyc0lnbm9yaW5nQVNDSUlDYXNlKGZhbWlseU5hbWVTdHJpbmcsICItd2Via2l0LXN5c3RlbS1m
b250IikKKyAgICAgICAgfHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UoZmFtaWx5TmFt
ZVN0cmluZywgIi13ZWJraXQtc3lzdGVtLXVpIikKKyNlbmRpZgorICAgICAgICA7CiB9CiAKIHN0
ZDo6dW5pcXVlX3B0cjxGb250UGxhdGZvcm1EYXRhPiBGb250Q2FjaGU6OmNyZWF0ZUZvbnRQbGF0
Zm9ybURhdGEoY29uc3QgRm9udERlc2NyaXB0aW9uJiBmb250RGVzY3JpcHRpb24sIGNvbnN0IEF0
b21pY1N0cmluZyYgZmFtaWx5LCBjb25zdCBGb250RmVhdHVyZVNldHRpbmdzKiwgY29uc3QgRm9u
dFZhcmlhbnRTZXR0aW5ncyosIEZvbnRTZWxlY3Rpb25TcGVjaWZpZWRDYXBhYmlsaXRpZXMpCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvR2RrQ2Fpcm9V
dGlsaXRpZXMuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0dka0Nh
aXJvVXRpbGl0aWVzLmNwcAppbmRleCA2ODNkOGY1YWU1MWZmYmY1ODEwMjE5ZTE4Yzg3ZjViNzRl
YzI0ZDUyLi43ZmM0OGZkMDQ5YzYzNTc1MmM2M2ZiNmEyMmNiMTUyY2I5NGRiOGNmIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvR2RrQ2Fpcm9VdGlsaXRp
ZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9HZGtDYWly
b1V0aWxpdGllcy5jcHAKQEAgLTMzLDYgKzMzLDcgQEAKICNpbmNsdWRlIDxndGsvZ3RrLmg+CiAj
aW5jbHVkZSA8bXV0ZXg+CiAjaW5jbHVkZSA8d3RmL05ldmVyRGVzdHJveWVkLmg+CisjaW5jbHVk
ZSA8d3RmL2dsaWIvR1VuaXF1ZVB0ci5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKQEAgLTU3
LDQgKzU4LDE0IEBAIEdka1BpeGJ1ZiogY2Fpcm9TdXJmYWNlVG9HZGtQaXhidWYoY2Fpcm9fc3Vy
ZmFjZV90KiBzdXJmYWNlKQogICAgIHJldHVybiBnZGtfcGl4YnVmX2dldF9mcm9tX3N1cmZhY2Uo
c3VyZmFjZSwgMCwgMCwgc2l6ZS53aWR0aCgpLCBzaXplLmhlaWdodCgpKTsKIH0KIAorU3RyaW5n
IGdldERlZmF1bHRHdGtTeXN0ZW1VaUZvbnQoKQoreworICAgIEdVbmlxdWVPdXRQdHI8Y2hhcj4g
Zm9udFN0cmluZzsKKyAgICBnX29iamVjdF9nZXQoZ3RrX3NldHRpbmdzX2dldF9kZWZhdWx0KCks
ICJndGstZm9udC1uYW1lIiwgJmZvbnRTdHJpbmcub3V0UHRyKCksIG51bGxwdHIpOworICAgIC8v
IFdlIG5lZWQgdG8gcmVtb3ZlIHRoZSBzaXplIGZyb20gdGhlIHZhbHVlIG9mIHRoZSBwcm9wZXJ0
eSwKKyAgICAvLyB3aGljaCBpcyBzZXBhcmF0ZWQgZnJvbSB0aGUgZm9udCBmYW1pbHkgdXNpbmcg
YSBzcGFjZS4KKyAgICBhdXRvIHNwYWNlQ2hhciA9IHN0cnJjaHIoZm9udFN0cmluZy5nZXQoKSwg
JyAnKTsKKyAgICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChmb250U3RyaW5nLmdldCgpLCBzcGFj
ZUNoYXIgLSBmb250U3RyaW5nLmdldCgpKTsKK30KKwogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0dka0NhaXJvVXRpbGl0aWVzLmggYi9Tb3VyY2Uv
V2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvR2RrQ2Fpcm9VdGlsaXRpZXMuaAppbmRleCBl
MmFlYWFlMjJkNDNkYzgxOWU3ZGIzNzY0YTRmYjIxMzZlN2FjNzY2Li45NzczNGNiYzkyODlkYTE4
ZjFiN2U2OTViOTE5MzdlYzAxNDM0MmI0IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0
Zm9ybS9ncmFwaGljcy9ndGsvR2RrQ2Fpcm9VdGlsaXRpZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvR2RrQ2Fpcm9VdGlsaXRpZXMuaApAQCAtMjUsOCArMjUs
MTEgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4K
KwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBHZGtQaXhidWYqIGNhaXJvU3VyZmFjZVRvR2RrUGl4
YnVmKGNhaXJvX3N1cmZhY2VfdCopOworU3RyaW5nIGdldERlZmF1bHRHdGtTeXN0ZW1VaUZvbnQo
KTsKIAogfQpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMv
Q2hhbmdlTG9nCmluZGV4IGM2YjgwNTJmYTMxOWU4YjllMThlYTAwN2JiNDgyY2JiNzQ4YzZlMTgu
Ljg0MWY2NWIwODg2NmM2MmQ5NmM0MjM5ZDlkNGRiNjJlZmYxN2RhMGUgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL0NoYW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyAr
MSwxNSBAQAorMjAxNy0xMC0wMiAgQWRyaWFuIFBlcmV6IGRlIENhc3RybyAgPGFwZXJlekBpZ2Fs
aWEuY29tPgorCisgICAgICAgIFtHVEtdIFN1cHBvcnQgdGhlICJzeXN0ZW0iIENTUyBmb250IGZh
bWlseQorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTc3
NzU1CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgT2J0
YWluIHRoZSBzeXN0ZW0gVUkgZm9udCBmcm9tIHRoZSBHdGtTZXR0aW5nczo6Z3RrLWZvbnQtbmFt
ZSBwcm9wZXJ0eQorCisgICAgICAgICogcGxhdGZvcm0vZ3RrL2ZvbnRzL3N5c3RlbUZvbnQtZXhw
ZWN0ZWQuaHRtbDogQWRkZWQuCisgICAgICAgICogcGxhdGZvcm0vZ3RrL2ZvbnRzL3N5c3RlbUZv
bnQuaHRtbDogQWRkZWQuCisKIDIwMTctMTAtMDEgIFNhbSBXZWluaWcgIDxzYW1Ad2Via2l0Lm9y
Zz4KIAogICAgICAgICBTa2lwIGZhaWxpbmcgdGVzdHMgZnJvbSByMjIyNjkyIHRoYXQgaGF2ZSBk
aWZmZXJlbnQgb3V0cHV0IG9uIGVhY2ggcnVuLgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvcGxh
dGZvcm0vZ3RrL2ZvbnRzL3N5c3RlbUZvbnQtZXhwZWN0ZWQuaHRtbCBiL0xheW91dFRlc3RzL3Bs
YXRmb3JtL2d0ay9mb250cy9zeXN0ZW1Gb250LWV4cGVjdGVkLmh0bWwKbmV3IGZpbGUgbW9kZSAx
MDA2NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uODMz
ZGE0NTQyZGFiZDg4ZTA2ZDY1MWY5MDAyYjA1NzY0N2Q3MmYxNQotLS0gL2Rldi9udWxsCisrKyBi
L0xheW91dFRlc3RzL3BsYXRmb3JtL2d0ay9mb250cy9zeXN0ZW1Gb250LWV4cGVjdGVkLmh0bWwK
QEAgLTAsMCArMSwyNiBAQAorPCFET0NUWVBFIGh0bWw+Cis8aHRtbD4KKwk8aGVhZD4KKyAgICAg
ICAgPG1ldGEgY2hhcnNldD0idXRmLTgiIC8+CisJCTx0aXRsZT5TeXN0ZW1Gb250LUV4cGVjdGVk
PC90aXRsZT4KKwkJPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KKwkJcCB7IGZvbnQtZmFtaWx5OiAn
TGliZXJhdGlvbiBTYW5zJyB9CisJCTwvc3R5bGU+CisJPC9oZWFkPgorCTxib2R5PgorCQk8cD5T
eXN0ZW0gZm9udDwvcD4KKwkJPHA+PGk+SXRhbGljIHN5c3RlbSBmb250PC9pPjwvcD4KKwkJPHA+
PGI+Qm9sZCBzeXN0ZW0gZm9udDwvYj48L3A+CisJCTxwPjxpPjxiPkJvbGQgaXRhbGljIHN5c3Rl
bSBmb250PC9iPjwvaT48L3A+CisKKwkJPHA+U3lzdGVtIGZvbnQ8L3A+CisJCTxwPjxpPkl0YWxp
YyBzeXN0ZW0gZm9udDwvaT48L3A+CisJCTxwPjxiPkJvbGQgc3lzdGVtIGZvbnQ8L2I+PC9wPgor
CQk8cD48aT48Yj5Cb2xkIGl0YWxpYyBzeXN0ZW0gZm9udDwvYj48L2k+PC9wPgorCisJCTxwIHN0
eWxlPSJmb250LXNpemU6IDI0cHgiPlN5c3RlbSBmb250PC9wPgorCQk8cCBzdHlsZT0iZm9udC1z
aXplOiAxMnB0Ij48aT5JdGFsaWMgc3lzdGVtIGZvbnQ8L2k+PC9wPgorCQk8cCBzdHlsZT0iZm9u
dC1zaXplOiBzbWFsbCI+PGI+Qm9sZCBzeXN0ZW0gZm9udDwvYj48L3A+CisJCTxwIHN0eWxlPSJm
b250LXNpemU6IDJlbSI+PGk+PGI+Qm9sZCBpdGFsaWMgc3lzdGVtIGZvbnQ8L2I+PC9pPjwvcD4K
Kwk8L2JvZHk+Cis8L2h0bWw+CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsv
Zm9udHMvc3lzdGVtRm9udC5odG1sIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ZvbnRzL3N5
c3RlbUZvbnQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi44MDMyOGU0MTdkOWVjYTc4ZmM3NWNjMmM1YzY2MDNi
NDUwN2RmMDAwCi0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2Zv
bnRzL3N5c3RlbUZvbnQuaHRtbApAQCAtMCwwICsxLDI3IEBACis8IURPQ1RZUEUgaHRtbD4KKzxo
dG1sPgorCTxoZWFkPgorICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKwkJPHRpdGxl
PlN5c3RlbUZvbnQ8L3RpdGxlPgorCQk8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgorCQlwLnN5c3Rl
bS1mb250IHsgZm9udC1mYW1pbHk6IC13ZWJraXQtc3lzdGVtLWZvbnQgfQorCQlwLnN5c3RlbS11
aSB7IGZvbnQtZmFtaWx5OiAtd2Via2l0LXN5c3RlbS11aSB9CisJCTwvc3R5bGU+CisJPC9oZWFk
PgorCTxib2R5PgorCQk8cCBjbGFzcz0ic3lzdGVtLWZvbnQiPlN5c3RlbSBmb250PC9wPgorCQk8
cCBjbGFzcz0ic3lzdGVtLWZvbnQiPjxpPkl0YWxpYyBzeXN0ZW0gZm9udDwvaT48L3A+CisJCTxw
IGNsYXNzPSJzeXN0ZW0tZm9udCI+PGI+Qm9sZCBzeXN0ZW0gZm9udDwvYj48L3A+CisJCTxwIGNs
YXNzPSJzeXN0ZW0tZm9udCI+PGk+PGI+Qm9sZCBpdGFsaWMgc3lzdGVtIGZvbnQ8L2I+PC9pPjwv
cD4KKworCQk8cCBjbGFzcz0ic3lzdGVtLXVpIj5TeXN0ZW0gZm9udDwvcD4KKwkJPHAgY2xhc3M9
InN5c3RlbS11aSI+PGk+SXRhbGljIHN5c3RlbSBmb250PC9pPjwvcD4KKwkJPHAgY2xhc3M9InN5
c3RlbS11aSI+PGI+Qm9sZCBzeXN0ZW0gZm9udDwvYj48L3A+CisJCTxwIGNsYXNzPSJzeXN0ZW0t
dWkiPjxpPjxiPkJvbGQgaXRhbGljIHN5c3RlbSBmb250PC9iPjwvaT48L3A+CisKKwkJPHAgY2xh
c3M9InN5c3RlbS1mb250IiBzdHlsZT0iZm9udC1zaXplOiAyNHB4Ij5TeXN0ZW0gZm9udDwvcD4K
KwkJPHAgY2xhc3M9InN5c3RlbS1mb250IiBzdHlsZT0iZm9udC1zaXplOiAxMnB0Ij48aT5JdGFs
aWMgc3lzdGVtIGZvbnQ8L2k+PC9wPgorCQk8cCBjbGFzcz0ic3lzdGVtLWZvbnQiIHN0eWxlPSJm
b250LXNpemU6IHNtYWxsIj48Yj5Cb2xkIHN5c3RlbSBmb250PC9iPjwvcD4KKwkJPHAgY2xhc3M9
InN5c3RlbS1mb250IiBzdHlsZT0iZm9udC1zaXplOiAyZW0iPjxpPjxiPkJvbGQgaXRhbGljIHN5
c3RlbSBmb250PC9iPjwvaT48L3A+CisJPC9ib2R5PgorPC9odG1sPgo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>322510</attachid>
            <date>2017-10-03 04:47:45 -0700</date>
            <delta_ts>2017-10-03 12:21:23 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-177755-20171003134736.patch</filename>
            <type>text/plain</type>
            <size>8197</size>
            <attacher name="Adrian Perez">aperez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjIyNzc2CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggY2ZkZDQxNmRhNWQ4NGJl
NTYwNTc5ZGMwYmViZDM3ZWM1MWEzNGFlNC4uNjBiODRkNDJmOGQzZTBmOTU3ZmQ1ZDdhZDE4YTA5
YTBiZTFiYjVlMyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE3LTEwLTAyICBBZHJp
YW4gUGVyZXogZGUgQ2FzdHJvICA8YXBlcmV6QGlnYWxpYS5jb20+CisKKyAgICAgICAgW0dUS10g
U3VwcG9ydCB0aGUgInN5c3RlbSIgQ1NTIGZvbnQgZmFtaWx5CisgICAgICAgIGh0dHBzOi8vYnVn
cy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzc3NTUKKworICAgICAgICBSZXZpZXdlZCBi
eSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBPYnRhaW4gdGhlIHN5c3RlbSBVSSBmb250IGZy
b20gdGhlIEd0a1NldHRpbmdzOjpndGstZm9udC1uYW1lIHByb3BlcnR5CisKKyAgICAgICAgVGVz
dDogcGxhdGZvcm0vZ3RrL2ZvbnRzL3N5c3RlbUZvbnQuaHRtbAorCisgICAgICAgICogcGxhdGZv
cm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJlZVR5cGUuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6Z2V0RmFtaWx5TmFtZVN0cmluZ0Zyb21GYW1pbHkpOiBVc2UgZGVmYXVsdEd0a1N5c3Rl
bUZvbnQoKQorICAgICAgICB0byBoYW5kbGUgLXdlYmtpdC1zeXN0ZW0tZm9udCBhbmQgLXdlYmtp
dC1zeXN0ZW0tdWkuCisgICAgICAgIChXZWJDb3JlOjppc0NvbW1vbmx5VXNlZEdlbmVyaWNGYW1p
bHkpOiBIYW5kbGUgLXdlYmtpdC1zeXN0ZW0tZm9udCBhbmQKKyAgICAgICAgLXdlYmtpdC1zeXN0
ZW0tdWkgYXMgZ2VuZXJpYyBmYW1pbHkgbmFtZXMuCisgICAgICAgICogcGxhdGZvcm0vZ3JhcGhp
Y3MvZ3RrL0d0a1V0aWxpdGllcy5jcHA6CisgICAgICAgIChXZWJDb3JlOjpkZWZhdWx0R3RrU3lz
dGVtRm9udCk6IEFkZGVkLgorICAgICAgICAqIHBsYXRmb3JtL2dyYXBoaWNzL2d0ay9HdGtVdGls
aXRpZXMuaDogQWRkIHByb3RvdHlwZSBmb3IgZGVmYXVsdEd0a1N5c3RlbUZvbnQoKS4KKwogMjAx
Ny0xMC0wMyAgTWljaGFlbCBDYXRhbnphcm8gIDxtY2F0YW56YXJvQGlnYWxpYS5jb20+CiAKICAg
ICAgICAgUkVHUkVTU0lPTihyMjIyMzkyKTogW1dQRV1bR1RLXSBNYW55IGZvcm1zIHRlc3RzIGFy
ZSBmYWlsaW5nIGR1ZSB0byBicm9rZW4gZXZlbnQgdGltZXN0YW1wcwpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hlRnJlZVR5cGUu
Y3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZnJlZXR5cGUvRm9udENhY2hl
RnJlZVR5cGUuY3BwCmluZGV4IDE1OGFjZDgxZThiNzM3MDU2NWRmMzJjY2RiOWFlYmJiZjQ2M2Qz
OGYuLmFlMTZkMjQyNGFmNzUxZDk1YWE3Mjc2MjQ2YWU5N2UzMjIwYmY2YjAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2ZyZWV0eXBlL0ZvbnRDYWNoZUZyZWVU
eXBlLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9mcmVldHlwZS9G
b250Q2FjaGVGcmVlVHlwZS5jcHAKQEAgLTMzLDYgKzMzLDEwIEBACiAjaW5jbHVkZSA8d3RmL0Fz
c2VydGlvbnMuaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9DU3RyaW5nLmg+CiAKKyNpZiBQTEFURk9S
TShHVEspCisjaW5jbHVkZSAiR3RrVXRpbGl0aWVzLmgiCisjZW5kaWYKKwogbmFtZXNwYWNlIFdl
YkNvcmUgewogCiB2b2lkIEZvbnRDYWNoZTo6cGxhdGZvcm1Jbml0KCkKQEAgLTE1Nyw2ICsxNjEs
MTIgQEAgc3RhdGljIFN0cmluZyBnZXRGYW1pbHlOYW1lU3RyaW5nRnJvbUZhbWlseShjb25zdCBB
dG9taWNTdHJpbmcmIGZhbWlseSkKICAgICAgICAgcmV0dXJuICJjdXJzaXZlIjsKICAgICBpZiAo
ZmFtaWx5ID09IGZhbnRhc3lGYW1pbHkpCiAgICAgICAgIHJldHVybiAiZmFudGFzeSI7CisKKyNp
ZiBQTEFURk9STShHVEspCisgICAgaWYgKGZhbWlseSA9PSBzeXN0ZW1VaUZhbWlseSB8fCBmYW1p
bHkgPT0gIi13ZWJraXQtc3lzdGVtLWZvbnQiKQorICAgICAgICByZXR1cm4gZGVmYXVsdEd0a1N5
c3RlbUZvbnQoKTsKKyNlbmRpZgorCiAgICAgcmV0dXJuICIiOwogfQogCkBAIC0zMTYsNiArMzI2
LDEwIEBAIHN0YXRpYyBpbmxpbmUgYm9vbCBpc0NvbW1vbmx5VXNlZEdlbmVyaWNGYW1pbHkoY29u
c3QgU3RyaW5nJiBmYW1pbHlOYW1lU3RyaW5nKQogICAgICAgICB8fCBlcXVhbExldHRlcnNJZ25v
cmluZ0FTQ0lJQ2FzZShmYW1pbHlOYW1lU3RyaW5nLCAic2VyaWYiKQogICAgICAgICB8fCBlcXVh
bExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShmYW1pbHlOYW1lU3RyaW5nLCAibW9ub3NwYWNlIikK
ICAgICAgICAgfHwgZXF1YWxMZXR0ZXJzSWdub3JpbmdBU0NJSUNhc2UoZmFtaWx5TmFtZVN0cmlu
ZywgImZhbnRhc3kiKQorI2lmIFBMQVRGT1JNKEdUSykKKyAgICAgICAgfHwgZXF1YWxMZXR0ZXJz
SWdub3JpbmdBU0NJSUNhc2UoZmFtaWx5TmFtZVN0cmluZywgIi13ZWJraXQtc3lzdGVtLWZvbnQi
KQorICAgICAgICB8fCBlcXVhbExldHRlcnNJZ25vcmluZ0FTQ0lJQ2FzZShmYW1pbHlOYW1lU3Ry
aW5nLCAiLXdlYmtpdC1zeXN0ZW0tdWkiKQorI2VuZGlmCiAgICAgICAgIHx8IGVxdWFsTGV0dGVy
c0lnbm9yaW5nQVNDSUlDYXNlKGZhbWlseU5hbWVTdHJpbmcsICJjdXJzaXZlIik7CiB9CiAKZGlm
ZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9HZGtDYWlyb1V0
aWxpdGllcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ncmFwaGljcy9ndGsvR2RrQ2Fp
cm9VdGlsaXRpZXMuY3BwCmluZGV4IDY4M2Q4ZjVhZTUxZmZiZjU4MTAyMTllMThjODdmNWI3NGVj
MjRkNTIuLmVmNTA4OWVjYmI2ZTQ4ZmY5ZDk1MDIwN2U0N2NmMDdmMzg0NTUzNDcgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dyYXBoaWNzL2d0ay9HZGtDYWlyb1V0aWxpdGll
cy5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3JhcGhpY3MvZ3RrL0dka0NhaXJv
VXRpbGl0aWVzLmNwcApAQCAtMzMsNiArMzMsNyBAQAogI2luY2x1ZGUgPGd0ay9ndGsuaD4KICNp
bmNsdWRlIDxtdXRleD4KICNpbmNsdWRlIDx3dGYvTmV2ZXJEZXN0cm95ZWQuaD4KKyNpbmNsdWRl
IDx3dGYvZ2xpYi9HVW5pcXVlUHRyLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApkaWZmIC0t
Z2l0IGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3RrL0d0a1V0aWxpdGllcy5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvR3RrVXRpbGl0aWVzLmNwcAppbmRleCA0YzQ4YmQxZDNl
YzI5YjBjZGRkMjJjODIzMTA2NGIzOGEzNjdiOGE3Li5kZWY4Y2Q0YjI3NDY3ZmRlOTBiZTMxNWYw
MDZkZDYzNmRmODJkYmJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsv
R3RrVXRpbGl0aWVzLmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvR3RrVXRp
bGl0aWVzLmNwcApAQCAtNjQsNiArNjQsMTcgQEAgV2FsbFRpbWUgd2FsbFRpbWVGb3JFdmVudChj
b25zdCBHZGtFdmVudCogZXZlbnQpCiAgICAgcmV0dXJuIE1vbm90b25pY1RpbWU6OmZyb21SYXdT
ZWNvbmRzKGdka19ldmVudF9nZXRfdGltZShldmVudCkgLyAxMDAwLikuYXBwcm94aW1hdGVXYWxs
VGltZSgpOwogfQogCitTdHJpbmcgZGVmYXVsdEd0a1N5c3RlbUZvbnQoKQoreworICAgIEdVbmlx
dWVPdXRQdHI8Y2hhcj4gZm9udFN0cmluZzsKKyAgICBnX29iamVjdF9nZXQoZ3RrX3NldHRpbmdz
X2dldF9kZWZhdWx0KCksICJndGstZm9udC1uYW1lIiwgJmZvbnRTdHJpbmcub3V0UHRyKCksIG51
bGxwdHIpOworICAgIC8vIFdlIG5lZWQgdG8gcmVtb3ZlIHRoZSBzaXplIGZyb20gdGhlIHZhbHVl
IG9mIHRoZSBwcm9wZXJ0eSwKKyAgICAvLyB3aGljaCBpcyBzZXBhcmF0ZWQgZnJvbSB0aGUgZm9u
dCBmYW1pbHkgdXNpbmcgYSBzcGFjZS4KKyAgICBpZiAoYXV0byogc3BhY2VDaGFyID0gc3RycmNo
cihmb250U3RyaW5nLmdldCgpLCAnICcpKQorICAgICAgICAqc3BhY2VDaGFyID0gJ1wwJzsKKyAg
ICByZXR1cm4gU3RyaW5nOjpmcm9tVVRGOChmb250U3RyaW5nLmdldCgpKTsKK30KKwogI2lmIEVO
QUJMRShERVZFTE9QRVJfTU9ERSkKIHN0YXRpYyBDU3RyaW5nIHRvcExldmVsUGF0aCgpCiB7CmRp
ZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvR3RrVXRpbGl0aWVzLmggYi9T
b3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9ndGsvR3RrVXRpbGl0aWVzLmgKaW5kZXggNTExZTYwMTRm
ZWIzMDNlZGZjOWU3YjM2ODg5YTNkNDBmODQ0NjAxYS4uYjFjOGQ5YTBkNDE1NjZjODZmZjgwMGYz
ZGRlYjRmYjUzMjRmMDEyZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvcGxhdGZvcm0vZ3Rr
L0d0a1V0aWxpdGllcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2d0ay9HdGtVdGls
aXRpZXMuaApAQCAtMjIsNiArMjIsNyBAQAogI2luY2x1ZGUgPHd0Zi9Nb25vdG9uaWNUaW1lLmg+
CiAjaW5jbHVkZSA8d3RmL1dhbGxUaW1lLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvQ1N0cmluZy5o
PgorI2luY2x1ZGUgPHd0Zi90ZXh0L1dURlN0cmluZy5oPgogCiBuYW1lc3BhY2UgV2ViQ29yZSB7
CiAKQEAgLTM2LDYgKzM3LDggQEAgV2FsbFRpbWUgd2FsbFRpbWVGb3JFdmVudChjb25zdCBHZGtF
dmVudFR5cGUqIGV2ZW50KSB7IHJldHVybiBNb25vdG9uaWNUaW1lOjpmcm8KIHRlbXBsYXRlPD4K
IFdhbGxUaW1lIHdhbGxUaW1lRm9yRXZlbnQoY29uc3QgR2RrRXZlbnQqKTsKIAorU3RyaW5nIGRl
ZmF1bHRHdGtTeXN0ZW1Gb250KCk7CisKICNpZiBFTkFCTEUoREVWRUxPUEVSX01PREUpCiBDU3Ry
aW5nIHdlYmtpdEJ1aWxkRGlyZWN0b3J5KCk7CiAjZW5kaWYKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwppbmRleCA4NjMxYzI5MGE0MTIy
YWVlYmFjYTcyNzdjZDMxMGEyZDIyYTdlY2I2Li40MjYwMjM5MDc1ZmMwNmJlOWExMDcxNzJhNWJj
YjFiMmVhZjYyZWExIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKKysrIGIvTGF5
b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTUgQEAKKzIwMTctMTAtMDIgIEFkcmlhbiBQ
ZXJleiBkZSBDYXN0cm8gIDxhcGVyZXpAaWdhbGlhLmNvbT4KKworICAgICAgICBbR1RLXSBTdXBw
b3J0IHRoZSAic3lzdGVtIiBDU1MgZm9udCBmYW1pbHkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE3Nzc1NQorCisgICAgICAgIFJldmlld2VkIGJ5IE5P
Qk9EWSAoT09QUyEpLgorCisgICAgICAgIE9idGFpbiB0aGUgc3lzdGVtIFVJIGZvbnQgZnJvbSB0
aGUgR3RrU2V0dGluZ3M6Omd0ay1mb250LW5hbWUgcHJvcGVydHkKKworICAgICAgICAqIHBsYXRm
b3JtL2d0ay9mb250cy9zeXN0ZW1Gb250LWV4cGVjdGVkLmh0bWw6IEFkZGVkLgorICAgICAgICAq
IHBsYXRmb3JtL2d0ay9mb250cy9zeXN0ZW1Gb250Lmh0bWw6IEFkZGVkLgorCiAyMDE3LTEwLTAz
ICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AaWdhbGlhLmNvbT4KIAogICAgICAgICBS
RUdSRVNTSU9OKHIyMjIzOTIpOiBbV1BFXVtHVEtdIE1hbnkgZm9ybXMgdGVzdHMgYXJlIGZhaWxp
bmcgZHVlIHRvIGJyb2tlbiBldmVudCB0aW1lc3RhbXBzCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0
cy9wbGF0Zm9ybS9ndGsvZm9udHMvc3lzdGVtRm9udC1leHBlY3RlZC5odG1sIGIvTGF5b3V0VGVz
dHMvcGxhdGZvcm0vZ3RrL2ZvbnRzL3N5c3RlbUZvbnQtZXhwZWN0ZWQuaHRtbApuZXcgZmlsZSBt
b2RlIDEwMDY0NAppbmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAw
Li44MzNkYTQ1NDJkYWJkODhlMDZkNjUxZjkwMDJiMDU3NjQ3ZDcyZjE1Ci0tLSAvZGV2L251bGwK
KysrIGIvTGF5b3V0VGVzdHMvcGxhdGZvcm0vZ3RrL2ZvbnRzL3N5c3RlbUZvbnQtZXhwZWN0ZWQu
aHRtbApAQCAtMCwwICsxLDI2IEBACis8IURPQ1RZUEUgaHRtbD4KKzxodG1sPgorCTxoZWFkPgor
ICAgICAgICA8bWV0YSBjaGFyc2V0PSJ1dGYtOCIgLz4KKwkJPHRpdGxlPlN5c3RlbUZvbnQtRXhw
ZWN0ZWQ8L3RpdGxlPgorCQk8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgorCQlwIHsgZm9udC1mYW1p
bHk6ICdMaWJlcmF0aW9uIFNhbnMnIH0KKwkJPC9zdHlsZT4KKwk8L2hlYWQ+CisJPGJvZHk+CisJ
CTxwPlN5c3RlbSBmb250PC9wPgorCQk8cD48aT5JdGFsaWMgc3lzdGVtIGZvbnQ8L2k+PC9wPgor
CQk8cD48Yj5Cb2xkIHN5c3RlbSBmb250PC9iPjwvcD4KKwkJPHA+PGk+PGI+Qm9sZCBpdGFsaWMg
c3lzdGVtIGZvbnQ8L2I+PC9pPjwvcD4KKworCQk8cD5TeXN0ZW0gZm9udDwvcD4KKwkJPHA+PGk+
SXRhbGljIHN5c3RlbSBmb250PC9pPjwvcD4KKwkJPHA+PGI+Qm9sZCBzeXN0ZW0gZm9udDwvYj48
L3A+CisJCTxwPjxpPjxiPkJvbGQgaXRhbGljIHN5c3RlbSBmb250PC9iPjwvaT48L3A+CisKKwkJ
PHAgc3R5bGU9ImZvbnQtc2l6ZTogMjRweCI+U3lzdGVtIGZvbnQ8L3A+CisJCTxwIHN0eWxlPSJm
b250LXNpemU6IDEycHQiPjxpPkl0YWxpYyBzeXN0ZW0gZm9udDwvaT48L3A+CisJCTxwIHN0eWxl
PSJmb250LXNpemU6IHNtYWxsIj48Yj5Cb2xkIHN5c3RlbSBmb250PC9iPjwvcD4KKwkJPHAgc3R5
bGU9ImZvbnQtc2l6ZTogMmVtIj48aT48Yj5Cb2xkIGl0YWxpYyBzeXN0ZW0gZm9udDwvYj48L2k+
PC9wPgorCTwvYm9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3BsYXRmb3Jt
L2d0ay9mb250cy9zeXN0ZW1Gb250Lmh0bWwgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9ndGsvZm9u
dHMvc3lzdGVtRm9udC5odG1sCm5ldyBmaWxlIG1vZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAwMDAw
MDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAuLjgwMzI4ZTQxN2Q5ZWNhNzhmYzc1Y2MyYzVj
NjYwM2I0NTA3ZGYwMDAKLS0tIC9kZXYvbnVsbAorKysgYi9MYXlvdXRUZXN0cy9wbGF0Zm9ybS9n
dGsvZm9udHMvc3lzdGVtRm9udC5odG1sCkBAIC0wLDAgKzEsMjcgQEAKKzwhRE9DVFlQRSBodG1s
PgorPGh0bWw+CisJPGhlYWQ+CisgICAgICAgIDxtZXRhIGNoYXJzZXQ9InV0Zi04IiAvPgorCQk8
dGl0bGU+U3lzdGVtRm9udDwvdGl0bGU+CisJCTxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+CisJCXAu
c3lzdGVtLWZvbnQgeyBmb250LWZhbWlseTogLXdlYmtpdC1zeXN0ZW0tZm9udCB9CisJCXAuc3lz
dGVtLXVpIHsgZm9udC1mYW1pbHk6IC13ZWJraXQtc3lzdGVtLXVpIH0KKwkJPC9zdHlsZT4KKwk8
L2hlYWQ+CisJPGJvZHk+CisJCTxwIGNsYXNzPSJzeXN0ZW0tZm9udCI+U3lzdGVtIGZvbnQ8L3A+
CisJCTxwIGNsYXNzPSJzeXN0ZW0tZm9udCI+PGk+SXRhbGljIHN5c3RlbSBmb250PC9pPjwvcD4K
KwkJPHAgY2xhc3M9InN5c3RlbS1mb250Ij48Yj5Cb2xkIHN5c3RlbSBmb250PC9iPjwvcD4KKwkJ
PHAgY2xhc3M9InN5c3RlbS1mb250Ij48aT48Yj5Cb2xkIGl0YWxpYyBzeXN0ZW0gZm9udDwvYj48
L2k+PC9wPgorCisJCTxwIGNsYXNzPSJzeXN0ZW0tdWkiPlN5c3RlbSBmb250PC9wPgorCQk8cCBj
bGFzcz0ic3lzdGVtLXVpIj48aT5JdGFsaWMgc3lzdGVtIGZvbnQ8L2k+PC9wPgorCQk8cCBjbGFz
cz0ic3lzdGVtLXVpIj48Yj5Cb2xkIHN5c3RlbSBmb250PC9iPjwvcD4KKwkJPHAgY2xhc3M9InN5
c3RlbS11aSI+PGk+PGI+Qm9sZCBpdGFsaWMgc3lzdGVtIGZvbnQ8L2I+PC9pPjwvcD4KKworCQk8
cCBjbGFzcz0ic3lzdGVtLWZvbnQiIHN0eWxlPSJmb250LXNpemU6IDI0cHgiPlN5c3RlbSBmb250
PC9wPgorCQk8cCBjbGFzcz0ic3lzdGVtLWZvbnQiIHN0eWxlPSJmb250LXNpemU6IDEycHQiPjxp
Pkl0YWxpYyBzeXN0ZW0gZm9udDwvaT48L3A+CisJCTxwIGNsYXNzPSJzeXN0ZW0tZm9udCIgc3R5
bGU9ImZvbnQtc2l6ZTogc21hbGwiPjxiPkJvbGQgc3lzdGVtIGZvbnQ8L2I+PC9wPgorCQk8cCBj
bGFzcz0ic3lzdGVtLWZvbnQiIHN0eWxlPSJmb250LXNpemU6IDJlbSI+PGk+PGI+Qm9sZCBpdGFs
aWMgc3lzdGVtIGZvbnQ8L2I+PC9pPjwvcD4KKwk8L2JvZHk+Cis8L2h0bWw+Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>