Commit Graph

193 Commits

Author SHA1 Message Date
Armin Novak
b724ba546d [checks,return] fix various unchecked return values 2026-03-03 09:40:27 +01:00
Armin Novak
e6fca2c021 [winpr,stream] Fix Stream_SetPosition return checks 2026-03-02 11:37:20 +01:00
Armin Novak
2c0c55dc46 [c23,channels] replace NULL with nullptr 2026-02-26 13:43:54 +01:00
Armin Novak
48267edf2f [winpr] add WINPR_C_ARRAY_INIT
since C23 allows c++ style initializing replace direct use with this
macro
2026-02-25 19:23:08 +01:00
Armin Novak
df64d00a97 [warnings,api] fix -Wunused-result
With marking publid API [[nodiscard]] some problematic error checks in
the core library were uncovered. This commit addresses these
shortcomings.
2026-02-17 11:07:08 +01:00
Armin Novak
bf99266c2e [channels,warnings] properly handle function return 2026-02-16 09:18:38 +01:00
Armin Novak
2e3b77e28a [channels,rdpgfx] check available stream length 2026-02-09 13:18:51 +01:00
Armin Novak
669ba987cc [clang,warnings] fix Wjump-misses-init 2026-01-08 11:32:33 +01:00
akallabeth
889f73be4a [channels,rdpgfx] log chosen capabilities 2025-04-28 22:47:12 +02:00
akallabeth
d4f7fb081b [warnings] fix -Wunused-function
* delete unused functions that are no longer required
* define guard functions only used while debugging
2025-02-27 19:29:46 +01:00
akallabeth
2b7d7356c1 [channels,warnings] fix -Wunused-parameter 2025-02-13 15:53:56 +01:00
akallabeth
1c852e0f6a [channels,rdpgfx] refactor code 2025-01-19 15:31:01 +01:00
akallabeth
be3ba1c425 [warnings,channels] fix integer casts 2024-12-25 13:29:07 +01:00
akallabeth
78acedb40e [warnigns] fix Wshorten-64-to-32 2024-11-11 10:22:37 +01:00
akallabeth
db8e340604 [rdpgfx,client] debug caps version as string 2024-09-06 09:35:23 +02:00
akallabeth
fe6d861a5c [channels] fix VCAPITYPE for all channel entry points 2024-09-03 17:26:58 +02:00
akallabeth
bd637c6cd1 [warnings] fix various clang-tidy warnings 2024-08-29 17:13:50 +02:00
akallabeth
cc626276d0 [warnings] integer cast and checks 2024-08-29 15:49:33 +02:00
akallabeth
9c9d74e920 [warnings] fix redundant casts 2024-08-29 12:03:09 +02:00
Armin Novak
17d44e847f [coverity] fix various warnings 2024-08-21 09:47:34 +02:00
Armin Novak
fb26dd4185 [channels,rdpgfx] enable GfxSendQoeAck 2024-07-03 15:52:28 +02:00
akallabeth
4099bd4e45 [warnings] integer casts/checks 2024-07-02 12:38:00 +02:00
akallabeth
c6b7b87f8f [channels,rdpgfx] use FreeRDP_GfxSuspendFrameAck 2024-05-24 11:52:02 +02:00
akallabeth
5475f3fc24 [channels,rdpgfx] use static stream 2024-05-21 14:56:53 +02:00
akallabeth
5301603548 [channels,rdpgfx] fix memory leak on error 2024-04-16 21:20:04 +02: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
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
5cb463e74b [channel,rdpgfx] disable client side caps
If no image scaling is available disable capabilities that require image
scaling to function properly
2024-01-29 19:26:18 +01:00
Vic Lee
277ea28926 [channels,rdpgfx] fix potential stack corruption. 2024-01-11 13:44:47 +01:00
akallabeth
ceb7bd1d41 [warnings] fixed clang build warnings 2023-11-24 18:19:03 +01:00
akallabeth
eb445f7c43 [channels] make settings opaque 2023-11-24 14:54:56 +01:00
David Fort
4a0e0ae88f [egfx] reset total decoded frames when receiving caps
It seems like some windows servers don't like to receive ack frame messages
with a totalDecodedFrame number that is bigger than the frameId.
That can happen if the connection starts, some frames are decoded, we receive a
renegotiate message, then egfx channel is reopened and the frame ids we receive
go back to 1. In the previous situation, we ended up with sending an ack
with frameId=1 and totalDecodedFrames=38, with the patch totalDecodedFrames is
reset when receiving caps, so it's always lower than frameId.
2023-10-27 19:09:41 +02:00
akallabeth
bb5345c60e [freerdp,api] add FREERDP_ENTRY_POINT
C requires prototypes or compilers will complain about them missing. Our
library entry points do not have such, therefore add the macro
FREERDP_ENTRY_POINT which declares the function prototype automatically
before the function.
2023-08-25 14:36:05 +02:00
Armin Novak
970f0c54e8 [stream] use const correct Stream_Pointer access 2023-06-08 08:09:33 +02:00
akallabeth
a360f1ca8c [build] fix a few compiler warnings 2023-03-13 13:04:45 +01:00
Armin Novak
70f6c09ff4 [core] fix persistent bitmap cache setting
* Only activate if both, client and server support the capability
* Use settings getter to access setting
2023-01-26 09:30:17 +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
akallabeth
29c92af194 [channels,rdpgfx] fixed logger setup 2022-12-18 15:14:30 +01:00
akallabeth
a2329281a4 [channels,rdpdr] fix possible surface leak
* Ensure DeleteSurface is called before CreateSurface: Under certain
  conditions it is possible that there already exists a surface with the
  same id as the new CreateSurface PDU. Delete the already existing
  instance in that case before creating a new one.
* Simplify surface cleanup on shutdown: Use HashTable_Foreach
2022-12-15 14:57:29 +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
Armin Novak
7c5652c15a Fixed -Wmissing-prototypes 2022-11-21 10:12:31 +01:00
akallabeth
1849632c43 Fixed format strings to match arguments (#8254)
* Fixed format strings to match arguments

Reviewed and replaced all %d specifiers to match proper type

* Added proxy dynamic channel command type to log messages.
2022-09-29 14:55:27 +02:00
David Fort
3478051f15 dynamic channels: mutualize things for listeners and plugins
The same code is copied in all dynamic channels to create a plugin, have a listener,
and manage the channel lifecycle. This patch does a mutualization effort so that channels
only have to code things that are specific to them.
2022-07-07 12:21:23 +00:00
Armin Novak
42caca9223 Do not automatically set GfxSmallCache 2022-07-06 13:09:46 +00:00
Armin Novak
3bedc1f92e Fixed swscale and cairo checks 2022-07-06 13:09:46 +00:00
Armin Novak
ada4671435 Cleaned up client rdpgfx
* use rdpContext for setup
* add WINPR_ASSERT
* Removed duplicated rdpSettings variables
2022-06-27 11:06:27 +02:00
akallabeth
f1d3d457fb Code cleanups/initializations 2022-06-23 14:19:50 +02:00