Armin Novak
5cdb7b7bea
Fix gdi coordinate clamping.
2019-10-25 12:58:14 +02:00
asapelkin
82eadad4a4
Fix some static analizer warnings
2019-10-22 15:39:54 +02:00
Armin Novak
441fb4d0ca
Allow freerdp clients to function with WITH_OPENH264_LOADING
...
If no library can be loaded at runtime ignore H264 capabilities.
This allows a build with only OpenH264 support and dynamic loading
enabled to function when no openh264 library was detected.
2019-10-07 09:31:20 +02:00
Armin Novak
d49adfcf59
Fixed warnings and cleaned up gfx related xfreerdp code.
2019-05-08 17:01:36 +02:00
Martin Fleisz
e4a9172e13
Merge pull request #5383 from akallabeth/gfx_spec_update
...
Updated GFX to 10.6 spec
2019-05-08 13:42:50 +02:00
Armin Novak
3d1cec894c
Fixed alignment requirements for surface sizes.
2019-05-08 10:36:00 +02:00
Armin Novak
3b7e46fb0e
Updated GFX to 10.6 spec
2019-05-07 12:10:13 +02:00
Armin Novak
2a26aa0d87
Unified update->BeginPaint and update->EndPaint
...
Since these functions were called from 2 different threads
(main thread or dynamic channel) depending on fastpath or
gfx channel use lock between these.
If not locked the invalid region may be accessed from both
threads and lead to crashes as experienced with nightly df280a7ff
2019-04-11 15:33:23 +02:00
Armin Novak
696390f027
Fixed missing return value check.
2019-04-05 09:13:24 +02:00
Armin Novak
e8c8e7b6d0
Updated EGFX support to 10.6
2019-02-27 16:36:15 +01:00
Armin Novak
0c13c3199e
Follow up to #4959 : Lock gdi_UpdateSurfaces like xf_UpdateSurfaces
2018-12-04 16:56:22 +01:00
Armin Novak
2e019b2fd1
Implemented GFX locking and enforce return value checks.
...
To fix #4825 GFX functions must now aquire a lock before accessing surfaces.
This prevents simultaneous update of internal data by client and gfx threads.
Also enforce return value checks, where not already done.
2018-11-29 11:55:27 +01:00
Armin Novak
d06c3980a0
Fixed error log for avc420_decompress failures.
2018-11-26 11:33:23 +01:00
Armin Novak
1d77875a69
Fix NULL function pointer BeginPaint
2018-09-24 12:47:46 +02:00
Armin Novak
1a902c249c
Fix PROFILER_* macros
...
Add the semicolon to the macro to allow clean
undefinition if the profiler is not used.
This used to break VisualC compilers.
2018-02-15 11:30:38 +01:00
Armin Novak
c0ec81c3c7
Do not update client if output suppressed.
2018-02-08 11:59:00 +01:00
Armin Novak
253beda330
Fixed formatting.
2018-02-08 11:55:57 +01:00
Martin Fleisz
5cec90c781
Merge pull request #4305 from hardening/xrandr_fix
...
Fix XRandr for old systems and MacOSX
2017-12-13 17:24:41 +01:00
David Fort
11ee81be60
Fix XRandr for old systems and MacOSX
...
We need a recent enough version of XRandr to correctly detect monitor.
Also this patch adds some typo or style fixes.
2017-12-08 10:59:38 +01:00
Armin Novak
57958cb178
Fixed #3810 : Renamed color functions
2017-11-24 13:21:43 +01:00
David Fort
5d5376faa7
egfx: fix disconnection caused by invalid cache entries due to wrong announced cache size
...
Added some checks so that when setting a cache entry fails, we close connection (or
we fail later when trying to use that empty entry).
The small cache egfx capability has also been fixed.
2017-10-10 17:12:16 +02:00
Armin Novak
d3df6ed40f
Removed unused variable.
2017-08-31 09:57:49 +02:00
Armin Novak
0490aeb018
Fixed clang malloc integer overflow warnings.
2017-07-20 09:29:48 +02:00
Armin Novak
96d53933d2
Deactivated all H264 related code paths.
2017-07-17 10:39:08 +02:00
Armin Novak
21e20ac9f2
Initialize H264 context size for GFX surfaces.
2017-05-10 12:36:08 +02:00
akallabeth
8df8cc6fb5
Merge pull request #3937 from hardening/h264_multimon
...
Fix h264 in multimon scenario
2017-05-09 11:16:12 +02:00
Armin Novak
80f6fcf38c
Added missing callbacks.
2017-05-03 09:30:22 +02:00
Armin Novak
614d5f0a8e
Fixed use after free of region.
2017-05-03 08:48:36 +02:00
Armin Novak
f3e0c95d45
Added a GFX area update callback.
2017-05-03 08:48:03 +02:00
David Fort
d170c10ee6
Fix H264 in multi monitor case
...
The H264 context is surface specific, so in multi-monitor (with multiple surfaces)
the decoding was failing. This patch fixes that by introducing a surface specific
h264 context.
2017-05-02 18:39:33 +02:00
Armin Novak
b0d3cfda4d
Added AVC444v2 client support.
2017-04-11 11:29:14 +02:00
Norbert Federa
1739f27b82
rdpegfx: fix RemoteFX Progressive Codec decoding
...
Since this comes via a Wire-To-Surface-2 PDU we don't have
any left/top/right/bottom destination values.
The current code has always dealt with zeros when updating the
invalid region which resulted in black rectangles.
The correct update region is determined during decompression.
2017-04-03 18:59:58 +02:00
Armin Novak
8d116e6ee9
Use exclusive coordinates in CacheToSurface.
2017-03-31 12:06:21 +02:00
Norbert Federa
0bb67a0a69
improve rdpegfx drawing for software gdi
...
process the region's rectangles individually instead of
just copying the extents
2017-03-30 15:42:13 +02:00
David Fort
be41769506
Add some useful debug info for the egfx channel
2017-02-16 14:49:08 +01:00
Armin Novak
6960ca209b
Added GFX surface command profiler.
2017-02-15 15:42:14 +01:00
Armin Novak
f324b0ef9c
Use aligned malloc/free for GFX surfaces/buffers
2017-02-14 16:02:11 +01:00
Armin Novak
936e5a05dc
Fixed solid fill command.
...
If the alpha channel must be ignored in this command.
2017-01-11 13:25:44 +01:00
Norbert Federa
f71b6b46e8
fix string format specifiers
...
- fixed invalid, missing or additional arguments
- removed all type casts from arguments
- added missing (void*) typecasts for %p arguments
- use inttypes defines where appropriate
2016-12-16 13:48:43 +01:00
Armin Novak
d4b823d5cb
Using a single codec context per session.
2016-12-07 13:22:00 +01:00
Martin Fleisz
e059e3dea3
codec: Remove src format parameter from rfx_process_message
...
This parameter is not required. Default param is BGRX32
and if an other format is required rfx_codec_set_pixel_format
can be used.
2016-12-01 17:21:06 +01:00
Armin Novak
95a3144b34
Scanline alignment for GFX cache.
2016-10-31 07:56:10 +01:00
Armin Novak
f62d00445e
Fixed surface alignment.
2016-10-28 11:54:34 +02:00
Armin Novak
9c50e1a635
Replaced _VF formats with copy flags.
2016-10-14 10:36:52 +02:00
Armin Novak
844f7b7941
Made logging less verbose.
2016-10-06 13:43:08 +02:00
Armin Novak
ab4725dd5d
Fixed error message parameter.
2016-10-06 13:43:07 +02:00
Armin Novak
85bbe2a908
API refactoring.
2016-10-06 13:43:03 +02:00
Armin Novak
e650fdb2b6
Bugfixes.
2016-10-06 13:43:02 +02:00
Armin Novak
c229a1939d
Updated codec API, unified drawing order color decoding.
2016-10-06 13:43:02 +02:00
Armin Novak
8fffda5740
Fixed clearcodec and codecs reset.
2016-10-06 13:43:01 +02:00