[GTK][WPE] ASSERTION FAILED: blob in SQLiteStatement.cpp(163) : int WebCore::SQLiteSt...
authorcarlosgc@webkit.org <carlosgc@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 16 Oct 2019 10:57:25 +0000 (10:57 +0000)
committercarlosgc@webkit.org <carlosgc@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 16 Oct 2019 10:57:25 +0000 (10:57 +0000)
https://bugs.webkit.org/show_bug.cgi?id=202976

Reviewed by Adrian Perez de Castro.

This is because IconDatabases passes a nullptr blob to store emtpty icons. sqlite3_bind_blob() allows nullptr as
blob, so we shouldn't assert.

* platform/sql/SQLiteStatement.cpp:
(WebCore::SQLiteStatement::bindBlob): Update the assert to only fail when blob is nullptr and size > 0.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@251185 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Source/WebCore/ChangeLog
Source/WebCore/platform/sql/SQLiteStatement.cpp

index 2530563..1566464 100644 (file)
@@ -1,3 +1,16 @@
+2019-10-16  Carlos Garcia Campos  <cgarcia@igalia.com>
+
+        [GTK][WPE] ASSERTION FAILED: blob in SQLiteStatement.cpp(163) : int WebCore::SQLiteStatement::bindBlob()
+        https://bugs.webkit.org/show_bug.cgi?id=202976
+
+        Reviewed by Adrian Perez de Castro.
+
+        This is because IconDatabases passes a nullptr blob to store emtpty icons. sqlite3_bind_blob() allows nullptr as
+        blob, so we shouldn't assert.
+
+        * platform/sql/SQLiteStatement.cpp:
+        (WebCore::SQLiteStatement::bindBlob): Update the assert to only fail when blob is nullptr and size > 0.
+
 2019-10-16  Fujii Hironori  <Hironori.Fujii@sony.com>
 
         Unreviewed build fix for Windows ports
index d9b210b..482ef4e 100644 (file)
@@ -160,7 +160,7 @@ int SQLiteStatement::bindBlob(int index, const void* blob, int size)
     ASSERT(m_isPrepared);
     ASSERT(index > 0);
     ASSERT(static_cast<unsigned>(index) <= bindParameterCount());
-    ASSERT(blob);
+    ASSERT(blob || !size);
     ASSERT(size >= 0);
 
     if (!m_statement)