Merge branch 'upstream'

Former-commit-id: ef8db504b1e6c7344d50187d02e557f5f88e8c6b
This commit is contained in:
Xamarin Public Jenkins (auto-signing) 2019-05-11 09:04:00 +00:00
commit 657c6283fe
58 changed files with 83 additions and 91 deletions

View File

@ -1 +1 @@
5c2286d69e2b1592a3bb7109af675eda2ab00fec
cf0f469886c22efa3da036a015eba959d680b028

View File

@ -1 +1 @@
c1d028a3fafdc23199df14719085e90004fa9dbb
57ba5a1f47a79158b3fe41de28448392f5a62802

View File

@ -41,7 +41,7 @@ static partial class Consts
// Use these assembly version constants to make code more maintainable.
//
public const string MonoVersion = "6.0.0.230";
public const string MonoVersion = "6.0.0.234";
public const string MonoCompany = "Mono development team";
public const string MonoProduct = "Mono Common Language Infrastructure";
public const string MonoCopyright = "(c) Various Mono authors";

View File

@ -1 +1 @@
8960a37d653039a939985a12347c4314a5a51024
c3ddffea573c68a5367904f75be49e7c850dbfe9

View File

@ -1 +1 @@
1bebbd31ba08fbb639edab2308d54067ca5a76e1
a965f8ea3e82683e45e5af1d756e2bf855b0c076

View File

@ -1 +1 @@
e37edc7ec583cebdbb28a44448621959aac3b6d1
b4c7219040842f1efa9d4f3ca07835098e4908e1

View File

@ -1 +1 @@
f98f7a0854157e74434ed6ca591d3f44cc05dfef
5308cb07794e3f18e3c3e7d5f60e51c2212061bf

View File

@ -1 +1 @@
a40550ce059f422b02b777ed7c4231143e9bc979
fadca87bcc746555f0d60819dc0a35ddb4a33258

View File

@ -1 +1 @@
4d176567891a9d0c459c114f930995c889db0678
27e1b8592dc3aa5bf8b80b4f459e067858c104ea

View File

@ -1 +1 @@
bfcd14f430932203f7ef13fb87df53c5d05b439e
1e8c70edb002e83750d9ed9c7140e301e8df391e

View File

@ -1 +1 @@
8960a37d653039a939985a12347c4314a5a51024
c3ddffea573c68a5367904f75be49e7c850dbfe9

View File

@ -1 +1 @@
1bebbd31ba08fbb639edab2308d54067ca5a76e1
a965f8ea3e82683e45e5af1d756e2bf855b0c076

View File

@ -1 +1 @@
e37edc7ec583cebdbb28a44448621959aac3b6d1
b4c7219040842f1efa9d4f3ca07835098e4908e1

View File

@ -1 +1 @@
f98f7a0854157e74434ed6ca591d3f44cc05dfef
5308cb07794e3f18e3c3e7d5f60e51c2212061bf

View File

@ -1 +1 @@
a40550ce059f422b02b777ed7c4231143e9bc979
fadca87bcc746555f0d60819dc0a35ddb4a33258

View File

@ -1 +1 @@
4d176567891a9d0c459c114f930995c889db0678
27e1b8592dc3aa5bf8b80b4f459e067858c104ea

View File

@ -1 +1 @@
bfcd14f430932203f7ef13fb87df53c5d05b439e
1e8c70edb002e83750d9ed9c7140e301e8df391e

View File

@ -1 +1 @@
8960a37d653039a939985a12347c4314a5a51024
c3ddffea573c68a5367904f75be49e7c850dbfe9

View File

@ -1 +1 @@
1bebbd31ba08fbb639edab2308d54067ca5a76e1
a965f8ea3e82683e45e5af1d756e2bf855b0c076

View File

@ -1 +1 @@
e37edc7ec583cebdbb28a44448621959aac3b6d1
b4c7219040842f1efa9d4f3ca07835098e4908e1

View File

