[issue31734] crash or SystemError in sqlite3.Cache in case it is uninitialized or partially initialized

2018-09-08 Thread Berker Peksag
Change by Berker Peksag : -- resolution: -> wont fix stage: patch review -> resolved status: open -> closed ___ Python tracker ___

[issue31734] crash or SystemError in sqlite3.Cache in case it is uninitialized or partially initialized

2018-07-22 Thread Berker Peksag
Berker Peksag added the comment: Thanks for the PR and for the work you've been doing to fix similar bugs in Python! The Cache class is an implementation detail and it has no practical use for third party users. See issue 30262 for a discussion on making it private. If a user somehow finds

[issue31734] crash or SystemError in sqlite3.Cache in case it is uninitialized or partially initialized

2017-10-09 Thread Oren Milman
Change by Oren Milman : -- keywords: +patch pull_requests: +3912 stage: -> patch review ___ Python tracker ___

[issue31734] crash or SystemError in sqlite3.Cache in case it is uninitialized or partially initialized

2017-10-09 Thread Eric N. Vander Weele
Change by Eric N. Vander Weele : -- nosy: +ericvw ___ Python tracker ___ ___

[issue31734] crash or SystemError in sqlite3.Cache in case it is uninitialized or partially initialized

2017-10-09 Thread Serhiy Storchaka
Change by Serhiy Storchaka : -- nosy: +ghaering, serhiy.storchaka versions: +Python 2.7, Python 3.6 ___ Python tracker ___

[issue31734] crash or SystemError in sqlite3.Cache in case it is uninitialized or partially initialized

2017-10-09 Thread Oren Milman
Oren Milman added the comment: Also, the following code results in a memory leak: import sqlite3 cache = sqlite3.Cache.__new__(sqlite3.Cache) This is because pysqlite_cache_dealloc() just returns in case of an uninitialized Cache object. --

[issue31734] crash or SystemError in sqlite3.Cache in case it is uninitialized or partially initialized

2017-10-09 Thread Oren Milman
New submission from Oren Milman : The following code causes a crash: import sqlite3 cache = sqlite3.Cache.__new__(sqlite3.Cache) cache.get(None) This is because pysqlite_cache_get() (in Modules/_sqlite/cache.c) assumes that the Cache object is initialized, and so it passes