svn commit: r378099 - in head/lang/qt5-qml: . files

Raphael Kubo da Costa rakuco at FreeBSD.org
Thu Jan 29 02:11:01 UTC 2015


Author: rakuco
Date: Thu Jan 29 02:11:00 2015
New Revision: 378099
URL: https://svnweb.freebsd.org/changeset/ports/378099
QAT: https://qat.redports.org/buildarchive/r378099/

Log:
  Add upstream commit to fix a crash in devel/qtcreator.
  
  PR:		197079
  Submitted by:	Alex Richardson <arichardson.kde at gmail.com>

Added:
  head/lang/qt5-qml/files/patch-git_cf6e9711   (contents, props changed)
Modified:
  head/lang/qt5-qml/Makefile

Modified: head/lang/qt5-qml/Makefile
==============================================================================
--- head/lang/qt5-qml/Makefile	Thu Jan 29 02:03:09 2015	(r378098)
+++ head/lang/qt5-qml/Makefile	Thu Jan 29 02:11:00 2015	(r378099)
@@ -2,6 +2,7 @@
 
 PORTNAME=	qml
 DISTVERSION=	${QT5_VERSION}
+PORTREVISION=	1
 CATEGORIES=	lang
 PKGNAMEPREFIX=	qt5-
 

Added: head/lang/qt5-qml/files/patch-git_cf6e9711
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/qt5-qml/files/patch-git_cf6e9711	Thu Jan 29 02:11:00 2015	(r378099)
@@ -0,0 +1,26 @@
+commit cf6e97119df5bf17b4a952b257d05d43b7d6ca26
+Author: Alex Richardson <arichardson.kde at gmail.com>
+Date:   Wed Jan 21 09:10:01 2015 +0000
+
+    Don't crash on FreeBSD when computing stack limits
+    
+    On FreeBSD pthread_attr_t is a pointer and is dereferenced when calling
+    pthread_attr_get_np() so if we don't initialize it will probably crash.
+    This is not a problem on glibc systems since there pthread_attr_t is an
+    opaque union an doesn't need to be allocated using malloc().
+    
+    Change-Id: I227685ddf9981974ade08aee8917f7262c301787
+    Reviewed-by: Simon Hausmann <simon.hausmann at theqtcompany.com>
+
+--- src/qml/jsruntime/qv4engine.cpp
++++ src/qml/jsruntime/qv4engine.cpp
+@@ -112,7 +112,8 @@ quintptr getStackLimit()
+     void* stackBottom = 0;
+     pthread_attr_t attr;
+ #if HAVE(PTHREAD_NP_H) && OS(FREEBSD)
+-    if (pthread_attr_get_np(pthread_self(), &attr) == 0) {
++    // on FreeBSD pthread_attr_init() must be called otherwise getting the attrs crashes
++    if (pthread_attr_init(&attr) == 0 && pthread_attr_get_np(pthread_self(), &attr) == 0) {
+ #else
+     if (pthread_getattr_np(pthread_self(), &attr) == 0) {
+ #endif


More information about the svn-ports-all mailing list