Bug 254914

Summary: net/freerdp: smart-sizing broken in 2.3.2 (r569458)
Product: Ports & Packages Reporter: Aleksandr Konkov <konkovaa>
Component: Individual Port(s)Assignee: Craig Leres <leres>
Status: Closed FIXED    
Severity: Affects Only Me CC: leres, sascha.folie, vvd
Priority: --- Flags: vvd: maintainer-feedback+
Version: Latest   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
update to 2.4.0, add options CAIRO, SWSCALE and turn on WITH_DSP_FFMPEG if FFMPEG is on
none
update to 2.4.0, add options CAIRO, SWSCALE and turn on WITH_DSP_FFMPEG if FFMPEG is on vvd: maintainer-approval+

Description Aleksandr Konkov 2021-04-09 12:01:15 UTC
OS FreeBSD 13.0-STABLE #0 stable/13-n245043-7590d7800c44

Portmaster build options:
	ALSA           : off
	CUPS           : off
	FAAC           : off
	FAAD           : off
	FFMPEG         : on
	GSM            : off
	GSTREAMER      : off
	ICU            : on
	KERBEROS       : off
	LAME           : off
	MANPAGES       : on
	OPENH264       : off
	PCSC           : off
	PULSEAUDIO     : off
	SOXR           : off
	SSE            : on
	WAYLAND        : off
	X11            : on

Everything well without smart-sizing option, but with smart-sizing:

[ERROR][com.winpr.timezone] - Unable to get current timezone rule
[INFO][com.freerdp.gdi] - Local framebuffer format  PIXEL_FORMAT_BGRX32
[INFO][com.freerdp.gdi] - Remote framebuffer format PIXEL_FORMAT_RGB16
[INFO][com.winpr.clipboard] - initialized POSIX local file subsystem
[INFO][com.freerdp.channels.rdpsnd.client] - [static] Loaded fake backend for rdpsnd
[INFO][com.freerdp.channels.rdpdr.client] - Loading device service drive [home] (static)
[WARN][com.freerdp.color] - SmartScaling requested but compiled without libcairo support!
[ERROR][com.freerdp.core.fastpath] - Fastpath update New Pointer [b] failed, status 0
[ERROR][com.freerdp.core.fastpath] - fastpath_recv_update() - -1
[ERROR][com.freerdp.core.fastpath] - fastpath_recv_update_data() fail
[ERROR][com.freerdp.core.transport] - transport_check_fds: transport->ReceiveCallback() - -3
[ERROR][com.freerdp.core] - freerdp_check_fds() failed - 0
[INFO][com.freerdp.client.common] - Network disconnect!
[ERROR][com.freerdp.client.x11] - Failed to check FreeRDP file descriptor

