diff options
author | Test_User <hax@andrewyu.org> | 2024-06-20 08:01:44 -0400 |
---|---|---|
committer | Test_User <hax@andrewyu.org> | 2024-06-20 08:01:44 -0400 |
commit | b3c973703505c3603c530fb7b50c9de204b23c77 (patch) | |
tree | 5229275f9b1cf6b53004ef1f3c74985138b40812 /networks/plaintext_buffered.c | |
parent | 824673da2d23859f6900d91b97cca1d16a4a1e3e (diff) | |
download | haxircd-b3c973703505c3603c530fb7b50c9de204b23c77.tar.gz haxircd-b3c973703505c3603c530fb7b50c9de204b23c77.zip |
Reduced locking buffered openssl writing now ready
Diffstat (limited to 'networks/plaintext_buffered.c')
-rw-r--r-- | networks/plaintext_buffered.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/networks/plaintext_buffered.c b/networks/plaintext_buffered.c index 437c8fa..6ff5718 100644 --- a/networks/plaintext_buffered.c +++ b/networks/plaintext_buffered.c @@ -82,7 +82,7 @@ void * plaintext_buffered_send_thread(void *handle) { size_t len; #ifdef USE_FUTEX - len = __sync_sub_and_fetch(&(info->buffer_len), res); + len = __sync_sub_and_fetch(&(info->buffer_len), (size_t)res); #else info->buffer_len -= (size_t)res; len = info->buffer_len; @@ -103,10 +103,7 @@ void * plaintext_buffered_send_thread(void *handle) { #else if (!info->valid) goto plaintext_buffered_send_thread_error_unlock; -#endif -#ifdef USE_FUTEX -#else mutex_unlock(&(info->mutex)); #endif @@ -204,9 +201,8 @@ int plaintext_buffered_send(void *handle, struct string msg) { len = PLAINTEXT_BUFFERED_LEN - plaintext_handle->write_buffer_index; #ifdef USE_FUTEX - if (!__sync_fetch_and_or(&(plaintext_handle->valid), 0)) { + if (!__sync_fetch_and_or(&(plaintext_handle->valid), 0)) return 1; - } #else if (!plaintext_handle->valid) { mutex_unlock(&(plaintext_handle->mutex)); |