Bitmessage / PyBitmessage

Reference client for Bitmessage: a P2P encrypted decentralised communication protocol:
https://bitmessage.org/wiki/Main_Page
Other
2.81k stars 578 forks source link

Quick workaround for BLOB as TEXT problem (#2247) #2248

Open kashikoibumi opened 1 month ago

kashikoibumi commented 1 month ago

Quick workaround for BLOB as TEXT problem (#2247).

This patch fixes each SQL query to be both workable with BLOB-keys and TEXT-keys. In each query, it tries first BLOB-key by using sqlite3.Binary() function. When it failed, then it tries next TEXT-key by using CAST(? AS TEXT) syntax.

The modifications are all around the code base where SQL queries exist, but the logic is simple.

kashikoibumi commented 1 month ago

I have added a script to revert the BLOB-keys into TEXT-keys.

By applying this script, old version of PyBitmessage before this patch can be run again.