All pastes #1968920 Raw Edit

Changed behaviour of sqlite3_col

public text v1 · immutable
#1968920 ·published 2010-10-21 12:22 UTC
rendered paste body
Subject: Changed behaviour of sqlite3_column_blob() between 3.7.2 and 3.7.3

Sorry that I post this again, I am now subscribed to the list. The same
message was apparently denied from being posted when I sent it for the
first time (2010-10-18).

------

Hi all!

Apparently sqlite 3.7.3 changed the behaviour for sqlite3_column_blob()
in 3.7.3. Where empty columns returned an empty string before, they now
return a NULL pointer. And while this is documented now

  "The return value from sqlite3_column_blob() for a zero-length BLOB
  is a NULL pointer."

(http://www.sqlite.org/c3ref/column_blob.html)

I wonder if the behaviour in 3.7.2 and earlier was "just" wrong up until
then and if there are other use cases (errors mainly) under which the
aforementioned function can return a null pointer instead of a string.

This change / bugfix unfortunately currently breaks monotone [0] very badly.

Thanks in advance,
Thomas.

[0] http://code.monotone.ca/p/monotone/issues/96/