@ -1 +1 @@
f98f7a0854157e74434ed6ca591d3f44cc05dfef
5308cb07794e3f18e3c3e7d5f60e51c2212061bf

View File

@ -1 +1 @@
a40550ce059f422b02b777ed7c4231143e9bc979
fadca87bcc746555f0d60819dc0a35ddb4a33258

View File

@ -1 +1 @@
4d176567891a9d0c459c114f930995c889db0678
27e1b8592dc3aa5bf8b80b4f459e067858c104ea

View File

@ -1 +1 @@
bfcd14f430932203f7ef13fb87df53c5d05b439e
1e8c70edb002e83750d9ed9c7140e301e8df391e

View File

@ -1 +1 @@
8960a37d653039a939985a12347c4314a5a51024
c3ddffea573c68a5367904f75be49e7c850dbfe9

View File

@ -1 +1 @@
1bebbd31ba08fbb639edab2308d54067ca5a76e1
a965f8ea3e82683e45e5af1d756e2bf855b0c076

View File

@ -1 +1 @@
48146a199e025221ce7fc4bfd2c0fd678030fbb7
7dde979f443fe20879099e9af9fb2af2a46d6a10

View File

@ -1 +1 @@
f98f7a0854157e74434ed6ca591d3f44cc05dfef
5308cb07794e3f18e3c3e7d5f60e51c2212061bf

View File

@ -1 +1 @@
a40550ce059f422b02b777ed7c4231143e9bc979
fadca87bcc746555f0d60819dc0a35ddb4a33258

View File

@ -1 +1 @@
4d176567891a9d0c459c114f930995c889db0678
27e1b8592dc3aa5bf8b80b4f459e067858c104ea

View File

@ -1 +1 @@
174dfbf25db5e6b10b5fd5f1b49bca573c82c754
ad3d9efc7c40a085ab2e3b6e6cc30c83430b99c6

View File

@ -1458,7 +1458,7 @@ mono_domain_fire_assembly_load (MonoAssembly *assembly, gpointer user_data)
void *params [1];
params [0] = MONO_HANDLE_RAW (reflection_assembly);
mono_runtime_invoke_handle (assembly_load_method, appdomain, params, error);
mono_runtime_invoke_handle_void (assembly_load_method, appdomain, params, error);
leave:
mono_error_cleanup (error);
HANDLE_FUNCTION_RETURN ();

View File

