<?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>20253</bug_id>
          
          <creation_ts>2008-08-01 07:48:33 -0700</creation_ts>
          <short_desc>A correct Webkit build requires flex 2.5.33 but autotools build doesn&apos;t check for it</short_desc>
          <delta_ts>2008-08-07 05:10:02 -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>528+ (Nightly build)</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Linux</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>Gtk</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Kalle Vahlman">zuh</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>alp</cc>
    
    <cc>ddkilzer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>87570</commentid>
    <comment_count>0</comment_count>
    <who name="Kalle Vahlman">zuh</who>
    <bug_when>2008-08-01 07:48:33 -0700</bug_when>
    <thetext>Currently, the autotools configure.ac only checks that flex is present but doesn&apos;t verify that it is at least the required 2.5.33 version.

The big problem with this is that flex 2.5.31 is able to produce correct enough code for it to build successfully. However, the incorrect version presents itself (at least) in various CSS-directives failing to work properly (eg. colors).

This is a very subtle problem that is very hard to debug, and it took me about a week to traverse from &quot;why does this web page look wrong&quot; to &quot;oh, CSS parsing results in totally bogus colors&quot; to &quot;oh! Wrong version of flex causes it!&quot;

Thus, check for the version is very important for the sanity of people building for example with a Scratchbox environment (which has .31 in its current official release).</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87571</commentid>
    <comment_count>1</comment_count>
      <attachid>22597</attachid>
    <who name="Kalle Vahlman">zuh</who>
    <bug_when>2008-08-01 07:52:15 -0700</bug_when>
    <thetext>Created attachment 22597
Add a check for recent enough flex version to configure.ac

Here&apos;s a patch to add a check for flex version.

Unfortunately there is no sensible way to check the version, so it needs to be done through sed magic.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87578</commentid>
    <comment_count>2</comment_count>
      <attachid>22597</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2008-08-01 09:19:04 -0700</bug_when>
    <thetext>Comment on attachment 22597
Add a check for recent enough flex version to configure.ac

Thanks for the patch, Kalle!  Please set the &quot;review?&quot; flag if you want the patch to be reviewed for committing.  It should also have a ChangeLog entry:

http://webkit.org/coding/contributing.html

Thanks again!</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87579</commentid>
    <comment_count>3</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2008-08-01 09:22:39 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; Created an attachment (id=22597) [edit]
&gt; Add a check for recent enough flex version to configure.ac
&gt; 
&gt; Here&apos;s a patch to add a check for flex version.
&gt; 
&gt; Unfortunately there is no sensible way to check the version, so it needs to be
&gt; done through sed magic.

Why can&apos;t the &quot;PKG_CHECK_MODULES&quot; macro be used as is done elsewhere in configure.ac?

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87633</commentid>
    <comment_count>4</comment_count>
      <attachid>22597</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-08-01 15:30:47 -0700</bug_when>
    <thetext>Comment on attachment 22597
Add a check for recent enough flex version to configure.ac

This seems very complicated.  Are we sure there is no simpler way to do this check in configure.ac?

I did a little google searching:
http://archives.postgresql.org/pgsql-patches/2003-07/msg00019.php
http://cvs.tuxbox.org/lists/tuxbox-cvs-0505/msg00086.html
https://gna.org/bugs/?11627

I&apos;m sure there are more pages...

r- until David&apos;s question and the above complexity question are answered.

Thanks for the patch!  Looking forward to hearing your reply.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87661</commentid>
    <comment_count>5</comment_count>
    <who name="Kalle Vahlman">zuh</who>
    <bug_when>2008-08-02 00:11:56 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Why can&apos;t the &quot;PKG_CHECK_MODULES&quot; macro be used as is done elsewhere in
&gt; configure.ac?
 
That macro requires the checked software to install a .pc file for pkg-config to find, and that practice is not too widespread outside the GNOME/freedesktop.org circles... Which is a bit unfortunate since it would make life so much simpler.

About the complicated approach, well yes, I suppose I went a bit overboard to provide easy update should the requirement ever change :) It&apos;s not like flex would have had even minor version bump in the last decade...

I&apos;ll redo the test so that it only looks at the micro version directly, like the PostgreSQL does. And create a proper patch this time.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87666</commentid>
    <comment_count>6</comment_count>
      <attachid>22615</attachid>
    <who name="Kalle Vahlman">zuh</who>
    <bug_when>2008-08-02 00:31:45 -0700</bug_when>
    <thetext>Created attachment 22615
Version 2 of flex checking

So here is a simplified version check, only looking at the micro version, and a proper changelog entry.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87669</commentid>
    <comment_count>7</comment_count>
      <attachid>22615</attachid>
    <who name="Eric Seidel (no email)">eric</who>
    <bug_when>2008-08-02 00:50:37 -0700</bug_when>
    <thetext>Comment on attachment 22615
Version 2 of flex checking

Won&apos;t this check break with Flex 2.6?  Geez autoconf syntax sucks.

This patch would make our behavior with Flex 2.6 worse than our current behavior.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87676</commentid>
    <comment_count>8</comment_count>
    <who name="Kalle Vahlman">zuh</who>
    <bug_when>2008-08-02 01:40:29 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; (From update of attachment 22615 [edit])
&gt; Won&apos;t this check break with Flex 2.6?  Geez autoconf syntax sucks.

Well, it&apos;s more the tools that don&apos;t provide any way to check their version in a sensible way than autoconf itself being broken, but the situation sucks indeed.

&gt; This patch would make our behavior with Flex 2.6 worse than our current
&gt; behavior.
 
Future-proofing the test would mean testing the major/minor/micro numbers separately and hence the original more complex version. :)

