akallabeth
1b3f3a0408
[codec,color] expose freerdp_image_copy (no)overlap
...
expose functions for overlapping and non overlapping images to use
directly
2024-05-23 14:48:36 +02:00
akallabeth
afde527120
[gdi,gfx] unify updatesurfaces calls
2024-05-23 14:26:17 +02:00
Armin Novak
14286904e1
[tests] fix mismatched allocation function
2024-04-17 18:47:16 +02:00
akallabeth
05175d70f0
[tests,gdi] skip failing test cases
2024-02-22 12:31:50 +01:00
akallabeth
acedd305d3
fixed unused-but-set-variable warnings
2024-02-22 12:31:50 +01:00
akallabeth
42cfe9bf1a
[cmake,test] deactivate TestGdiLine
...
The test is broken (and has been for a long time), deactivate it.
2024-02-22 12:31:50 +01:00
akallabeth
d7ebec5a65
[tidy] move loop variable declaration to loop
2024-02-22 12:31:50 +01:00
akallabeth
b8598728a6
[clang-tidy] clang-analyzer-core.uninitialized.Assign
2024-02-15 11:49:16 +01:00
akallabeth
81d2c1f057
[clang-tidy] clang-analyzer-core.NullDereference
2024-02-15 11:49:16 +01:00
akallabeth
f69e1fe697
[clang-tidy] readability-duplicate-include
2024-02-15 11:49:16 +01:00
akallabeth
0ba995655d
[clang-tidy] cppcoreguidelines-init-variables
2024-02-15 11:49:16 +01:00
akallabeth
207def5c56
[clang-tidy] readability-isolate-declaration
2024-02-15 11:49:16 +01:00
akallabeth
78d736b481
[gdi,graphics] fix glyph bounds #9454
2023-12-01 10:18:33 +01:00
akallabeth
1b31852d32
[git] remove .gitignore
...
we do no longer allow in source builds, so remove all the .gitignore
files just hiding generated files
2023-11-28 12:14:55 +01:00
akallabeth
6b9245849c
[warnings] type casts
2023-11-24 18:19:03 +01:00
akallabeth
a546388063
[gdi,line] clean up line functions
...
* Simplify CMake source detection
* Clean up code in line.c, add assertions
2023-09-20 09:53:49 +02:00
akallabeth
7a71441476
[warnings] fix integer multiplications
...
Ensure the integer width for size arguments is 64bit in a
multiplication. Leading 64bit constant 1ull expands width, a trailing
one is ignored.
2023-08-22 11:55:00 +02:00
Armin Novak
9d5e95c60b
[core] fix unary minus warnings
2023-07-28 13:42:12 +02:00
Armin Novak
e61880d077
[standard] replace __FUNCTION__ with __func__
2023-07-27 20:02:43 +02:00
ehdgks0627
3589e2468d
Refactor: Improve error message in is_within_surface function
...
In the function is_within_surface, the error message for out-of-bounds command rectangles has been enhanced for better clarity. The code has been modified to display the rectangle coordinates and surface dimensions in the error message. This change aims to make debugging easier and improve the overall code quality.
2023-07-25 20:12:10 +02:00
Armin Novak
a4c6b36a19
[build] fix memory sanitizer stack frame warnings
2023-06-07 09:14:45 +02:00
houchengqiu
3e2c5e040f
[libfreerdp] add bound check in gdi_surface_bits()
...
In Windows remote run vulnerabillities exe program, to create rdpgrfx channel, may case Remmina crash.
So, add bound check, check that the paste area is valid, and determine if the picture is in the paste area.
2023-05-22 12:10:29 +02:00
houchengqiu
7daaba3c14
[libfreerdp] add bound check in gdi_SolidFill
...
In Windows remote run vulnerabillities exe program, to create
Micorosoft::Windows::RDS::Graphics channel, case Remmina crash.
So, add bound check, limit the size of the requested rect, no larger than the surface data buffer.
2023-05-22 12:10:29 +02:00
akallabeth
a5b42f0f84
[includes] untangled circular includes
2023-03-15 08:22:23 +01:00
akallabeth
adce7378c3
[core,cache] make protocol caches private
...
most protocol internal caches do not need to be exposed. this reduces
the public API and allows us to more easily improve/change this during a
release cycle
2023-02-27 17:31:52 +01:00
Armin Novak
641022b795
[logging] remove __FUNCTION__ from actual message
...
prefer the log formatter to provide that information.
2023-01-25 16:26:39 +01:00
akallabeth
075506f6c8
[winpr,stream] use new Stream_CheckAndLogRequiredLength*
2023-01-25 14:27:32 +01:00
Armin Novak
15ebdd750f
[gdi] use solid fill alpha if surface has alpha
2023-01-10 11:49:02 +01:00
akallabeth
06c070fc4d
[gfx] moved rdpgfx_get_codec_id_string to utils
...
the gfx related stringify helpers are nice to have outside the channel
too so that meaningful logmessages can be written.
2022-12-18 15:14:30 +01:00
Armin Novak
b14bdd4501
[gdi] Add failure logging in gdi_Bitmap_Decompress
2022-12-13 13:38:25 +01:00
Armin Novak
7c5e953a44
[gdi] log bitmap update failure reasons
2022-12-13 13:38:25 +01:00
akallabeth
37ab25e19d
Fixed all Wdocumentation warnings
2022-12-12 14:24:55 +01:00
akallabeth
d4808dd3e1
Fixed various compiler warnings
2022-12-09 15:58:26 +01:00
akallabeth
febc4b3073
[gdi,gfx] Fixed possible memory leaks
...
* WINPR_ASSERT all callbacks required to be set
* Unify cache slot creation/destruction
* Destroy cache slot before setting it
2022-11-22 15:30:31 +01:00
akallabeth
7a037d80df
[gdi,gfx] Fix width and height on reset
...
Since gdi->width and height are signed, use the MAX(0,gdi->width)
2022-11-22 15:30:31 +01:00
Armin Novak
f92dc2a6dc
[rail,gfx] Better logging for surface operations
2022-11-11 06:42:45 +01:00
Armin Novak
325c03501e
[gfx] Added new UpdateWindowFromSurface callback
...
* Adds a new callback and settings in gdiGfxSurface to allow updating
a window directly from surface bitmap data
* Adds new BOOL in gdiGfxSurface windowMapped and
handleInUpdateSurfaceArea to control where surface data update is
being handled
2022-11-11 06:42:45 +01:00
akallabeth
3eccf75aff
Skip empty rectangles in gfx cache to surface
2022-11-04 14:46:58 +01:00
akallabeth
819cbcae16
Reset all codec context on gfx graphics reset
2022-11-04 14:46:58 +01:00
David Fort
1905524442
Channel loading ( #8204 )
...
* update .gitignore and cleanup conditionnal callback call
* client: rework channel loading
Automate the loading of channels that only depend on a given enabled setting.
2022-09-14 13:53:27 +02:00
akallabeth
a402f7c3c4
Fixed codec reset
2022-06-23 14:19:50 +02:00
akallabeth
087e71f439
Use settings getter
2022-06-23 14:19:50 +02:00
akallabeth
bc8b4ade1c
reformatted
2022-06-23 08:48:39 +02:00
Armin Novak
66e73f8b08
Fixed missing static for functions, fixed declaration of FreeRDPAreColorFormatsEqualNoAlpha
2022-06-21 10:28:34 +02:00
Marc-André Moreau
161617c4a4
Implement RDP persistent bitmap cache
2022-06-08 23:37:06 +02:00
akallabeth
5460bb3133
Fixed rfx_process_message use
2022-06-03 08:51:40 +02:00
Marc-André Moreau
1ce00d9084
* libfreerdp-gdi: fix processing of RemoteFX codec handling
2022-05-26 17:15:19 +02:00
David Fort
77413f49b2
winpr: rework alignment functions
...
_align_XXX functions aren't widely available depending on the C runtime. That causes
problems with mingw where we can easily have some runtime mixes (which lead to mysterious
segfaults most of the time). This patch introduce winpr_aligned_XXX functions that will
either use the function available, or use an emulation layer.
2022-05-12 11:36:01 +02:00
akallabeth
3d9c972d5c
Replace direct rdpSettings access with getter/setter ( #7867 )
...
* Replace direct rdpSettings access with getter/setter
* Fixed xf_gdi_update_screen const warning
2022-05-02 10:55:44 +02:00
akallabeth
69bc0ccc89
Fixed DeleteSurface default return value
2022-04-28 13:25:27 +02:00