Merge pull request #11230 from akallabeth/android-fixes

Android fixes
This commit is contained in:
akallabeth
2025-02-22 19:19:29 +01:00
committed by GitHub
6 changed files with 23 additions and 16 deletions

View File

@@ -295,10 +295,8 @@ static UINT audin_opensles_parse_addin_args(AudinOpenSLESDevice* device, const A
FREERDP_ENTRY_POINT(UINT VCAPITYPE opensles_freerdp_audin_client_subsystem_entry(
PFREERDP_AUDIN_DEVICE_ENTRY_POINTS pEntryPoints))
{
const ADDIN_ARGV* args;
AudinOpenSLESDevice* opensles;
UINT error;
opensles = (AudinOpenSLESDevice*)calloc(1, sizeof(AudinOpenSLESDevice));
UINT error = ERROR_INTERNAL_ERROR;
AudinOpenSLESDevice* opensles = (AudinOpenSLESDevice*)calloc(1, sizeof(AudinOpenSLESDevice));
if (!opensles)
{
@@ -313,7 +311,7 @@ FREERDP_ENTRY_POINT(UINT VCAPITYPE opensles_freerdp_audin_client_subsystem_entry
opensles->iface.Close = audin_opensles_close;
opensles->iface.Free = audin_opensles_free;
opensles->rdpcontext = pEntryPoints->rdpcontext;
args = pEntryPoints->args;
const ADDIN_ARGV* args = pEntryPoints->args;
if ((error = audin_opensles_parse_addin_args(opensles, args)))
{

View File

@@ -335,11 +335,9 @@ static int rdpsnd_opensles_parse_addin_args(rdpsndDevicePlugin* device, ADDIN_AR
FREERDP_ENTRY_POINT(UINT VCAPITYPE opensles_freerdp_rdpsnd_client_subsystem_entry(
PFREERDP_RDPSND_DEVICE_ENTRY_POINTS pEntryPoints))
{
ADDIN_ARGV* args;
rdpsndopenslesPlugin* opensles;
UINT error;
UINT error = ERROR_INTERNAL_ERROR;
DEBUG_SND("pEntryPoints=%p", (void*)pEntryPoints);
opensles = (rdpsndopenslesPlugin*)calloc(1, sizeof(rdpsndopenslesPlugin));
rdpsndopenslesPlugin* opensles = (rdpsndopenslesPlugin*)calloc(1, sizeof(rdpsndopenslesPlugin));
if (!opensles)
return CHANNEL_RC_NO_MEMORY;
@@ -352,7 +350,7 @@ FREERDP_ENTRY_POINT(UINT VCAPITYPE opensles_freerdp_rdpsnd_client_subsystem_entr
opensles->device.Play = rdpsnd_opensles_play;
opensles->device.Close = rdpsnd_opensles_close;
opensles->device.Free = rdpsnd_opensles_free;
args = pEntryPoints->args;
const ADDIN_ARGV* args = pEntryPoints->args;
rdpsnd_opensles_parse_addin_args((rdpsndDevicePlugin*)opensles, args);
if (!opensles->device_name)

View File

@@ -14,7 +14,7 @@ endif()
# known issue on android, thus disabled until we support newer CMake
# https://github.com/android/ndk/issues/1444
if(NOT ANDROID)
if(NOT ANDROID OR ("${CMAKE_VERSION}" GREATER_EQUAL "3.20.0"))
if(POLICY CMP0069)
cmake_policy(SET CMP0069 NEW)
endif()

View File

@@ -237,7 +237,7 @@ pstatus_t generic_image_copy_no_overlap_convert(
&pDstData[dstVMultiplier * (y + nYDst) * nDstStep + dstVOffset];
SSIZE_T x = 0;
WINPR_PRAGMA_UNROLL_LOOP
// WINPR_PRAGMA_UNROLL_LOOP
for (; x < width; x++)
{
const UINT32 color = FreeRDPReadColor_int(&srcLine[(x + nXSrc) * srcByte], SrcFormat);

View File

@@ -103,11 +103,15 @@ function build {
set_toolchain_clang_paths
LDFLAGS=$(get_arch_specific_ldflags)
PATH=$ANDROID_NDK:$PATH
CARCH=$TARGET_ARCH
if [ "$CARCH" == "x86_64" ]; then
CARCH="x86-64"
fi
PATH=$ANDROID_NDK:$PATH
common_run ./configure \
--cross-prefix="${BUILD_HOST}-" \
--sysroot="${ANDROID_NDK}/toolchains/llvm/prebuilt/${TOOLCHAIN}/sysroot" \
--arch="${TARGET_ARCH}" \
--arch="${CARCH}" \
--cpu="${TARGET_CPU}" \
--cc="${CC}" \
--cxx="${CXX}" \
@@ -122,6 +126,7 @@ function build {
${ARCH_OPTIONS} \
--enable-cross-compile \
--enable-pic \
--enable-lto \
--enable-jni \
--enable-mediacodec \
--enable-shared \

View File

@@ -226,7 +226,10 @@ BOOL CommReadFile(HANDLE hDevice, LPVOID lpBuffer, DWORD nNumberOfBytesToRead,
* there is no eventfd_read() but this not the case. */
/* discard a possible and no more relevant event */
#if defined(WINPR_HAVE_SYS_EVENTFD_H)
eventfd_read(pComm->fd_read_event, NULL);
{
eventfd_t val = 0;
(void)eventfd_read(pComm->fd_read_event, &val);
}
#endif
biggestFd = pComm->fd_read;
@@ -400,7 +403,10 @@ BOOL CommWriteFile(HANDLE hDevice, LPCVOID lpBuffer, DWORD nNumberOfBytesToWrite
/* discard a possible and no more relevant event */
#if defined(WINPR_HAVE_SYS_EVENTFD_H)
eventfd_read(pComm->fd_write_event, NULL);
{
eventfd_t val = 0;
(void)eventfd_read(pComm->fd_write_event, &val);
}
#endif
/* ms */