# By Bernhard Miklautz
# Via Marc-André Moreau (2) and Bernhard Miklautz (1)
* 'master' of git://github.com/awakecoding/FreeRDP:
ListDictionary: added Remove_Head function
ListDictionary: support for wObject added
ListDictionary_Remove: return value if removed
winpr-file: fixed memory leak in error case
winpr-handle: fixed compiler warning
winpr-pipe: fixed memory leak in WaitNamedPipeA
winpr-handle: fixed mem leak when closing named pipes
# By Marc-André Moreau (13) and others
# Via Marc-André Moreau
* 'master' of git://github.com/awakecoding/FreeRDP:
libfreerdp-rail: cleanup RAIL code
libwinpr-utils: fix IPv4 checksum and TCP sequence numbers with wlog packet messages
libwinpr-utils: improve quality of data for reconstructed IP headers
libwinpr-utils: initial wlog packet header reconstruction
libwinpr-utils: start reconstructing IP headers for wlog packet message
libfreerdp-core: started logging packets to pcap file
libwinpr-utils: start implement wlog packet appender
libwinpr-utils: add some configurability to wlog with environment variables
libfreerdp-core: added debug output for surface commands
libfreerdp-codec: start making use of WLog for RemoteFX
libwinpr-utils: fix wlog build warnings
mfreerdp: fix keyboard mapping for toggle keys
fixed warining fo not constant log format string
Fix function prototype
libwinpr-utils: improved binary appender
fixed memory leak in wlog
loglevel filtering fix
Conflicts:
client/Mac/MRDPView.m
Use pthread_setspecific/pthread_getspecific to store/retrieve the thread
environment block (TEB). Use pthread_once to trigger the creation of that
data from within NtCurrentTeb.
This allows us to get rid of the process environment block stuff which
was only used to provide serialized access to a thread table in order to
retrieve the TEB.
NtCurrentTeb is currently only as a per-thread storage location for the
last error value used by SetLastError and GetLastError.
Also made the TestErrorSetLastError CTest a bit more demanding.
It makes sure the 4 threads run for at least 2 seconds.
Each thread constantly calls SetLastError with a random value and checks
if GetLastError returns the same value again. The total amount of
these iterations is calculated in order to measure the performance.
This change increases the NtCurrentTeb performance by roughly 50% on
linux and by several thousand percent (yes) on Mac OS X.
Thanks for watching.