diff options
author | romain <romain@FreeBSD.org> | 2010-10-19 01:40:17 +0800 |
---|---|---|
committer | romain <romain@FreeBSD.org> | 2010-10-19 01:40:17 +0800 |
commit | bede72413a308198220b588fcff59034c8558bac (patch) | |
tree | ab0ef3e349a573721a26a6a45d06c9e527dda3ee /lang | |
parent | 18934f9e50113522249ceb823094e5dec0cab6c7 (diff) | |
download | freebsd-ports-gnome-bede72413a308198220b588fcff59034c8558bac.tar.gz freebsd-ports-gnome-bede72413a308198220b588fcff59034c8558bac.tar.zst freebsd-ports-gnome-bede72413a308198220b588fcff59034c8558bac.zip |
- Fix SigSegv when calling a managed handler.
Diffstat (limited to 'lang')
-rw-r--r-- | lang/mono/Makefile | 1 | ||||
-rw-r--r-- | lang/mono/files/patch-libgc_pthread__support.c | 17 |
2 files changed, 18 insertions, 0 deletions
diff --git a/lang/mono/Makefile b/lang/mono/Makefile index 7f9fee751da6..060d5d01b152 100644 --- a/lang/mono/Makefile +++ b/lang/mono/Makefile @@ -7,6 +7,7 @@ PORTNAME= mono PORTVERSION= 2.6.7 +PORTREVISION= 1 CATEGORIES= lang MASTER_SITES= http://ftp.novell.com/pub/mono/sources/${PORTNAME}/ diff --git a/lang/mono/files/patch-libgc_pthread__support.c b/lang/mono/files/patch-libgc_pthread__support.c new file mode 100644 index 000000000000..3a3526bc564d --- /dev/null +++ b/lang/mono/files/patch-libgc_pthread__support.c @@ -0,0 +1,17 @@ + +$FreeBSD$ + +https://bugzilla.novell.com/show_bug.cgi?id=647248 + +--- libgc/pthread_support.c.orig ++++ libgc/pthread_support.c +@@ -1344,7 +1344,8 @@ void * GC_start_routine_head(void * arg, void *base_addr, + if (start) *start = si -> start_routine; + if (start_arg) *start_arg = si -> arg; + +- sem_post(&(si -> registered)); /* Last action on si. */ ++ if (!(si->flags & FOREIGN_THREAD)) ++ sem_post(&(si -> registered)); /* Last action on si. */ + /* OK to deallocate. */ + # if defined(THREAD_LOCAL_ALLOC) && !defined(DBG_HDRS_ALL) + LOCK(); |