Enrico Weigelt, metux IT consult
4b79884bb3
( !1972 ) randr: skip payload assembly in ProcRRGetScreenInfo() no data to send
...
If there's no data to send, the whole reply payload can be skipped entirely.
This can also ease the whole code flow, and we don't need to rely on the
individual copy loops never trying to dereference a NULL pointer.
(what the analyzer can't proof). Also scoping several some variables that
are only used when there actually is data to send.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult
9c9e77c745
( !1972 ) randr: skip payload assembly in rrGetScreenResources() no data to send
...
If there's no data to send, the whole reply payload can be skipped entirely.
This can also ease the whole code flow, and we don't need to rely on the
individual copy loops never trying to dereference a NULL pointer.
(what the analyzer can't proof). Also scoping several some variables that
are only used when there actually is data to send.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult
474e494562
( !1972 ) randr: simplify reply assembly in ProcRRListProviderProperties()
...
Moving payload buffer assembly right into the same branch where the buffer is
allocated, so making the whole code flow easier to understand. Also moving the
byteswap there (when the fields should still be in CPU cache), instead of having
some callback doing it much later, so even more simplication.
As a nice by-product, that's also reducing some analyzer noise.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult
dfa43a0bfb
( !1972 ) randr: no need to for local temp buffer in ProcRRQueryProviderProperty()
...
The code can be much simpler by just using CopySwap32Write().
And we also don't need the callback in WriteSwappedDataToClient(),
just call the corresponding write function directly.
This also makes some analyzer warnings go away.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult
f62a9ef6be
( !1972 ) randr: ProcRRGetOutputInfo() skip payload assembly when nothing to do
...
If there's no extra payload to send, we can skip the whole payload
assembly chain.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:40 +02:00
Enrico Weigelt, metux IT consult
af8bacb4fc
( !1972 ) randr: simplify extra payload copying in ProcRRGetOutputInfo()
...
Make it a bit easier to understand how exactly the name string is copied into
the reply payload: just do the little memcpy() right where the target position
is decided any the rest of the payload is filled.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult
8af9fc8ecc
( !1972 ) randr: RROutputSetCrtcs(): simplify buffer allocation / copying
...
Instead of relying on memcpy() coping with NULL buffer when size == 0,
move the call to the branch where we actually have things to copy.
This also silences yet another analyzer warning.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult
9d6279aceb
( !1972 ) randr: RROutputSetModes(): simplify buffer allocation / copying
...
Instead of relying on memcpy() coping with NULL buffer when size == 0,
move the call to the branch where we actually have things to copy.
This also silences yet another analyzer warning.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult
b6069ed240
( !1972 ) randr: RROutputSetClones(): simplify buffer allocation / copying
...
Instead of relying on memcpy() coping with NULL buffer when size == 0,
move the call to the branch where we actually have things to copy.
This also silences yet another analyzer warning.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult
830cee281d
( !1972 ) randr: refine allocation and copying of optional buffers
...
Simplifying the code flow allocating/checking/copying some buffers in
RRConfigureOutputProperty() and RRConfigureProviderProperty() so it's
easier to understand for both the human reader as well as the analyzer.
Depending on whether we have elements to process, a temporary buffer needs
to be allocated, checked for successful allocation and copy over data. The
way it's currently done is technically correct, but unnecessarily complex to
understand: instead of just branching on whether there are elements and doing
all the buffer-related things only then, the branching is done just somewhere
in the middle, only on checking for allocation failure, and relying on both
calloc() and memcpy() not doing weird things when size is zero.
It's easy to simplify by putting it all behind one if statement and so make
things easier for both human reader as well as the analyzer (so it's not
spilling out false alarms here anymore) and also drops unnecessary calls
in the zero-size case.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult
5cb22c7863
( !1985 ) randr: unexport and document RRTransformCopy()
...
Not used by any external drivers, so no neeed to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult
67e2b0868b
( !1985 ) randr: unexport and document RRTransformSetFilter()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult
32a62458dc
( !1985 ) randr: unexport and document RRTransformEqual()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult
71a2f0b104
( !1985 ) randr: unexport and document RRTransformInit()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:39 +02:00
Enrico Weigelt, metux IT consult
0d75792cb1
( !1985 ) randr: unexport and document RRXineramaExtensionInit()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
f9e815e946
( !1985 ) randr: unexport and document RRQueryOutputProperty()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
1a3ead7b51
( !1985 ) randr: unexport and document RRGetOutputProperty()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
2197fc8ff0
( !1985 ) randr: unexport resource type IDs
...
Not used by any external drivers, so no need to keep them exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
32f846fab1
( !1985 ) randr: unexport and document RRConfigureProviderProperty()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
3087feda69
( !1985 ) randr: unexport and document RRChangeProviderProperty()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
4a80a04413
( !1985 ) randr: unexport and document RRDeleteProviderProperty()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
35b9d5ce55
( !1985 ) randr: unexport and document RRQueryProviderProperty()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
f87a48780c
( !1985 ) randr: unexport and document RRGetProviderProperty()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
1fdd80ad6f
( !1985 ) randr: unexport and document RRProviderAutoConfigGpuScreen()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
f1969882df
( !1985 ) randr: unexport and document RRDeliverProviderEvent()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
d7f5a3ad93
( !1985 ) randr: unexport and document RRProviderDestroy()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
e3c34c8862
( !1985 ) randr: unexport and document RRProviderSetCapabilities()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
2ad1f88a1b
( !1985 ) randr: unexport and document RRProviderCreate()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
3f79ed0c2c
( !1985 ) randr: unexport and document RRProviderInitErrorValue()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
c8f89450a7
( !1985 ) randr: unexport and document RRProviderInit()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
6a20c741e0
( !1985 ) randr: unexport and document RRDeleteAllOutputProperties()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
9c6e10704f
( !1985 ) randr: unexport and document RRPointerScreenConfigured()
...
Not usde by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
4e9ac859e6
( !1985 ) randr: unexport and document RROutputInitErrorValue()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
115943c0b0
( !1985 ) randr: unexport and document RROutputInit()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
1168697eef
( !1985 ) randr: unexport and document RRDeliverOutputEvent()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
447c9557e9
( !1985 ) randr: unexport and document RROutputSetSubpixelOrder()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
8296cb66b0
( !1985 ) randr: unexport and document RROutputDeleteUserMode()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
9a7a44365e
( !1985 ) randr: unexport and document RROutputAddUserMode()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
d21bfea109
( !1985 ) randr: unexport and document RRModeInitErrorValue()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
d16a923260
( !1985 ) randr: unexport and document RRModeInit()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
63bc8af34d
( !1985 ) randr: unexport and document RRModesForScreen()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
e2a179d86c
( !1985 ) randr: unexport and document RROutputIsLeased()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:38 +02:00
Enrico Weigelt, metux IT consult
4d5c7d86e8
( !1985 ) randr: unexport and document RRCrtcIsLeased()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:37 +02:00
Enrico Weigelt, metux IT consult
bf9952ee05
( !1985 ) randr: unexport and document RRLeaseFree()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:37 +02:00
Enrico Weigelt, metux IT consult
caaba77d09
( !1985 ) randr: unexport and document RRLeaseTerminated()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:37 +02:00
Enrico Weigelt, metux IT consult
d0e2e34306
( !1985 ) randr: unexport and document RRClientKnowsRates()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:37 +02:00
Enrico Weigelt, metux IT consult
0f721f8878
( !1985 ) randr: unexport and document RRHasScanoutPixmap()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:37 +02:00
Enrico Weigelt, metux IT consult
591d3b13a8
( !1985 ) randr: unexport and document RRReplaceScanoutPixmap()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:37 +02:00
Enrico Weigelt, metux IT consult
9c4c30e9dc
( !1985 ) randr: unexport and document RRCrtcDetachScanoutPixmap()
...
Not used by any external drivers, so no need to keep it exported.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:37 +02:00
Enrico Weigelt, metux IT consult
cf10bc5343
( !1985 ) randr: unexport and document RRCrtcInitErrorValue()
...
Not supposed to be called by drivers, just internal to the randr extsnsion,
so shouldn't have been exported in the first place.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-05-22 17:34:37 +02:00