Merge branch 'upstream'

Former-commit-id: 988d1bc5ab0839cdea1de3bf34b9d2d242ee6cf7
This commit is contained in:
Xamarin Public Jenkins (auto-signing) 2017-02-15 10:09:34 +00:00
commit 4fe7f17928
41 changed files with 68 additions and 94 deletions

View File

@ -19,7 +19,7 @@ all: update_submodules
SUBMODULE_ERROR='Could not recursively update all git submodules. You may experience compilation problems if some submodules are out of date'
update_submodules:
@$(srcdir)/scripts/update_submodules
@$(srcdir)/scripts/update_submodules.sh
.PHONY: update_submodules

View File

@ -939,7 +939,7 @@ uninstall-am:
all: update_submodules
update_submodules:
@$(srcdir)/scripts/update_submodules
@$(srcdir)/scripts/update_submodules.sh
.PHONY: update_submodules

View File

@ -1 +1 @@
5ee52c595af4a754ddf1cc4e287415421e543537
1f5b54d986e9a0bb2907e076fbde52c66bc7e50d

View File

@ -1 +1 @@
c6c1d89ecade1efd48abd44c9cb42126f11dacff
a04424aabfe6acc33f8fe8cc3671eea3e0b4330b

View File

@ -14,6 +14,7 @@ namespace Mono.Debugger.Soft
ModuleMirror main_module;
AssemblyName aname;
AssemblyDefinition meta;
AppDomainMirror domain;
Dictionary<string, long> typeCacheIgnoreCase = new Dictionary<string, long> (StringComparer.InvariantCultureIgnoreCase);
Dictionary<string, long> typeCache = new Dictionary<string, long> ();
@ -50,6 +51,17 @@ namespace Mono.Debugger.Soft
}
}
// Since Protocol version 2.45
public AppDomainMirror Domain {
get {
if (domain == null) {
vm.CheckProtocolVersion (2, 45);
domain = vm.GetDomain (vm.conn.Assembly_GetIdDomain (id));
}
return domain;
}
}
public virtual AssemblyName GetName () {
if (aname == null) {
string name = vm.conn.Assembly_GetName (id);

View File

@ -420,7 +420,7 @@ namespace Mono.Debugger.Soft
* with newer runtimes, and vice versa.
*/
internal const int MAJOR_VERSION = 2;
internal const int MINOR_VERSION = 43;
internal const int MINOR_VERSION = 45;
enum WPSuspendPolicy {
NONE = 0,
@ -532,7 +532,8 @@ namespace Mono.Debugger.Soft
GET_MANIFEST_MODULE = 3,
GET_OBJECT = 4,
GET_TYPE = 5,
GET_NAME = 6
GET_NAME = 6,
GET_DOMAIN = 7
}
enum CmdModule {
@ -590,6 +591,7 @@ namespace Mono.Debugger.Soft
GET_THIS = 2,
SET_VALUES = 3,
GET_DOMAIN = 4,
SET_THIS = 5,
}
enum CmdArrayRef {
@ -2113,6 +2115,10 @@ namespace Mono.Debugger.Soft
return SendReceive (CommandSet.ASSEMBLY, (int)CmdAssembly.GET_NAME, new PacketWriter ().WriteId (id)).ReadString ();
}
internal long Assembly_GetIdDomain (long id) {
return SendReceive (CommandSet.ASSEMBLY, (int)CmdAssembly.GET_DOMAIN, new PacketWriter ().WriteId (id)).ReadId ();
}
/*
* TYPE
*/
@ -2410,6 +2416,10 @@ namespace Mono.Debugger.Soft
return SendReceive (CommandSet.STACK_FRAME, (int)CmdStackFrame.GET_DOMAIN, new PacketWriter ().WriteId (thread_id).WriteId (id)).ReadId ();
}
internal void StackFrame_SetThis (long thread_id, long id, ValueImpl value) {
SendReceive (CommandSet.STACK_FRAME, (int)CmdStackFrame.SET_THIS, new PacketWriter ().WriteId (thread_id).WriteId (id).WriteValue (value));
}
/*
* ARRAYS
*/

View File

@ -166,6 +166,15 @@ namespace Mono.Debugger.Soft
return vm.DecodeValue (vm.conn.StackFrame_GetThis (thread.Id, Id));
}
// Since protocol version 2.44
public void SetThis (Value value) {
if (value == null)
throw new ArgumentNullException ("value");
if (Method.IsStatic || !Method.DeclaringType.IsValueType)
throw new InvalidOperationException ("The frame's method needs to be a valuetype instance method.");
vm.conn.StackFrame_SetThis (thread.Id, Id, vm.EncodeValue (value));
}
public void SetValue (LocalVariable var, Value value) {
if (var == null)
throw new ArgumentNullException ("var");

View File

@ -1 +1 @@
10f28bcfc8faf083f7bacd0efadc598a4bbba506
1d8f429b58b595754ddcbc30238a86f4f64a5050

View File

@ -163,7 +163,7 @@ namespace Mono.Security.X509 {
cspParams.KeyContainerName = CryptoConvert.ToHex (certificate.Hash);
// Right now this seems to be the best way to know if we should use LM store.. ;)
if (_storePath.StartsWith (X509StoreManager.LocalMachinePath))
if (_storePath.StartsWith (X509StoreManager.LocalMachinePath) || _storePath.StartsWith(X509StoreManager.NewLocalMachinePath))
cspParams.Flags = CspProviderFlags.UseMachineKeyStore;
ImportPrivateKey (certificate, cspParams);
@ -338,7 +338,7 @@ namespace Mono.Security.X509 {
// If privateKey it's available, load it too..
CspParameters cspParams = new CspParameters ();
cspParams.KeyContainerName = CryptoConvert.ToHex (cert.Hash);
if (_storePath.StartsWith (X509StoreManager.LocalMachinePath))
if (_storePath.StartsWith (X509StoreManager.LocalMachinePath) || _storePath.StartsWith(X509StoreManager.NewLocalMachinePath))
cspParams.Flags = CspProviderFlags.UseMachineKeyStore;
KeyPairPersistence kpp = new KeyPairPersistence (cspParams);

View File

@ -1 +1 @@
87cdef5c41826c8ad40a46a9f662234769f1a596
3d79e44fa692cf973f2663a7bf559af29f22c161

View File

@ -1 +1 @@
a1437f73aa93b512e6b12d6a52339d1d4d2abd5d
1d5679f4c41950c1ebc6de1e704081e655202973

View File

@ -1 +1 @@
14b978577f098a3656996d0d47ba8f4f5ad2282b
27644619f0798b509db93fcc2c9c9daca7e87fd0

View File

@ -1 +1 @@
4290723c3f54f5143abed47828651d8f424b95f3
149fd98eeb1f80cda33f523a71586c3c56cce23d

View File

@ -1 +1 @@
9ae3f67f2d49337f9132b2676053d84cf34ff5d3
d82e9d9ead46347c5641a66f76035811190e0e5e

View File

@ -1 +1 @@
ab52f34a16be899445ac46f7fa080754b4035145
5e769f86c6e601eeed6a547e159a1e065ec48f06

View File

@ -1 +1 @@
e2132b7cb721bf4a4f23e20d5e295687d21b1ddf
01a4b08d98f10122f957785f3e414ead7d64ad42

View File

@ -1 +1 @@
1f23dd85def924073ad388e7604387b143d0f06b
7941c31777bd9ab2dc0aa8f7c4e6bcc0f5de68fb

View File

@ -458,8 +458,9 @@ struct MonoVTable {
guint8 *interface_bitmap;
guint16 max_interface_id;
guint8 rank;
/* Keep this a guint8, the jit depends on it */
guint8 initialized; /* cctor has been run */
guint remote : 1; /* class is remotely activated */
guint initialized : 1; /* cctor has been run */
guint init_failed : 1; /* cctor execution failed */
guint has_static_fields : 1; /* pointer to the data stored at the end of the vtable array */
guint gc_bits : MONO_VTABLE_AVAILABLE_GC_BITS; /* Those bits are reserved for the usaged of the GC */

View File

@ -76,6 +76,7 @@ DECL_OFFSET(MonoVTable, max_interface_id)
DECL_OFFSET(MonoVTable, interface_bitmap)
DECL_OFFSET(MonoVTable, vtable)
DECL_OFFSET(MonoVTable, rank)
DECL_OFFSET(MonoVTable, initialized)
DECL_OFFSET(MonoVTable, type)
DECL_OFFSET(MonoVTable, runtime_generic_context)

View File

@ -861,7 +861,7 @@ EXTRA_DIST = TestDriver.cs \
Makefile.am.in
version.h: Makefile
echo "#define FULL_VERSION \"Stable 4.8.0.483/ba7f169\"" > version.h
echo "#define FULL_VERSION \"Stable 4.8.0.489/9ac5bf2\"" > version.h
# Utility target for patching libtool to speed up linking
patch-libtool:

View File

@ -861,7 +861,7 @@ EXTRA_DIST = TestDriver.cs \
Makefile.am.in
version.h: Makefile
echo "#define FULL_VERSION \"Stable 4.8.0.483/ba7f169\"" > version.h
echo "#define FULL_VERSION \"Stable 4.8.0.489/9ac5bf2\"" > version.h
# Utility target for patching libtool to speed up linking
patch-libtool:

View File

@ -1 +1 @@
9e66f81dfb8f381a6cdc81e9852487bb391c9616
d78d3160cb95346fa22eb7f257a9e51030af6b97

View File

@ -1 +1 @@
f778f59ada713a7c2556d4dbea1ef6473d3650a2
0ec7f5958e3856cfe956471328e27fb9dc3e5de6

View File

@ -1 +1 @@
989d1ceee9a69e6fa24b8a468e3ee04693b4a338
c78dd666bf120a7b972ce43e3aa949f6e124d7e5

View File

@ -1 +1 @@
3db3f59ac8a8d3be96d86874d46e4ac43a7e450a
9252453243a187d9d4e4d8af4894553d7f3c8c52

View File

@ -1 +1 @@
8b0b61e62ad3a349c2c1721e0d36365f3697eccf
0784d290c0c1991dbc02f5b7cf69a367983f3d7e

View File

@ -1 +1 @@
b4871f36b910f3efc6be8a41a65c6d80a1e7d70b
6cf2ec475565f30874bec535d48ea4435ea66ca4

View File

@ -1 +1 @@
#define FULL_VERSION "Stable 4.8.0.483/ba7f169"
#define FULL_VERSION "Stable 4.8.0.489/9ac5bf2"

Binary file not shown.

View File

@ -1 +1 @@
b9667b3e71239bc55572c5164c1d3e5a4b05b099
da2fd49923155b32b5bca18fb07cf7c7e320a8dc

Binary file not shown.

View File

@ -1 +1 @@
fae2eeed149ee7057ac6271c6600bcf980d267ab
e4a9bbec1f2d716b4b646529ce5394539d5aaf92

Binary file not shown.

View File

@ -1 +1 @@
06520507928f8b699b9062e095592e8976d85903
6b60ac7183d65ee9d7f074c8a23f3799d762e2b6

View File

@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: mono 4.8.0\n"
"Report-Msgid-Bugs-To: http://www.mono-project.com/Bugs\n"
"POT-Creation-Date: 2017-02-07 10:58+0000\n"
"POT-Creation-Date: 2017-02-15 09:35+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 @@
4e4126ca221c7efebe3ca9f837dcbfb791824362
593851f8ddc8ae23de4aecfe19261ca7f69713f9

View File

@ -154,14 +154,13 @@ EXTRA_DIST = \
mono-find-requires.in \
peverify.in \
xbuild.in \
update_submodules \
update_submodules.sh \
mcs.in \
dmcs.in \
mono-package-runtime \
mono-test-install \
mono-heapviz \
$(MDOC_COMPAT) \
get-cygwin-deps.sh \
mono-configuration-crypto.in \
submodules/versions.mk \
submodules/versions.py

View File

@ -496,14 +496,13 @@ EXTRA_DIST = \
mono-find-requires.in \
peverify.in \
xbuild.in \
update_submodules \
update_submodules.sh \
mcs.in \
dmcs.in \
mono-package-runtime \
mono-test-install \
mono-heapviz \
$(MDOC_COMPAT) \
get-cygwin-deps.sh \
mono-configuration-crypto.in \
submodules/versions.mk \
submodules/versions.py

View File

@ -1,58 +0,0 @@
#!/bin/bash
#
# This script will download and install the dependencies needed for compiling
# mono on cygwin
#
# Check for required packages
commands="wget unzip automake autoconf libtool make bison"
failed=0
for i in $commands; do
if ! which $i > /dev/null 2>&1; then
echo "You must have the '$i' package installed."
failed=1
fi
done
if [ $failed = 1 ]; then
exit 1
fi
dir=cygwin-deps
mkdir -p $dir
echo -n "Downloading deps... "
if [ ! -f $dir/gettext-runtime-0.17-1.zip ]; then
wget -P $dir http://ftp.gnome.org/pub/gnome/binaries/win32/dependencies/gettext-runtime-0.17-1.zip
fi
if [ ! -f $dir/libiconv-1.13-mingw32-dev.tar.gz ]; then
wget -P $dir http://sourceforge.net/projects/mingw/files/MinGW/libiconv/libiconv-1.13/libiconv-1.13-mingw32-dev.tar.gz/download
fi
echo "done."
echo -n "Extracting to cygwin-deps/ ..."
(cd $dir && for i in *.zip; do unzip -oq $i || exit 1; done) || exit 1
# This is needed because windows can't use dll's without an x flag.
chmod a+x $dir/bin/*.dll
echo "done."
echo -n "Patching PC files... "
prefix=$PWD/$dir
find $dir -name "*.pc" > $dir/pc-files
for i in `cat $dir/pc-files`; do
(sed -e "s,^prefix=.*,prefix=$prefix,g" < $i > $i.tmp && mv $i.tmp $i) || exit 1
done
rm -f $dir/pc-files
echo "done."
# Create an environment shell file
rm -f $dir/env.sh
echo "export PKG_CONFIG_PATH=\"$PWD/$dir/lib/pkgconfig:\$PKG_CONFIG\"" >> $dir/env.sh
echo "export PATH=\"$PWD/$dir/bin:\$PATH\"" >> $dir/env.sh
echo "Source $dir/env.sh into your environment using:"
echo ". $dir/env.sh"
echo "Then run mono's configure."

View File

@ -1,3 +1,4 @@
#!/bin/sh
SUBMODULE_ERROR='Could not recursively update all git submodules. You may experience compilation problems if some submodules are out of date'
SUBMODULE_OK='Git submodules updated successfully'
if test -d .git; then \