<?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>15006</bug_id>
          
          <creation_ts>2007-08-19 07:28:09 -0700</creation_ts>
          <short_desc>webkitdirs.pm contains too much code duplication for Qt and Gtk related stuff</short_desc>
          <delta_ts>2007-10-14 13:57:20 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Tools / Tests</component>
          <version>523.x (Safari 3)</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></keywords>
          <priority>P3</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Oleg Sukhodolsky">son.two</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>mrowe</cc>
    
    <cc>staikos</cc>
    
    <cc>zecke</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1994</commentid>
    <comment_count>0</comment_count>
    <who name="Oleg Sukhodolsky">son.two</who>
    <bug_when>2007-08-19 07:28:09 -0700</bug_when>
    <thetext>buildQMakeGdkProject()/buildQMakeProject() are almost identical to each other.
The same is treu for isQt() and isGdk().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1995</commentid>
    <comment_count>1</comment_count>
      <attachid>16021</attachid>
    <who name="Oleg Sukhodolsky">son.two</who>
    <bug_when>2007-08-19 07:38:34 -0700</bug_when>
    <thetext>Created attachment 16021
refactoring of webkitdirs.pm

To make buildQMakeGdkProject()/buildQMakeQtProject() as similar as possible I&apos;ve decided to only use &quot;qmake&quot; for build (before gtk port tried to use qmake-qt4 first).  But since it is possible now to configure qmake which will be used with &quot;--qmake&quot; cli option, it should not be a big problem.

Also I&apos;ve decided to not place the check for directory ($project) for which build is called in common area since I see no advantages from this.

Note, that I have not tested this with Qt build, freyther has agreed to do this for me (thanks in advance btw :)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1944</commentid>
    <comment_count>2</comment_count>
    <who name="George Staikos">staikos</who>
    <bug_when>2007-08-19 20:26:10 -0700</bug_when>
    <thetext>I&apos;m a bit afraid that this will limit flexibility and I don&apos;t see a good reason why they should be using the exact same codepath.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1945</commentid>
    <comment_count>3</comment_count>
    <who name="Adam Treat">manyoso</who>
    <bug_when>2007-08-19 20:37:16 -0700</bug_when>
    <thetext>Would probably be good to get rid of the whitespace changes.  Also, I think this patch reverts 25146 that zecke said was necessary for those folks who don&apos;t build qt directly.... no?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1929</commentid>
    <comment_count>4</comment_count>
    <who name="Oleg Sukhodolsky">son.two</who>
    <bug_when>2007-08-19 23:08:56 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; I&apos;m a bit afraid that this will limit flexibility and I don&apos;t see a good reason
&gt; why they should be using the exact same codepath.

