From 8c15f10792531e2b1e0251a3c044e811ec8f0483 Mon Sep 17 00:00:00 2001 From: Ryan Lucia Date: Tue, 17 Sep 2019 05:23:05 -0400 Subject: [PATCH] Temporarily disable embedded ppdb data decompression (mono/mono#16868) This addresses mono/mono#16373. We will work on a proper fix, but this at least unblocks Roslyn CI Commit migrated from https://github.com/mono/mono/commit/6252794ebe6cd6f04131dbb1ea0da3a8cd4c6ab1 --- src/mono/mono/metadata/debug-mono-ppdb.c | 5 +++-- src/mono/mono/metadata/metadata-internals.h | 3 +++ 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/mono/mono/metadata/debug-mono-ppdb.c b/src/mono/mono/metadata/debug-mono-ppdb.c index 7569191..7d3dbda 100644 --- a/src/mono/mono/metadata/debug-mono-ppdb.c +++ b/src/mono/mono/metadata/debug-mono-ppdb.c @@ -172,9 +172,10 @@ mono_ppdb_load_file (MonoImage *image, const guint8 *raw_contents, int size) return NULL; } +// Temporarily disabled to unblock Roslyn +#if HOST_WIN32 //|| HAVE_SYS_ZLIB if (ppdb_data) { /* Embedded PPDB data */ -#if HAVE_SYS_ZLIB || HOST_WIN32 /* ppdb_size is the uncompressed size */ guint8 *data = g_malloc0 (ppdb_size); z_stream stream; @@ -194,8 +195,8 @@ mono_ppdb_load_file (MonoImage *image, const guint8 *raw_contents, int size) raw_contents = data; size = ppdb_size; to_free = data; -#endif } +#endif MonoAssemblyLoadContext *alc = mono_image_get_alc (image); if (raw_contents) { diff --git a/src/mono/mono/metadata/metadata-internals.h b/src/mono/mono/metadata/metadata-internals.h index f4c9b47..059cf6d 100644 --- a/src/mono/mono/metadata/metadata-internals.h +++ b/src/mono/mono/metadata/metadata-internals.h @@ -330,8 +330,11 @@ typedef struct { void *raw_data_handle; char *raw_data; guint32 raw_data_len; + /* data was allocated with mono_file_map and must be unmapped */ guint8 raw_buffer_used : 1; + /* data was allocated with malloc and must be freed */ guint8 raw_data_allocated : 1; + /* data was allocated with mono_file_map_fileio */ guint8 fileio_used : 1; #ifdef HOST_WIN32 -- 2.7.4