Armin Novak [Wed, 14 Aug 2013 13:14:40 +0000 (15:14 +0200)]
Fixed invalid access to tty in thread, which was already removed by
serial_process_irp_close
Retry read now, if non blocking IO returns EAGAIN.
Armin Novak [Wed, 14 Aug 2013 10:13:48 +0000 (12:13 +0200)]
Fixed high CPU usage.
Armin Novak [Tue, 13 Aug 2013 14:29:19 +0000 (16:29 +0200)]
Fixed resource leaks and missing thread sync.
Armin Novak [Tue, 13 Aug 2013 14:04:19 +0000 (16:04 +0200)]
Fixed resource leaks.
Armin Novak [Tue, 13 Aug 2013 12:04:17 +0000 (14:04 +0200)]
Using WaitForMultipleObjects now to reduce CPU load.
Marc-André Moreau [Fri, 9 Aug 2013 22:53:08 +0000 (15:53 -0700)]
Merge pull request #1413 from nfedera/fix-2013-08-10-01
codec/rfx: fix multithreaded encoder
Norbert Federa [Fri, 9 Aug 2013 22:28:35 +0000 (00:28 +0200)]
codec/rfx: fix multithreaded encoder
Some component of the encoder chain (I suspect the rlgr encoder) expects
the output buffer to be zeroed. The multithreaded RemoteFX encoder uses
wStreams from the StreamPool which are reused and not zeroed out of
course. For now, in order to prevent data corruption we clear the stream.
Marc-André Moreau [Thu, 8 Aug 2013 23:53:12 +0000 (16:53 -0700)]
Merge pull request #1409 from alexpilotti/master
Fixes libwinpr build issue on Windows
Alessandro Pilotti [Thu, 8 Aug 2013 23:45:31 +0000 (02:45 +0300)]
Fixes libwinpr build issue on Windows
Adds conditional statements in file.c to solve a Posix portability
issue on Windows introduced with the following commit:
913d532e0d3456945236567af00e8119564307ff
Norbert Federa [Thu, 8 Aug 2013 16:59:12 +0000 (09:59 -0700)]
Merge pull request #1406 from bmiklautz/android_toolchain
android: updated toolchain file
Bernhard Miklautz [Thu, 8 Aug 2013 14:23:11 +0000 (16:23 +0200)]
android: updated toolchain file
* support for ndk version r8d+
* improved x86_64 host machine support
* support non-release NDK layouts
Bernhard Miklautz [Thu, 8 Aug 2013 10:41:04 +0000 (12:41 +0200)]
Fixed typo
Marc-André Moreau [Wed, 7 Aug 2013 20:39:29 +0000 (13:39 -0700)]
Merge pull request #1390 from awakecoding/master
Server-side core fixes, WinPR waitable timers & named pipes, Multitouch fixes
Marc-André Moreau [Wed, 7 Aug 2013 20:00:21 +0000 (16:00 -0400)]
libwinpr-pipe: add missing link dependency
Marc-André Moreau [Wed, 7 Aug 2013 19:56:05 +0000 (15:56 -0400)]
libwinpr-pipe: add missing link dependencies for test code
Marc-André Moreau [Wed, 7 Aug 2013 19:48:57 +0000 (15:48 -0400)]
freerdp: merge with master
Marc-André Moreau [Wed, 7 Aug 2013 19:36:19 +0000 (12:36 -0700)]
Merge pull request #1402 from nfedera/fix-2013-08-07-03
codec/rfx: added multithreaded encoder
Marc-André Moreau [Wed, 7 Aug 2013 19:35:46 +0000 (12:35 -0700)]
Merge pull request #1401 from nfedera/fix-2013-08-07-02
libwinpr-utils: Use criticalsection with spincount
Marc-André Moreau [Wed, 7 Aug 2013 19:35:06 +0000 (12:35 -0700)]
Merge pull request #1397 from nfedera/fix-2013-08-07-01
libwinpr-sync: New complete critical section code
Norbert Federa [Sun, 4 Aug 2013 10:07:53 +0000 (12:07 +0200)]
codec/rfx: added multithreaded encoder
Norbert Federa [Wed, 7 Aug 2013 15:10:43 +0000 (17:10 +0200)]
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.
Norbert Federa [Wed, 7 Aug 2013 08:20:04 +0000 (10:20 +0200)]
libwinpr-sync: New complete critical section code
- Complete implementation including recursion support
- Added an intensive ctest (TestSynchCritical)
- Struct members are used exactly as Windows does it internally:
LockCount starts at -1, RecursionCount at 0
- Same performance optimizations as internally on Windows:
- Fast lock acquisition path using CAS -> SpinCount -> wait
- SpinCount automatically disabled on uniprocessor systems
- On Linux SpinCount is disabled because it provided no advantage over NPTL/futex in all tests
Support for CRITICAL_SECTION's DebugInfo is not yet included (but trivial to add).
Marc-André Moreau [Tue, 6 Aug 2013 00:50:23 +0000 (20:50 -0400)]
cmake: add FindPixman.cmake
Marc-André Moreau [Mon, 5 Aug 2013 21:29:14 +0000 (17:29 -0400)]
libwinpr-utils: implement doubly-linked list
Vic Lee [Sun, 4 Aug 2013 09:23:32 +0000 (17:23 +0800)]
libfreerdp-core/fastpath: fix memory leak when sending large packet.
Marc-André Moreau [Sat, 3 Aug 2013 23:50:17 +0000 (19:50 -0400)]
libwinpr-synch: add detection of timerfd support
Marc-André Moreau [Sat, 3 Aug 2013 20:45:53 +0000 (16:45 -0400)]
channels/rdpei: make use of critical section
Marc-André Moreau [Sat, 3 Aug 2013 20:22:09 +0000 (16:22 -0400)]
Merge branch 'master' of github.com:FreeRDP/FreeRDP into multitouch
Marc-André Moreau [Sat, 3 Aug 2013 20:20:17 +0000 (13:20 -0700)]
Merge pull request #1379 from nfedera/fix-2013-07-30-01
codec/rfx: removed unnecessary WaitForSingleObject
Marc-André Moreau [Sat, 3 Aug 2013 20:18:27 +0000 (13:18 -0700)]
Merge pull request #1386 from akallabeth/master
Added proper find_feature check for JPEG library.
Marc-André Moreau [Sat, 3 Aug 2013 20:18:04 +0000 (13:18 -0700)]
Merge pull request #1389 from akallabeth/urbdrc_cmake_fixes
Urbdrc cmake fixes
Marc-André Moreau [Sat, 3 Aug 2013 20:16:51 +0000 (13:16 -0700)]
Merge pull request #1388 from nfedera/fix-2013-08-02-01
winpr: improve and fix locking for data structures
Marc-André Moreau [Sat, 3 Aug 2013 20:13:39 +0000 (16:13 -0400)]
xfreerdp: fix cursor hidding/showing with multitouch
Armin Novak [Fri, 2 Aug 2013 13:41:49 +0000 (15:41 +0200)]
Added libusb detection CMake script.
Armin Novak [Fri, 2 Aug 2013 13:12:38 +0000 (15:12 +0200)]
Fixed linking with libusb, now linking against correct library.
Armin Novak [Fri, 2 Aug 2013 12:45:06 +0000 (14:45 +0200)]
Now using libraries detected by CMake for linking against libusb.
Armin Novak [Fri, 2 Aug 2013 12:02:21 +0000 (14:02 +0200)]
Added proper CMake checks for libraries linked with urbdrc
Norbert Federa [Fri, 2 Aug 2013 10:07:05 +0000 (12:07 +0200)]
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.
Armin Novak [Fri, 2 Aug 2013 08:04:58 +0000 (10:04 +0200)]
Added proper find_feature check for JPEG library.
Marc-André Moreau [Tue, 30 Jul 2013 14:57:54 +0000 (10:57 -0400)]
winpr: fix build on Linux
Daryl Poe [Mon, 29 Jul 2013 22:50:38 +0000 (16:50 -0600)]
careful with passwd in compatibility.c
(cherry picked from commit
a4a5baf0da7c77c1d29a485f26abae6fac03a4a4)
Norbert Federa [Tue, 30 Jul 2013 11:02:43 +0000 (13:02 +0200)]
codec/rfx: removed unnecessary WaitForSingleObject
The WaitForSingleObject call on TilePool's event is called with a zero time-out
interval and the event is a manual reset event ... thus no locking or waiting
is involved anyways and Queue_Dequeue may very well return NULL independently
of calling WaitForSingleObject which is already correctly handled.
Marc-André Moreau [Mon, 29 Jul 2013 17:07:39 +0000 (13:07 -0400)]
libwinpr-synch: add unit tests, initial waitable timer support
Daryl Poe [Fri, 26 Jul 2013 19:54:20 +0000 (13:54 -0600)]
fix segfault due to pulse input race condition
(cherry picked from commit
be5167654153cad02f821decc39ad35cd239a6ed)
Marc-André Moreau [Mon, 29 Jul 2013 15:57:29 +0000 (11:57 -0400)]
libwinpr-synch: start implementing waitable timers
Marc-André Moreau [Mon, 29 Jul 2013 14:21:32 +0000 (10:21 -0400)]
libfreerdp-core: reduce usage of update_force_flush in server-side update code
Marc-André Moreau [Mon, 29 Jul 2013 01:07:28 +0000 (21:07 -0400)]
libfreerdp-codec: added RDP6 bitmap compression test data
Marc-André Moreau [Mon, 29 Jul 2013 00:21:43 +0000 (20:21 -0400)]
libfreerdp-core: fix server-side secondary drawing orders encoding bugs
Marc-André Moreau [Sun, 28 Jul 2013 23:11:41 +0000 (19:11 -0400)]
libfreerdp-core: improve server-side capabilities parsing
Marc-André Moreau [Sun, 28 Jul 2013 20:31:38 +0000 (16:31 -0400)]
libfreerdp-core: fix server-side update encoding edge case
Marc-André Moreau [Fri, 26 Jul 2013 19:43:55 +0000 (15:43 -0400)]
wfreerdp: fix build warnings
Marc-André Moreau [Fri, 26 Jul 2013 19:21:19 +0000 (15:21 -0400)]
freerdp: fix build warnings with MSVC
Daryl Poe [Thu, 25 Jul 2013 21:01:56 +0000 (15:01 -0600)]
cover the case of servers asking for cached bitmaps they have never defined
(cherry picked from commit
46a691db029912e5814b0c6fb36002a41e597825)
Benoît LeBlanc [Fri, 26 Jul 2013 01:59:21 +0000 (21:59 -0400)]
CMakelists:
disabled installation of headers and libraries for the wayk client.
Benoît LeBlanc [Thu, 25 Jul 2013 19:53:12 +0000 (15:53 -0400)]
Merge branch 'master' of https://github.com/awakecoding/FreeRDP
Benoît LeBlanc [Thu, 25 Jul 2013 14:22:57 +0000 (10:22 -0400)]
FreeRDP: fixed access violation crash that occurred on Windows, because the malloc and the free were performed in different libraries.
Benoît LeBlanc [Wed, 24 Jul 2013 19:36:15 +0000 (15:36 -0400)]
Added PDB debug information for windows builds
Marc-André Moreau [Tue, 23 Jul 2013 23:21:39 +0000 (19:21 -0400)]
Merge branch 'master' of github.com:FreeRDP/FreeRDP
Marc-André Moreau [Tue, 23 Jul 2013 23:21:29 +0000 (16:21 -0700)]
Merge pull request #1356 from nfedera/fix-2013-07-17-01
codec/rfx: removed unused queue TileQueue
Benoît LeBlanc [Tue, 23 Jul 2013 20:27:02 +0000 (16:27 -0400)]
Qt compiling errors on Windows.
Marc-André Moreau [Tue, 23 Jul 2013 19:03:08 +0000 (15:03 -0400)]
libwinpr-pipe: added overlapped io tests for named pipes
Marc-André Moreau [Tue, 23 Jul 2013 18:53:16 +0000 (11:53 -0700)]
Merge pull request #1367 from C-o-r-E/master
xfreerdp: Scaling and Panning support, Touch gestures, navigation keyboard shortcuts
C-o-r-E [Tue, 23 Jul 2013 18:47:40 +0000 (14:47 -0400)]
xfreerdp: comment cleanup
Marc-André Moreau [Tue, 23 Jul 2013 03:17:08 +0000 (23:17 -0400)]
libwinpr-pipe: initial basic named pipe support
Marc-André Moreau [Tue, 23 Jul 2013 02:53:44 +0000 (22:53 -0400)]
libwinpr-pipe: implement of more named pipes
Marc-André Moreau [Mon, 22 Jul 2013 22:20:34 +0000 (18:20 -0400)]
libwinpr-pipe: start implementing named pipes
Marc-André Moreau [Mon, 22 Jul 2013 20:30:25 +0000 (16:30 -0400)]
libwinpr-pipe: added stubs for named pipes
Benoît LeBlanc [Mon, 22 Jul 2013 19:33:30 +0000 (15:33 -0400)]
MacFreeRDP cli fixes:
- added ErrorInfo handling.
- Showing alert message on main thread.
- Autorelease pool for background thread.
Benoît LeBlanc [Mon, 22 Jul 2013 18:58:50 +0000 (14:58 -0400)]
Merge branch 'master' of git://github.com/awakecoding/FreeRDP
# By Marc-André Moreau
# Via Marc-André Moreau
* 'master' of git://github.com/awakecoding/FreeRDP:
libfreerdp-core: export function to retrieve error info from static entry table
Marc-André Moreau [Mon, 22 Jul 2013 17:23:56 +0000 (13:23 -0400)]
libfreerdp-core: export function to retrieve error info from static entry table
Benoît LeBlanc [Mon, 22 Jul 2013 16:38:32 +0000 (12:38 -0400)]
Merge branch 'master' of git://github.com/awakecoding/FreeRDP
# By Marc-André Moreau
# Via Marc-André Moreau
* 'master' of git://github.com/awakecoding/FreeRDP:
libfreerdp-core: add event handle support to listener
libfreerdp-core: properly attach tcp event handle for peers
libfreerdp-core: improvements to the server-side activation/reactivation code
libfreerdp-core: modify server-side confirm active pdu receiving logic
Benoît LeBlanc [Mon, 22 Jul 2013 16:38:15 +0000 (12:38 -0400)]
MacFreeRDP: Fixed deployment paths, deploying missing winpr folder to framework structure.
#####################
IMPORTANT:
To compile an Mac application using the MacFreeRDP framework, the developer MUST specifically add the framework's Headers folder to the Headers Search Path in the application's Build Settings.
e.g. /Users/Username/Documents//FreeRDP/build/client/Mac/Debug/MacFreeRDP.framework/Headers
Marc-André Moreau [Sun, 21 Jul 2013 20:21:46 +0000 (16:21 -0400)]
libfreerdp-core: add event handle support to listener
Marc-André Moreau [Sun, 21 Jul 2013 02:34:05 +0000 (22:34 -0400)]
libfreerdp-core: properly attach tcp event handle for peers
Marc-André Moreau [Sat, 20 Jul 2013 01:52:28 +0000 (21:52 -0400)]
libfreerdp-core: improvements to the server-side activation/reactivation code
Marc-André Moreau [Fri, 19 Jul 2013 22:24:56 +0000 (18:24 -0400)]
libfreerdp-core: modify server-side confirm active pdu receiving logic
Benoît LeBlanc [Fri, 19 Jul 2013 20:33:20 +0000 (16:33 -0400)]
- MRDPView: rdpConnectError moved outside of the Framework, to the native App (in AppDelegate) This is now handled on the client side.
- freerdp_connect: all code paths now trigger a ConnectionResult event.
Benoît LeBlanc [Fri, 19 Jul 2013 14:18:33 +0000 (10:18 -0400)]
FreeRDP client: turned on setting to only write modified values to RDP file.
Benoît LeBlanc [Fri, 19 Jul 2013 01:22:59 +0000 (21:22 -0400)]
Merge branch 'master' of git://github.com/awakecoding/FreeRDP
# By Marc-André Moreau
# Via Marc-André Moreau
* 'master' of git://github.com/awakecoding/FreeRDP:
libfreerdp-core: wrap state transition actions
Benoît LeBlanc [Fri, 19 Jul 2013 01:22:41 +0000 (21:22 -0400)]
Fixed deadlock when closing session window.
Marc-André Moreau [Thu, 18 Jul 2013 21:15:10 +0000 (17:15 -0400)]
libfreerdp-core: wrap state transition actions
Benoît LeBlanc [Thu, 18 Jul 2013 19:49:46 +0000 (15:49 -0400)]
Merge branch 'master' of git://github.com/awakecoding/FreeRDP
# By Marc-André Moreau
# Via Marc-André Moreau
* 'master' of git://github.com/awakecoding/FreeRDP:
libfreerdp-core: expand comments for connection sequence, split in more steps server-side connection code
Benoît LeBlanc [Thu, 18 Jul 2013 19:41:28 +0000 (15:41 -0400)]
MacFreeRDP: connection now starts asynchronously.
Replaced RunLoop implementation with standard pthreads.
Marc-André Moreau [Thu, 18 Jul 2013 19:18:59 +0000 (15:18 -0400)]
libfreerdp-core: expand comments for connection sequence, split in more steps server-side connection code
Benoît LeBlanc [Thu, 18 Jul 2013 15:26:41 +0000 (11:26 -0400)]
Merge branch 'master' of git://github.com/awakecoding/FreeRDP
# By Marc-André Moreau
# Via Marc-André Moreau
* 'master' of git://github.com/awakecoding/FreeRDP:
libfreerdp-core: split licensing/capability steps in server-side RDP state machine
Marc-André Moreau [Wed, 17 Jul 2013 21:46:58 +0000 (17:46 -0400)]
libfreerdp-core: split licensing/capability steps in server-side RDP state machine
C-o-r-E [Wed, 17 Jul 2013 21:02:38 +0000 (17:02 -0400)]
fixed build
C-o-r-E [Wed, 17 Jul 2013 20:44:27 +0000 (16:44 -0400)]
merged from upstream
Benoît LeBlanc [Wed, 17 Jul 2013 20:04:55 +0000 (16:04 -0400)]
MacFreeRDP: non-blocking connect
Benoît LeBlanc [Wed, 17 Jul 2013 19:58:39 +0000 (15:58 -0400)]
MacFreeRDP: async rdpStart.
Merge branch 'master' of git://github.com/awakecoding/FreeRDP
# By Marc-André Moreau
# Via Marc-André Moreau
* 'master' of git://github.com/awakecoding/FreeRDP:
libfreerdp-core: initialize queue objects earlier
mfreerdp: fix cursor rendering
Conflicts:
client/Mac/MRDPView.m
Marc-André Moreau [Wed, 17 Jul 2013 19:27:55 +0000 (15:27 -0400)]
libfreerdp-core: initialize queue objects earlier
Benoît LeBlanc [Wed, 17 Jul 2013 15:06:41 +0000 (11:06 -0400)]
MacFreeRDP: cleanup
Norbert Federa [Wed, 17 Jul 2013 08:01:56 +0000 (10:01 +0200)]
codec/rfx: removed unused queue TileQueue
Declared, created, deleted but not used:
git grep TileQueue
libfreerdp/codec/rfx_types.h: wQueue* TileQueue;
libfreerdp/codec/rfx.c: context->priv->TileQueue = Queue_New(TRUE, -1, -1);
libfreerdp/codec/rfx.c: Queue_Free(context->priv->TileQueue);
Marc-André Moreau [Tue, 16 Jul 2013 18:57:34 +0000 (11:57 -0700)]
Merge pull request #1354 from awakecoding/master
Multitouch, MacFreeRDP, PubSub
Marc-André Moreau [Tue, 16 Jul 2013 18:44:49 +0000 (14:44 -0400)]
mfreerdp: fix cursor rendering
Benoît LeBlanc [Tue, 16 Jul 2013 16:16:44 +0000 (12:16 -0400)]
Custom cursor now visible on mac version. Cursor is now associated with NSView for automatic tracking area handling.
Makefile: updated post-build NIB file generation events to apply to all generators for Mac Client.
Benoît LeBlanc [Tue, 16 Jul 2013 14:51:37 +0000 (10:51 -0400)]
Merge branch 'master' of git://github.com/awakecoding/FreeRDP
# By Norbert Federa (3) and others
# Via Bernhard Miklautz (4) and Marc-André Moreau (4)
* 'master' of git://github.com/awakecoding/FreeRDP:
freerdp: merge with master
channels/disp: initial MS-RDPEDISP support (8.1 Preview build)
libfreerdp-gdi: added gdi_surface_frame_marker
Fix for Issue #1349
codec/rfx: use function pointer for rlgr codec
fixed error on compilation WITH_DEBUG_RDP ON that was raising due to wrong variable in debug statement
codec/rfx: Fixed bufferpool size used for RemoteFX
Marc-André Moreau [Mon, 15 Jul 2013 21:37:46 +0000 (17:37 -0400)]
freerdp: merge with master
Marc-André Moreau [Mon, 15 Jul 2013 21:14:40 +0000 (17:14 -0400)]
Merge branch 'master' of github.com:FreeRDP/FreeRDP
Marc-André Moreau [Mon, 15 Jul 2013 21:14:20 +0000 (17:14 -0400)]
Merge branch 'master' of github.com:mrthebunny/FreeRDP