From owner-svn-ports-head@freebsd.org Wed May 29 15:45:07 2019 Return-Path: Delivered-To: svn-ports-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 557A115A5638; Wed, 29 May 2019 15:45:07 +0000 (UTC) (envelope-from martymac@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id E70B871FA6; Wed, 29 May 2019 15:45:06 +0000 (UTC) (envelope-from martymac@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id D4A933E32; Wed, 29 May 2019 15:45:06 +0000 (UTC) (envelope-from martymac@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id x4TFj6WO076594; Wed, 29 May 2019 15:45:06 GMT (envelope-from martymac@FreeBSD.org) Received: (from martymac@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id x4TFj6mZ076592; Wed, 29 May 2019 15:45:06 GMT (envelope-from martymac@FreeBSD.org) Message-Id: <201905291545.x4TFj6mZ076592@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: martymac set sender to martymac@FreeBSD.org using -f From: Ganael LAPLANCHE Date: Wed, 29 May 2019 15:45:06 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r502969 - in head/games/flightgear: . files X-SVN-Group: ports-head X-SVN-Commit-Author: martymac X-SVN-Commit-Paths: in head/games/flightgear: . files X-SVN-Commit-Revision: 502969 X-SVN-Commit-Repository: ports MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: E70B871FA6 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.95 / 15.00]; local_wl_from(0.00)[FreeBSD.org]; NEURAL_HAM_MEDIUM(-1.00)[-0.999,0]; NEURAL_HAM_SHORT(-0.95)[-0.955,0]; NEURAL_HAM_LONG(-1.00)[-1.000,0]; ASN(0.00)[asn:11403, ipnet:2610:1c1:1::/48, country:US] X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 May 2019 15:45:07 -0000 Author: martymac Date: Wed May 29 15:45:06 2019 New Revision: 502969 URL: https://svnweb.freebsd.org/changeset/ports/502969 Log: Re-enable EVENT_INPUT support on 13-CURRENT Patch has been accepted upstream, see: https://sourceforge.net/p/flightgear/flightgear/merge-requests/165/ so we use it as a backport, waiting for next Flightgear version. PR: 237835 Submitted by: Aaron Farias Added: head/games/flightgear/files/patch-src-Input-FGLinuxEventInput.cxx (contents, props changed) Modified: head/games/flightgear/Makefile Modified: head/games/flightgear/Makefile ============================================================================== --- head/games/flightgear/Makefile Wed May 29 15:29:18 2019 (r502968) +++ head/games/flightgear/Makefile Wed May 29 15:45:06 2019 (r502969) @@ -3,7 +3,7 @@ PORTNAME= flightgear PORTVERSION= 2018.3.2 -PORTREVISION= 3 +PORTREVISION= 4 CATEGORIES= games MASTER_SITES= SF/flightgear/release-${PORTVERSION:R} @@ -22,7 +22,8 @@ LIB_DEPENDS= libpng.so:graphics/png \ libcurl.so:ftp/curl \ libudev.so:devel/libudev-devd BUILD_DEPENDS= ${LOCALBASE}/lib/libplibsl.a:x11-toolkits/plib \ - ${LOCALBASE}/lib/libSimGearCore.a:devel/simgear + ${LOCALBASE}/lib/libSimGearCore.a:devel/simgear \ + ${LOCALBASE}/include/linux/input.h:devel/evdev-proto RUN_DEPENDS= ${LOCALBASE}/lib/libplibsl.a:x11-toolkits/plib \ ${LOCALBASE}/lib/libSimGearCore.a:devel/simgear \ ${LOCALBASE}/share/flightgear/version:games/flightgear-data @@ -59,15 +60,4 @@ post-patch: @${REINPLACE_CMD} -Ei .c++20 '/file|set_prop/s/version[[:>:]]/&.txt/' \ ${WRKSRC}/CMakeLists.txt -.include - -# XXX Disable EVENT_INPUT on 13-CURRENT to avoid crashing during startup -# See: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=237835 -# and: https://svnweb.freebsd.org/base?view=revision&revision=340387 -.if ${OSVERSION} >= 1300003 -CMAKE_ARGS+= -DEVENT_INPUT:BOOL=OFF -.else -BUILD_DEPENDS+= ${LOCALBASE}/include/linux/input.h:devel/evdev-proto -.endif - -.include +.include Added: head/games/flightgear/files/patch-src-Input-FGLinuxEventInput.cxx ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/games/flightgear/files/patch-src-Input-FGLinuxEventInput.cxx Wed May 29 15:45:06 2019 (r502969) @@ -0,0 +1,29 @@ +Avoid crashing when udev_device_get_parent() returns a NULL pointer + +Backport from commit 66e6afb + +--- src/Input/FGLinuxEventInput.cxx.orig ++++ src/Input/FGLinuxEventInput.cxx +@@ -481,13 +481,15 @@ void FGLinuxEventInput::postinit() + struct udev_device *dev = udev_device_new_from_syspath(udev, path); + const char * node = udev_device_get_devnode(dev); + +- dev = udev_device_get_parent( dev ); +- const char * name = udev_device_get_sysattr_value(dev,"name"); +- const char * serial = udev_device_get_sysattr_value(dev, "serial"); +- SG_LOG(SG_INPUT,SG_DEBUG, "name=" << (name?name:"") << ", node=" << (node?node:"")); +- if( name && node ) { +- std::string serialString = serial ? serial : std::string{}; +- AddDevice( new FGLinuxInputDevice(name, node, serialString) ); ++ struct udev_device * parent_dev = udev_device_get_parent( dev ); ++ if ( parent_dev != NULL ) { ++ const char * name = udev_device_get_sysattr_value(parent_dev,"name"); ++ const char * serial = udev_device_get_sysattr_value(parent_dev, "serial"); ++ SG_LOG(SG_INPUT,SG_DEBUG, "name=" << (name?name:"") << ", node=" << (node?node:"")); ++ if( name && node ) { ++ std::string serialString = serial ? serial : std::string{}; ++ AddDevice( new FGLinuxInputDevice(name, node, serialString) ); ++ } + } + + udev_device_unref(dev);