Possible crash if SQLiteConnection.dispose() is called from a different thread

Issue #18 closed
Igor Sereda created an issue

Originally reported on Google Code with ID 18

Access violation/segmentation fault is possible in the following scenario:

1. T1: open connection
2. T1: start any method that use sqlite3* handle
3. T1: method checks handle/state for validity, releases lock
4. T2: dispose is called, handle is now invalid
5. T1: method uses now-invalid handle - crash

Reported by sereda on 2010-08-21 10:41:07

Comments (5)

  1. Dongsheng Song
    what happen to the connection when this happens? Will the connection to linger around
    

    Reported by dongsheng on 2014-02-12 20:53:20

  2. Igor Sereda reporter
    The behavior is not specified. It could linger. The library may take best effort to
    shut it down.
    

    Reported by sereda on 2014-02-13 09:21:47

  3. Log in to comment