@ -856,7 +856,7 @@ create_custom_attr (MonoImage *image, MonoMethod *method, const guchar *data, gu
attr = mono_object_new_handle (mono_domain_get (), method->klass, error);
goto_if_nok (error, fail);
mono_runtime_invoke_handle (method, attr, NULL, error);
mono_runtime_invoke_handle_void (method, attr, NULL, error);
goto_if_nok (error, fail);
goto exit;
@ -1456,7 +1456,7 @@ create_custom_attr_data (MonoImage *image, MonoCustomAttrEntry *cattr, MonoError
params [2] = &cattr->data;
params [3] = &cattr->data_size;
mono_runtime_invoke_handle (ctor, attr, params, error);
mono_runtime_invoke_handle_void (ctor, attr, params, error);
goto fail;
result_null:
attr = MONO_HANDLE_CAST (MonoObject, mono_new_null ());

View File

@ -202,7 +202,7 @@ create_exception_two_strings (MonoClass *klass, MonoStringHandle a1, MonoStringH
gpointer args [ ] = { MONO_HANDLE_RAW (a1), MONO_HANDLE_RAW (a2) };
mono_runtime_invoke_handle (method, o, args, error);
mono_runtime_invoke_handle_void (method, o, args, error);
if (!is_ok (error))
o = mono_new_null ();
@ -848,7 +848,7 @@ mono_get_exception_type_initialization_handle (const gchar *type_name, MonoExcep
MonoObjectHandle exc = mono_object_new_handle (domain, klass, error);
mono_error_assert_ok (error);
mono_runtime_invoke_handle (method, exc, args, error);
mono_runtime_invoke_handle_void (method, exc, args, error);
goto_if_nok (error, return_null);
goto exit;
return_null:
@ -1092,7 +1092,7 @@ mono_get_exception_runtime_wrapped_handle (MonoObjectHandle wrapped_exception, M
gpointer args [ ] = { MONO_HANDLE_RAW (wrapped_exception) };
mono_runtime_invoke_handle (method, o, args, error);
mono_runtime_invoke_handle_void (method, o, args, error);
goto_if_nok (error, return_null);
goto exit;
return_null:

View File

@ -1 +1 @@
0ff1500294c48f387a0997e8d72d981f9548e7ae
6076faecf1b410e864d6067f54dd8f697fb3333b

View File

@ -1 +1 @@
efc581af00f42fb46d61f4d094635bef1f7908de
51ee0d424f215161f1eaa1df0b4e899b0d8d269b

View File

@ -1310,7 +1310,7 @@ method_body_object_construct (MonoDomain *domain, MonoClass *unused_class, MonoM
params [3] = &init_locals_param;
params [4] = &sig_token_param;
params [5] = &max_stack_param;
mono_runtime_invoke_handle (ctor, MONO_HANDLE_CAST (MonoObject, ret), params, error);
mono_runtime_invoke_handle_void (ctor, MONO_HANDLE_CAST (MonoObject, ret), params, error);
mono_error_assert_ok (error);
return ret;

View File

@ -433,9 +433,6 @@ mono_thread_internal_describe (MonoInternalThread *internal, GString *str);
gboolean
mono_thread_internal_is_current (MonoInternalThread *internal);
gboolean
mono_thread_internal_is_current_handle (MonoInternalThreadHandle internal);
gboolean
mono_threads_is_current_thread_in_protected_block (void);

View File

@ -1 +1 @@
3f0dd8c6528dfba64860b6d65f9f51d5fd45df22
6f5a08f73e135167470b565447164d792b75be19

View File

@ -37,27 +37,32 @@ static gpointer
mono_w32mutex_open (const char* utf8_name, gint32 rights G_GNUC_UNUSED, gint32 *win32error);
static void
thread_own_mutex (MonoInternalThreadHandle internal, gpointer handle, MonoW32Handle *handle_data)
thread_own_mutex (MonoInternalThread *internal, gpointer handle, MonoW32Handle *handle_data)
{
// Thread and InternalThread are pinned/mature.
// Take advantage of that and do not use handles here.
/* if we are not on the current thread, there is a
* race condition when allocating internal->owned_mutexes */
g_assert (mono_thread_internal_is_current_handle (internal));
g_assert (mono_thread_internal_is_current (internal));
if (!MONO_HANDLE_GETVAL (internal, owned_mutexes))
MONO_HANDLE_SETVAL(internal, owned_mutexes, GPtrArray*, g_ptr_array_new ());
if (!internal->owned_mutexes)
internal->owned_mutexes = g_ptr_array_new ();
g_ptr_array_add (MONO_HANDLE_GETVAL (internal, owned_mutexes), mono_w32handle_duplicate (handle_data));
g_ptr_array_add (internal->owned_mutexes, mono_w32handle_duplicate (handle_data));
}
static void
thread_disown_mutex (MonoInternalThreadHandle internal, gpointer handle)
thread_disown_mutex (MonoInternalThread *internal, gpointer handle)
{
// Thread and InternalThread are pinned/mature.
// Take advantage of that and do not use handles here.
gboolean removed;
g_assert (mono_thread_internal_is_current_handle (internal));
g_assert (mono_thread_internal_is_current (internal));
g_assert (MONO_HANDLE_GETVAL (internal, owned_mutexes));
removed = g_ptr_array_remove (MONO_HANDLE_GETVAL (internal, owned_mutexes), handle);
g_assert (internal->owned_mutexes);
removed = g_ptr_array_remove (internal->owned_mutexes, handle);
g_assert (removed);
mono_w32handle_close (handle);
@ -66,8 +71,6 @@ thread_disown_mutex (MonoInternalThreadHandle internal, gpointer handle)
static void
mutex_handle_signal (MonoW32Handle *handle_data)
{
HANDLE_FUNCTION_ENTER ();
MonoW32HandleMutex *mutex_handle;
pthread_t tid;
@ -89,7 +92,7 @@ mutex_handle_signal (MonoW32Handle *handle_data)
mutex_handle->recursion--;
if (mutex_handle->recursion == 0) {
thread_disown_mutex (mono_thread_internal_current_handle (), handle_data);
thread_disown_mutex (mono_thread_internal_current (), handle_data);
mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER_MUTEX, "%s: unlocking %s handle %p, tid: %p recusion : %d",
__func__, mono_w32handle_get_typename (handle_data->type), handle_data, (gpointer) mutex_handle->tid, mutex_handle->recursion);
@ -98,15 +101,11 @@ mutex_handle_signal (MonoW32Handle *handle_data)
mono_w32handle_set_signal_state (handle_data, TRUE, FALSE);
}
}
HANDLE_FUNCTION_RETURN ();
}
static gboolean
mutex_handle_own (MonoW32Handle *handle_data, gboolean *abandoned)
{
HANDLE_FUNCTION_ENTER ();
MonoW32HandleMutex *mutex_handle;
*abandoned = FALSE;
@ -123,7 +122,7 @@ mutex_handle_own (MonoW32Handle *handle_data, gboolean *abandoned)
mutex_handle->tid = pthread_self ();
mutex_handle->recursion = 1;
thread_own_mutex (mono_thread_internal_current_handle (), handle_data, handle_data);
thread_own_mutex (mono_thread_internal_current (), handle_data, handle_data);
}
if (mutex_handle->abandoned) {
@ -132,8 +131,7 @@ mutex_handle_own (MonoW32Handle *handle_data, gboolean *abandoned)
}
mono_w32handle_set_signal_state (handle_data, FALSE, FALSE);
HANDLE_FUNCTION_RETURN_VAL (TRUE);
return TRUE;
}
static gboolean
@ -416,7 +414,7 @@ ves_icall_System_Threading_Mutex_ReleaseMutex_internal (gpointer handle)
mutex_handle->recursion--;
if (mutex_handle->recursion == 0) {
thread_disown_mutex (mono_thread_internal_current_handle (), handle);
thread_disown_mutex (mono_thread_internal_current (), handle);
mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER_MUTEX, "%s: unlocking %s handle %p, tid: %p recusion : %d",
__func__, mono_w32handle_get_typename (handle_data->type), handle, (gpointer) mutex_handle->tid, mutex_handle->recursion);
@ -475,24 +473,22 @@ mono_w32mutex_open (const char* utf8_name, gint32 rights G_GNUC_UNUSED, gint32 *
}
void
mono_w32mutex_abandon (MonoInternalThread *internal_raw)
mono_w32mutex_abandon (MonoInternalThread *internal)
{
HANDLE_FUNCTION_ENTER ()
// Thread and InternalThread are pinned/mature.
// Take advantage of that and do not use handles here.
g_assert (mono_thread_internal_is_current (internal));
MONO_HANDLE_DCL (MonoInternalThread, internal);
if (!internal->owned_mutexes)
return;
g_assert (mono_thread_internal_is_current_handle (internal));
if (!MONO_HANDLE_GETVAL (internal, owned_mutexes))
goto exit;
while (MONO_HANDLE_GETVAL (internal, owned_mutexes)->len) {
while (internal->owned_mutexes->len) {
MonoW32Handle *handle_data;
MonoW32HandleMutex *mutex_handle;
MonoNativeThreadId tid;
gpointer handle;
handle = g_ptr_array_index (MONO_HANDLE_GETVAL (internal, owned_mutexes), 0);
handle = g_ptr_array_index (internal->owned_mutexes, 0);
if (!mono_w32handle_lookup_and_ref (handle, &handle_data))
g_error ("%s: unkown handle %p", __func__, handle);
@ -505,7 +501,7 @@ mono_w32mutex_abandon (MonoInternalThread *internal_raw)
mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_IO_LAYER_MUTEX, "%s: abandoning %s handle %p",
__func__, mono_w32handle_get_typename (handle_data->type), handle);
tid = MONO_UINT_TO_NATIVE_THREAD_ID (MONO_HANDLE_GETVAL (internal, tid));
tid = MONO_UINT_TO_NATIVE_THREAD_ID (internal->tid);
if (!pthread_equal (mutex_handle->tid, tid))
g_error ("%s: trying to release mutex %p acquired by thread %p from thread %p",
@ -528,11 +524,8 @@ mono_w32mutex_abandon (MonoInternalThread *internal_raw)
mono_w32handle_unref (handle_data);
}
g_ptr_array_free (MONO_HANDLE_GETVAL (internal, owned_mutexes), TRUE);
MONO_HANDLE_SETVAL(internal, owned_mutexes, GPtrArray*, NULL);
exit:
HANDLE_FUNCTION_RETURN ();
g_ptr_array_free (internal->owned_mutexes, TRUE);
internal->owned_mutexes = NULL;
}
MonoW32HandleNamespace*

View File

@ -183,7 +183,7 @@ typedef struct {
#endif
#if defined(TARGET_IOS)
#if defined(TARGET_IOS) || defined(TARGET_WATCHOS)
#define MONO_ARCH_HAVE_UNWIND_BACKTRACE 1
#endif

View File

@ -1 +1 @@
#define FULL_VERSION "explicit/7361a4f"
#define FULL_VERSION "explicit/77ddc3a"

View File

@ -418,6 +418,8 @@ sgen_gray_object_queue_dispose (SgenGrayQueue *queue)
SGEN_ASSERT (0, !last_gray_queue_free_list, "Are we disposing two gray queues after another?");
last_gray_queue_free_list = queue->free_list;
mono_os_mutex_destroy (&queue->steal_mutex);
/* just to make sure */
memset (queue, 0, sizeof (SgenGrayQueue));
}

View File

@ -1442,10 +1442,10 @@ distclean-generic:
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
@CROSS_COMPILE_TRUE@test-local:
@HOST_WIN32_TRUE@test-local:
@CROSS_COMPILE_TRUE@clean-local:
@HOST_WIN32_TRUE@clean-local:
@CROSS_COMPILE_TRUE@test-local:
@HOST_WIN32_TRUE@test-local:
clean: clean-am
clean-am: clean-checkPROGRAMS clean-generic clean-libtool clean-local \

View File

@ -515,8 +515,8 @@ distclean-generic:
maintainer-clean-generic:
@echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild."
@ENABLE_MSVC_FALSE@install-exec-local:
@ENABLE_MSVC_FALSE@clean-local:
@ENABLE_MSVC_FALSE@install-exec-local:
clean: clean-am
clean-am: clean-generic clean-libtool clean-local mostlyclean-am

Binary file not shown.

View File

@ -1 +1 @@
5433f25e97c078584a1666eb0ce05d91661fbd9a
52734cb1a7d3cc4acf32d88f1c02eecd01e2a23a

Binary file not shown.

View File

@ -1 +1 @@
6140c7aae46302ae3bc4c2a7628ab4269cf152e6
04b9bfe2d74b35bcf407c2990f72dee00de82cbb

Binary file not shown.

View File

@ -1 +1 @@
2e21cfde8d1bd3330c552b9079d2ae5e550b8b30
d33662e0f9f35141e6e0ccf685208a1152007d90

View File

@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: mono 6.0.0.230\n"
"Project-Id-Version: mono 6.0.0.234\n"
"Report-Msgid-Bugs-To: http://www.mono-project.com/Bugs\n"
"POT-Creation-Date: 2019-05-10 08:11+0000\n"
"POT-Creation-Date: 2019-05-11 08:07+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

Binary file not shown.

View File

@ -1 +1 @@
1ff2bc910eb050e8b693283c718b164bf3ca86b9
4cf25d472f3fec0ebdc4ec7fc35d14091202bb2b