For now the codepaths is similar and this is the motivation for this refactoring. 
And the current change doesn&apos;t mean that you can not change this in future :)
So the patch is to express that NOW build process for Qt port is the same as for 
Gtk one.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1922</commentid>
    <comment_count>5</comment_count>
    <who name="Oleg Sukhodolsky">son.two</who>
    <bug_when>2007-08-19 23:12:35 -0700</bug_when>
    <thetext>(In reply to comment #3)
&gt; Would probably be good to get rid of the whitespace changes.  Also, I think
&gt; this patch reverts 25146 that zecke said was necessary for those folks who
&gt; don&apos;t build qt directly.... no?

as far as I understand 25146 is about passing debug/release to qmake.   If so then
the patch doesn&apos;t remove it.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1545</commentid>
    <comment_count>6</comment_count>
    <who name="Holger Freyther">zecke</who>
    <bug_when>2007-08-24 07:42:36 -0700</bug_when>
    <thetext>pmax: As of now it is (almost) the same code, you get flexibility through your --qmakearg command line parameter and if you really need to add Qt specific options that doesn&apos;t make sense for Gtk+ then we are always able to separate the implementations again.

I have tested the patch and WebKit/Qt continued to compile here. I agree with the change as it strives for simplification and unification.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1531</commentid>
    <comment_count>7</comment_count>
    <who name="George Staikos">staikos</who>
    <bug_when>2007-08-24 13:51:22 -0700</bug_when>
    <thetext>This still doesn&apos;t answer what the reason for the change is besides an artificial desire to have to different things use the same function even though there is potential for them to need different behavior in the near future.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1522</commentid>
    <comment_count>8</comment_count>
    <who name="Oleg Sukhodolsky">son.two</who>
    <bug_when>2007-08-24 15:37:13 -0700</bug_when>
    <thetext>(In reply to comment #7)
&gt; This still doesn&apos;t answer what the reason for the change is besides an
&gt; artificial desire to have to different things use the same function even though
&gt; there is potential for them to need different behavior in the near future.

I think most likely both builds have a lot of in common: they  should be able to 
choose qmake binary (--qmake), set some common params, read params from command 
line (--qmakearg), handle WEBKIT_FULLBUILD, run qmake and checks its result, and, 
perhaps, something else.

So, current patch it attempt to write this in the code.  It might be not perfect
but it is good enough for current situation.  Also every time someone will add 
something to either Qt or Gtk build, (s)he will be forced (by code) to think 
about adding this to another build.

Does this make sense for you?

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>57786</commentid>
    <comment_count>9</comment_count>
      <attachid>16021</attachid>
    <who name="Darin Adler">darin</who>
    <bug_when>2007-10-04 09:06:54 -0700</bug_when>
    <thetext>Comment on attachment 16021
refactoring of webkitdirs.pm

Looks good. r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58226</commentid>
    <comment_count>10</comment_count>
      <attachid>16613</attachid>
    <who name="Oleg Sukhodolsky">son.two</who>
    <bug_when>2007-10-10 08:57:53 -0700</bug_when>
    <thetext>Created attachment 16613
the patch updated to feature branch

I have update the patch so it could be easily applied to feature branch.
And tested it with gtk build.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58490</commentid>
    <comment_count>11</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2007-10-14 04:52:27 -0700</bug_when>
    <thetext>Landed in r26586.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58509</commentid>
    <comment_count>12</comment_count>
    <who name="George Staikos">staikos</who>
    <bug_when>2007-10-14 09:16:29 -0700</bug_when>
    <thetext>Now that this patch has gone in, please stop changing the Qt build system.  It is causing major headaches for me as I have to constantly merge changes on my side.  If there is a need to change the gtk build system please do it without changing the Qt one, or at least don&apos;t check it in when the Qt developers give negative review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>58533</commentid>
    <comment_count>13</comment_count>
    <who name="Mark Rowe (bdash)">mrowe</who>
    <bug_when>2007-10-14 13:57:20 -0700</bug_when>
    <thetext>To be fair, you didn&apos;t give a negative review, you said you didn&apos;t see a need for the change.  Others disagreed and took the time to write and review a patch.  How are we to know that a patch will cause merge troubles on your private branches unless you say as much?</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16021</attachid>
            <date>2007-08-19 07:38:34 -0700</date>
            <delta_ts>2007-10-10 08:57:53 -0700</delta_ts>
            <desc>refactoring of webkitdirs.pm</desc>
            <filename>buildQMakeProject-refactoring.txt</filename>
            <type>text/plain</type>
            <size>7215</size>
            <attacher name="Oleg Sukhodolsky">son.two</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI1MTQ3KQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMDctMDgtMTkgIE9sZWcgU3VraG9kb2xza3kg
PHNvbi50d29AZ21haWwuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogU2NyaXB0cy9idWlsZC13ZWJraXQ6CisgICAgICAgICogU2NyaXB0cy93
ZWJraXRkaXJzLnBtOgorICAgICAgICBidWlsZFFNYWtlUHJvamVjdCgpIHJlbmFtZWQgdG8gYnVp
bGRRTWFrZVF0UHJvamVjdCgpLgorICAgICAgICBidWlsZFFNYWtlR2RrUHJvamVjdCgpL2J1aWxk
UU1ha2VRdFByb2plY3QoKSBub3cgdGFrZSBqdXN0IG9uZSBwYXJhbWV0ZXIgKGRpcmVjdG9yeSks
CisgICAgICAgIHVudXNlZCAkY29sb3JpemUgaGFzIGJlZW4gcmVtb3ZlZC4KKyAgICAgICAgUmVm
YWN0b3Jpbmcgb2YgYnVpbGRRTWFrZUdka1Byb2plY3QoKS9idWlsZFFNYWtlUXRQcm9qZWN0KCkg
YW5kIGlzR2RrKCkvaXNRdCgpCisgICAgICAgIHRvIHJlZHVjZSBjb2RlIGR1cGxpY2F0aW9uLgor
CiAyMDA3LTA4LTE5ICBPbGVnIFN1a2hvZG9sc2t5ICA8c29uLnR3b0BnbWFpbC5jb20+CiAKICAg
ICAgICAgUmV2aWV3ZWQgYnkgTWFyay4KSW5kZXg6IFdlYktpdFRvb2xzL1NjcmlwdHMvYnVpbGQt
d2Via2l0Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL1NjcmlwdHMvYnVpbGQtd2Via2l0CShy
ZXZpc2lvbiAyNTE0NikKKysrIFdlYktpdFRvb2xzL1NjcmlwdHMvYnVpbGQtd2Via2l0CSh3b3Jr
aW5nIGNvcHkpCkBAIC0xMjMsMTMgKzEyMywxMyBAQCBmb3IgbXkgJGRpciAoQHByb2plY3RzKSB7
CiAgICAgICAgICAgICBuZXh0OwogICAgICAgICB9CiAKLSAgICAgICAgJHJlc3VsdCA9IGJ1aWxk
UU1ha2VHZGtQcm9qZWN0KCRkaXIsICRjb2xvclN1cHBvcnQpOworICAgICAgICAkcmVzdWx0ID0g
YnVpbGRRTWFrZUdka1Byb2plY3QoJGRpcik7CiAgICAgfSBlbHNpZiAoaXNRdCgpKSB7CiAgICAg
ICAgIGlmICgkZGlyIG5lICJXZWJLaXQiKSB7CiAgICAgICAgICAgICBjaGRpciAiLi4iIG9yIGRp
ZTsKICAgICAgICAgICAgIG5leHQ7CiAgICAgICAgIH0KLSAgICAgICAgJHJlc3VsdCA9IGJ1aWxk
UU1ha2VQcm9qZWN0KCRkaXIsICRjb2xvclN1cHBvcnQpOworICAgICAgICAkcmVzdWx0ID0gYnVp
bGRRTWFrZVF0UHJvamVjdCgkZGlyKTsKICAgICB9IGVsc2lmIChpc09TWCgpKSB7CiAgICAgICAg
ICRyZXN1bHQgPSBzeXN0ZW0gInhjb2RlYnVpbGQiLCAiLXByb2plY3QiLCAiJGRpci54Y29kZXBy
b2oiLCBAb3B0aW9ucywgJG92ZXJyaWRlRmVhdHVyZURlZmluZXNTdHJpbmcsIEBjb3ZlcmFnZVN1
cHBvcnRPcHRpb24sIEBBUkdWOwogICAgIH0gZWxzaWYgKGlzQ3lnd2luKCkpIHsKQEAgLTE1OCw1
ICsxNTgsNSBAQCBpZiAoJHN2Z1N1cHBvcnQpIHsKIGlmICgkc3ZnRXhwZXJpbWVudGFsU3VwcG9y
dCkgewogICAgIHByaW50ICJcbiBOT1RFOiBXZWJLaXQgaGFzIGJlZW4gYnVpbHQgd2l0aCBleHBl
cmltZW50YWwgU1ZHIGZlYXR1cmVzIGVuYWJsZWQuXG4iOwogICAgIHByaW50ICIgWW91ciBidWls
ZCBzdXBwb3J0cyBiYXNpYyBhbmltYXRpb24sIGZpbHRlcnMsIGZvcmVpZ25PYmplY3QgJiB1c2Ug
c3VwcG9ydC5cbiI7Ci19ICAgIAorfQogcHJpbnQgIj09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09XG4iOwpJbmRleDogV2ViS2l0VG9vbHMv
U2NyaXB0cy93ZWJraXRkaXJzLnBtCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFdlYktpdFRvb2xzL1NjcmlwdHMv
d2Via2l0ZGlycy5wbQkocmV2aXNpb24gMjUxNDYpCisrKyBXZWJLaXRUb29scy9TY3JpcHRzL3dl
YmtpdGRpcnMucG0JKHdvcmtpbmcgY29weSkKQEAgLTM4MiwyNyArMzgyLDI5IEBAIHN1YiBjaGVj
a1dlYkNvcmVTVkdTdXBwb3J0CiAgICAgcmV0dXJuICRoYXNTVkc7CiB9CiAKLXN1YiBpc1F0KCkK
K3N1YiBjaGVja0FyZ3YoJCkKIHsKLSAgICAjIEFsbG93IG92ZXJyaWRlIGluIGNhc2UgUVRESVIg
aXMgbm90IHNldC4KLSAgICBmb3IgbXkgJGkgKDAgLi4gJCNBUkdWKSB7Ci0gICAgICAgIG15ICRv
cHQgPSAkQVJHVlskaV07Ci0gICAgICAgIGlmICgkb3B0ID1+IC9eLS1xdC9pICkgeworICAgIG15
ICRhcmdUb0NoZWNrID0gc2hpZnQ7CisgICAgZm9yZWFjaCBteSAkb3B0IChAQVJHVikgeworICAg
ICAgICBpZiAoJG9wdCA9fiAvXiRhcmdUb0NoZWNrL2kgKSB7CiAgICAgICAgICAgICByZXR1cm4g
MTsKICAgICAgICAgfQogICAgIH0KKyAgICByZXR1cm4gMDsKK30KKworc3ViIGlzUXQoKQorewor
ICAgICMgQWxsb3cgb3ZlcnJpZGUgaW4gY2FzZSBRVERJUiBpcyBub3Qgc2V0LgorICAgIGlmIChj
aGVja0FyZ3YoIi0tcXQiKSkgeworICAgICAgICByZXR1cm4gMTsKKyAgICB9CiAgICAgcmV0dXJu
IGRlZmluZWQoJEVOVnsnUVRESVInfSkKIH0KIAogc3ViIGlzR2RrKCkKIHsKLSAgICBmb3IgbXkg
JGkgKDAgLi4gJCNBUkdWKSB7Ci0gICAgICAgIG15ICRvcHQgPSAkQVJHVlskaV07Ci0gICAgICAg
IGlmICgkb3B0ID1+IC9eLS1nZGskL2kgKSB7Ci0gICAgICAgICAgICByZXR1cm4gMTsKLSAgICAg
ICAgfQotICAgIH0KLSAgICByZXR1cm4gMDsKKyAgICByZXR1cm4gY2hlY2tBcmd2KCItLWdkayIp
OwogfQogCiBzdWIgaXNDeWd3aW4oKQpAQCAtNTcyLDE2ICs1NzQsMTcgQEAgc3ViIHF0TWFrZUNv
bW1hbmQoKQogICAgIHJldHVybiAibWFrZSI7CiB9CiAKLXN1YiBidWlsZFFNYWtlUHJvamVjdCgk
JCkKK3N1YiBidWlsZFFNYWtlUHJvamVjdChAKQogewotICAgIG15ICgkcHJvamVjdCwgJGNvbG9y
aXplKSA9IEBfOworICAgIG15IEBidWlsZEFyZ3MgPSBAXzsKIAotICAgIG15IEBidWlsZEFyZ3Mg
PSAoIi1yIik7CiAgICAgbXkgJG1ha2UgPSBxdE1ha2VDb21tYW5kKCk7CiAKICAgICBteSAkcW1h
a2ViaW4gPSAicW1ha2UiOyAjIEFsbG93IG92ZXJyaWRlIG9mIHRoZSBxbWFrZSBiaW5hcnkgZnJv
bSAkUEFUSAotICAgIGZvciBteSAkaSAoMCAuLiAkI0FSR1YpIHsKLSAgICAgICAgbXkgJG9wdCA9
ICRBUkdWWyRpXTsKKworICAgIHB1c2ggQGJ1aWxkQXJncywgIi1yIjsKKworICAgIGZvcmVhY2gg
bXkgJG9wdCAoQEFSR1YpIHsKICAgICAgICAgaWYgKCRvcHQgPX4gL14tLXFtYWtlPSguKikvaSAp
IHsKICAgICAgICAgICAgICRxbWFrZWJpbiA9ICQxOwogICAgICAgICB9IGVsc2lmICgkb3B0ID1+
IC9eLS1xbWFrZWFyZz0oLiopL2kgKSB7CkBAIC01ODksMTUgKzU5MiwxMCBAQCBzdWIgYnVpbGRR
TWFrZVByb2plY3QoJCQpCiAgICAgICAgIH0KICAgICB9CiAKLSAgICBpZiAoJHByb2plY3QgbmUg
IldlYktpdCIpIHsKLSAgICAgICAgZGllICJRdC9MaW51eCBidWlsZHMgSmF2YVNjcmlwdENvcmUv
V2ViQ29yZS9XZWJLaXRRdCBpbiBvbmUgc2hvdCEgT25seSBjYWxsIGl0IGZvciAnV2ViS2l0Jy5c
biI7Ci0gICAgfQotCiAgICAgbXkgJGNvbmZpZyA9IGNvbmZpZ3VyYXRpb24oKTsKICAgICBteSAk
cHJlZml4ID0gJEVOVnsiV2ViS2l0SW5zdGFsbGF0aW9uUHJlZml4In07CiAKICAgICBwdXNoIEBi
dWlsZEFyZ3MsICJPVVRQVVRfRElSPSIgLiBiYXNlUHJvZHVjdERpcigpIC4gIi8kY29uZmlnIjsK
LSAgICBwdXNoIEBidWlsZEFyZ3MsICJDT05GSUcrPXF0LXBvcnQiOwogICAgIHB1c2ggQGJ1aWxk
QXJncywgc291cmNlRGlyKCkgLiAiL1dlYktpdC5wcm8iOwogICAgIGlmICgkY29uZmlnID1+IG0v
ZGVidWcvaSkgewogICAgICAgICBwdXNoIEBidWlsZEFyZ3MsICJDT05GSUctPXJlbGVhc2UiOwpA
QCAtNjA3LDkgKzYwNSw2IEBAIHN1YiBidWlsZFFNYWtlUHJvamVjdCgkJCkKICAgICAgICAgcHVz
aCBAYnVpbGRBcmdzLCAiQ09ORklHLT1kZWJ1ZyI7CiAgICAgfQogCi0gICAgcHJpbnQgIkNhbGxp
bmcgJyRxbWFrZWJpbiBAYnVpbGRBcmdzJyBpbiAiIC4gYmFzZVByb2R1Y3REaXIoKSAuICIvJGNv
bmZpZyAuLi5cblxuIjsKLSAgICBwcmludCAiSW5zdGFsbGF0aW9uIGRpcmVjdG9yeTogJHByZWZp
eFxuIiBpZihkZWZpbmVkKCRwcmVmaXgpKTsKLQogICAgIG15ICRkaXIgPSBiYXNlUHJvZHVjdERp
cigpOwogICAgIGlmICghIC1kICRkaXIpIHsKICAgICAgICAgbWtkaXIgJGRpciBvciBkaWUgIkZh
aWxlZCB0byBjcmVhdGUgcHJvZHVjdCBkaXJlY3RvcnkgIiAuICRkaXI7CkBAIC02MjEsMTQgKzYx
NiwxNyBAQCBzdWIgYnVpbGRRTWFrZVByb2plY3QoJCQpCiAKICAgICBjaGRpciAkZGlyIG9yIGRp
ZSAiRmFpbGVkIHRvIGNkIGludG8gIiAuICRkaXIgLiAiXG4iOwogCisgICAgcHJpbnQgIkNhbGxp
bmcgJyRxbWFrZWJpbiBAYnVpbGRBcmdzJyBpbiAiIC4gJGRpciAuICIgLi4uXG5cbiI7CisgICAg
cHJpbnQgIkluc3RhbGxhdGlvbiBkaXJlY3Rvcnk6ICRwcmVmaXhcbiIgaWYoZGVmaW5lZCgkcHJl
Zml4KSk7CisKICAgICBteSAkcmVzdWx0ID0gc3lzdGVtICRxbWFrZWJpbiwgQGJ1aWxkQXJnczsK
LSAgICBpZigkcmVzdWx0IG5lIDApIHsKKyAgICBpZiAoJHJlc3VsdCBuZSAwKSB7CiAgICAgICAg
ZGllICJGYWlsZWQgdG8gc2V0dXAgYnVpbGQgZW52aXJvbm1lbnQgdXNpbmcgJHFtYWtlYmluIVxu
IjsKICAgICB9CiAKICAgICBteSAkY2xlYW4gPSAkRU5WeyJXRUJLSVRfRlVMTEJVSUxEIn07CiAK
LSAgICBpZihkZWZpbmVkICRjbGVhbikgeworICAgIGlmIChkZWZpbmVkICRjbGVhbikgewogICAg
ICAgc3lzdGVtICIkbWFrZSBjbGVhbiI7CiAgICAgfQogCkBAIC02MzcsNTggKzYzNSwzMCBAQCBz
dWIgYnVpbGRRTWFrZVByb2plY3QoJCQpCiAgICAgcmV0dXJuICRyZXN1bHQ7CiB9CiAKLXN1YiBi
dWlsZFFNYWtlR2RrUHJvamVjdCgkJCkKK3N1YiBidWlsZFFNYWtlUXRQcm9qZWN0KCQpCiB7Ci0g
ICAgbXkgKCRwcm9qZWN0LCAkY29sb3JpemUpID0gQF87CisgICAgbXkgKCRwcm9qZWN0KSA9IEBf
OwogCiAgICAgaWYgKCRwcm9qZWN0IG5lICJXZWJLaXQiKSB7Ci0gICAgICAgIGRpZSAiVGhlIEdk
ayBwb3J0YnVpbGRzIEphdmFTY3JpcHRDb3JlL1dlYkNvcmUvV2ViS2l0UXQgaW4gb25lIHNob3Qh
IE9ubHkgY2FsbCBpdCBmb3IgJ1dlYktpdCcuXG4iOworICAgICAgICBkaWUgIlF0L0xpbnV4IGJ1
aWxkcyBKYXZhU2NyaXB0Q29yZS9XZWJDb3JlL1dlYktpdFF0IGluIG9uZSBzaG90ISBPbmx5IGNh
bGwgaXQgZm9yICdXZWJLaXQnLlxuIjsKICAgICB9CiAKLSAgICBteSAkY29uZmlnID0gY29uZmln
dXJhdGlvbigpOwotICAgIG15ICRwcmVmaXggPSAkRU5WeyJXZWJLaXRJbnN0YWxsYXRpb25QcmVm
aXgifTsKKyAgICBteSBAYnVpbGRBcmdzID0gKCJDT05GSUcrPXF0LXBvcnQiKTsKKyAgICByZXR1
cm4gYnVpbGRRTWFrZVByb2plY3QoQGJ1aWxkQXJncyk7Cit9CiAKLSAgICBteSBAYnVpbGRBcmdz
ID0gKCItciIpOworc3ViIGJ1aWxkUU1ha2VHZGtQcm9qZWN0KCQpCit7CisgICAgbXkgKCRwcm9q
ZWN0KSA9IEBfOwogCi0gICAgZm9yZWFjaCBteSAkb3B0IChAQVJHVikgewotICAgICAgICBpZiAo
JG9wdCA9fiAvXi0tcW1ha2Vhcmc9KC4qKS9pICkgewotICAgICAgICAgICAgcHVzaCBAYnVpbGRB
cmdzLCAkMTsKLSAgICAgICAgfQorICAgIGlmICgkcHJvamVjdCBuZSAiV2ViS2l0IikgeworICAg
ICAgICBkaWUgIlRoZSBHZGsgcG9ydGJ1aWxkcyBKYXZhU2NyaXB0Q29yZS9XZWJDb3JlIGluIG9u
ZSBzaG90ISBPbmx5IGNhbGwgaXQgZm9yICdXZWJLaXQnLlxuIjsKICAgICB9CiAKLSAgICBwdXNo
IEBidWlsZEFyZ3MsICJPVVRQVVRfRElSPSIgLiBiYXNlUHJvZHVjdERpcigpIC4gIi8kY29uZmln
IjsKKyAgICBteSBAYnVpbGRBcmdzID0gKCJDT05GSUcrPWdkay1wb3J0Iik7CiAgICAgcHVzaCBA
YnVpbGRBcmdzLCAiQ09ORklHLT1xdCI7Ci0gICAgcHVzaCBAYnVpbGRBcmdzLCAiQ09ORklHKz1n
ZGstcG9ydCI7Ci0gICAgcHVzaCBAYnVpbGRBcmdzLCBzb3VyY2VEaXIoKSAuICIvV2ViS2l0LnBy
byI7Ci0gICAgaWYgKCRjb25maWcgPX4gbS9kZWJ1Zy9pKSB7Ci0gICAgICAgIHB1c2ggQGJ1aWxk
QXJncywgIkNPTkZJRy09cmVsZWFzZSI7Ci0gICAgICAgIHB1c2ggQGJ1aWxkQXJncywgIkNPTkZJ
Rys9ZGVidWciOwotICAgIH0gZWxzZSB7Ci0gICAgICAgIHB1c2ggQGJ1aWxkQXJncywgIkNPTkZJ
Rys9cmVsZWFzZSI7Ci0gICAgICAgIHB1c2ggQGJ1aWxkQXJncywgIkNPTkZJRy09ZGVidWciOwot
ICAgIH0KLQotICAgIHByaW50ICJDYWxsaW5nICdxbWFrZSBAYnVpbGRBcmdzJyBpbiAiIC4gYmFz
ZVByb2R1Y3REaXIoKSAuICIvJGNvbmZpZyAuLi5cblxuIjsKLSAgICBwcmludCAiSW5zdGFsbGF0
aW9uIGRpcmVjdG9yeTogJHByZWZpeFxuIiBpZihkZWZpbmVkKCRwcmVmaXgpKTsKLQotICAgIHN5
c3RlbSAibWtkaXIgLXAgIiAuIGJhc2VQcm9kdWN0RGlyKCkgLiAiLyRjb25maWciOwotICAgIGNo
ZGlyIGJhc2VQcm9kdWN0RGlyKCkgLiAiLyRjb25maWciIG9yIGRpZSAiRmFpbGVkIHRvIGNkIGlu
dG8gIiAuIGJhc2VQcm9kdWN0RGlyKCkgLiAiLyRjb25maWcgXG4iOwotCi0gICAgbXkgJHJlc3Vs
dCA9IHN5c3RlbSAicW1ha2UtcXQ0IiwgQGJ1aWxkQXJnczsKLSAgICAkcmVzdWx0ID0gIHN5c3Rl
bSAicW1ha2UiLCBAYnVpbGRBcmdzIGlmICgkcmVzdWx0IG5lIDApOwotICAgIGlmICgkcmVzdWx0
IG5lIDApIHsKLSAgICAgICBkaWUgIkZhaWxlZCB0byBzZXR1cCBidWlsZCBlbnZpcm9ubWVudCB1
c2luZyBxbWFrZSFcbiI7Ci0gICAgfQogCi0gICAgbXkgJGNsZWFuID0gJEVOVnsiV0VCS0lUX0ZV
TExCVUlMRCJ9OwotCi0gICAgaWYgKGRlZmluZWQgJGNsZWFuKSB7Ci0gICAgICBzeXN0ZW0gIm1h
a2UgY2xlYW4iOwotICAgIH0KLQotICAgICRyZXN1bHQgPSBzeXN0ZW0gIm1ha2UiOwotICAgIGNo
ZGlyICIuLiIgb3IgZGllOwotICAgIHJldHVybiAkcmVzdWx0OworICAgIHJldHVybiBidWlsZFFN
YWtlUHJvamVjdChAYnVpbGRBcmdzKTsKIH0KIAogMTsK
</data>
<flag name="review"
          id="6724"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>16613</attachid>
            <date>2007-10-10 08:57:53 -0700</date>
            <delta_ts>2007-10-10 11:38:05 -0700</delta_ts>
            <desc>the patch updated to feature branch</desc>
            <filename>build-refactoring.txt</filename>
            <type>text/plain</type>
            <size>6457</size>
            <attacher name="Oleg Sukhodolsky">son.two</attacher>
            
              <data encoding="base64">SW5kZXg6IFdlYktpdFRvb2xzL0NoYW5nZUxvZwo9PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9D
aGFuZ2VMb2cJKHJldmlzaW9uIDI2MTgxKQorKysgV2ViS2l0VG9vbHMvQ2hhbmdlTG9nCSh3b3Jr
aW5nIGNvcHkpCkBAIC0xLDMgKzEsMTUgQEAKKzIwMDctMTAtMTAgIE9sZWcgU3VraG9kb2xza3kg
PHNvbi50d29AZ21haWwuY29tPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEp
LgorCisgICAgICAgICogU2NyaXB0cy9idWlsZC13ZWJraXQ6CisgICAgICAgICogU2NyaXB0cy93
ZWJraXRkaXJzLnBtOgorICAgICAgICBidWlsZFFNYWtlUHJvamVjdCgpIHJlbmFtZWQgdG8gYnVp
bGRRTWFrZVF0UHJvamVjdCgpLgorICAgICAgICBidWlsZFFNYWtlR2RrUHJvamVjdCgpL2J1aWxk
UU1ha2VRdFByb2plY3QoKSBub3cgdGFrZSBqdXN0IG9uZSBwYXJhbWV0ZXIgKGRpcmVjdG9yeSks
CisgICAgICAgIHVudXNlZCAkY29sb3JpemUgaGFzIGJlZW4gcmVtb3ZlZC4KKyAgICAgICAgUmVm
YWN0b3Jpbmcgb2YgYnVpbGRRTWFrZUdka1Byb2plY3QoKS9idWlsZFFNYWtlUXRQcm9qZWN0KCkg
YW5kIGlzR2RrKCkvaXNRdCgpCisgICAgICAgIHRvIHJlZHVjZSBjb2RlIGR1cGxpY2F0aW9uLgor
CiAyMDA3LTEwLTA4ICBFcmljIFNlaWRlbCAgPGVyaWNAd2Via2l0Lm9yZz4KIAogICAgICAgICBS
ZXZpZXdlZCBieSBNYXJrIFJvd2UuCkluZGV4OiBXZWJLaXRUb29scy9TY3JpcHRzL3dlYmtpdGRp
cnMucG0KPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PQotLS0gV2ViS2l0VG9vbHMvU2NyaXB0cy93ZWJraXRkaXJzLnBtCShy
ZXZpc2lvbiAyNjE4MSkKKysrIFdlYktpdFRvb2xzL1NjcmlwdHMvd2Via2l0ZGlycy5wbQkod29y
a2luZyBjb3B5KQpAQCAtNDA4LDE3ICs0MDgsMjQgQEAKICAgICByZXR1cm4gJGlzUXQ7CiB9CiAK
K3N1YiBjaGVja0FyZ3YoJCkKK3sKKyAgICBteSAkYXJnVG9DaGVjayA9IHNoaWZ0OworICAgIGZv
cmVhY2ggbXkgJG9wdCAoQEFSR1YpIHsKKyAgICAgICAgaWYgKCRvcHQgPX4gL14kYXJnVG9DaGVj
ay9pICkgeworICAgICAgICAgICAgcmV0dXJuIDE7CisgICAgICAgIH0KKyAgICB9CisgICAgcmV0
dXJuIDA7Cit9CisKIHN1YiBkZXRlcm1pbmVJc1F0KCkKIHsKICAgICByZXR1cm4gaWYgZGVmaW5l
ZCgkaXNRdCk7CiAKICAgICAjIEFsbG93IG92ZXJyaWRlIGluIGNhc2UgUVRESVIgaXMgbm90IHNl
dC4KLSAgICBmb3IgbXkgJGkgKDAgLi4gJCNBUkdWKSB7Ci0gICAgICAgIG15ICRvcHQgPSAkQVJH
VlskaV07Ci0gICAgICAgIGlmICgkb3B0ID1+IC9eLS1xdC9pICkgewotICAgICAgICAgICAgJGlz
UXQgPSAxOwotICAgICAgICAgICAgcmV0dXJuOwotICAgICAgICB9CisgICAgaWYgKGNoZWNrQXJn
digiLS1xdCIpKSB7CisgICAgICAgIHJldHVybiAxOwogICAgIH0KIAogICAgICMgVGhlIHByZXNl
bmNlIG9mIFFURElSIG9ubHkgbWVhbnMgUXQgaWYgLS1ndGsgaXMgbm90IG9uIHRoZSBjb21tYW5k
LWxpbmUKQEAgLTQ0MCwxNCArNDQ3LDExIEBACiB7CiAgICAgcmV0dXJuIGlmIGRlZmluZWQoJGlz
R3RrKTsKIAotICAgIGZvciBteSAkaSAoMCAuLiAkI0FSR1YpIHsKLSAgICAgICAgbXkgJG9wdCA9
ICRBUkdWWyRpXTsKLSAgICAgICAgaWYgKCRvcHQgPX4gL14tLWd0ayQvaSApIHsKLSAgICAgICAg
ICAgICRpc0d0ayA9IDE7Ci0gICAgICAgICAgICByZXR1cm47Ci0gICAgICAgIH0KKyAgICBpZiAo
Y2hlY2tBcmd2KCItLWd0ayIpKSB7CisgICAgICAgICRpc0d0az0gMTsKKyAgICB9IGVsc2Ugewor
ICAgICAgICAkaXNHdGsgPSAwOwogICAgIH0KLSAgICAkaXNHdGsgPSAwOwogfQogCiBzdWIgaXND
eWd3aW4oKQpAQCAtNjI4LDExICs2MzIsMTEgQEAKICAgICByZXR1cm4gIm1ha2UiOwogfQogCi1z
dWIgYnVpbGRRTWFrZVByb2plY3QoJCkKK3N1YiBidWlsZFFNYWtlUHJvamVjdChAKQogewotICAg
IG15ICgkcHJvamVjdCkgPSBAXzsKKyAgICBteSBAYnVpbGRBcmdzID0gQF87CiAKLSAgICBteSBA
YnVpbGRBcmdzID0gKCItciIpOworICAgIHB1c2ggQGJ1aWxkQXJncywgIi1yIjsKICAgICBteSAk
bWFrZSA9IHF0TWFrZUNvbW1hbmQoKTsKIAogICAgIG15ICRxbWFrZWJpbiA9ICJxbWFrZSI7ICMg
QWxsb3cgb3ZlcnJpZGUgb2YgdGhlIHFtYWtlIGJpbmFyeSBmcm9tICRQQVRICkBAIC02NDUsMTUg
KzY0OSwxMCBAQAogICAgICAgICB9CiAgICAgfQogCi0gICAgaWYgKCRwcm9qZWN0IG5lICJXZWJL
aXQiKSB7Ci0gICAgICAgIGRpZSAiUXQvTGludXggYnVpbGRzIEphdmFTY3JpcHRDb3JlL1dlYkNv
cmUvV2ViS2l0UXQgaW4gb25lIHNob3QhIE9ubHkgY2FsbCBpdCBmb3IgJ1dlYktpdCcuXG4iOwot
ICAgIH0KLQogICAgIG15ICRjb25maWcgPSBjb25maWd1cmF0aW9uKCk7CiAgICAgbXkgJHByZWZp
eCA9ICRFTlZ7IldlYktpdEluc3RhbGxhdGlvblByZWZpeCJ9OwogCiAgICAgcHVzaCBAYnVpbGRB
cmdzLCAiT1VUUFVUX0RJUj0iIC4gYmFzZVByb2R1Y3REaXIoKSAuICIvJGNvbmZpZyI7Ci0gICAg
cHVzaCBAYnVpbGRBcmdzLCAiQ09ORklHKz1xdC1wb3J0IjsKICAgICBwdXNoIEBidWlsZEFyZ3Ms
IHNvdXJjZURpcigpIC4gIi9XZWJLaXQucHJvIjsKICAgICBpZiAoJGNvbmZpZyA9fiBtL2RlYnVn
L2kpIHsKICAgICAgICAgcHVzaCBAYnVpbGRBcmdzLCAiQ09ORklHLT1yZWxlYXNlIjsKQEAgLTY2
Myw5ICs2NjIsNiBAQAogICAgICAgICBwdXNoIEBidWlsZEFyZ3MsICJDT05GSUctPWRlYnVnIjsK
ICAgICB9CiAKLSAgICBwcmludCAiQ2FsbGluZyAnJHFtYWtlYmluIEBidWlsZEFyZ3MnIGluICIg
LiBiYXNlUHJvZHVjdERpcigpIC4gIi8kY29uZmlnIC4uLlxuXG4iOwotICAgIHByaW50ICJJbnN0
YWxsYXRpb24gZGlyZWN0b3J5OiAkcHJlZml4XG4iIGlmKGRlZmluZWQoJHByZWZpeCkpOwotCiAg
ICAgbXkgJGRpciA9IGJhc2VQcm9kdWN0RGlyKCk7CiAgICAgaWYgKCEgLWQgJGRpcikgewogICAg
ICAgICBta2RpciAkZGlyIG9yIGRpZSAiRmFpbGVkIHRvIGNyZWF0ZSBwcm9kdWN0IGRpcmVjdG9y
eSAiIC4gJGRpcjsKQEAgLTY3NywxNCArNjczLDE3IEBACiAKICAgICBjaGRpciAkZGlyIG9yIGRp
ZSAiRmFpbGVkIHRvIGNkIGludG8gIiAuICRkaXIgLiAiXG4iOwogCisgICAgcHJpbnQgIkNhbGxp
bmcgJyRxbWFrZWJpbiBAYnVpbGRBcmdzJyBpbiAiIC4gJGRpciAuICIgLi4uXG5cbiI7CisgICAg
cHJpbnQgIkluc3RhbGxhdGlvbiBkaXJlY3Rvcnk6ICRwcmVmaXhcbiIgaWYoZGVmaW5lZCgkcHJl
Zml4KSk7CisKICAgICBteSAkcmVzdWx0ID0gc3lzdGVtICRxbWFrZWJpbiwgQGJ1aWxkQXJnczsK
LSAgICBpZigkcmVzdWx0IG5lIDApIHsKKyAgICBpZiAoJHJlc3VsdCBuZSAwKSB7CiAgICAgICAg
ZGllICJGYWlsZWQgdG8gc2V0dXAgYnVpbGQgZW52aXJvbm1lbnQgdXNpbmcgJHFtYWtlYmluIVxu
IjsKICAgICB9CiAKICAgICBteSAkY2xlYW4gPSAkRU5WeyJXRUJLSVRfRlVMTEJVSUxEIn07CiAK
LSAgICBpZihkZWZpbmVkICRjbGVhbikgeworICAgIGlmIChkZWZpbmVkICRjbGVhbikgewogICAg
ICAgc3lzdGVtICIkbWFrZSBjbGVhbiI7CiAgICAgfQogCkBAIC02OTMsNiArNjkyLDE0IEBACiAg
ICAgcmV0dXJuICRyZXN1bHQ7CiB9CiAKK3N1YiBidWlsZFFNYWtlUXRQcm9qZWN0KCQpCit7Cisg
ICAgbXkgKCRwcm9qZWN0KSA9IEBfOworCisgICAgbXkgQGJ1aWxkQXJncyA9ICgiQ09ORklHKz1x
dC1wb3J0Iik7CisgICAgcmV0dXJuIGJ1aWxkUU1ha2VQcm9qZWN0KEBidWlsZEFyZ3MpOworfQor
CiBzdWIgYnVpbGRRTWFrZUd0a1Byb2plY3QoJCkKIHsKICAgICBteSAoJHByb2plY3QpID0gQF87
CkBAIC03MDEsNTAgKzcwOCwxMCBAQAogICAgICAgICBkaWUgIlRoZSBHdGsgcG9ydGJ1aWxkcyBK
YXZhU2NyaXB0Q29yZS9XZWJDb3JlL1dlYktpdFF0IGluIG9uZSBzaG90ISBPbmx5IGNhbGwgaXQg
Zm9yICdXZWJLaXQnLlxuIjsKICAgICB9CiAKLSAgICBteSAkY29uZmlnID0gY29uZmlndXJhdGlv
bigpOwotICAgIG15ICRwcmVmaXggPSAkRU5WeyJXZWJLaXRJbnN0YWxsYXRpb25QcmVmaXgifTsK
LQotICAgIG15IEBidWlsZEFyZ3MgPSAoIi1yIik7Ci0KLSAgICBmb3JlYWNoIG15ICRvcHQgKEBB
UkdWKSB7Ci0gICAgICAgIGlmICgkb3B0ID1+IC9eLS1xbWFrZWFyZz0oLiopL2kgKSB7Ci0gICAg
ICAgICAgICBwdXNoIEBidWlsZEFyZ3MsICQxOwotICAgICAgICB9Ci0gICAgfQotCi0gICAgcHVz
aCBAYnVpbGRBcmdzLCAiT1VUUFVUX0RJUj0iIC4gYmFzZVByb2R1Y3REaXIoKSAuICIvJGNvbmZp
ZyI7CisgICAgbXkgQGJ1aWxkQXJncyA9ICgiQ09ORklHKz1ndGstcG9ydCIpOwogICAgIHB1c2gg
QGJ1aWxkQXJncywgIkNPTkZJRy09cXQiOwotICAgIHB1c2ggQGJ1aWxkQXJncywgIkNPTkZJRys9
Z3RrLXBvcnQiOwotICAgIHB1c2ggQGJ1aWxkQXJncywgc291cmNlRGlyKCkgLiAiL1dlYktpdC5w
cm8iOwotICAgIGlmICgkY29uZmlnID1+IG0vZGVidWcvaSkgewotICAgICAgICBwdXNoIEBidWls
ZEFyZ3MsICJDT05GSUctPXJlbGVhc2UiOwotICAgICAgICBwdXNoIEBidWlsZEFyZ3MsICJDT05G
SUcrPWRlYnVnIjsKLSAgICB9IGVsc2UgewotICAgICAgICBwdXNoIEBidWlsZEFyZ3MsICJDT05G
SUcrPXJlbGVhc2UiOwotICAgICAgICBwdXNoIEBidWlsZEFyZ3MsICJDT05GSUctPWRlYnVnIjsK
LSAgICB9CiAKLSAgICBwcmludCAiQ2FsbGluZyAncW1ha2UgQGJ1aWxkQXJncycgaW4gIiAuIGJh
c2VQcm9kdWN0RGlyKCkgLiAiLyRjb25maWcgLi4uXG5cbiI7Ci0gICAgcHJpbnQgIkluc3RhbGxh
dGlvbiBkaXJlY3Rvcnk6ICRwcmVmaXhcbiIgaWYoZGVmaW5lZCgkcHJlZml4KSk7Ci0KLSAgICBz
eXN0ZW0gIm1rZGlyIC1wICIgLiBiYXNlUHJvZHVjdERpcigpIC4gIi8kY29uZmlnIjsKLSAgICBj
aGRpciBiYXNlUHJvZHVjdERpcigpIC4gIi8kY29uZmlnIiBvciBkaWUgIkZhaWxlZCB0byBjZCBp
bnRvICIgLiBiYXNlUHJvZHVjdERpcigpIC4gIi8kY29uZmlnIFxuIjsKLQotICAgIG15ICRyZXN1
bHQgPSBzeXN0ZW0gInFtYWtlLXF0NCIsIEBidWlsZEFyZ3M7Ci0gICAgJHJlc3VsdCA9ICBzeXN0
ZW0gInFtYWtlIiwgQGJ1aWxkQXJncyBpZiAoJHJlc3VsdCBuZSAwKTsKLSAgICBpZiAoJHJlc3Vs
dCBuZSAwKSB7Ci0gICAgICAgZGllICJGYWlsZWQgdG8gc2V0dXAgYnVpbGQgZW52aXJvbm1lbnQg
dXNpbmcgcW1ha2UhXG4iOwotICAgIH0KLQotICAgIG15ICRjbGVhbiA9ICRFTlZ7IldFQktJVF9G
VUxMQlVJTEQifTsKLQotICAgIGlmIChkZWZpbmVkICRjbGVhbikgewotICAgICAgc3lzdGVtICJt
YWtlIGNsZWFuIjsKLSAgICB9Ci0KLSAgICAkcmVzdWx0ID0gc3lzdGVtICJtYWtlIjsKLSAgICBj
aGRpciAiLi4iIG9yIGRpZTsKLSAgICByZXR1cm4gJHJlc3VsdDsKKyAgICByZXR1cm4gYnVpbGRR
TWFrZVByb2plY3QoQGJ1aWxkQXJncyk7CiB9CiAKIDE7CkluZGV4OiBXZWJLaXRUb29scy9TY3Jp
cHRzL2J1aWxkLXdlYmtpdAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBXZWJLaXRUb29scy9TY3JpcHRzL2J1aWxk
LXdlYmtpdAkocmV2aXNpb24gMjYxODEpCisrKyBXZWJLaXRUb29scy9TY3JpcHRzL2J1aWxkLXdl
YmtpdAkod29ya2luZyBjb3B5KQpAQCAtMTUxLDcgKzE1MSw3IEBACiAgICAgICAgICAgICBjaGRp
ciAiLi4iIG9yIGRpZTsKICAgICAgICAgICAgIG5leHQ7CiAgICAgICAgIH0KLSAgICAgICAgJHJl
c3VsdCA9IGJ1aWxkUU1ha2VQcm9qZWN0KCRkaXIpOworICAgICAgICAkcmVzdWx0ID0gYnVpbGRR
TWFrZVF0UHJvamVjdCgkZGlyKTsKICAgICB9IGVsc2lmIChpc09TWCgpKSB7CiAgICAgICAgICRy
ZXN1bHQgPSBzeXN0ZW0gInhjb2RlYnVpbGQiLCAiLXByb2plY3QiLCAiJGRpci54Y29kZXByb2oi
LCBAb3B0aW9ucywgJG92ZXJyaWRlRmVhdHVyZURlZmluZXNTdHJpbmcsIEBjb3ZlcmFnZVN1cHBv
cnRPcHRpb24sIEBBUkdWOwogICAgIH0gZWxzaWYgKGlzQ3lnd2luKCkpIHsKQEAgLTE4MCw1ICsx
ODAsNSBAQAogaWYgKCRzdmdFeHBlcmltZW50YWxTdXBwb3J0KSB7CiAgICAgcHJpbnQgIlxuIE5P
VEU6IFdlYktpdCBoYXMgYmVlbiBidWlsdCB3aXRoIGV4cGVyaW1lbnRhbCBTVkcgZmVhdHVyZXMg
ZW5hYmxlZC5cbiI7CiAgICAgcHJpbnQgIiBZb3VyIGJ1aWxkIHN1cHBvcnRzIGJhc2ljIGFuaW1h
dGlvbiwgZmlsdGVycywgZm9yZWlnbk9iamVjdCAmIHVzZSBzdXBwb3J0LlxuIjsKLX0gICAgCit9
CiBwcmludCAiPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT1cbiI7Cg==
</data>
<flag name="review"
          id="7018"
          type_id="1"
          status="+"
          setter="darin"
    />
          </attachment>
      

    </bug>

</bugzilla>