Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Add interop test SQL function to sleep for X milliseconds. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
da3460c70f4a02f12a6960d90c59db0f |
User & Date: | mistachkin 2013-01-16 23:49:32.893 |
Context
2013-01-17
| ||
01:07 | Fix minor whitespace issue in stress test file. check-in: d76a622544 user: mistachkin tags: trunk | |
2013-01-16
| ||
23:49 | Add interop test SQL function to sleep for X milliseconds. check-in: da3460c70f user: mistachkin tags: trunk | |
2013-01-10
| ||
16:04 | Fix compilation issue for the .NET Compact Framework version included with Visual Studio 2005. check-in: 03add76ac4 user: mistachkin tags: trunk | |
Changes
Changes to SQLite.Interop/src/win/interop.c.
︙ | ︙ | |||
773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 | z = sqlite3_value_text(argv[0]); if( z ){ sqlite3_result_text(context, (char*)z, -1, SQLITE_STATIC); }else{ sqlite3_result_null(context); } } /* SQLite invokes this routine once when it loads the extension. ** Create new functions, collating sequences, and virtual table ** modules here. This is usually the only exported symbol in ** the shared library. */ SQLITE_API int interop_test_extension_init( sqlite3 *db, char **pzErrMsg, const sqlite3_api_routines *pApi ){ SQLITE_EXTENSION_INIT2(pApi) | > > > > > > > > > > > > > > > > > > > | > > > > > | 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 | z = sqlite3_value_text(argv[0]); if( z ){ sqlite3_result_text(context, (char*)z, -1, SQLITE_STATIC); }else{ sqlite3_result_null(context); } } /* ** The interopSleep() SQL function waits the specified number of milliseconds ** or raises an error if there are not enough arguments. */ SQLITE_PRIVATE void interopSleepFunc( sqlite3_context *context, int argc, sqlite3_value **argv ){ int m; if( argc!=1 ){ sqlite3_result_error(context, "need exactly one argument", -1); return; } m = sqlite3_value_int(argv[0]); sqlite3_result_int(context, SleepEx(m, TRUE)); } /* SQLite invokes this routine once when it loads the extension. ** Create new functions, collating sequences, and virtual table ** modules here. This is usually the only exported symbol in ** the shared library. */ SQLITE_API int interop_test_extension_init( sqlite3 *db, char **pzErrMsg, const sqlite3_api_routines *pApi ){ int rc; SQLITE_EXTENSION_INIT2(pApi) rc = sqlite3_create_function(db, "interopTest", -1, SQLITE_ANY, 0, interopTestFunc, 0, 0); if( rc==SQLITE_OK ){ rc = sqlite3_create_function(db, "interopSleep", 1, SQLITE_ANY, 0, interopSleepFunc, 0, 0); } return rc; } #endif |