<?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>189585</bug_id>
          
          <creation_ts>2018-09-13 07:25:44 -0700</creation_ts>
          <short_desc>[GLib] Fix format string in KeyedEncoderGlib::beginObject().</short_desc>
          <delta_ts>2018-09-13 12:08:56 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Ms2ger (he/him; ⌚ UTC+1/+2)">Ms2ger</reporter>
          <assigned_to name="Ms2ger (he/him; ⌚ UTC+1/+2)">Ms2ger</assigned_to>
          <cc>bugs-noreply</cc>
    
    <cc>commit-queue</cc>
    
    <cc>mcatanzaro</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1459347</commentid>
    <comment_count>0</comment_count>
    <who name="Ms2ger (he/him; ⌚ UTC+1/+2)">Ms2ger</who>
    <bug_when>2018-09-13 07:25:44 -0700</bug_when>
    <thetext>We are hitting the following assertion during layout tests:

GLib-CRITICAL **: g_variant_builder_add_value: assertion &apos;!GVSB(builder)-&gt;expected_type || g_variant_is_of_type (value, GVSB(builder)-&gt;expected_type)&apos; failed

with the stack

g_variant_builder_add () at /home/slave/webkitgtk/gtk-linux-64-debug-tests/build/WebKitBuild/DependenciesGTK/Source/glib-2.54.2/glib/gvariant.c:5531
(anonymous namespace)::KeyedEncoderGlib::encodeBool (this=0x7fdcd4001aa0, key=&quot;wasDataRead&quot;, value=false) at ../../Source/WebCore/platform/glib/KeyedEncoderGlib.cpp:61
(anonymous namespace)::&lt;lambda(WebCore::KeyedEncoder&amp;, const WebCore::CanvasActivityRecord&amp;)&gt;::operator()((anonymous namespace)::KeyedEncoder &amp;, const (anonymous namespace)::CanvasActivityRecord &amp;) const (__closure=0x7fdcf7ffe10f, encoderInner=..., canvasActivityRecord=...) at ../../Source/WebCore/loader/ResourceLoadStatistics.cpp:86
(anonymous namespace)::KeyedEncoder::encodeObject&lt;WebCore::CanvasActivityRecord, WebCore::encodeCanvasActivityRecord(WebCore::KeyedEncoder&amp;, const WTF::String&amp;, const WebCore::CanvasActivityRecord&amp;)::&lt;lambda(WebCore::KeyedEncoder&amp;, const WebCore::CanvasActivityRecord&amp;)&gt; &gt;(const WTF::String &amp;, const (anonymous namespace)::CanvasActivityRecord &amp;, &lt;unknown type in /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37, CU 0x0, DIE 0x28e67f&gt;) (this=0x7fdcd4001aa0, key=&quot;canvasActivityRecord&quot;, object=..., function=&lt;unknown type in /home/slave/webkitgtk/gtk-linux-64-debug/build/WebKitBuild/Debug/lib/libwebkit2gtk-4.0.so.37, CU 0x0, DIE 0x28e67f&gt;) at ../../Source/WebCore/platform/KeyedCoding.h:175
(anonymous namespace)::encodeCanvasActivityRecord (encoder=..., label=&quot;canvasActivityRecord&quot;, canvasActivityRecord=...) at ../../Source/WebCore/loader/ResourceLoadStatistics.cpp:90</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1459348</commentid>
    <comment_count>1</comment_count>
      <attachid>349664</attachid>
    <who name="Ms2ger (he/him; ⌚ UTC+1/+2)">Ms2ger</who>
    <bug_when>2018-09-13 07:27:32 -0700</bug_when>
    <thetext>Created attachment 349664
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1459358</commentid>
    <comment_count>2</comment_count>
      <attachid>349664</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-09-13 08:15:46 -0700</bug_when>
    <thetext>Comment on attachment 349664
Patch

I had to stare at this for a while to convince myself it should be different from KeyedEncoderGlib::beginArray, but I think the change is correct.

