Merge branch 'upstream'
Former-commit-id: ef78c7dba73687fda2967710fdd7158ff8439c0c
This commit is contained in:
commit
99540905be
@ -1 +1 @@
|
||||
e2349164fad4ccd2424944cf6b3605ae76e1f876
|
||||
1892799cec7ada77bf0412de6037695b26342760
|
@ -1 +1 @@
|
||||
1e5e08337bc1443e8611aa9a92c9fd36e0baf00f
|
||||
70613a61062dae31e2ddc737e6095df647b9222a
|
@ -41,7 +41,7 @@ static partial class Consts
|
||||
// Use these assembly version constants to make code more maintainable.
|
||||
//
|
||||
|
||||
public const string MonoVersion = "6.6.0.108";
|
||||
public const string MonoVersion = "6.6.0.110";
|
||||
public const string MonoCompany = "Mono development team";
|
||||
public const string MonoProduct = "Mono Common Language Infrastructure";
|
||||
public const string MonoCopyright = "(c) Various Mono authors";
|
||||
|
@ -899,6 +899,40 @@ namespace MonoTests.System.Reflection.Emit
|
||||
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void MethodInfoGetParametersCrash () {
|
||||
// Regression test for https://github.com/mono/mono/issues/16570
|
||||
//
|
||||
// MethodInfo.GetParameters() called on a dynamic assembly would attempt to copy the custom_name and cookie, which could be junk depending
|
||||
// on how the union is being used.
|
||||
var aName = new AssemblyName("TestAssembly");
|
||||
var testAssembly = AppDomain.CurrentDomain.DefineDynamicAssembly(aName, AssemblyBuilderAccess.RunAndSave);
|
||||
var testModule = testAssembly.DefineDynamicModule(aName.Name, aName.Name + ".dll");
|
||||
|
||||
var typeBuilder = testModule.DefineType("TestType");
|
||||
|
||||
var ctorBuilder = typeBuilder.DefineConstructor(MethodAttributes.Public, CallingConventions.Standard, Type.EmptyTypes);
|
||||
|
||||
var ctorIl = ctorBuilder.GetILGenerator();
|
||||
ctorIl.Emit(OpCodes.Ret);
|
||||
|
||||
var methodBuilder = typeBuilder.DefineMethod("TestMethod", MethodAttributes.Public, typeof(void), new[] { typeof(int[]) });
|
||||
methodBuilder.DefineParameter(0, ParameterAttributes.Retval, null);
|
||||
var paramBuilder = methodBuilder.DefineParameter(1, ParameterAttributes.None, null);
|
||||
|
||||
var attrCtor = typeof(MarshalAsAttribute).GetConstructor(new[] { typeof(UnmanagedType) });
|
||||
object[] ctorArgs = { UnmanagedType.LPArray };
|
||||
var attr = new CustomAttributeBuilder(attrCtor, ctorArgs);
|
||||
paramBuilder.SetCustomAttribute(attr);
|
||||
|
||||
var methodIl = methodBuilder.GetILGenerator();
|
||||
methodIl.Emit(OpCodes.Ret);
|
||||
|
||||
var createdType = typeBuilder.CreateType();
|
||||
|
||||
var methodInfo = createdType.GetMethod("TestMethod", BindingFlags.Instance | BindingFlags.Public);
|
||||
methodInfo.GetParameters();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1 +1 @@
|
||||
b10ab205f4ddf7ade4f67c298be0e63e3c5f8f21
|
||||
caf320d7af68ab2292a74eaebc24abaaa73bc823
|
@ -1 +1 @@
|
||||
e3f5bd3451532718c09696f79f48473f70fa4fda
|
||||
6e8d50c11337ba8f959ec423db910c0b07ab10e8
|
@ -1 +1 @@
|
||||
3663feb80116629dcca2773e113a1deafac0bce0
|
||||
976719b6445a59f2bf752893a8f522a8bb79acd7
|
@ -1 +1 @@
|
||||
327b3da707a9b6f16d9231839094d1ca0765c5f5
|
||||
88a1a82e64083f00bace15e5a311c0b122c253dd
|
@ -1 +1 @@
|
||||
4bc82e5018b862e746408c4226aaabb48a39c7ce
|
||||
4926d847d735b80ad575ac900921accb700e8903
|
@ -1 +1 @@
|
||||
7fc65f5a9b87a7c64125074e2dcf74a3ae422bb4
|
||||
40297b60f2bc031edde89c3c6005261256e6af6c
|
@ -1 +1 @@
|
||||
50c42c6133e6f0da5d405fe88fa3fe18c494d6e7
|
||||
21d681f5d1db13f93644fc3c267c0835414019af
|
@ -1 +1 @@
|
||||
b10ab205f4ddf7ade4f67c298be0e63e3c5f8f21
|
||||
caf320d7af68ab2292a74eaebc24abaaa73bc823
|
@ -1 +1 @@
|
||||
e3f5bd3451532718c09696f79f48473f70fa4fda
|
||||
6e8d50c11337ba8f959ec423db910c0b07ab10e8
|
@ -1 +1 @@
|
||||
3663feb80116629dcca2773e113a1deafac0bce0
|
||||
976719b6445a59f2bf752893a8f522a8bb79acd7
|
@ -1 +1 @@
|
||||
327b3da707a9b6f16d9231839094d1ca0765c5f5
|
||||
88a1a82e64083f00bace15e5a311c0b122c253dd
|
@ -1 +1 @@
|
||||
4bc82e5018b862e746408c4226aaabb48a39c7ce
|
||||
4926d847d735b80ad575ac900921accb700e8903
|
@ -1 +1 @@
|
||||
7fc65f5a9b87a7c64125074e2dcf74a3ae422bb4
|
||||
40297b60f2bc031edde89c3c6005261256e6af6c
|
@ -1 +1 @@
|
||||
130318c7d2a52a90714b422cfad67998f7bb3cf7
|
||||
22403c79d060f70ba34580a710c36d91f3d7c34c
|
@ -1 +1 @@
|
||||
50c42c6133e6f0da5d405fe88fa3fe18c494d6e7
|
||||
21d681f5d1db13f93644fc3c267c0835414019af
|
@ -1 +1 @@
|
||||
b10ab205f4ddf7ade4f67c298be0e63e3c5f8f21
|
||||
caf320d7af68ab2292a74eaebc24abaaa73bc823
|
@ -1 +1 @@
|
||||
e3f5bd3451532718c09696f79f48473f70fa4fda
|
||||
6e8d50c11337ba8f959ec423db910c0b07ab10e8
|
@ -1 +1 @@
|
||||
3663feb80116629dcca2773e113a1deafac0bce0
|
||||
976719b6445a59f2bf752893a8f522a8bb79acd7
|
@ -1 +1 @@
|
||||
327b3da707a9b6f16d9231839094d1ca0765c5f5
|
||||
88a1a82e64083f00bace15e5a311c0b122c253dd
|
@ -1 +1 @@
|
||||
4bc82e5018b862e746408c4226aaabb48a39c7ce
|
||||
4926d847d735b80ad575ac900921accb700e8903
|
@ -1 +1 @@
|
||||
7fc65f5a9b87a7c64125074e2dcf74a3ae422bb4
|
||||
40297b60f2bc031edde89c3c6005261256e6af6c
|
@ -1 +1 @@
|
||||
130318c7d2a52a90714b422cfad67998f7bb3cf7
|
||||
22403c79d060f70ba34580a710c36d91f3d7c34c
|
@ -1 +1 @@
|
||||
50c42c6133e6f0da5d405fe88fa3fe18c494d6e7
|
||||
21d681f5d1db13f93644fc3c267c0835414019af
|
@ -1 +1 @@
|
||||
b10ab205f4ddf7ade4f67c298be0e63e3c5f8f21
|
||||
caf320d7af68ab2292a74eaebc24abaaa73bc823
|
@ -1 +1 @@
|
||||
e3f5bd3451532718c09696f79f48473f70fa4fda
|
||||
6e8d50c11337ba8f959ec423db910c0b07ab10e8
|
@ -1 +1 @@
|
||||
9bcfceec699d6367b78ca0c5399160d4bdf5c80a
|
||||
2898bed814b77dafab7c2592e8971fb8b05c0e8e
|
@ -1 +1 @@
|
||||
327b3da707a9b6f16d9231839094d1ca0765c5f5
|
||||
88a1a82e64083f00bace15e5a311c0b122c253dd
|
@ -1 +1 @@
|
||||
4bc82e5018b862e746408c4226aaabb48a39c7ce
|
||||
4926d847d735b80ad575ac900921accb700e8903
|
@ -1 +1 @@
|
||||
7fc65f5a9b87a7c64125074e2dcf74a3ae422bb4
|
||||
40297b60f2bc031edde89c3c6005261256e6af6c
|
@ -1 +1 @@
|
||||
130318c7d2a52a90714b422cfad67998f7bb3cf7
|
||||
22403c79d060f70ba34580a710c36d91f3d7c34c
|
@ -1 +1 @@
|
||||
b54ef7f2f86747166ea4b8a626acea06a69b43a5
|
||||
7c4a107bea57f9283f659879f057d341afe17f6f
|
@ -2369,13 +2369,16 @@ mono_method_get_marshal_info (MonoMethod *method, MonoMarshalSpec **mspecs)
|
||||
((MonoDynamicImage*)m_class_get_image (method->klass))->method_aux_hash, method);
|
||||
if (method_aux && method_aux->param_marshall) {
|
||||
MonoMarshalSpec **dyn_specs = method_aux->param_marshall;
|
||||
for (i = 0; i < signature->param_count + 1; ++i)
|
||||
for (i = 0; i < signature->param_count + 1; ++i) {
|
||||
if (dyn_specs [i]) {
|
||||
mspecs [i] = g_new0 (MonoMarshalSpec, 1);
|
||||
memcpy (mspecs [i], dyn_specs [i], sizeof (MonoMarshalSpec));
|
||||
mspecs [i]->data.custom_data.custom_name = g_strdup (dyn_specs [i]->data.custom_data.custom_name);
|
||||
mspecs [i]->data.custom_data.cookie = g_strdup (dyn_specs [i]->data.custom_data.cookie);
|
||||
if (mspecs [i]->native == MONO_NATIVE_CUSTOM) {
|
||||
mspecs [i]->data.custom_data.custom_name = g_strdup (dyn_specs [i]->data.custom_data.custom_name);
|
||||
mspecs [i]->data.custom_data.cookie = g_strdup (dyn_specs [i]->data.custom_data.cookie);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
@ -1 +1 @@
|
||||
f8779a607fd50b42ee7c6b46ca44b20077d5aef4
|
||||
97f1d8e077e9c636d89442c9e3a07fe7ba57d205
|
@ -1 +1 @@
|
||||
#define FULL_VERSION "explicit/bd72952"
|
||||
#define FULL_VERSION "explicit/9e6def1"
|
||||
|
@ -1496,10 +1496,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@clean-local:
|
||||
@HOST_WIN32_TRUE@clean-local:
|
||||
@CROSS_COMPILE_TRUE@test-local:
|
||||
@HOST_WIN32_TRUE@test-local:
|
||||
@CROSS_COMPILE_TRUE@clean-local:
|
||||
@HOST_WIN32_TRUE@clean-local:
|
||||
clean: clean-am
|
||||
|
||||
clean-am: clean-checkPROGRAMS clean-generic clean-libtool clean-local \
|
||||
|
@ -346,7 +346,7 @@ mono_merp_send (MERPStruct *merp)
|
||||
if (WIFEXITED(status)) {
|
||||
exit_status = WEXITSTATUS(status);
|
||||
exit_success = TRUE;
|
||||
invoke_success = exit_status == TRUE;
|
||||
invoke_success = (exit_status == 0);
|
||||
break;
|
||||
} else if (WIFSIGNALED(status)) {
|
||||
break;
|
||||
|
BIN
po/mcs/de.gmo
BIN
po/mcs/de.gmo
Binary file not shown.
@ -1 +1 @@
|
||||
e727019f93cee4e44d819fe38f455666a5410ec7
|
||||
09fd221bc0ec10d0419aeb8d117cd3bd8fceb7f4
|
BIN
po/mcs/es.gmo
BIN
po/mcs/es.gmo
Binary file not shown.
@ -1 +1 @@
|
||||
cfd7c03350f27a21f5e8f316dc86775666cce613
|
||||
2124fa078b1871a7613be97ca0e5c7c59753be38
|
BIN
po/mcs/ja.gmo
BIN
po/mcs/ja.gmo
Binary file not shown.
@ -1 +1 @@
|
||||
aec18ddaf444a4ce62c19bfe092eb30d1b754407
|
||||
4eba3ac18722dedf93f574c649ac970e80a23f29
|
@ -6,9 +6,9 @@
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: mono 6.6.0.108\n"
|
||||
"Project-Id-Version: mono 6.6.0.110\n"
|
||||
"Report-Msgid-Bugs-To: http://www.mono-project.com/Bugs\n"
|
||||
"POT-Creation-Date: 2019-10-04 08:30+0000\n"
|
||||
"POT-Creation-Date: 2019-10-05 08:30+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"
|
||||
|
BIN
po/mcs/pt_BR.gmo
BIN
po/mcs/pt_BR.gmo
Binary file not shown.
@ -1 +1 @@
|
||||
98fb9d36ed14a4c6389304d8fd50110df62cc70a
|
||||
95f1b4966f8c63c3290557f273f7656bb72a4ab4
|
Loading…
x
Reference in New Issue
Block a user