akallabeth
d63817640f
Fixed ArrayList_SetItem, return success
2022-04-28 12:37:19 +02:00
akallabeth
667b471686
Fixed cast-quality warnings
2022-04-28 09:17:20 +02:00
Armin Novak
6ed50b4b1d
Refactored WinPR includes
2022-03-03 11:26:48 +01:00
akallabeth
8cc6582044
Unify struct definitions ( #7633 )
...
* Unified enum/struct definitions, fixed include issues
* Fixed mac compilation issues
* Added missing include
* Fixed windows server build warnings
* Fixed VS2010 build issue
* Removed unnecessary library linking
* Fixed ThreadPool WinXP compatibility
* Fixed pr review remarks
2022-02-14 14:59:22 +01:00
David Fort
67986ea298
Fix compilation with mingw
...
This patch addresses some issues when compiling against mingw. With these changes
FreeRDP can be compiled out-of-the box on a Ubuntu 20.04.
2021-11-15 09:23:16 +01:00
akallabeth
f1bde376b1
Raw channel send ( #7255 )
...
* Added raw channel data write function
* Use nego_set_state
* Added ArrayList_ForEachAP
* Provide va_copy for older VS compilers
2021-08-26 16:17:51 +02:00
Armin Novak
610396e197
Fixed compilation warnings
...
Try to get the number of warnings down
2021-08-02 10:28:06 +02:00
akallabeth
6726772d8d
Fixed integer warnings
2021-06-18 09:41:02 +02:00
akallabeth
8d82adb28a
Fixed warnings
2021-06-17 10:35:22 +02:00
Armin Novak
bfcad7d6aa
Added WINPR_ASSERT in ArrayList
2021-06-16 11:46:42 +02:00
Armin Novak
30776358bb
Readded ArrayList_Add and HashTable_Add as deprecated
2021-06-16 11:46:42 +02:00
Armin Novak
d6c84c28fb
Renamed ArrayList_Add to ArrayList_Append
...
* Do not break API silently
2021-06-16 11:46:42 +02:00
Armin Novak
a1c8e4cf85
Refactored ArrayList_Add to conform to other functions
2021-06-16 11:46:42 +02:00
Marc-André Moreau
96f07ea993
Windows ARM64 build fixes
2021-06-01 14:18:01 +02:00
akallabeth
66dc4cc9ee
Fixed compilation warnings.
2020-11-10 08:53:43 +01:00
akallabeth
6e3c00725a
Cleaned up collections:
...
ArrayList, MessageQueue, Queue, PubSub, BipBuffer
ObjectPool and BufferPool
2020-11-06 12:30:13 +01:00
Armin Novak
7c243da6e1
Remove symbols exported by accident.
2019-12-02 10:57:31 +01:00
Armin Novak
72ca88f49c
Reformatted to new style
2019-11-07 10:53:54 +01:00
Armin Novak
554e18780b
USe const compare function pointer arguments
2018-10-18 09:06:55 +02:00
Sébastien Duquette
2497fcf941
Use fnObjectEquals in ArrayList_Remove.
2018-10-04 16:57:29 -04:00
Armin Novak
0490aeb018
Fixed clang malloc integer overflow warnings.
2017-07-20 09:29:48 +02:00
Marc-André Moreau
d0f413db12
winpr: initial port to Universal Windows Platform (UWP)
2016-02-05 16:28:45 -05:00
Martin Haimberger
008d9f3b79
fixed misc *_free functions to accept NULL
...
Following types of collections support now
NULL in the free call:
* ArrayList
* BitStream
* ContdownEvent
* Dictionary
* KeyValuePair
* MessageQueue
2015-07-30 07:02:36 -07:00
Marc-André Moreau
11ae267518
libfreerdp-core: expose new API to allow FreeRDS virtual channel hooking
2014-10-10 16:11:42 -04:00
Armin Novak
93ad5b7335
Implemented default fnObjectEquals function.
...
Implemented ArrayList_Contains.
ArrayList_IndexOf and ArrayList_LastIndexOf now use comparison function.
2014-08-13 14:15:17 +02:00
Armin Novak
309405592e
Fixed broken ArrayList_Remove and ArrayList_RemoveAt functions, freeing element now.
2014-05-23 13:43:14 +02:00
Hardening
31c77baba0
Don't leak memory when realloc fails
2014-04-09 21:53:42 +02:00
Hardening
36b4f20ff8
Fixes in case of OOM
2014-04-09 15:26:43 +02:00
Norbert Federa
3a58934eb2
libwinpr-utils: Use criticalsection with spincount
...
Use InitializeCriticalSectionAndSpinCount instead of IntializeCriticalSection.
Using spin counts for critical sections of short duration enables the calling
thread to avoid the wait operation in most situations which can dramatically
improve the overall performance on multiprocessor systems.
On Linux this change has no effect because the new winpr critical section
implementation does not use the SpinCount field under Linux because the NPTL
synchronization primitives are implemented using the extremely performant
futex system calls which have this magic already built in.
However, on Mac OS X this change improved the overall performance of the
multithreaded RemoteFX decoder by 25 percent.
I've used a SpinCount of 4000 which avoided 99 percent of the wait calls.
This value is also used by Microsoft's heap manager for its per-heap
critical sections.
Note: This change requires pull request #1397 to be merged.
2013-08-07 18:16:01 +02:00
Norbert Federa
81ef251fc8
winpr: improve and fix locking for data structures
...
- Improved/completed(almost) winpr's critical section implementation
- Replaced WaitForSingleObject locking with critical sections
Note:
WaitForSingleObject should _never_ be used for granular low-contention
locks as it _always_ enters the kernel.
Just replacing WaitForSingleObject locking in Bufferpool with
EnterCriticalSection boosts the multithreaded rfx decoder
performance by almost 400% on win32.
2013-08-02 12:07:05 +02:00
Daryl Poe
86156ce61f
fix memory errors due to too-large memcpy in ArrayList
2013-06-03 09:30:14 -06:00
Christian Hofstaedtler
8833c14eac
fix ArrayList_Shift for args (al, 0, -1)
...
As a result, this should fix #1051 .
2013-03-12 23:21:42 +01:00
Marc-André Moreau
7ff2be09b2
libfreerdp-core: more TSG memory cleanup
2012-12-12 22:03:40 -05:00
Marc-André Moreau
d3e0537d0d
libfreerdp-core: more TSG memory cleanup
2012-12-12 00:49:15 -05:00
Marc-André Moreau
3aeb9eb197
libfreerdp-core: TSG partial cleanup
2012-12-11 23:34:51 -05:00
Marc-André Moreau
731e606c15
libfreerdp-core: start handling client call state
2012-12-07 21:09:55 -05:00
Marc-André Moreau
be98cffbd2
libwinpr-utils: fix ArrayList
2012-12-07 19:40:44 -05:00
Marc-André Moreau
5a131688e4
libwinpr-utils: implement ArrayList
2012-12-05 17:24:01 -05:00
Marc-André Moreau
c06c0fe665
libwinpr-utils: stubbed Queue, Stack and ArrayList
2012-11-30 16:13:19 -05:00