But surely this changes the database serialization format. How do we fix existing databases that are already broken? Will the critical continue to occur forever for existing broken databases? That requires further investigation. Hopefully we have some mechanism somewhere to handle incompatible changes like this? I&apos;d like Carlos to review this, please.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1459373</commentid>
    <comment_count>3</comment_count>
    <who name="Ms2ger (he/him; ⌚ UTC+1/+2)">Ms2ger</who>
    <bug_when>2018-09-13 08:56:34 -0700</bug_when>
    <thetext>This method is not used in the IDB case, only for ResourceLoadStatistics, as I understand it. I don&apos;t think that serializes to disk? (This is why it&apos;s only come up since r235897.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1459435</commentid>
    <comment_count>4</comment_count>
      <attachid>349664</attachid>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-09-13 11:03:54 -0700</bug_when>
    <thetext>Comment on attachment 349664
Patch

OK then

It *does* serialize to disk, but we have not yet enabled resource load statistics for GTK or WPE (we need to) so doesn&apos;t matter.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1459437</commentid>
    <comment_count>5</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-09-13 11:05:07 -0700</bug_when>
    <thetext>Of course, there&apos;s another problem here: this code should not be running at all, because resource load statistics should never be enabled.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1459438</commentid>
    <comment_count>6</comment_count>
    <who name="Michael Catanzaro">mcatanzaro</who>
    <bug_when>2018-09-13 11:06:05 -0700</bug_when>
    <thetext>BTW this was added for database process, years before resource load statistics existed, so I&apos;m a bit surprised it&apos;s only used for resource load statistics nowadays.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1459466</commentid>
    <comment_count>7</comment_count>
      <attachid>349664</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-13 12:08:54 -0700</bug_when>
    <thetext>Comment on attachment 349664
Patch

Clearing flags on attachment: 349664

Committed r235982: &lt;https://trac.webkit.org/changeset/235982&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1459467</commentid>
    <comment_count>8</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2018-09-13 12:08:56 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>349664</attachid>
            <date>2018-09-13 07:27:32 -0700</date>
            <delta_ts>2018-09-13 12:08:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-189585-20180913162730.patch</filename>
            <type>text/plain</type>
            <size>1783</size>
            <attacher name="Ms2ger (he/him; ⌚ UTC+1/+2)">Ms2ger</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjM1OTcwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggZjAyNGY2YjczZjM3MWFi
MzNkYjc4NmM3MTExMWM2YTQ3YTc3NGY0MC4uMWEyMzhjZTY3NjMyMzEzOTlkZTc5MDhmN2M5MTYz
MmM4OGY3NGE4ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDE5IEBACisyMDE4LTA5LTEzICBNczJn
ZXIgIDxNczJnZXJAaWdhbGlhLmNvbT4KKworICAgICAgICBbR0xpYl0gRml4IGZvcm1hdCBzdHJp
bmcgaW4gS2V5ZWRFbmNvZGVyR2xpYjo6YmVnaW5PYmplY3QoKS4KKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE4OTU4NQorCisgICAgICAgIFJldmlld2Vk
IGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgIFRoaXMgYXBwZWFycyB0byBmaXggdGhlIGZv
bGxvd2luZyBhc3NlcnRpb24gbG9jYWxseToKKworICAgICAgICBHTGliLUNSSVRJQ0FMICoqOiBn
X3ZhcmlhbnRfYnVpbGRlcl9hZGRfdmFsdWU6IGFzc2VydGlvbiAnIUdWU0IoYnVpbGRlciktPmV4
cGVjdGVkX3R5cGUgfHwgZ192YXJpYW50X2lzX29mX3R5cGUgKHZhbHVlLCBHVlNCKGJ1aWxkZXIp
LT5leHBlY3RlZF90eXBlKScgZmFpbGVkCisKKyAgICAgICAgQ292ZXJlZCBieSBleGlzdGluZyB0
ZXN0cy4KKworICAgICAgICAqIHBsYXRmb3JtL2dsaWIvS2V5ZWRFbmNvZGVyR2xpYi5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjpLZXllZEVuY29kZXJHbGliOjpiZWdpbk9iamVjdCk6CisKIDIwMTgt
MDktMTEgIFJ5b3N1a2UgTml3YSAgPHJuaXdhQHdlYmtpdC5vcmc+CiAKICAgICAgICAgaW1wb3J0
ZWQvdzNjL3dlYi1wbGF0Zm9ybS10ZXN0cy9zaGFkb3ctZG9tL2Zvcm0tY29udHJvbC1mb3JtLWF0
dHJpYnV0ZS5odG1sIGhpdHMgYXNzZXJ0aW9uCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9w
bGF0Zm9ybS9nbGliL0tleWVkRW5jb2RlckdsaWIuY3BwIGIvU291cmNlL1dlYkNvcmUvcGxhdGZv
cm0vZ2xpYi9LZXllZEVuY29kZXJHbGliLmNwcAppbmRleCA5ZDE4MmZhZTkxN2RjZjI0N2RkZmQ3
NjRlN2Q2Y2VmZGRkNWUzODVhLi43NDA0YmNiZDQ0OWFhNDkyMWI4Y2UyYjdlMDE4NDQ5NTAxMDZm
NjgwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9wbGF0Zm9ybS9nbGliL0tleWVkRW5jb2Rl
ckdsaWIuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3BsYXRmb3JtL2dsaWIvS2V5ZWRFbmNvZGVy
R2xpYi5jcHAKQEAgLTk4LDcgKzk4LDcgQEAgdm9pZCBLZXllZEVuY29kZXJHbGliOjplbmNvZGVT
dHJpbmcoY29uc3QgU3RyaW5nJiBrZXksIGNvbnN0IFN0cmluZyYgdmFsdWUpCiAKIHZvaWQgS2V5
ZWRFbmNvZGVyR2xpYjo6YmVnaW5PYmplY3QoY29uc3QgU3RyaW5nJiBrZXkpCiB7Ci0gICAgR1Jl
ZlB0cjxHVmFyaWFudEJ1aWxkZXI+IGJ1aWxkZXIgPSBhZG9wdEdSZWYoZ192YXJpYW50X2J1aWxk
ZXJfbmV3KEdfVkFSSUFOVF9UWVBFKCJhYXtzdn0iKSkpOworICAgIEdSZWZQdHI8R1ZhcmlhbnRC
dWlsZGVyPiBidWlsZGVyID0gYWRvcHRHUmVmKGdfdmFyaWFudF9idWlsZGVyX25ldyhHX1ZBUklB
TlRfVFlQRSgiYXtzdn0iKSkpOwogICAgIG1fb2JqZWN0U3RhY2suYXBwZW5kKHN0ZDo6bWFrZV9w
YWlyKGtleSwgYnVpbGRlcikpOwogICAgIG1fdmFyaWFudEJ1aWxkZXJTdGFjay5hcHBlbmQoYnVp
bGRlci5nZXQoKSk7CiB9Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>