<?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>175988</bug_id>
          
          <creation_ts>2017-08-25 10:32:58 -0700</creation_ts>
          <short_desc>Add String::format variant that takes va_args</short_desc>
          <delta_ts>2017-08-28 14:01:55 -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>Web Template Framework</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=176035</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Eric Carlson">eric.carlson</reporter>
          <assigned_to name="Eric Carlson">eric.carlson</assigned_to>
          <cc>benjamin</cc>
    
    <cc>buildbot</cc>
    
    <cc>cdumez</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>dbates</cc>
    
    <cc>ggaren</cc>
    
    <cc>jer.noble</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1342438</commentid>
    <comment_count>0</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2017-08-25 10:32:58 -0700</bug_when>
    <thetext>Add String::format variant that takes va_args so it can be used from a variadic function.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342457</commentid>
    <comment_count>1</comment_count>
      <attachid>319091</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2017-08-25 11:37:08 -0700</bug_when>
    <thetext>Created attachment 319091
Proposed patch.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342458</commentid>
    <comment_count>2</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2017-08-25 11:37:55 -0700</bug_when>
    <thetext>&lt;rdar://problem/34085521&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342496</commentid>
    <comment_count>3</comment_count>
      <attachid>319091</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-25 13:24:01 -0700</bug_when>
    <thetext>Comment on attachment 319091
Proposed patch.

Clearing flags on attachment: 319091

Committed r221203: &lt;http://trac.webkit.org/changeset/221203&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342497</commentid>
    <comment_count>4</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2017-08-25 13:24:03 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342542</commentid>
    <comment_count>5</comment_count>
      <attachid>319091</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2017-08-25 15:23:04 -0700</bug_when>
    <thetext>Comment on attachment 319091
Proposed patch.

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

&gt; Source/WTF/wtf/text/WTFString.cpp:471
&gt; +    va_copy(argsCopy, args);