Note that I wouldn&apos;t hold my breath for a 2.6 release as flex has really been in the 2.5 series for over 10 (maybe even 15) years. I would imagine 2.6 would require incompatible changes to be introduced, and thus the check would need to exclude it anyway.

I don&apos;t care that much how the check is formulated, but I just want to prevent people running into this very sneaky problem.

So, what should we do? Bring back the uglier, but future-proof version or..?

I&apos;m not familiar with the actual usage of flex, maybe there&apos;s some way to check for version at build time?
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87687</commentid>
    <comment_count>9</comment_count>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2008-08-02 06:24:27 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; (In reply to comment #3)
&gt; &gt; Why can&apos;t the &quot;PKG_CHECK_MODULES&quot; macro be used as is done elsewhere in
&gt; &gt; configure.ac?
&gt; 
&gt; That macro requires the checked software to install a .pc file for pkg-config
&gt; to find, and that practice is not too widespread outside the
&gt; GNOME/freedesktop.org circles... Which is a bit unfortunate since it would make
&gt; life so much simpler.

That means that none of the other version checks in the current configure.ac file work for your build system?!

Is there a way to provide a decent fall-back mechanism if PKG_CHECK_MODULES doesn&apos;t have any .pc files to fall back on?

I&apos;d rather see the more complex test than the simple one, given the choice.  Is there a &quot;version check macro&quot; available that is smart enough to compare multi-dot version numbers (like 2.4 &lt;= 2.5.33 &lt;= 2.6) rather than rolling our own regular expressions?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87713</commentid>
    <comment_count>10</comment_count>
    <who name="Kalle Vahlman">zuh</who>
    <bug_when>2008-08-03 02:49:35 -0700</bug_when>
    <thetext>(In reply to comment #9)
&gt; (In reply to comment #5)
&gt; &gt; (In reply to comment #3)
&gt; &gt; &gt; Why can&apos;t the &quot;PKG_CHECK_MODULES&quot; macro be used as is done elsewhere in
&gt; &gt; &gt; configure.ac?
&gt; &gt; 
&gt; &gt; That macro requires the checked software to install a .pc file for pkg-config
&gt; &gt; to find, and that practice is not too widespread outside the
&gt; &gt; GNOME/freedesktop.org circles... Which is a bit unfortunate since it would make
&gt; &gt; life so much simpler.
&gt; 
&gt; That means that none of the other version checks in the current configure.ac
&gt; file work for your build system?!

No no, it just means that flex doesn&apos;t install a .pc file so pkg-config cannot be used to detect it. Things like GStreamer and curl do install a .pc file so they can.

&gt; I&apos;d rather see the more complex test than the simple one, given the choice.  Is
&gt; there a &quot;version check macro&quot; available that is smart enough to compare
&gt; multi-dot version numbers (like 2.4 &lt;= 2.5.33 &lt;= 2.6) rather than rolling our
&gt; own regular expressions?

That&apos;s a very good question, and the answer is yes. Not in autoconf itself though, but in the autoconf macro archive there&apos;s a macro called AX_COMPARE_VERSION that does just that:

  http://autoconf-archive.cryp.to/ax_compare_version.html

So adding this macro to acinclude.m4 (which is the proper way to include extra macros) takes us down to just one sed call (to extract the version string) and the check itself. Naturally, the macro is still a bunch of sed magic, but at least it&apos;s not in configure.ac anymore...

I&apos;ll cook up a patch for that too.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87714</commentid>
    <comment_count>11</comment_count>
      <attachid>22621</attachid>
    <who name="Kalle Vahlman">zuh</who>
    <bug_when>2008-08-03 02:54:39 -0700</bug_when>
    <thetext>Created attachment 22621
Take 3 on flex checking</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87737</commentid>
    <comment_count>12</comment_count>
      <attachid>22621</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2008-08-03 16:46:56 -0700</bug_when>
    <thetext>Comment on attachment 22621
Take 3 on flex checking

&gt;+   FLEX_VERSION=`$FLEX --version | sed &apos;s,.*\ \([0-9]*\.[0-9]*\.[0-9]*\)$,\1,&apos;`
&gt;+   AX_COMPARE_VERSION([2.5.33],[gt],[$FLEX_VERSION],
&gt;+      AC_MSG_ERROR([You need at least version 2.5.33 of the &apos;flex&apos; lexer generator to compile WebKit]))
&gt; fi

Shouldn&apos;t that be &quot;[ge]&quot; since 2.5.33 works?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>87760</commentid>
    <comment_count>13</comment_count>
    <who name="Kalle Vahlman">zuh</who>
    <bug_when>2008-08-04 08:43:46 -0700</bug_when>
    <thetext>(In reply to comment #12)
&gt; (From update of attachment 22621 [edit])
&gt; &gt;+   FLEX_VERSION=`$FLEX --version | sed &apos;s,.*\ \([0-9]*\.[0-9]*\.[0-9]*\)$,\1,&apos;`
&gt; &gt;+   AX_COMPARE_VERSION([2.5.33],[gt],[$FLEX_VERSION],
&gt; &gt;+      AC_MSG_ERROR([You need at least version 2.5.33 of the &apos;flex&apos; lexer generator to compile WebKit]))
&gt; &gt; fi
&gt; 
&gt; Shouldn&apos;t that be &quot;[ge]&quot; since 2.5.33 works?

No, the statement is &quot;if 2.5.33 is greater than $FLEX_VERSION, then AC_MSG_ERROR, else do nothing&quot; so anything starting from 2.5.33 goes to the (omitted) false-branch and continues on.

One could change it around by adding an empty true-branch there:

AX_COMPARE_VERSION([2.5.33],[ge],[$FLEX_VERSION],,
  AC_MSG_ERROR([...]))

but that looks more like a typo then expected syntax... adding empty quotation might help, but

AX_COMPARE_VERSION([2.5.33],[ge],[$FLEX_VERSION], [],
  AC_MSG_ERROR([...]))

doesn&apos;t look any better to me.

I can change it of course, if the positive test is deemed better.
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>88016</commentid>
    <comment_count>14</comment_count>
      <attachid>22621</attachid>
    <who name="David Kilzer (:ddkilzer)">ddkilzer</who>
    <bug_when>2008-08-06 21:17:51 -0700</bug_when>
    <thetext>Comment on attachment 22621
Take 3 on flex checking

Thanks for the explanation!  I like it the way it is.  r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>88031</commentid>
    <comment_count>15</comment_count>
    <who name="Jan Alonzo">jmalonzo</who>
    <bug_when>2008-08-07 05:10:02 -0700</bug_when>
    <thetext>landed in r35622</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22597</attachid>
            <date>2008-08-01 07:52:15 -0700</date>
            <delta_ts>2008-08-02 00:31:45 -0700</delta_ts>
            <desc>Add a check for recent enough flex version to configure.ac</desc>
            <filename>check-for-flex-version.diff</filename>
            <type>text/plain</type>
            <size>1235</size>
            <attacher name="Kalle Vahlman">zuh</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL2NvbmZpZ3VyZS5hYyBiL2NvbmZpZ3VyZS5hYwppbmRleCA3NjhhZTlmLi5j
M2QyNGZlIDEwMDY0NAotLS0gYS9jb25maWd1cmUuYWMKKysrIGIvY29uZmlndXJlLmFjCkBAIC05
Miw5ICs5MiwyNCBAQCBpZiB0ZXN0IC16ICIkQklTT04iOyB0aGVuCiAgICBBQ19NU0dfRVJST1Io
W1lvdSBuZWVkIHRoZSAnYmlzb24nIHBhcnNlciBnZW5lcmF0b3IgdG8gY29tcGlsZSBXZWJLaXRd
KQogZmkKIAorUkVRX0ZMRVhfTUFKT1I9MgorUkVRX0ZMRVhfTUlOT1I9NQorUkVRX0ZMRVhfTUlD
Uk89MzMKIEFDX1BBVEhfUFJPRyhGTEVYLCBmbGV4KQogaWYgdGVzdCAteiAiJEZMRVgiOyB0aGVu
CiAgICBBQ19NU0dfRVJST1IoW1lvdSBuZWVkIHRoZSAnZmxleCcgbGV4ZXIgZ2VuZXJhdG9yIHRv
IGNvbXBpbGUgV2ViS2l0XSkKK2Vsc2UKKyAgIEFDX01TR19DSEVDS0lORyhmbGV4IHZlcnNpb24p
CisgICBGTEVYX1ZFUlNJT049YCRGTEVYIC0tdmVyc2lvbiB8IHNlZCAncyxeLiogLCwnYAorICAg
RkxFWF9NQUpPUj1gZWNobyAkRkxFWF9WRVJTSU9OIHwgc2VkICdzLFwoW1swLTldXSpcKVwuLiok
LFwxLCdgCisgICBGTEVYX01JTk9SPWBlY2hvICRGTEVYX1ZFUlNJT04gfCBzZWQgJ3MsLipcLlwo
W1swLTldXSpcKVwuLiokLFwxLCdgCisgICBGTEVYX01JQ1JPPWBlY2hvICRGTEVYX1ZFUlNJT04g
fCBzZWQgJ3MsLipcLlwoW1swLTldXSpcKSQsXDEsJ2AKKyAgIGlmIHRlc3QgIiRGTEVYX01BSk9S
IiAtZXEgIiRSRVFfRkxFWF9NQUpPUiIgJiYgdGVzdCAiJEZMRVhfTUlOT1IiIC1lcSAiJFJFUV9G
TEVYX01JTk9SIiAmJiB0ZXN0ICIkRkxFWF9NSUNSTyIgLWdlICIkUkVRX0ZMRVhfTUlDUk8iOyB0
aGVuCisgICAgICBBQ19NU0dfUkVTVUxUKFske0ZMRVhfTUFKT1J9LiR7RkxFWF9NSU5PUn0uJHtG
TEVYX01JQ1JPfSwgT2suXSkKKyAgIGVsc2UKKyAgICAgIEFDX01TR19SRVNVTFQoWyR7RkxFWF9N
QUpPUn0uJHtGTEVYX01JTk9SfS4ke0ZMRVhfTUlDUk99XSkKKyAgICAgIEFDX01TR19FUlJPUihb
WW91IG5lZWQgYXQgbGVhc3QgdmVyc2lvbiAkUkVRX0ZMRVhfTUFKT1IuJFJFUV9GTEVYX01JTk9S
LiRSRVFfRkxFWF9NSUNSTyBvZiB0aGUgJ2ZsZXgnIGxleGVyIGdlbmVyYXRvciB0byBjb21waWxl
IFdlYktpdCAoZm91bmQgJEZMRVhfTUFKT1IuJEZMRVhfTUlOT1IuJEZMRVhfTUlDUk8pXSkKKyAg
IGZpCiBmaQogCiBBQ19QQVRIX1BST0coR1BFUkYsIGdwZXJmKQo=
</data>
<flag name="review"
          id="9988"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22615</attachid>
            <date>2008-08-02 00:31:45 -0700</date>
            <delta_ts>2008-08-03 02:54:39 -0700</delta_ts>
            <desc>Version 2 of flex checking</desc>
            <filename>check-for-flex-version-2.diff</filename>
            <type>text/plain</type>
            <size>1096</size>
            <attacher name="Kalle Vahlman">zuh</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA5NzRkMDBlLi42MTk5YmRh
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAK
KzIwMDgtMDgtMDIgIEthbGxlIFZhaGxtYW4gIDx6dWhAaWtpLmZpPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENoZWNrIGZvciBjb3JyZWN0IGZsZXgg
dmVyc2lvbiB0byBhdm9pZCBmYXVsdHkgYnVpbGRzCisgICAgICAgIAorICAgICAgICBBIGNvcnJl
Y3QgV2Via2l0IGJ1aWxkIHJlcXVpcmVzIGZsZXggMi41LjMzIGJ1dCBhdXRvdG9vbHMgYnVpbGQg
ZG9lc24ndCBjaGVjayBmb3IgaXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwMjUzCisKKyAgICAgICAgKiBjb25maWd1cmUuYWM6CisKIDIwMDgtMDct
MzAgIE1hcmNvIEJhcmlzaW9uZSAgPG1hcmNvLmJhcmlzaW9uZUBjb2xsYWJvcmEuY28udWs+CiAK
ICAgICAgICAgUmV2aWV3ZWQgYnkgSG9sZ2VyLgpkaWZmIC0tZ2l0IGEvY29uZmlndXJlLmFjIGIv
Y29uZmlndXJlLmFjCmluZGV4IDc2OGFlOWYuLjdlODc1YzYgMTAwNjQ0Ci0tLSBhL2NvbmZpZ3Vy
ZS5hYworKysgYi9jb25maWd1cmUuYWMKQEAgLTk1LDYgKzk1LDEzIEBAIGZpCiBBQ19QQVRIX1BS
T0coRkxFWCwgZmxleCkKIGlmIHRlc3QgLXogIiRGTEVYIjsgdGhlbgogICAgQUNfTVNHX0VSUk9S
KFtZb3UgbmVlZCB0aGUgJ2ZsZXgnIGxleGVyIGdlbmVyYXRvciB0byBjb21waWxlIFdlYktpdF0p
CitlbHNlCisgICBBQ19NU0dfQ0hFQ0tJTkcoZmxleCB2ZXJzaW9uKQorICAgaWYgJEZMRVggLS12
ZXJzaW9uIHwgZ3JlcCAnIDJcLjVcLltbMy05XVszLTldXSQnID4vZGV2L251bGwgMj4mMTsgdGhl
bgorICAgICAgQUNfTVNHX1JFU1VMVChbT2suXSkKKyAgIGVsc2UKKyAgICAgIEFDX01TR19FUlJP
UihbWW91IG5lZWQgYXQgbGVhc3QgdmVyc2lvbiAyLjUuMzMgb2YgdGhlICdmbGV4JyBsZXhlciBn
ZW5lcmF0b3IgdG8gY29tcGlsZSBXZWJLaXRdKQorICAgZmkKIGZpCiAKIEFDX1BBVEhfUFJPRyhH
UEVSRiwgZ3BlcmYpCg==
</data>
<flag name="review"
          id="9997"
          type_id="1"
          status="-"
          setter="eric"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>22621</attachid>
            <date>2008-08-03 02:54:39 -0700</date>
            <delta_ts>2008-08-06 21:17:51 -0700</delta_ts>
            <desc>Take 3 on flex checking</desc>
            <filename>flex-version-check-3.diff</filename>
            <type>text/plain</type>
            <size>8110</size>
            <attacher name="Kalle Vahlman">zuh</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0NoYW5nZUxvZyBiL0NoYW5nZUxvZwppbmRleCA5NzRkMDBlLi5iMTI2MDk4
IDEwMDY0NAotLS0gYS9DaGFuZ2VMb2cKKysrIGIvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTggQEAK
KzIwMDgtMDgtMDMgIEthbGxlIFZhaGxtYW4gIDx6dWhAaWtpLmZpPgorCisgICAgICAgIFJldmll
d2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIENoZWNrIGZvciBjb3JyZWN0IGZsZXgg
dmVyc2lvbiB0byBhdm9pZCBmYXVsdHkgYnVpbGRzCisgICAgICAgIAorICAgICAgICBBIGNvcnJl
Y3QgV2Via2l0IGJ1aWxkIHJlcXVpcmVzIGZsZXggMi41LjMzIGJ1dCBhdXRvdG9vbHMgYnVpbGQg
ZG9lc24ndCBjaGVjayBmb3IgaXQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hv
d19idWcuY2dpP2lkPTIwMjUzCisgICAgICAgIAorICAgICAgICBhY2luY2x1ZGUubTQ6IEltcG9y
dCBBWF9DT01QQVJFX1ZFUlNJT04gbWFjcm8KKyAgICAgICAgY29uZmlndXJlLmFjOiBDaGVjayBm
b3IgZmxleCB2ZXJzaW9uCisKKyAgICAgICAgKiBhY2luY2x1ZGUubTQ6CisgICAgICAgICogY29u
ZmlndXJlLmFjOgorCiAyMDA4LTA3LTMwICBNYXJjbyBCYXJpc2lvbmUgIDxtYXJjby5iYXJpc2lv
bmVAY29sbGFib3JhLmNvLnVrPgogCiAgICAgICAgIFJldmlld2VkIGJ5IEhvbGdlci4KZGlmZiAt
LWdpdCBhL2FjaW5jbHVkZS5tNCBiL2FjaW5jbHVkZS5tNAppbmRleCA4Yzc1NDgwLi5lMDA4M2I5
IDEwMDY0NAotLS0gYS9hY2luY2x1ZGUubTQKKysrIGIvYWNpbmNsdWRlLm00CkBAIC0xNzUsMyAr
MTc1LDE4MiBAQCBBQ19TVUJTVChMVENPTVBJTEUpCiBBQ19TVUJTVChMVENYWENPTVBJTEUpCiAj
IGVuZCBkb2x0CiBdKQorCisjID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQorIyAgICAgICAgICAgaHR0cDov
L2F1dG9jb25mLWFyY2hpdmUuY3J5cC50by9heF9jb21wYXJlX3ZlcnNpb24uaHRtbAorIyA9PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT0KKyMKKyMgU1lOT1BTSVMKKyMKKyMgICBBWF9DT01QQVJFX1ZFUlNJT04o
VkVSU0lPTl9BLCBPUCwgVkVSU0lPTl9CLCBbQUNUSU9OLUlGLVRSVUVdLCBbQUNUSU9OLUlGLUZB
TFNFXSkKKyMKKyMgREVTQ1JJUFRJT04KKyMKKyMgICBUaGlzIG1hY3JvIGNvbXBhcmVzIHR3byB2
ZXJzaW9uIHN0cmluZ3MuIER1ZSB0byB0aGUgdmFyaW91cyBudW1iZXIgb2YKKyMgICBtaW5vci12
ZXJzaW9uIG51bWJlcnMgdGhhdCBjYW4gZXhpc3QsIGFuZCB0aGUgZmFjdCB0aGF0IHN0cmluZwor
IyAgIGNvbXBhcmlzb25zIGFyZSBub3QgY29tcGF0aWJsZSB3aXRoIG51bWVyaWMgY29tcGFyaXNv
bnMsIHRoaXMgaXMgbm90CisjICAgbmVjZXNzYXJpbHkgdHJpdmlhbCB0byBkbyBpbiBhIGF1dG9j
b25mIHNjcmlwdC4gVGhpcyBtYWNybyBtYWtlcyBkb2luZworIyAgIHRoZXNlIGNvbXBhcmlzb25z
IGVhc3kuCisjCisjICAgVGhlIHNpeCBiYXNpYyBjb21wYXJpc29ucyBhcmUgYXZhaWxhYmxlLCBh
cyB3ZWxsIGFzIGNoZWNraW5nIGVxdWFsaXR5CisjICAgbGltaXRlZCB0byBhIGNlcnRhaW4gbnVt
YmVyIG9mIG1pbm9yLXZlcnNpb24gbGV2ZWxzLgorIworIyAgIFRoZSBvcGVyYXRvciBPUCBkZXRl
cm1pbmVzIHdoYXQgdHlwZSBvZiBjb21wYXJpc29uIHRvIGRvLCBhbmQgY2FuIGJlIG9uZQorIyAg
IG9mOgorIworIyAgICBlcSAgLSBlcXVhbCAodGVzdCBBID09IEIpCisjICAgIG5lICAtIG5vdCBl
cXVhbCAodGVzdCBBICE9IEIpCisjICAgIGxlICAtIGxlc3MgdGhhbiBvciBlcXVhbCAodGVzdCBB
IDw9IEIpCisjICAgIGdlICAtIGdyZWF0ZXIgdGhhbiBvciBlcXVhbCAodGVzdCBBID49IEIpCisj
ICAgIGx0ICAtIGxlc3MgdGhhbiAodGVzdCBBIDwgQikKKyMgICAgZ3QgIC0gZ3JlYXRlciB0aGFu
ICh0ZXN0IEEgPiBCKQorIworIyAgIEFkZGl0aW9uYWxseSwgdGhlIGVxIGFuZCBuZSBvcGVyYXRv
ciBjYW4gaGF2ZSBhIG51bWJlciBhZnRlciBpdCB0byBsaW1pdAorIyAgIHRoZSB0ZXN0IHRvIHRo
YXQgbnVtYmVyIG9mIG1pbm9yIHZlcnNpb25zLgorIworIyAgICBlcTAgLSBlcXVhbCB1cCB0byB0
aGUgbGVuZ3RoIG9mIHRoZSBzaG9ydGVyIHZlcnNpb24KKyMgICAgbmUwIC0gbm90IGVxdWFsIHVw
IHRvIHRoZSBsZW5ndGggb2YgdGhlIHNob3J0ZXIgdmVyc2lvbgorIyAgICBlcU4gLSBlcXVhbCB1
cCB0byBOIHN1Yi12ZXJzaW9uIGxldmVscworIyAgICBuZU4gLSBub3QgZXF1YWwgdXAgdG8gTiBz
dWItdmVyc2lvbiBsZXZlbHMKKyMKKyMgICBXaGVuIHRoZSBjb25kaXRpb24gaXMgdHJ1ZSwgc2hl
bGwgY29tbWFuZHMgQUNUSU9OLUlGLVRSVUUgYXJlIHJ1biwKKyMgICBvdGhlcndpc2Ugc2hlbGwg
Y29tbWFuZHMgQUNUSU9OLUlGLUZBTFNFIGFyZSBydW4uIFRoZSBlbnZpcm9ubWVudAorIyAgIHZh
cmlhYmxlICdheF9jb21wYXJlX3ZlcnNpb24nIGlzIGFsd2F5cyBzZXQgdG8gZWl0aGVyICd0cnVl
JyBvciAnZmFsc2UnCisjICAgYXMgd2VsbC4KKyMKKyMgICBFeGFtcGxlczoKKyMKKyMgICAgIEFY
X0NPTVBBUkVfVkVSU0lPTihbMy4xNS43XSxbbHRdLFszLjE1LjhdKQorIyAgICAgQVhfQ09NUEFS
RV9WRVJTSU9OKFszLjE1XSxbbHRdLFszLjE1LjhdKQorIworIyAgIHdvdWxkIGJvdGggYmUgdHJ1
ZS4KKyMKKyMgICAgIEFYX0NPTVBBUkVfVkVSU0lPTihbMy4xNS43XSxbZXFdLFszLjE1LjhdKQor
IyAgICAgQVhfQ09NUEFSRV9WRVJTSU9OKFszLjE1XSxbZ3RdLFszLjE1LjhdKQorIworIyAgIHdv
dWxkIGJvdGggYmUgZmFsc2UuCisjCisjICAgICBBWF9DT01QQVJFX1ZFUlNJT04oWzMuMTUuN10s
W2VxMl0sWzMuMTUuOF0pCisjCisjICAgd291bGQgYmUgdHJ1ZSBiZWNhdXNlIGl0IGlzIG9ubHkg
Y29tcGFyaW5nIHR3byBtaW5vciB2ZXJzaW9ucy4KKyMKKyMgICAgIEFYX0NPTVBBUkVfVkVSU0lP
TihbMy4xNS43XSxbZXEwXSxbMy4xNV0pCisjCisjICAgd291bGQgYmUgdHJ1ZSBiZWNhdXNlIGl0
IGlzIG9ubHkgY29tcGFyaW5nIHRoZSBsZXNzZXIgbnVtYmVyIG9mIG1pbm9yCisjICAgdmVyc2lv
bnMgb2YgdGhlIHR3byB2YWx1ZXMuCisjCisjICAgTm90ZTogVGhlIGNoYXJhY3RlcnMgdGhhdCBz
ZXBhcmF0ZSB0aGUgdmVyc2lvbiBudW1iZXJzIGRvIG5vdCBtYXR0ZXIuIEFuCisjICAgZW1wdHkg
c3RyaW5nIGlzIHRoZSBzYW1lIGFzIHZlcnNpb24gMC4gT1AgaXMgZXZhbHVhdGVkIGJ5IGF1dG9j
b25mLCBub3QKKyMgICBjb25maWd1cmUsIHNvIG11c3QgYmUgYSBzdHJpbmcsIG5vdCBhIHZhcmlh
YmxlLgorIworIyAgIFRoZSBhdXRob3Igd291bGQgbGlrZSB0byBhY2tub3dsZWRnZSBHdWlkbyBE
cmFoZWltIHdob3NlIGFkdmljZSBhYm91dAorIyAgIHRoZSBtNF9jYXNlIGFuZCBtNF9pZnZhbG4g
ZnVuY3Rpb25zIG1ha2UgdGhpcyBtYWNybyBvbmx5IGluY2x1ZGUgdGhlCisjICAgcG9ydGlvbnMg
bmVjZXNzYXJ5IHRvIHBlcmZvcm0gdGhlIHNwZWNpZmljIGNvbXBhcmlzb24gc3BlY2lmaWVkIGJ5
IHRoZQorIyAgIE9QIGFyZ3VtZW50IGluIHRoZSBmaW5hbCBjb25maWd1cmUgc2NyaXB0LgorIwor
IyBMQVNUIE1PRElGSUNBVElPTgorIworIyAgIDIwMDgtMDQtMTIKKyMKKyMgQ09QWUxFRlQKKyMK
KyMgICBDb3B5cmlnaHQgKGMpIDIwMDggVGltIFRvb2xhbiA8dG9vbGFuQGVsZS51cmkuZWR1Pgor
IworIyAgIENvcHlpbmcgYW5kIGRpc3RyaWJ1dGlvbiBvZiB0aGlzIGZpbGUsIHdpdGggb3Igd2l0
aG91dCBtb2RpZmljYXRpb24sIGFyZQorIyAgIHBlcm1pdHRlZCBpbiBhbnkgbWVkaXVtIHdpdGhv
dXQgcm95YWx0eSBwcm92aWRlZCB0aGUgY29weXJpZ2h0IG5vdGljZQorIyAgIGFuZCB0aGlzIG5v
dGljZSBhcmUgcHJlc2VydmVkLgorCitkbmwgIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIworQUNfREVGVU4oW0FY
X0NPTVBBUkVfVkVSU0lPTl0sIFsKKyAgQUNfUFJPR19BV0sKKworICAjIFVzZWQgdG8gaW5kaWNh
dGUgdHJ1ZSBvciBmYWxzZSBjb25kaXRpb24KKyAgYXhfY29tcGFyZV92ZXJzaW9uPWZhbHNlCisK
KyAgIyBDb252ZXJ0IHRoZSB0d28gdmVyc2lvbiBzdHJpbmdzIHRvIGJlIGNvbXBhcmVkIGludG8g
YSBmb3JtYXQgdGhhdAorICAjIGFsbG93cyBhIHNpbXBsZSBzdHJpbmcgY29tcGFyaXNvbi4gIFRo
ZSBlbmQgcmVzdWx0IGlzIHRoYXQgYSB2ZXJzaW9uCisgICMgc3RyaW5nIG9mIHRoZSBmb3JtIDEu
MTIuNS1yNjE3IHdpbGwgYmUgY29udmVydGVkIHRvIHRoZSBmb3JtCisgICMgMDAwMTAwMTIwMDA1
MDYxNy4gIEluIG90aGVyIHdvcmRzLCBlYWNoIG51bWJlciBpcyB6ZXJvIHBhZGRlZCB0byBmb3Vy
CisgICMgZGlnaXRzLCBhbmQgbm9uIGRpZ2l0cyBhcmUgcmVtb3ZlZC4KKyAgQVNfVkFSX1BVU0hE
RUYoW0FdLFtheF9jb21wYXJlX3ZlcnNpb25fQV0pCisgIEE9YGVjaG8gIiQxIiB8IHNlZCAtZSAn
cy9cKFtbMC05XV0qXCkvWlwxWi9nJyBcCisgICAgICAgICAgICAgICAgICAgICAtZSAncy9aXChb
WzAtOV1dXClaL1owXDFaL2cnIFwKKyAgICAgICAgICAgICAgICAgICAgIC1lICdzL1pcKFtbMC05
XV1bWzAtOV1dXClaL1owXDFaL2cnIFwKKyAgICAgICAgICAgICAgICAgICAgIC1lICdzL1pcKFtb
MC05XV1bWzAtOV1dW1swLTldXVwpWi9aMFwxWi9nJyBcCisgICAgICAgICAgICAgICAgICAgICAt
ZSAncy9bW14wLTldXS8vZydgCisKKyAgQVNfVkFSX1BVU0hERUYoW0JdLFtheF9jb21wYXJlX3Zl
cnNpb25fQl0pCisgIEI9YGVjaG8gIiQzIiB8IHNlZCAtZSAncy9cKFtbMC05XV0qXCkvWlwxWi9n
JyBcCisgICAgICAgICAgICAgICAgICAgICAtZSAncy9aXChbWzAtOV1dXClaL1owXDFaL2cnIFwK
KyAgICAgICAgICAgICAgICAgICAgIC1lICdzL1pcKFtbMC05XV1bWzAtOV1dXClaL1owXDFaL2cn
IFwKKyAgICAgICAgICAgICAgICAgICAgIC1lICdzL1pcKFtbMC05XV1bWzAtOV1dW1swLTldXVwp
Wi9aMFwxWi9nJyBcCisgICAgICAgICAgICAgICAgICAgICAtZSAncy9bW14wLTldXS8vZydgCisK
KyAgZG5sICMgSW4gdGhlIGNhc2Ugb2YgbGUsIGdlLCBsdCwgYW5kIGd0LCB0aGUgc3RyaW5ncyBh
cmUgc29ydGVkIGFzIG5lY2Vzc2FyeQorICBkbmwgIyB0aGVuIHRoZSBmaXJzdCBsaW5lIGlzIHVz
ZWQgdG8gZGV0ZXJtaW5lIGlmIHRoZSBjb25kaXRpb24gaXMgdHJ1ZS4KKyAgZG5sICMgVGhlIHNl
ZCByaWdodCBhZnRlciB0aGUgZWNobyBpcyB0byByZW1vdmUgYW55IGluZGVudGVkIHdoaXRlIHNw
YWNlLgorICBtNF9jYXNlKG00X3RvbG93ZXIoJDIpLAorICBbbHRdLFsKKyAgICBheF9jb21wYXJl
X3ZlcnNpb249YGVjaG8gIngkQQoreCRCIiB8IHNlZCAncy9eICovLycgfCBzb3J0IC1yIHwgc2Vk
ICJzL3gke0F9L2ZhbHNlLztzL3gke0J9L3RydWUvOzFxImAKKyAgXSwKKyAgW2d0XSxbCisgICAg
YXhfY29tcGFyZV92ZXJzaW9uPWBlY2hvICJ4JEEKK3gkQiIgfCBzZWQgJ3MvXiAqLy8nIHwgc29y
dCB8IHNlZCAicy94JHtBfS9mYWxzZS87cy94JHtCfS90cnVlLzsxcSJgCisgIF0sCisgIFtsZV0s
WworICAgIGF4X2NvbXBhcmVfdmVyc2lvbj1gZWNobyAieCRBCit4JEIiIHwgc2VkICdzL14gKi8v
JyB8IHNvcnQgfCBzZWQgInMveCR7QX0vdHJ1ZS87cy94JHtCfS9mYWxzZS87MXEiYAorICBdLAor
ICBbZ2VdLFsKKyAgICBheF9jb21wYXJlX3ZlcnNpb249YGVjaG8gIngkQQoreCRCIiB8IHNlZCAn
cy9eICovLycgfCBzb3J0IC1yIHwgc2VkICJzL3gke0F9L3RydWUvO3MveCR7Qn0vZmFsc2UvOzFx
ImAKKyAgXSxbCisgICAgZG5sIFNwbGl0IHRoZSBvcGVyYXRvciBmcm9tIHRoZSBzdWJ2ZXJzaW9u
IGNvdW50IGlmIHByZXNlbnQuCisgICAgbTRfYm1hdGNoKG00X3N1YnN0cigkMiwyKSwKKyAgICBb
MF0sWworICAgICAgIyBBIGNvdW50IG9mIHplcm8gbWVhbnMgdXNlIHRoZSBsZW5ndGggb2YgdGhl
IHNob3J0ZXIgdmVyc2lvbi4KKyAgICAgICMgRGV0ZXJtaW5lIHRoZSBudW1iZXIgb2YgY2hhcmFj
dGVycyBpbiBBIGFuZCBCLgorICAgICAgYXhfY29tcGFyZV92ZXJzaW9uX2xlbl9BPWBlY2hvICIk
QSIgfCAkQVdLICd7cHJpbnQobGVuZ3RoKX0nYAorICAgICAgYXhfY29tcGFyZV92ZXJzaW9uX2xl
bl9CPWBlY2hvICIkQiIgfCAkQVdLICd7cHJpbnQobGVuZ3RoKX0nYAorCisgICAgICAjIFNldCBB
IHRvIG5vIG1vcmUgdGhhbiBCJ3MgbGVuZ3RoIGFuZCBCIHRvIG5vIG1vcmUgdGhhbiBBJ3MgbGVu
Z3RoLgorICAgICAgQT1gZWNobyAiJEEiIHwgc2VkICJzL1woLlx7JGF4X2NvbXBhcmVfdmVyc2lv
bl9sZW5fQlx9XCkuKi9cMS8iYAorICAgICAgQj1gZWNobyAiJEIiIHwgc2VkICJzL1woLlx7JGF4
X2NvbXBhcmVfdmVyc2lvbl9sZW5fQVx9XCkuKi9cMS8iYAorICAgIF0sCisgICAgW1swLTldK10s
WworICAgICAgIyBBIGNvdW50IGdyZWF0ZXIgdGhhbiB6ZXJvIG1lYW5zIHVzZSBvbmx5IHRoYXQg
bWFueSBzdWJ2ZXJzaW9ucworICAgICAgQT1gZWNobyAiJEEiIHwgc2VkICJzL1woXChbWzAtOV1d
XHs0XH1cKVx7bTRfc3Vic3RyKCQyLDIpXH1cKS4qL1wxLyJgCisgICAgICBCPWBlY2hvICIkQiIg
fCBzZWQgInMvXChcKFtbMC05XV1cezRcfVwpXHttNF9zdWJzdHIoJDIsMilcfVwpLiovXDEvImAK
KyAgICBdLAorICAgIFsuK10sWworICAgICAgQUNfV0FSTklORygKKyAgICAgICAgW2lsbGVnYWwg
T1AgbnVtZXJpYyBwYXJhbWV0ZXI6ICQyXSkKKyAgICBdLFtdKQorCisgICAgIyBQYWQgemVyb3Mg
YXQgZW5kIG9mIG51bWJlcnMgdG8gbWFrZSBzYW1lIGxlbmd0aC4KKyAgICBheF9jb21wYXJlX3Zl
cnNpb25fdG1wX0E9IiRBYGVjaG8gJEIgfCBzZWQgJ3MvLi8wL2cnYCIKKyAgICBCPSIkQmBlY2hv
ICRBIHwgc2VkICdzLy4vMC9nJ2AiCisgICAgQT0iJGF4X2NvbXBhcmVfdmVyc2lvbl90bXBfQSIK
KworICAgICMgQ2hlY2sgZm9yIGVxdWFsaXR5IG9yIGluZXF1YWxpdHkgYXMgbmVjZXNzYXJ5Lgor
ICAgIG00X2Nhc2UobTRfdG9sb3dlcihtNF9zdWJzdHIoJDIsMCwyKSksCisgICAgW2VxXSxbCisg
ICAgICB0ZXN0ICJ4JEEiID0gIngkQiIgJiYgYXhfY29tcGFyZV92ZXJzaW9uPXRydWUKKyAgICBd
LAorICAgIFtuZV0sWworICAgICAgdGVzdCAieCRBIiAhPSAieCRCIiAmJiBheF9jb21wYXJlX3Zl
cnNpb249dHJ1ZQorICAgIF0sWworICAgICAgQUNfV0FSTklORyhbaWxsZWdhbCBPUCBwYXJhbWV0
ZXI6ICQyXSkKKyAgICBdKQorICBdKQorCisgIEFTX1ZBUl9QT1BERUYoW0FdKWRubAorICBBU19W
QVJfUE9QREVGKFtCXSlkbmwKKworICBkbmwgIyBFeGVjdXRlIEFDVElPTi1JRi1UUlVFIC8gQUNU
SU9OLUlGLUZBTFNFLgorICBpZiB0ZXN0ICIkYXhfY29tcGFyZV92ZXJzaW9uIiA9ICJ0cnVlIiA7
IHRoZW4KKyAgICBtNF9pZnZhbG4oWyQ0XSxbJDRdLFs6XSlkbmwKKyAgICBtNF9pZnZhbG4oWyQ1
XSxbZWxzZSAkNV0pZG5sCisgIGZpCitdKSBkbmwgQVhfQ09NUEFSRV9WRVJTSU9OCmRpZmYgLS1n
aXQgYS9jb25maWd1cmUuYWMgYi9jb25maWd1cmUuYWMKaW5kZXggNzY4YWU5Zi4uMzMyNWZmMiAx
MDA2NDQKLS0tIGEvY29uZmlndXJlLmFjCisrKyBiL2NvbmZpZ3VyZS5hYwpAQCAtOTUsNiArOTUs
MTAgQEAgZmkKIEFDX1BBVEhfUFJPRyhGTEVYLCBmbGV4KQogaWYgdGVzdCAteiAiJEZMRVgiOyB0
aGVuCiAgICBBQ19NU0dfRVJST1IoW1lvdSBuZWVkIHRoZSAnZmxleCcgbGV4ZXIgZ2VuZXJhdG9y
IHRvIGNvbXBpbGUgV2ViS2l0XSkKK2Vsc2UKKyAgIEZMRVhfVkVSU0lPTj1gJEZMRVggLS12ZXJz
aW9uIHwgc2VkICdzLC4qXCBcKFswLTldKlwuWzAtOV0qXC5bMC05XSpcKSQsXDEsJ2AKKyAgIEFY
X0NPTVBBUkVfVkVSU0lPTihbMi41LjMzXSxbZ3RdLFskRkxFWF9WRVJTSU9OXSwKKyAgICAgIEFD
X01TR19FUlJPUihbWW91IG5lZWQgYXQgbGVhc3QgdmVyc2lvbiAyLjUuMzMgb2YgdGhlICdmbGV4
JyBsZXhlciBnZW5lcmF0b3IgdG8gY29tcGlsZSBXZWJLaXRdKSkKIGZpCiAKIEFDX1BBVEhfUFJP
RyhHUEVSRiwgZ3BlcmYpCg==
</data>
<flag name="review"
          id="10000"
          type_id="1"
          status="+"
          setter="ddkilzer"
    />
          </attachment>
      

    </bug>

</bugzilla>