The previous version of FreeRDP 2.2.0 (r556318) had no issues.
Comment 1 Vladimir Druzenko freebsd_committer freebsd_triage 2021-04-10 18:12:01 UTC
Probably it's upstream bug.
Can you report it to upstream here: https://github.com/FreeRDP/FreeRDP/issues?
Comment 2 Sascha Folie 2021-04-11 12:05:17 UTC
(In reply to VVD from comment #1)
It might be a bug with the port because smart-sizing works on Archlinux (FreeRDP 2.3.2).
Comment 3 Aleksandr Konkov 2021-04-11 13:09:17 UTC
(In reply to VVD from comment #1)
Smart-sizing broken in 2.3.2 (r569458) #6952
Comment 4 Aleksandr Konkov 2021-04-11 17:05:50 UTC
(In reply to VVD from comment #1)

From https://github.com/FreeRDP/FreeRDP/issues:
akallabeth closed issue with

    WITH_CAIRO=OFF WITH_SWSCALE=OFF
    [WARN][com.freerdp.color] - SmartScaling requested but compiled without libcairo support!

Please read the warnings/errors of cmake configure and the log you just posted ;)
Comment 5 Vladimir Druzenko freebsd_committer freebsd_triage 2021-04-11 19:05:34 UTC
(In reply to Aleksandr Konkov from comment #4)
Try to add WITH_SWSCALE to CMAKE_ON= in Makefile and rebuild port.
Comment 6 Vladimir Druzenko freebsd_committer freebsd_triage 2021-04-11 19:34:33 UTC
Keep link: https://github.com/FreeRDP/FreeRDP/issues/6952
Comment 7 Aleksandr Konkov 2021-04-11 20:50:24 UTC
(In reply to VVD from comment #5)
Yes, with WITH_SWSCALE smart-sizing is working well.
Thank you very much!
Comment 8 Aleksandr Konkov 2021-04-12 11:55:36 UTC
(In reply to VVD from comment #1)
According to https://github.com/FreeRDP/FreeRDP/issues/6952, it's not an upstream bug - something changed in FreeBSD's cmake (default) options, I guess...
Maybe this is the reason for Bug 254908 too...
Comment 9 Vladimir Druzenko freebsd_committer freebsd_triage 2021-08-16 18:16:41 UTC
Created attachment 227251 [details]
update to 2.4.0, add options CAIRO, SWSCALE and turn on WITH_DSP_FFMPEG if FFMPEG is on

Please test this with patch.
Comment 10 Vladimir Druzenko freebsd_committer freebsd_triage 2021-08-21 18:01:35 UTC
Created attachment 227355 [details]
update to 2.4.0, add options CAIRO, SWSCALE and turn on WITH_DSP_FFMPEG if FFMPEG is on
Comment 11 commit-hook freebsd_committer freebsd_triage 2021-08-21 20:40:33 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=fce808c4c70c98d812688df395e8164d5e9b3e40

commit fce808c4c70c98d812688df395e8164d5e9b3e40
Author:     Craig Leres <leres@FreeBSD.org>
AuthorDate: 2021-08-21 20:36:29 +0000
Commit:     Craig Leres <leres@FreeBSD.org>
CommitDate: 2021-08-21 20:36:29 +0000

    net/freerdp: Update to 2.4.0

    Also: add options CAIRO, SWSCALE and turn on WITH_DSP_FFMPEG if
    FFMPEG is on

    PR:             254914
    Approved by:    Aleksandr Konkov (maintainer)

 net/freerdp/Makefile | 30 +++++++++++++++++++-----------
 net/freerdp/distinfo |  6 +++---
 2 files changed, 22 insertions(+), 14 deletions(-)
Comment 12 Vladimir Druzenko freebsd_committer freebsd_triage 2021-08-21 22:41:42 UTC
Aleksandr Konkov, close this please, if issue fixed after update to 2.4.0.
Comment 13 Aleksandr Konkov 2021-08-23 07:58:57 UTC
Yes, in the new version 2.4.0 smart-sizing works as expected.
Nice job, thank you very much!

Build configuration: BUILD_TESTING=OFF BUILTIN_CHANNELS=ON HAVE_AIO_H=1 HAVE_EXECINFO_H=1 HAVE_FCNTL_H=1 HAVE_GETLOGIN_R=1 HAVE_INTTYPES_H=1 HAVE_MATH_C99_LONG_DOUBLE=1 HAVE_POLL_H=1 HAVE_PTHREAD_MUTEX_TIMEDLOCK=ON HAVE_PTHREAD_MUTEX_TIMEDLOCK_LIB=1 HAVE_PTHREAD_MUTEX_TIMEDLOCK_SYMBOL= HAVE_SYSLOG_H=1 HAVE_SYS_EVENTFD_H=1 HAVE_SYS_FILIO_H=1 HAVE_SYS_MODEM_H= HAVE_SYS_SELECT_H=1 HAVE_SYS_SOCKIO_H=1 HAVE_SYS_STRTIO_H= HAVE_SYS_TIMERFD_H=1 HAVE_TM_GMTOFF=1 HAVE_UNISTD_H=1 HAVE_XI_TOUCH_CLASS=1 WITH_ALSA=false WITH_CAIRO=false WITH_CCACHE=ON WITH_CHANNELS=ON WITH_CLANG_FORMAT=ON WITH_CLIENT=ON WITH_CLIENT_AVAILABLE=1 WITH_CLIENT_CHANNELS=ON WITH_CLIENT_CHANNELS_AVAILABLE=1 WITH_CLIENT_COMMON=ON WITH_CLIENT_INTERFACE=OFF WITH_CUPS=false WITH_DEBUG_ALL=OFF WITH_DEBUG_CAPABILITIES=OFF WITH_DEBUG_CERTIFICATE=OFF WITH_DEBUG_CHANNELS=OFF WITH_DEBUG_CLIPRDR=OFF WITH_DEBUG_DVC=OFF WITH_DEBUG_KBD=OFF WITH_DEBUG_LICENSE=OFF WITH_DEBUG_MUTEX=OFF WITH_DEBUG_NEGO=OFF WITH_DEBUG_NLA=OFF WITH_DEBUG_NTLM=OFF WITH_DEBUG_RAIL=OFF WITH_DEBUG_RDP=OFF WITH_DEBUG_RDPDR=OFF WITH_DEBUG_RDPEI=OFF WITH_DEBUG_RDPGFX=OFF WITH_DEBUG_REDIR=OFF WITH_DEBUG_RFX=OFF WITH_DEBUG_RINGBUFFER=OFF WITH_DEBUG_SCARD=OFF WITH_DEBUG_SND=OFF WITH_DEBUG_SVC=OFF WITH_DEBUG_SYMBOLS=OFF WITH_DEBUG_THREADS=OFF WITH_DEBUG_TIMEZONE=OFF WITH_DEBUG_TRANSPORT=OFF WITH_DEBUG_TSG=OFF WITH_DEBUG_TSMF=OFF WITH_DEBUG_TSMF=OFF WITH_DEBUG_TSMF_AVAILABLE=0 WITH_DEBUG_URBDRC=OFF WITH_DEBUG_WND=OFF WITH_DEBUG_X11=OFF WITH_DEBUG_X11_CLIPRDR=OFF WITH_DEBUG_X11_LOCAL_MOVESIZE=OFF WITH_DEBUG_XV=OFF WITH_DSP_EXPERIMENTAL=OFF WITH_DSP_FFMPEG=true WITH_EVENTFD_READ_WRITE=1 WITH_FAAC=false WITH_FAAD2=false WITH_FFMPEG=TRUE WITH_FFMPEG=TRUE WITH_GFX_H264=ON WITH_GPROF=OFF WITH_GSM=false WITH_GSSAPI=OFF WITH_GSSAPI_HEIMDAL=false WITH_GSTREAMER_0_10=OFF WITH_GSTREAMER_1_0=false WITH_ICU=true WITH_IPP=OFF WITH_JPEG=false WITH_LAME=false WITH_LIBRARY_VERSIONING=ON WITH_LIBSYSTEMD=OFF WITH_MACAUDIO=OFF WITH_MACAUDIO=OFF WITH_MACAUDIO_AVAILABLE=0 WITH_MANPAGES=true WITH_MBEDTLS=OFF WITH_OPENCL=OFF WITH_OPENH264=false WITH_OPENSLES=OFF WITH_OPENSSL=ON WITH_OSS=ON WITH_PCSC=false WITH_PROFILER=OFF WITH_PULSE=false WITH_SAMPLE=OFF WITH_SANITIZE_ADDRESS=OFF WITH_SANITIZE_ADDRESS_AVAILABLE=1 WITH_SANITIZE_MEMORY=OFF WITH_SANITIZE_MEMORY_AVAILABLE=1 WITH_SANITIZE_THREAD=OFF WITH_SANITIZE_THREAD_AVAILABLE=1 WITH_SERVER=OFF WITH_SERVER_INTERFACE=OFF WITH_SMARTCARD_INSPECT=OFF WITH_SOXR=false WITH_SSE2=true WITH_SWSCALE=true WITH_THIRD_PARTY=OFF WITH_VAAPI=OFF WITH_VALGRIND_MEMCHECK=OFF WITH_VALGRIND_MEMCHECK_AVAILABLE=1 WITH_WAYLAND=false WITH_WINPR_TOOLS=ON WITH_X11=ON WITH_X264=OFF WITH_XCURSOR=ON WITH_XEXT=ON WITH_XFIXES=ON WITH_XI=ON WITH_XINERAMA=ON WITH_XKBFILE=ON WITH_XRANDR=ON WITH_XRENDER=ON WITH_XSHM=ON WITH_XV=ON WITH_ZLIB=ON

Build type:          Release
CFLAGS:              -O2 -pipe -march=skylake  -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing -Wno-unused-parameter -Wno-unused-macros -Wno-padded -Wno-c11-extensions -Wno-gnu -Wno-unused-command-line-argument -Wno-deprecated-declarations -fno-omit-frame-pointer -DWINPR_DLL
Compiler:            Clang, 11.0.1