This function calls &quot;va_end(args);&quot; in two places. It also passes &quot;args&quot; to some callees. I think all uses of &quot;args&quot; need to become uses of &quot;argsCopy&quot;, no?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342581</commentid>
    <comment_count>6</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2017-08-25 16:45:02 -0700</bug_when>
    <thetext>(In reply to Geoffrey Garen from comment #5)
&gt; Comment on attachment 319091 [details]
&gt; Proposed patch.
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=319091&amp;action=review
&gt; 
&gt; &gt; Source/WTF/wtf/text/WTFString.cpp:471
&gt; &gt; +    va_copy(argsCopy, args);
&gt; 
&gt; This function calls &quot;va_end(args);&quot; in two places. It also passes &quot;args&quot; to
&gt; some callees. I think all uses of &quot;args&quot; need to become uses of &quot;argsCopy&quot;,
&gt; no?

Oops, &quot;va_end(args)&quot; is definitely wrong, but AFAIK the other uses of &quot;args&quot; is correct.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342624</commentid>
    <comment_count>7</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-08-25 20:51:06 -0700</bug_when>
    <thetext>We should stop using String::format.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342626</commentid>
    <comment_count>8</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2017-08-25 20:54:48 -0700</bug_when>
    <thetext>And instead use something that is type safe. Like use makeString.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342839</commentid>
    <comment_count>9</comment_count>
      <attachid>319179</attachid>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2017-08-28 08:41:59 -0700</bug_when>
    <thetext>Created attachment 319179
Address post-review feedback.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1342934</commentid>
    <comment_count>10</comment_count>
    <who name="Eric Carlson">eric.carlson</who>
    <bug_when>2017-08-28 14:01:55 -0700</bug_when>
    <thetext>(In reply to Darin Adler from comment #8)
&gt; And instead use something that is type safe. Like use makeString.

Filed bug 176035 for this suggestion.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>319091</attachid>
            <date>2017-08-25 11:37:08 -0700</date>
            <delta_ts>2017-08-25 13:24:01 -0700</delta_ts>
            <desc>Proposed patch.</desc>
            <filename>string_format_patch_1.txt</filename>
            <type>text/plain</type>
            <size>6670</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyMjA5NjQpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE2IEBACisyMDE3LTA4LTI1ICBFcmljIENhcmxzb24gIDxlcmlj
LmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBTdHJpbmc6OmZvcm1hdCB2YXJpYW50
IHRoYXQgdGFrZXMgdmFfYXJncworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTc1OTg4CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISku
CisKKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcuY3BwOgorICAgICAgICAoV1RGOjpjcmVh
dGVXaXRoRm9ybWF0QW5kQXJndW1lbnRzKTogQ3JlYXRlZCB3aXRoIHRoZSBndXRzIG9mIFN0cmlu
Zzo6Zm9ybWF0LgorICAgICAgICAoV1RGOjpTdHJpbmc6OmZvcm1hdFdpdGhBcmd1bWVudHMpOiBO
ZXcsIGNhbGwgY3JlYXRlV2l0aEZvcm1hdEFuZEFyZ3VtZW50cy4KKyAgICAgICAgKFdURjo6U3Ry
aW5nOjpmb3JtYXQpOiBNb3ZlIGxvZ2ljIHRvIGNyZWF0ZVdpdGhGb3JtYXRBbmRBcmd1bWVudHMs
IHVzZSBpdC4KKyAgICAgICAgKiB3dGYvdGV4dC9XVEZTdHJpbmcuaDoKKwogMjAxNy0wOC0yMSAg
RXJpYyBDYXJsc29uICA8ZXJpYy5jYXJsc29uQGFwcGxlLmNvbT4KIAogICAgICAgICBBZGQgV1RG
TG9nQ2hhbm5lbCBsZXZlbCB0byBhbGxvdyBydW50aW1lIGxvZyBmaWx0ZXJpbmcKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi90ZXh0L1dURlN0cmluZy5jcHAJKHJldmlzaW9uIDIyMDk2NCkKKysrIFNvdXJjZS9XVEYv
d3RmL3RleHQvV1RGU3RyaW5nLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDY1LDIzICs0NjUsMjEg
QEAgVmVjdG9yPFVDaGFyPiBTdHJpbmc6OmNoYXJhY3RlcnNXaXRoTnVsbAogICAgIHJldHVybiBy
ZXN1bHQ7CiB9CiAKLVN0cmluZyBTdHJpbmc6OmZvcm1hdChjb25zdCBjaGFyICpmb3JtYXQsIC4u
LikKK3N0YXRpYyBTdHJpbmcgY3JlYXRlV2l0aEZvcm1hdEFuZEFyZ3VtZW50cyhjb25zdCBjaGFy
ICpmb3JtYXQsIHZhX2xpc3QgYXJncykKIHsKLSAgICB2YV9saXN0IGFyZ3M7Ci0gICAgdmFfc3Rh
cnQoYXJncywgZm9ybWF0KTsKLQotI2lmIFVTRShDRikgJiYgIU9TKFdJTkRPV1MpCi0gICAgaWYg
KHN0cnN0cihmb3JtYXQsICIlQCIpKSB7Ci0gICAgICAgIFJldGFpblB0cjxDRlN0cmluZ1JlZj4g
Y2ZGb3JtYXQgPSBhZG9wdENGKENGU3RyaW5nQ3JlYXRlV2l0aENTdHJpbmcoa0NGQWxsb2NhdG9y
RGVmYXVsdCwgZm9ybWF0LCBrQ0ZTdHJpbmdFbmNvZGluZ1VURjgpKTsKKyAgICB2YV9saXN0IGFy
Z3NDb3B5OworICAgIHZhX2NvcHkoYXJnc0NvcHksIGFyZ3MpOwogCiAjaWYgQ09NUElMRVIoQ0xB
TkcpCiAjcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcHVzaAogI3ByYWdtYSBjbGFuZyBkaWFnbm9z
dGljIGlnbm9yZWQgIi1XZm9ybWF0LW5vbmxpdGVyYWwiCiAjZW5kaWYKKworI2lmIFVTRShDRikg
JiYgIU9TKFdJTkRPV1MpCisgICAgaWYgKHN0cnN0cihmb3JtYXQsICIlQCIpKSB7CisgICAgICAg
IFJldGFpblB0cjxDRlN0cmluZ1JlZj4gY2ZGb3JtYXQgPSBhZG9wdENGKENGU3RyaW5nQ3JlYXRl
V2l0aENTdHJpbmcoa0NGQWxsb2NhdG9yRGVmYXVsdCwgZm9ybWF0LCBrQ0ZTdHJpbmdFbmNvZGlu
Z1VURjgpKTsKKwogICAgICAgICBSZXRhaW5QdHI8Q0ZTdHJpbmdSZWY+IHJlc3VsdCA9IGFkb3B0
Q0YoQ0ZTdHJpbmdDcmVhdGVXaXRoRm9ybWF0QW5kQXJndW1lbnRzKGtDRkFsbG9jYXRvckRlZmF1
bHQsIG51bGxwdHIsIGNmRm9ybWF0LmdldCgpLCBhcmdzKSk7Ci0jaWYgQ09NUElMRVIoQ0xBTkcp
Ci0jcHJhZ21hIGNsYW5nIGRpYWdub3N0aWMgcG9wCi0jZW5kaWYKIAogICAgICAgICB2YV9lbmQo
YXJncyk7CiAgICAgICAgIHJldHVybiByZXN1bHQuZ2V0KCk7CkBAIC01MDUsMTQgKzUwMywzMSBA
QCBTdHJpbmcgU3RyaW5nOjpmb3JtYXQoY29uc3QgY2hhciAqZm9ybWF0CiAgICAgVmVjdG9yPGNo
YXIsIDI1Nj4gYnVmZmVyOwogICAgIHVuc2lnbmVkIGxlbiA9IHJlc3VsdDsKICAgICBidWZmZXIu
Z3JvdyhsZW4gKyAxKTsKLSAgICAKLSAgICB2YV9zdGFydChhcmdzLCBmb3JtYXQpOworCiAgICAg
Ly8gTm93IGRvIHRoZSBmb3JtYXR0aW5nIGFnYWluLCBndWFyYW50ZWVkIHRvIGZpdC4KLSAgICB2
c25wcmludGYoYnVmZmVyLmRhdGEoKSwgYnVmZmVyLnNpemUoKSwgZm9ybWF0LCBhcmdzKTsKKyAg
ICB2c25wcmludGYoYnVmZmVyLmRhdGEoKSwgYnVmZmVyLnNpemUoKSwgZm9ybWF0LCBhcmdzQ29w
eSk7CisgICAgdmFfZW5kKGFyZ3NDb3B5KTsKKworI2lmIENPTVBJTEVSKENMQU5HKQorI3ByYWdt
YSBjbGFuZyBkaWFnbm9zdGljIHBvcAorI2VuZGlmCiAKKyAgICByZXR1cm4gU3RyaW5nSW1wbDo6
Y3JlYXRlKHJlaW50ZXJwcmV0X2Nhc3Q8Y29uc3QgTENoYXIqPihidWZmZXIuZGF0YSgpKSwgbGVu
KTsKK30KKworU3RyaW5nIFN0cmluZzo6Zm9ybWF0V2l0aEFyZ3VtZW50cyhjb25zdCBjaGFyICpm
b3JtYXQsIHZhX2xpc3QgYXJncykKK3sKKyAgICByZXR1cm4gY3JlYXRlV2l0aEZvcm1hdEFuZEFy
Z3VtZW50cyhmb3JtYXQsIGFyZ3MpOworfQorCitTdHJpbmcgU3RyaW5nOjpmb3JtYXQoY29uc3Qg
Y2hhciAqZm9ybWF0LCAuLi4pCit7CisgICAgdmFfbGlzdCBhcmdzOworICAgIHZhX3N0YXJ0KGFy
Z3MsIGZvcm1hdCk7CisgICAgU3RyaW5nIHJlc3VsdCA9IGNyZWF0ZVdpdGhGb3JtYXRBbmRBcmd1
bWVudHMoZm9ybWF0LCBhcmdzKTsKICAgICB2YV9lbmQoYXJncyk7CiAgICAgCi0gICAgcmV0dXJu
IFN0cmluZ0ltcGw6OmNyZWF0ZShyZWludGVycHJldF9jYXN0PGNvbnN0IExDaGFyKj4oYnVmZmVy
LmRhdGEoKSksIGxlbik7CisgICAgcmV0dXJuIHJlc3VsdDsKIH0KIAogU3RyaW5nIFN0cmluZzo6
bnVtYmVyKGludCBudW1iZXIpCkluZGV4OiBTb3VyY2UvV1RGL3d0Zi90ZXh0L1dURlN0cmluZy5o
Cj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgJKHJldmlzaW9u
IDIyMDk2NCkKKysrIFNvdXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmgJKHdvcmtpbmcgY29w
eSkKQEAgLTI1LDYgKzI1LDcgQEAKIC8vIFRoaXMgZmlsZSB3b3VsZCBiZSBjYWxsZWQgU3RyaW5n
LmgsIGJ1dCB0aGF0IGNvbmZsaWN0cyB3aXRoIDxzdHJpbmcuaD4KIC8vIG9uIHN5c3RlbXMgd2l0
aG91dCBjYXNlLXNlbnNpdGl2ZSBmaWxlIHN5c3RlbXMuCiAKKyNpbmNsdWRlIDxzdGRhcmcuaD4K
ICNpbmNsdWRlIDx3dGYvRnVuY3Rpb24uaD4KICNpbmNsdWRlIDx3dGYvdGV4dC9BU0NJSUZhc3RQ
YXRoLmg+CiAjaW5jbHVkZSA8d3RmL3RleHQvSW50ZWdlclRvU3RyaW5nQ29udmVyc2lvbi5oPgpA
QCAtMzUzLDYgKzM1NCw3IEBAIHB1YmxpYzoKICAgICBXVEZfRVhQT1JUX1NUUklOR19BUEkgU3Ry
aW5nIGZvbGRDYXNlKCkgY29uc3Q7CiAKICAgICBXVEZfRVhQT1JUX1NUUklOR19BUEkgc3RhdGlj
IFN0cmluZyBmb3JtYXQoY29uc3QgY2hhciAqLCAuLi4pIFdURl9BVFRSSUJVVEVfUFJJTlRGKDEs
IDIpOworICAgIFdURl9FWFBPUlRfU1RSSU5HX0FQSSBzdGF0aWMgU3RyaW5nIGZvcm1hdFdpdGhB
cmd1bWVudHMoY29uc3QgY2hhciAqLCB2YV9saXN0KSBXVEZfQVRUUklCVVRFX1BSSU5URigxLCAw
KTsKIAogICAgIC8vIFJldHVybnMgYW4gdW5pbml0aWFsaXplZCBzdHJpbmcuIFRoZSBjaGFyYWN0
ZXJzIG5lZWRzIHRvIGJlIHdyaXR0ZW4KICAgICAvLyBpbnRvIHRoZSBidWZmZXIgcmV0dXJuZWQg
aW4gZGF0YSBiZWZvcmUgdGhlIHJldHVybmVkIHN0cmluZyBpcyB1c2VkLgpJbmRleDogVG9vbHMv
Q2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT0KLS0tIFRvb2xzL0NoYW5nZUxvZwkocmV2aXNpb24gMjIxMTk2
KQorKysgVG9vbHMvQ2hhbmdlTG9nCSh3b3JraW5nIGNvcHkpCkBAIC0xLDMgKzEsMTQgQEAKKzIw
MTctMDgtMjUgIEVyaWMgQ2FybHNvbiAgPGVyaWMuY2FybHNvbkBhcHBsZS5jb20+CisKKyAgICAg
ICAgQWRkIFN0cmluZzo6Zm9ybWF0IHZhcmlhbnQgdGhhdCB0YWtlcyB2YV9hcmdzCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNzU5ODgKKworICAgICAg
ICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICAqIFRlc3RXZWJLaXRBUEkv
VGVzdHMvV1RGL1dURlN0cmluZy5jcHA6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjp0ZXN0V2l0
aEZvcm1hdEFuZEFyZ3VtZW50cyk6CisgICAgICAgIChUZXN0V2ViS2l0QVBJOjpURVNUKToKKwog
MjAxNy0wOC0yNSAgRG9uIE9sbXN0ZWFkICA8ZG9uLm9sbXN0ZWFkQHNvbnkuY29tPgogCiAgICAg
ICAgIFtXaW5DYWlyb10gVXNlIEdpdEh1YiByZWxlYXNlcyBmb3IgV2luQ2Fpcm9SZXF1aXJlbWVu
dHMKSW5kZXg6IFRvb2xzL1Rlc3RXZWJLaXRBUEkvVGVzdHMvV1RGL1dURlN0cmluZy5jcHAKPT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PQotLS0gVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvV1RGU3RyaW5nLmNwcAko
cmV2aXNpb24gMjIwOTY0KQorKysgVG9vbHMvVGVzdFdlYktpdEFQSS9UZXN0cy9XVEYvV1RGU3Ry
aW5nLmNwcAkod29ya2luZyBjb3B5KQpAQCAtMzYyLDQgKzM2Miw0MyBAQCBURVNUKFdURiwgU3Ry
aW5nUmV2ZXJzZUZpbmRCYXNpYykKICAgICBFWFBFQ1RfRVEocmVmZXJlbmNlLnJldmVyc2VGaW5k
KCdjJywgNCksIG5vdEZvdW5kKTsKIH0KIAorV1RGX0FUVFJJQlVURV9QUklOVEYoMiwgMykKK3N0
YXRpYyB2b2lkIHRlc3RXaXRoRm9ybWF0QW5kQXJndW1lbnRzKGNvbnN0IGNoYXIqIGV4cGVjdGVk
LCBjb25zdCBjaGFyKiBmb3JtYXQsIC4uLikKK3sKKyAgICB2YV9saXN0IGFyZ3VtZW50czsKKyAg
ICB2YV9zdGFydChhcmd1bWVudHMsIGZvcm1hdCk7CisKKyNpZiBDT01QSUxFUihHQ0NfT1JfQ0xB
TkcpCisjcHJhZ21hIEdDQyBkaWFnbm9zdGljIHB1c2gKKyNwcmFnbWEgR0NDIGRpYWdub3N0aWMg
aWdub3JlZCAiLVdmb3JtYXQtbm9ubGl0ZXJhbCIKKyNlbmRpZgorICAgIFN0cmluZyByZXN1bHQg
PSBTdHJpbmc6OmZvcm1hdFdpdGhBcmd1bWVudHMoZm9ybWF0LCBhcmd1bWVudHMpOworI2lmIENP
TVBJTEVSKEdDQ19PUl9DTEFORykKKyNwcmFnbWEgR0NDIGRpYWdub3N0aWMgcG9wCisjZW5kaWYK
KworICAgIHZhX2VuZChhcmd1bWVudHMpOworCisgICAgRVhQRUNUX1NUUkVRKGV4cGVjdGVkLCBy
ZXN1bHQudXRmOCgpLmRhdGEoKSk7Cit9CisKK1RFU1QoV1RGLCBTdHJpbmdGb3JtYXRXaXRoQXJn
dW1lbnRzKQoreworICAgIHRlc3RXaXRoRm9ybWF0QW5kQXJndW1lbnRzKCJoZWxsbyBjcnVlbCB3
b3JsZCIsICIlcyAlcyAlcyIsICJoZWxsbyIsICJjcnVlbCIgLCAid29ybGQiKTsKKworICAgIHRl
c3RXaXRoRm9ybWF0QW5kQXJndW1lbnRzKCJoZWxsbyAxNzg5MCB3b3JsZCIsICIlcyV1JXMiLCAi
aGVsbG8gIiwgMTc4OTB1LCAiIHdvcmxkIik7CisKKyAgICB0ZXN0V2l0aEZvcm1hdEFuZEFyZ3Vt
ZW50cygiaGVsbG8gMTc4OTAuMDAwIHdvcmxkIiwgIiVzICUuM2YgJXMiLCAiaGVsbG8iLCAxNzg5
MC4wZiwgIndvcmxkIik7CisgICAgdGVzdFdpdGhGb3JtYXRBbmRBcmd1bWVudHMoImhlbGxvIDE3
ODkwLjUwIHdvcmxkIiwgIiVzICUuMmYgJXMiLCAiaGVsbG8iLCAxNzg5MC41ZiwgIndvcmxkIik7
CisKKyAgICB0ZXN0V2l0aEZvcm1hdEFuZEFyZ3VtZW50cygiaGVsbG8gLTE3ODkwIHdvcmxkIiwg
IiVzICUuMGYgJXMiLCAiaGVsbG8iLCAtMTc4OTAuMGYsICJ3b3JsZCIpOworICAgIHRlc3RXaXRo
Rm9ybWF0QW5kQXJndW1lbnRzKCJoZWxsbyAtMTc4OTAuNSB3b3JsZCIsICIlcyAlLjFmICVzIiwg
ImhlbGxvIiwgLTE3ODkwLjVmLCAid29ybGQiKTsKKworICAgIHRlc3RXaXRoRm9ybWF0QW5kQXJn
dW1lbnRzKCJoZWxsbyAxNzg5MCB3b3JsZCIsICIlcyAlLjBmICVzIiwgImhlbGxvIiwgMTc4OTAu
MCwgIndvcmxkIik7CisgICAgdGVzdFdpdGhGb3JtYXRBbmRBcmd1bWVudHMoImhlbGxvIDE3ODkw
LjUgd29ybGQiLCAiJXMgJS4xZiAlcyIsICJoZWxsbyIsIDE3ODkwLjUsICJ3b3JsZCIpOworCisg
ICAgdGVzdFdpdGhGb3JtYXRBbmRBcmd1bWVudHMoImhlbGxvIC0xNzg5MCB3b3JsZCIsICIlcyAl
LjBmICVzIiwgImhlbGxvIiwgLTE3ODkwLjAsICJ3b3JsZCIpOworICAgIHRlc3RXaXRoRm9ybWF0
QW5kQXJndW1lbnRzKCJoZWxsbyAtMTc4OTAuNSB3b3JsZCIsICIlcyAlLjFmICVzIiwgImhlbGxv
IiwgLTE3ODkwLjUsICJ3b3JsZCIpOworfQorCiB9IC8vIG5hbWVzcGFjZSBUZXN0V2ViS2l0QVBJ
Cg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>319179</attachid>
            <date>2017-08-28 08:41:59 -0700</date>
            <delta_ts>2017-08-28 10:12:04 -0700</delta_ts>
            <desc>Address post-review feedback.</desc>
            <filename>print_with_format_fix_patch.txt</filename>
            <type>text/plain</type>
            <size>1398</size>
            <attacher name="Eric Carlson">eric.carlson</attacher>
            
              <data encoding="base64">SW5kZXg6IFNvdXJjZS9XVEYvQ2hhbmdlTG9nCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0KLS0tIFNvdXJjZS9XVEYvQ2hh
bmdlTG9nCShyZXZpc2lvbiAyMjEyNTcpCisrKyBTb3VyY2UvV1RGL0NoYW5nZUxvZwkod29ya2lu
ZyBjb3B5KQpAQCAtMSwzICsxLDE0IEBACisyMDE3LTA4LTI4ICBFcmljIENhcmxzb24gIDxlcmlj
LmNhcmxzb25AYXBwbGUuY29tPgorCisgICAgICAgIEFkZCBTdHJpbmc6OmZvcm1hdCB2YXJpYW50
IHRoYXQgdGFrZXMgdmFfYXJncworICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93
X2J1Zy5jZ2k/aWQ9MTc1OTg4CisgICAgICAgIDxyZGFyOi8vcHJvYmxlbS8zNDA4NTUyMT4KKwor
ICAgICAgICBVbnJldmlld2VkLCBmaXggcG9zdC1jb21taXQgcmV2aWV3IGZlZWRiYWNrLgorCisg
ICAgICAgICogd3RmL3RleHQvV1RGU3RyaW5nLmNwcDoKKyAgICAgICAgKFdURjo6Y3JlYXRlV2l0
aEZvcm1hdEFuZEFyZ3VtZW50cyk6IFJlbW92ZSB1bm5lZWRlZCBjYWxscyB0byB2YV9lbmQuCisK
IDIwMTctMDgtMjYgIFl1c3VrZSBTdXp1a2kgIDx1dGF0YW5lLnRlYUBnbWFpbC5jb20+CiAKICAg
ICAgICAgVW5yZXZpZXdlZCwgc3VwcHJlc3Mgd2FybmluZ3MgaW4gR1RLIHBvcnQKSW5kZXg6IFNv
dXJjZS9XVEYvd3RmL3RleHQvV1RGU3RyaW5nLmNwcAo9PT09PT09PT09PT09PT09PT09PT09PT09
PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09Ci0tLSBTb3VyY2UvV1RG
L3d0Zi90ZXh0L1dURlN0cmluZy5jcHAJKHJldmlzaW9uIDIyMTI1NikKKysrIFNvdXJjZS9XVEYv
d3RmL3RleHQvV1RGU3RyaW5nLmNwcAkod29ya2luZyBjb3B5KQpAQCAtNDgyLDcgKzQ4Miw2IEBA
IHN0YXRpYyBTdHJpbmcgY3JlYXRlV2l0aEZvcm1hdEFuZEFyZ3VtZW4KIAogICAgICAgICBSZXRh
aW5QdHI8Q0ZTdHJpbmdSZWY+IHJlc3VsdCA9IGFkb3B0Q0YoQ0ZTdHJpbmdDcmVhdGVXaXRoRm9y
bWF0QW5kQXJndW1lbnRzKGtDRkFsbG9jYXRvckRlZmF1bHQsIG51bGxwdHIsIGNmRm9ybWF0Lmdl
dCgpLCBhcmdzKSk7CiAKLSAgICAgICAgdmFfZW5kKGFyZ3MpOwogICAgICAgICByZXR1cm4gcmVz
dWx0LmdldCgpOwogICAgIH0KICNlbmRpZiAvLyBVU0UoQ0YpICYmICFPUyhXSU5ET1dTKQpAQCAt
NDk0LDcgKzQ5Myw2IEBAIHN0YXRpYyBTdHJpbmcgY3JlYXRlV2l0aEZvcm1hdEFuZEFyZ3VtZW4K
ICAgICBjaGFyIGNoOwogICAgIGludCByZXN1bHQgPSB2c25wcmludGYoJmNoLCAxLCBmb3JtYXQs
IGFyZ3MpOwogI2VuZGlmCi0gICAgdmFfZW5kKGFyZ3MpOwogCiAgICAgaWYgKHJlc3VsdCA9PSAw
KQogICAgICAgICByZXR1cm4gU3RyaW5nKCIiKTsK
</data>
<flag name="commit-queue"
          id="339499"
          type_id="3"
          status="+"
          setter="eric.carlson"
    />
          </attachment>
      

    </bug>

</bugzilla>