From 90eb5f9095e65a585ee839aba435a50fcaaf1801 Mon Sep 17 00:00:00 2001 From: Ian Lance Taylor Date: Mon, 6 Jan 2014 09:28:52 -0800 Subject: [PATCH] [Go] Fix bug that broke using directors from a thread not created by Go. --- CHANGES.current | 4 ++++ Source/Modules/go.cxx | 2 ++ 2 files changed, 6 insertions(+) diff --git a/CHANGES.current b/CHANGES.current index 7856c796e..431f327bb 100644 --- a/CHANGES.current +++ b/CHANGES.current @@ -5,6 +5,10 @@ See the RELEASENOTES file for a summary of changes in each release. Version 3.0.0 (in progress) ============================ +2014-01-06: ianlancetaylor + [Go] Fix bug that broke using directors from a thread not + created by Go. + 2013-12-24: ptomulik [Python] SF Bug #1297 diff --git a/Source/Modules/go.cxx b/Source/Modules/go.cxx index 3dec6503b..36e5d11d3 100644 --- a/Source/Modules/go.cxx +++ b/Source/Modules/go.cxx @@ -2861,6 +2861,7 @@ private: Printv(f_gc_wrappers, "#pragma dynexport ", wname, " ", wname, "\n", NULL); Printv(f_gc_wrappers, "#pragma cgo_export_static ", wname, " ", wname, "\n", NULL); + Printv(f_gc_wrappers, "#pragma textflag 7\n", NULL); Printv(f_gc_wrappers, "extern void \xc2\xb7", go_name, "();\n", NULL); Printv(f_gc_wrappers, "void\n", NULL); Printv(f_gc_wrappers, wname, "(void *a, int32 n)\n", NULL); @@ -3591,6 +3592,7 @@ private: // The C wrapper code which calls the Go function. Printv(f_gc_wrappers, "#pragma dynexport ", callback_wname, " ", callback_wname, "\n", NULL); Printv(f_gc_wrappers, "#pragma cgo_export_static ", callback_wname, " ", callback_wname, "\n", NULL); + Printv(f_gc_wrappers, "#pragma textflag 7\n", NULL); Printv(f_gc_wrappers, "extern void \xc2\xb7", callback_name, "();\n", NULL); Printv(f_gc_wrappers, "void\n", NULL); Printv(f_gc_wrappers, callback_wname, "(void *a, int32 n)\n", NULL);