diff --git a/libs/libks/libks.vcxproj b/libs/libks/libks.vcxproj index 759e8c5167..b84b387dac 100644 --- a/libs/libks/libks.vcxproj +++ b/libs/libks/libks.vcxproj @@ -82,11 +82,17 @@ $(Platform)\$(Configuration)\ $(SolutionDir)$(Platform)\$(Configuration)\ + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath) + $(SolutionDir)\openssl\lib;$(LibraryPath) $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath) $(SolutionDir)\openssl\lib64;$(LibraryPath) + + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath) + $(SolutionDir)\openssl\lib64;$(LibraryPath) + WIN32;_DEBUG;_WINDOWS;_USRDLL;LIBKS_EXPORTS;CJSON_EXPORT_SYMBOLS;%(PreprocessorDefinitions) @@ -96,7 +102,7 @@ Disabled %(AdditionalIncludeDirectories) true - false + true 4711;4574;4100;4127;4668;4255;4706;4710;4820;4090;4702 @@ -108,13 +114,14 @@ - WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBKS_EXPORTS;%(PreprocessorDefinitions) + WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBKS_EXPORTS;CJSON_EXPORT_SYMBOLS;%(PreprocessorDefinitions) MultiThreadedDLL EnableAllWarnings ProgramDatabase %(AdditionalIncludeDirectories) true true + 4711;4574;4100;4127;4668;4255;4706;4710;4820;4090;4702 MachineX86 @@ -122,6 +129,7 @@ Windows true true + Rpcrt4.lib;Crypt32.lib;libsslMT.lib;libcryptoMT.lib;%(AdditionalDependencies) @@ -131,7 +139,7 @@ EditAndContinue EnableAllWarnings true - false + true 4711;4574;4100;4127;4668;4255;4706;4710;4820;4090;4702 @@ -143,13 +151,15 @@ %(AdditionalIncludeDirectories) - WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBKS_EXPORTS;%(PreprocessorDefinitions) + WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBKS_EXPORTS;CJSON_EXPORT_SYMBOLS;%(PreprocessorDefinitions) EnableAllWarnings true true + 4711;4574;4100;4127;4668;4255;4706;4710;4820;4090;4702 Windows + Rpcrt4.lib;Crypt32.lib;libsslMT.lib;libcryptoMT.lib;%(AdditionalDependencies) diff --git a/libs/libks/src/ks_mutex.c b/libs/libks/src/ks_mutex.c index 166c742487..55f2751b71 100644 --- a/libs/libks/src/ks_mutex.c +++ b/libs/libks/src/ks_mutex.c @@ -435,7 +435,7 @@ struct ks_rwl { pthread_rwlock_t rwlock; #endif ks_pool_t *pool; - ks_thread_os_handle_t write_locker; + ks_pid_t write_locker; uint32_t wlc; }; @@ -504,10 +504,10 @@ KS_DECLARE(ks_status_t) ks_rwl_read_lock(ks_rwl_t *rwlock) ks_mutex_lock(rwlock->read_lock_mutex); - int count = (int)(intptr_t)ks_hash_remove(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self()); + int count = (int)(intptr_t)ks_hash_remove(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self_id()); if (count) { - ks_hash_insert(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self(), (void *)(intptr_t)++count); + ks_hash_insert(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self_id(), (void *)(intptr_t)++count); ks_mutex_unlock(rwlock->read_lock_mutex); return KS_STATUS_SUCCESS; } @@ -520,7 +520,7 @@ KS_DECLARE(ks_status_t) ks_rwl_read_lock(ks_rwl_t *rwlock) #endif #ifdef WIN32 - ks_hash_insert(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self(), (void *)(intptr_t)(int)1); + ks_hash_insert(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self_id(), (void *)(intptr_t)(int)1); ks_mutex_unlock(rwlock->read_lock_mutex); #endif @@ -530,7 +530,7 @@ KS_DECLARE(ks_status_t) ks_rwl_read_lock(ks_rwl_t *rwlock) KS_DECLARE(ks_status_t) ks_rwl_write_lock(ks_rwl_t *rwlock) { - int me = (rwlock->write_locker == ks_thread_self()); + int me = (rwlock->write_locker == ks_thread_self_id()); if (me) { rwlock->wlc++; @@ -542,7 +542,7 @@ KS_DECLARE(ks_status_t) ks_rwl_write_lock(ks_rwl_t *rwlock) #else pthread_rwlock_wrlock(&rwlock->rwlock); #endif - rwlock->write_locker = ks_thread_self(); + rwlock->write_locker = ks_thread_self_id(); return KS_STATUS_SUCCESS; } @@ -552,10 +552,10 @@ KS_DECLARE(ks_status_t) ks_rwl_try_read_lock(ks_rwl_t *rwlock) #ifdef WIN32 ks_mutex_lock(rwlock->read_lock_mutex); - int count = (int)(intptr_t)ks_hash_remove(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self()); + int count = (int)(intptr_t)ks_hash_remove(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self_id()); if (count) { - ks_hash_insert(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self(), (void *)(intptr_t)++count); + ks_hash_insert(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self_id(), (void *)(intptr_t)++count); ks_mutex_unlock(rwlock->read_lock_mutex); return KS_STATUS_SUCCESS; } @@ -571,7 +571,7 @@ KS_DECLARE(ks_status_t) ks_rwl_try_read_lock(ks_rwl_t *rwlock) #endif #ifdef WIN32 - ks_hash_insert(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self(), (void *)(intptr_t)(int)1); + ks_hash_insert(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self_id(), (void *)(intptr_t)(int)1); ks_mutex_unlock(rwlock->read_lock_mutex); #endif @@ -580,7 +580,7 @@ KS_DECLARE(ks_status_t) ks_rwl_try_read_lock(ks_rwl_t *rwlock) KS_DECLARE(ks_status_t) ks_rwl_try_write_lock(ks_rwl_t *rwlock) { - int me = (rwlock->write_locker == ks_thread_self()); + int me = (rwlock->write_locker == ks_thread_self_id()); if (me) { rwlock->wlc++; @@ -597,7 +597,7 @@ KS_DECLARE(ks_status_t) ks_rwl_try_write_lock(ks_rwl_t *rwlock) } #endif - rwlock->write_locker = ks_thread_self(); + rwlock->write_locker = ks_thread_self_id(); return KS_STATUS_SUCCESS; } @@ -607,10 +607,10 @@ KS_DECLARE(ks_status_t) ks_rwl_read_unlock(ks_rwl_t *rwlock) #ifdef WIN32 ks_mutex_lock(rwlock->read_lock_mutex); - int count = (int)(intptr_t)ks_hash_remove(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self()); + int count = (int)(intptr_t)ks_hash_remove(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self_id()); if (count > 1) { - ks_hash_insert(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self(), (void *)(intptr_t)--count); + ks_hash_insert(rwlock->read_lock_list, (void *)(intptr_t)ks_thread_self_id(), (void *)(intptr_t)--count); ks_mutex_unlock(rwlock->read_lock_mutex); return KS_STATUS_SUCCESS; } @@ -626,7 +626,7 @@ KS_DECLARE(ks_status_t) ks_rwl_read_unlock(ks_rwl_t *rwlock) KS_DECLARE(ks_status_t) ks_rwl_write_unlock(ks_rwl_t *rwlock) { - int me = (rwlock->write_locker == ks_thread_self()); + int me = (rwlock->write_locker == ks_thread_self_id()); if (me && rwlock->wlc > 0) { rwlock->wlc--; diff --git a/libs/libks/test/testhash.c b/libs/libks/test/testhash.c index fed4c7f801..51526fc7eb 100644 --- a/libs/libks/test/testhash.c +++ b/libs/libks/test/testhash.c @@ -56,7 +56,7 @@ static void *test2_thread(ks_thread_t *thread, void *data) ks_hash_this(itt, &key, NULL, &val); - printf("%p ITT %s=%s\n", (void *)(intptr_t)ks_thread_self(), (char *)key, (char *)val); + printf("%d ITT %s=%s\n", (int)ks_thread_self_id(), (char *)key, (char *)val); } ks_sleep(100000); } @@ -165,7 +165,6 @@ int main(int argc, char **argv) { ks_init(); - srand((unsigned)(time(NULL) - (unsigned)(intptr_t)ks_thread_self())); plan(3); diff --git a/libs/libks/test/testhash.vcxproj b/libs/libks/test/testhash.vcxproj index fea6c4ba35..433d2865ee 100644 --- a/libs/libks/test/testhash.vcxproj +++ b/libs/libks/test/testhash.vcxproj @@ -86,10 +86,14 @@ false $(Platform)\$(Configuration)\$(ProjectName)\ $(SolutionDir)$(Platform)\$(Configuration)\ + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath) + $(SolutionDir)\openssl\lib;$(LibraryPath) false $(Platform)\$(Configuration)\$(ProjectName)\ + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath) + $(SolutionDir)\openssl\lib64;$(LibraryPath) @@ -134,6 +138,7 @@ _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -153,6 +158,7 @@ _CRT_SECURE_NO_WARNINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console diff --git a/libs/libks/test/testpools.vcxproj b/libs/libks/test/testpools.vcxproj index 43217d2f1a..e701b27e6a 100644 --- a/libs/libks/test/testpools.vcxproj +++ b/libs/libks/test/testpools.vcxproj @@ -86,10 +86,14 @@ false $(Platform)\$(Configuration)\$(ProjectName)\ $(SolutionDir)$(Platform)\$(Configuration)\ + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath) + $(SolutionDir)\openssl\lib;$(LibraryPath) false $(Platform)\$(Configuration)\$(ProjectName)\ + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath) + $(SolutionDir)\openssl\lib64;$(LibraryPath) @@ -100,6 +104,7 @@ _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -115,6 +120,7 @@ _CRT_SECURE_NO_WARNINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -132,6 +138,7 @@ _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -151,6 +158,7 @@ _CRT_SECURE_NO_WARNINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console diff --git a/libs/libks/test/testq.c b/libs/libks/test/testq.c index 8519e1e957..f304f74df4 100644 --- a/libs/libks/test/testq.c +++ b/libs/libks/test/testq.c @@ -204,8 +204,6 @@ int main(int argc, char **argv) ks_init(); - srand((unsigned)(time(NULL) - (unsigned)(intptr_t)ks_thread_self())); - plan(4 * runs); ttl = ks_cpu_count() * 5; diff --git a/libs/libks/test/testq.vcxproj b/libs/libks/test/testq.vcxproj index 6a52508ef2..8b57999219 100644 --- a/libs/libks/test/testq.vcxproj +++ b/libs/libks/test/testq.vcxproj @@ -86,10 +86,14 @@ false $(Platform)\$(Configuration)\$(ProjectName)\ $(SolutionDir)$(Platform)\$(Configuration)\ + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath) + $(SolutionDir)\openssl\lib;$(LibraryPath) false $(Platform)\$(Configuration)\$(ProjectName)\ + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath) + $(SolutionDir)\openssl\lib64;$(LibraryPath) @@ -100,6 +104,7 @@ _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -115,6 +120,7 @@ _CRT_SECURE_NO_WARNINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -132,6 +138,7 @@ _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -151,6 +158,7 @@ _CRT_SECURE_NO_WARNINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console diff --git a/libs/libks/test/testsock.vcxproj b/libs/libks/test/testsock.vcxproj index 0aeb971961..caf2ba9ae4 100644 --- a/libs/libks/test/testsock.vcxproj +++ b/libs/libks/test/testsock.vcxproj @@ -86,10 +86,14 @@ false $(Platform)\$(Configuration)\$(ProjectName)\ $(SolutionDir)$(Platform)\$(Configuration)\ + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath) + $(SolutionDir)\openssl\lib;$(LibraryPath) false $(Platform)\$(Configuration)\$(ProjectName)\ + $(SolutionDir)\openssl\lib64;$(LibraryPath) + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath) @@ -100,6 +104,7 @@ _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -115,6 +120,7 @@ _CRT_SECURE_NO_WARNINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -132,6 +138,7 @@ _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -151,6 +158,7 @@ _CRT_SECURE_NO_WARNINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console diff --git a/libs/libks/test/testthreadmutex.vcxproj b/libs/libks/test/testthreadmutex.vcxproj index 5196a3c525..3594beb0fc 100644 --- a/libs/libks/test/testthreadmutex.vcxproj +++ b/libs/libks/test/testthreadmutex.vcxproj @@ -86,10 +86,14 @@ false $(Platform)\$(Configuration)\$(ProjectName)\ $(SolutionDir)$(Platform)\$(Configuration)\ + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath) + $(SolutionDir)\openssl\lib;$(LibraryPath) false $(Platform)\$(Configuration)\$(ProjectName)\ + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath) + $(SolutionDir)\openssl\lib64;$(LibraryPath) @@ -100,6 +104,7 @@ _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -115,6 +120,7 @@ _CRT_SECURE_NO_WARNINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -132,6 +138,7 @@ _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -151,6 +158,7 @@ _CRT_SECURE_NO_WARNINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console diff --git a/libs/libks/test/testtime.vcxproj b/libs/libks/test/testtime.vcxproj index da3828c007..babc490498 100644 --- a/libs/libks/test/testtime.vcxproj +++ b/libs/libks/test/testtime.vcxproj @@ -86,10 +86,14 @@ false $(Platform)\$(Configuration)\$(ProjectName)\ $(SolutionDir)$(Platform)\$(Configuration)\ + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include;$(IncludePath) + $(SolutionDir)\openssl\lib;$(LibraryPath) false $(Platform)\$(Configuration)\$(ProjectName)\ + $(SolutionDir);$(SolutionDir)\crypt;$(SolutionDir)\openssl\include64;$(IncludePath) + $(SolutionDir)\openssl\lib64;$(LibraryPath) @@ -100,6 +104,7 @@ _CRT_SECURE_NO_WARNINGS;WIN32;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -115,6 +120,7 @@ _CRT_SECURE_NO_WARNINGS;_DEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -132,6 +138,7 @@ _CRT_SECURE_NO_WARNINGS;WIN32;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console @@ -151,6 +158,7 @@ _CRT_SECURE_NO_WARNINGS;NDEBUG;_CONSOLE;%(PreprocessorDefinitions) true ../src/include;. + 4090 Console