Skip to content

Commit 45287ed

Browse files
authored
Remove MONO_ASMCTX_REFONLY (#47966)
* remove MONO_ASMCTX_REFONLY * Also remove mono_image_open_from_data_internal refonly arg
1 parent 92b17c0 commit 45287ed

File tree

12 files changed

+87
-81
lines changed

12 files changed

+87
-81
lines changed

src/mono/mono/metadata/appdomain.c

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1088,6 +1088,7 @@ mono_domain_assembly_preload (MonoAssemblyLoadContext *alc,
10881088

10891089
g_assert (alc);
10901090
g_assert (domain == mono_domain_get ());
1091+
g_assert (!refonly);
10911092

10921093
MonoAssemblyCandidatePredicate predicate = NULL;
10931094
void* predicate_ud = NULL;
@@ -1096,7 +1097,7 @@ mono_domain_assembly_preload (MonoAssemblyLoadContext *alc,
10961097
predicate_ud = aname;
10971098
}
10981099
MonoAssemblyOpenRequest req;
1099-
mono_assembly_request_prepare_open (&req, refonly ? MONO_ASMCTX_REFONLY : MONO_ASMCTX_DEFAULT, alc);
1100+
mono_assembly_request_prepare_open (&req, MONO_ASMCTX_DEFAULT, alc);
11001101
req.request.predicate = predicate;
11011102
req.request.predicate_ud = predicate_ud;
11021103

@@ -1245,7 +1246,7 @@ mono_alc_load_file (MonoAssemblyLoadContext *alc, MonoStringHandle fname, MonoAs
12451246
if (status == MONO_IMAGE_IMAGE_INVALID)
12461247
mono_error_set_bad_image_by_name (error, filename, "Invalid Image: %s", filename);
12471248
else
1248-
mono_error_set_simple_file_not_found (error, filename, asmctx == MONO_ASMCTX_REFONLY);
1249+
mono_error_set_simple_file_not_found (error, filename, FALSE);
12491250
}
12501251

12511252
leave:
@@ -1272,7 +1273,7 @@ ves_icall_System_Runtime_Loader_AssemblyLoadContext_InternalLoadFile (gpointer a
12721273
}
12731274

12741275
static MonoAssembly*
1275-
mono_alc_load_raw_bytes (MonoAssemblyLoadContext *alc, guint8 *raw_assembly, guint32 raw_assembly_len, guint8 *raw_symbol_data, guint32 raw_symbol_len, gboolean refonly, MonoError *error);
1276+
mono_alc_load_raw_bytes (MonoAssemblyLoadContext *alc, guint8 *raw_assembly, guint32 raw_assembly_len, guint8 *raw_symbol_data, guint32 raw_symbol_len, MonoError *error);
12761277

12771278
MonoReflectionAssemblyHandle
12781279
ves_icall_System_Runtime_Loader_AssemblyLoadContext_InternalLoadFromStream (gpointer native_alc, gpointer raw_assembly_ptr, gint32 raw_assembly_len, gpointer raw_symbols_ptr, gint32 raw_symbols_len, MonoError *error)
@@ -1281,7 +1282,7 @@ ves_icall_System_Runtime_Loader_AssemblyLoadContext_InternalLoadFromStream (gpoi
12811282
MonoDomain *domain = mono_alc_domain (alc);
12821283
MonoReflectionAssemblyHandle result = MONO_HANDLE_CAST (MonoReflectionAssembly, NULL_HANDLE);
12831284
MonoAssembly *assm = NULL;
1284-
assm = mono_alc_load_raw_bytes (alc, (guint8 *)raw_assembly_ptr, raw_assembly_len, (guint8 *)raw_symbols_ptr, raw_symbols_len, FALSE, error);
1285+
assm = mono_alc_load_raw_bytes (alc, (guint8 *)raw_assembly_ptr, raw_assembly_len, (guint8 *)raw_symbols_ptr, raw_symbols_len, error);
12851286
goto_if_nok (error, leave);
12861287

12871288
result = mono_assembly_get_object_handle (domain, assm, error);
@@ -1291,11 +1292,11 @@ ves_icall_System_Runtime_Loader_AssemblyLoadContext_InternalLoadFromStream (gpoi
12911292
}
12921293

12931294
static MonoAssembly*
1294-
mono_alc_load_raw_bytes (MonoAssemblyLoadContext *alc, guint8 *assembly_data, guint32 raw_assembly_len, guint8 *raw_symbol_data, guint32 raw_symbol_len, gboolean refonly, MonoError *error)
1295+
mono_alc_load_raw_bytes (MonoAssemblyLoadContext *alc, guint8 *assembly_data, guint32 raw_assembly_len, guint8 *raw_symbol_data, guint32 raw_symbol_len, MonoError *error)
12951296
{
12961297
MonoAssembly *ass = NULL;
12971298
MonoImageOpenStatus status;
1298-
MonoImage *image = mono_image_open_from_data_internal (alc, (char*)assembly_data, raw_assembly_len, TRUE, NULL, refonly, FALSE, NULL, NULL);
1299+
MonoImage *image = mono_image_open_from_data_internal (alc, (char*)assembly_data, raw_assembly_len, TRUE, NULL, FALSE, NULL, NULL);
12991300

13001301
if (!image) {
13011302
mono_error_set_bad_image_by_name (error, "In memory assembly", "0x%p", assembly_data);
@@ -1306,7 +1307,7 @@ mono_alc_load_raw_bytes (MonoAssemblyLoadContext *alc, guint8 *assembly_data, gu
13061307
mono_debug_open_image_from_memory (image, raw_symbol_data, raw_symbol_len);
13071308

13081309
MonoAssemblyLoadRequest req;
1309-
mono_assembly_request_prepare_load (&req, refonly? MONO_ASMCTX_REFONLY : MONO_ASMCTX_INDIVIDUAL, alc);
1310+
mono_assembly_request_prepare_load (&req, MONO_ASMCTX_INDIVIDUAL, alc);
13101311
ass = mono_assembly_request_load_from (image, "", &req, &status);
13111312

13121313
if (!ass) {

src/mono/mono/metadata/assembly.c

Lines changed: 47 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ static const MonoBundledSatelliteAssembly **satellite_bundles;
9797
/* Class lazy loading functions */
9898
static GENERATE_TRY_GET_CLASS_WITH_CACHE (internals_visible, "System.Runtime.CompilerServices", "InternalsVisibleToAttribute")
9999
static MonoAssembly*
100-
mono_assembly_invoke_search_hook_internal (MonoAssemblyLoadContext *alc, MonoAssembly *requesting, MonoAssemblyName *aname, gboolean refonly, gboolean postload);
100+
mono_assembly_invoke_search_hook_internal (MonoAssemblyLoadContext *alc, MonoAssembly *requesting, MonoAssemblyName *aname, gboolean postload);
101101

102102
static MonoAssembly *
103103
invoke_assembly_preload_hook (MonoAssemblyLoadContext *alc, MonoAssemblyName *aname, gchar **apath);
@@ -1015,10 +1015,10 @@ search_bundle_for_assembly (MonoAssemblyLoadContext *alc, MonoAssemblyName *anam
10151015
MonoImageOpenStatus status;
10161016
MonoImage *image;
10171017
MonoAssemblyLoadRequest req;
1018-
image = mono_assembly_open_from_bundle (alc, aname->name, &status, FALSE, aname->culture);
1018+
image = mono_assembly_open_from_bundle (alc, aname->name, &status, aname->culture);
10191019
if (!image && !g_str_has_suffix (aname->name, ".dll")) {
10201020
char *name = g_strdup_printf ("%s.dll", aname->name);
1021-
image = mono_assembly_open_from_bundle (alc, name, &status, FALSE, aname->culture);
1021+
image = mono_assembly_open_from_bundle (alc, name, &status, aname->culture);
10221022
}
10231023
if (image) {
10241024
mono_assembly_request_prepare_load (&req, MONO_ASMCTX_DEFAULT, alc);
@@ -1147,7 +1147,7 @@ netcore_load_reference (MonoAssemblyName *aname, MonoAssemblyLoadContext *alc, M
11471147
// Looking up corlib resources here can cause an infinite loop
11481148
// See: https://github.com/dotnet/coreclr/blob/0a762eb2f3a299489c459da1ddeb69e042008f07/src/vm/appdomain.cpp#L5178-L5239
11491149
if (!(strcmp (aname->name, MONO_ASSEMBLY_CORLIB_RESOURCE_NAME) == 0 && is_satellite) && postload) {
1150-
reference = mono_assembly_invoke_search_hook_internal (alc, requesting, aname, FALSE, TRUE);
1150+
reference = mono_assembly_invoke_search_hook_internal (alc, requesting, aname, TRUE);
11511151
if (reference) {
11521152
mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_ASSEMBLY, "Assembly found with AssemblyResolve event: '%s'.", aname->name);
11531153
goto leave;
@@ -1159,7 +1159,7 @@ netcore_load_reference (MonoAssemblyName *aname, MonoAssemblyLoadContext *alc, M
11591159
}
11601160

11611161
static MonoImage *
1162-
open_from_satellite_bundle (MonoAssemblyLoadContext *alc, const char *filename, MonoImageOpenStatus *status, gboolean refonly, const char *culture)
1162+
open_from_satellite_bundle (MonoAssemblyLoadContext *alc, const char *filename, MonoImageOpenStatus *status, const char *culture)
11631163
{
11641164
if (!satellite_bundles)
11651165
return NULL;
@@ -1168,7 +1168,7 @@ open_from_satellite_bundle (MonoAssemblyLoadContext *alc, const char *filename,
11681168
char *name = g_strdup (filename);
11691169
for (int i = 0; !image && satellite_bundles [i]; ++i) {
11701170
if (strcmp (satellite_bundles [i]->name, name) == 0 && strcmp (satellite_bundles [i]->culture, culture) == 0) {
1171-
image = mono_image_open_from_data_internal (alc, (char *)satellite_bundles [i]->data, satellite_bundles [i]->size, FALSE, status, refonly, FALSE, name, NULL);
1171+
image = mono_image_open_from_data_internal (alc, (char *)satellite_bundles [i]->data, satellite_bundles [i]->size, FALSE, status, FALSE, name, NULL);
11721172
break;
11731173
}
11741174
}
@@ -1475,19 +1475,19 @@ struct AssemblySearchHook {
14751475
static AssemblySearchHook *assembly_search_hook = NULL;
14761476

14771477
static MonoAssembly*
1478-
mono_assembly_invoke_search_hook_internal (MonoAssemblyLoadContext *alc, MonoAssembly *requesting, MonoAssemblyName *aname, gboolean refonly, gboolean postload)
1478+
mono_assembly_invoke_search_hook_internal (MonoAssemblyLoadContext *alc, MonoAssembly *requesting, MonoAssemblyName *aname, gboolean postload)
14791479
{
14801480
AssemblySearchHook *hook;
14811481

14821482
for (hook = assembly_search_hook; hook; hook = hook->next) {
1483-
if ((hook->refonly == refonly) && (hook->postload == postload)) {
1483+
if ((hook->refonly == FALSE) && (hook->postload == postload)) {
14841484
MonoAssembly *ass;
14851485
if (hook->version == 1) {
14861486
ass = hook->func.v1 (aname, hook->user_data);
14871487
} else {
14881488
ERROR_DECL (hook_error);
14891489
g_assert (hook->version == 2);
1490-
ass = hook->func.v2 (alc, requesting, aname, refonly, postload, hook->user_data, hook_error);
1490+
ass = hook->func.v2 (alc, requesting, aname, FALSE, postload, hook->user_data, hook_error);
14911491
mono_error_assert_ok (hook_error); /* FIXME: proper error handling */
14921492
}
14931493
if (ass)
@@ -1504,7 +1504,7 @@ mono_assembly_invoke_search_hook_internal (MonoAssemblyLoadContext *alc, MonoAss
15041504
MonoAssembly*
15051505
mono_assembly_invoke_search_hook (MonoAssemblyName *aname)
15061506
{
1507-
return mono_assembly_invoke_search_hook_internal (NULL, NULL, aname, FALSE, FALSE);
1507+
return mono_assembly_invoke_search_hook_internal (NULL, NULL, aname, FALSE);
15081508
}
15091509

15101510
static void
@@ -1870,7 +1870,7 @@ absolute_dir (const gchar *filename)
18701870
}
18711871

18721872
static MonoImage *
1873-
open_from_bundle_internal (MonoAssemblyLoadContext *alc, const char *filename, MonoImageOpenStatus *status, gboolean refonly, gboolean is_satellite)
1873+
open_from_bundle_internal (MonoAssemblyLoadContext *alc, const char *filename, MonoImageOpenStatus *status, gboolean is_satellite)
18741874
{
18751875
if (!bundles)
18761876
return NULL;
@@ -1880,7 +1880,7 @@ open_from_bundle_internal (MonoAssemblyLoadContext *alc, const char *filename, M
18801880
for (int i = 0; !image && bundles [i]; ++i) {
18811881
if (strcmp (bundles [i]->name, name) == 0) {
18821882
// Since bundled images don't exist on disk, don't give them a legit filename
1883-
image = mono_image_open_from_data_internal (alc, (char*)bundles [i]->data, bundles [i]->size, FALSE, status, refonly, FALSE, name, NULL);
1883+
image = mono_image_open_from_data_internal (alc, (char*)bundles [i]->data, bundles [i]->size, FALSE, status, FALSE, name, NULL);
18841884
break;
18851885
}
18861886
}
@@ -1899,7 +1899,7 @@ open_from_bundle_internal (MonoAssemblyLoadContext *alc, const char *filename, M
18991899
* returns NULL
19001900
*/
19011901
MonoImage *
1902-
mono_assembly_open_from_bundle (MonoAssemblyLoadContext *alc, const char *filename, MonoImageOpenStatus *status, gboolean refonly, const char *culture)
1902+
mono_assembly_open_from_bundle (MonoAssemblyLoadContext *alc, const char *filename, MonoImageOpenStatus *status, const char *culture)
19031903
{
19041904
/*
19051905
* we do a very simple search for bundled assemblies: it's not a general
@@ -1909,9 +1909,9 @@ mono_assembly_open_from_bundle (MonoAssemblyLoadContext *alc, const char *filena
19091909
gboolean is_satellite = culture && culture [0] != 0;
19101910

19111911
if (is_satellite)
1912-
image = open_from_satellite_bundle (alc, filename, status, refonly, culture);
1912+
image = open_from_satellite_bundle (alc, filename, status, culture);
19131913
else
1914-
image = open_from_bundle_internal (alc, filename, status, refonly, FALSE);
1914+
image = open_from_bundle_internal (alc, filename, status, FALSE);
19151915

19161916
if (image) {
19171917
mono_image_addref (image);
@@ -1948,11 +1948,16 @@ mono_assembly_open_from_bundle (MonoAssemblyLoadContext *alc, const char *filena
19481948
MonoAssembly *
19491949
mono_assembly_open_full (const char *filename, MonoImageOpenStatus *status, gboolean refonly)
19501950
{
1951+
if (refonly) {
1952+
if (status)
1953+
*status = MONO_IMAGE_IMAGE_INVALID;
1954+
return NULL;
1955+
}
19511956
MonoAssembly *res;
19521957
MONO_ENTER_GC_UNSAFE;
19531958
MonoAssemblyOpenRequest req;
19541959
mono_assembly_request_prepare_open (&req,
1955-
refonly ? MONO_ASMCTX_REFONLY : MONO_ASMCTX_DEFAULT,
1960+
MONO_ASMCTX_DEFAULT,
19561961
mono_domain_default_alc (mono_domain_get ()));
19571962
res = mono_assembly_request_open (filename, &req, status);
19581963
MONO_EXIT_GC_UNSAFE;
@@ -2038,7 +2043,7 @@ mono_assembly_request_open (const char *filename, const MonoAssemblyOpenRequest
20382043
return NULL;
20392044
}
20402045

2041-
if (load_req.asmctx != MONO_ASMCTX_REFONLY) {
2046+
{
20422047
MonoAssemblyContextKind out_asmctx;
20432048
/* If the path belongs to the appdomain base dir or the
20442049
* base dir of the requesting assembly, load the
@@ -2048,10 +2053,8 @@ mono_assembly_request_open (const char *filename, const MonoAssemblyOpenRequest
20482053
load_req.asmctx = out_asmctx;
20492054
}
20502055
} else {
2051-
if (load_req.asmctx != MONO_ASMCTX_REFONLY) {
2052-
/* GAC assemblies always in default context or refonly context. */
2053-
load_req.asmctx = MONO_ASMCTX_DEFAULT;
2054-
}
2056+
/* GAC assemblies always in default context or refonly context. */
2057+
load_req.asmctx = MONO_ASMCTX_DEFAULT;
20552058
}
20562059
if (new_fname && new_fname != fname) {
20572060
g_free (fname);
@@ -2062,24 +2065,23 @@ mono_assembly_request_open (const char *filename, const MonoAssemblyOpenRequest
20622065

20632066
image = NULL;
20642067

2065-
const gboolean refonly = load_req.asmctx == MONO_ASMCTX_REFONLY;
20662068
/* for LoadFrom(string), LoadFile(string) and Load(byte[]), allow them
20672069
* to load problematic images. Not sure if ReflectionOnlyLoad(string)
20682070
* and ReflectionOnlyLoadFrom(string) should also be allowed - let's
20692071
* say, yes.
20702072
*/
2071-
const gboolean load_from_context = load_req.asmctx == MONO_ASMCTX_LOADFROM || load_req.asmctx == MONO_ASMCTX_INDIVIDUAL || load_req.asmctx == MONO_ASMCTX_REFONLY;
2073+
const gboolean load_from_context = load_req.asmctx == MONO_ASMCTX_LOADFROM || load_req.asmctx == MONO_ASMCTX_INDIVIDUAL;
20722074

20732075
// If VM built with mkbundle
20742076
loaded_from_bundle = FALSE;
20752077
if (bundles != NULL || satellite_bundles != NULL) {
20762078
/* We don't know the culture of the filename we're loading here, so this call is not culture aware. */
2077-
image = mono_assembly_open_from_bundle (load_req.alc, fname, status, refonly, NULL);
2079+
image = mono_assembly_open_from_bundle (load_req.alc, fname, status, NULL);
20782080
loaded_from_bundle = image != NULL;
20792081
}
20802082

20812083
if (!image)
2082-
image = mono_image_open_a_lot (load_req.alc, fname, status, refonly, load_from_context);
2084+
image = mono_image_open_a_lot (load_req.alc, fname, status, FALSE, load_from_context);
20832085

20842086
if (!image){
20852087
if (*status == MONO_IMAGE_OK)
@@ -2326,13 +2328,18 @@ MonoAssembly *
23262328
mono_assembly_load_from_full (MonoImage *image, const char*fname,
23272329
MonoImageOpenStatus *status, gboolean refonly)
23282330
{
2331+
if (refonly) {
2332+
if (status)
2333+
*status = MONO_IMAGE_IMAGE_INVALID;
2334+
return NULL;
2335+
}
23292336
MonoAssembly *res;
23302337
MONO_ENTER_GC_UNSAFE;
23312338
MonoAssemblyLoadRequest req;
23322339
MonoImageOpenStatus def_status;
23332340
if (!status)
23342341
status = &def_status;
2335-
mono_assembly_request_prepare_load (&req, refonly ? MONO_ASMCTX_REFONLY : MONO_ASMCTX_DEFAULT, mono_domain_default_alc (mono_domain_get ()));
2342+
mono_assembly_request_prepare_load (&req, MONO_ASMCTX_DEFAULT, mono_domain_default_alc (mono_domain_get ()));
23362343
res = mono_assembly_request_load_from (image, fname, &req, status);
23372344
MONO_EXIT_GC_UNSAFE;
23382345
return res;
@@ -2412,7 +2419,7 @@ mono_assembly_request_load_from (MonoImage *image, const char *fname,
24122419
*/
24132420
if (ass->aname.name && asmctx != MONO_ASMCTX_INDIVIDUAL) {
24142421
/* FIXME: I think individual context should probably also look for an existing MonoAssembly here, we just need to pass the asmctx to the search hook so that it does a filename match (I guess?) */
2415-
ass2 = mono_assembly_invoke_search_hook_internal (req->alc, NULL, &ass->aname, asmctx == MONO_ASMCTX_REFONLY, FALSE);
2422+
ass2 = mono_assembly_invoke_search_hook_internal (req->alc, NULL, &ass->aname, FALSE);
24162423
if (ass2) {
24172424
mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_ASSEMBLY, "Image %s[%p] reusing existing assembly %s[%p]", ass->aname.name, ass, ass2->aname.name, ass2);
24182425
g_free (ass);
@@ -2430,7 +2437,7 @@ mono_assembly_request_load_from (MonoImage *image, const char *fname,
24302437
* this image and we won't be able to look for a different
24312438
* candidate. */
24322439

2433-
if (asmctx != MONO_ASMCTX_REFONLY) {
2440+
{
24342441
ERROR_DECL (refasm_error);
24352442
if (mono_assembly_has_reference_assembly_attribute (ass, refasm_error)) {
24362443
mono_trace (G_LOG_LEVEL_DEBUG, MONO_TRACE_ASSEMBLY, "Image for assembly '%s' (%s) has ReferenceAssemblyAttribute, skipping", ass->aname.name, image->name);
@@ -3256,12 +3263,17 @@ mono_assembly_load_full_alc (MonoGCHandle alc_gchandle, MonoAssemblyName *aname,
32563263
MonoAssembly*
32573264
mono_assembly_load_full (MonoAssemblyName *aname, const char *basedir, MonoImageOpenStatus *status, gboolean refonly)
32583265
{
3266+
if (refonly) {
3267+
if (status)
3268+
*status = MONO_IMAGE_IMAGE_INVALID;
3269+
return NULL;
3270+
}
32593271
MonoAssembly *res;
32603272
MONO_ENTER_GC_UNSAFE;
32613273
MonoAssemblyByNameRequest req;
32623274
mono_assembly_request_prepare_byname (&req,
3263-
refonly ? MONO_ASMCTX_REFONLY : MONO_ASMCTX_DEFAULT,
3264-
mono_domain_default_alc (mono_domain_get ()));
3275+
MONO_ASMCTX_DEFAULT,
3276+
mono_domain_default_alc (mono_domain_get ()));
32653277
req.requesting_assembly = NULL;
32663278
req.basedir = basedir;
32673279
res = mono_assembly_request_byname (aname, &req, status);
@@ -3303,6 +3315,8 @@ mono_assembly_load (MonoAssemblyName *aname, const char *basedir, MonoImageOpenS
33033315
MonoAssembly*
33043316
mono_assembly_loaded_full (MonoAssemblyName *aname, gboolean refonly)
33053317
{
3318+
if (refonly)
3319+
return NULL;
33063320
MonoAssemblyLoadContext *alc = mono_domain_default_alc (mono_domain_get ());
33073321
return mono_assembly_loaded_internal (alc, aname, refonly);
33083322
}
@@ -3313,9 +3327,11 @@ mono_assembly_loaded_internal (MonoAssemblyLoadContext *alc, MonoAssemblyName *a
33133327
MonoAssembly *res;
33143328
MonoAssemblyName mapped_aname;
33153329

3330+
g_assert (!refonly);
3331+
33163332
aname = mono_assembly_remap_version (aname, &mapped_aname);
33173333

3318-
res = mono_assembly_invoke_search_hook_internal (alc, NULL, aname, refonly, FALSE);
3334+
res = mono_assembly_invoke_search_hook_internal (alc, NULL, aname, FALSE);
33193335

33203336
return res;
33213337
}
@@ -3744,7 +3760,6 @@ mono_asmctx_get_name (const MonoAssemblyContext *asmctx)
37443760
{
37453761
static const char* names [] = {
37463762
"DEFAULT",
3747-
"REFONLY",
37483763
"LOADFROM",
37493764
"INDIVIDIUAL",
37503765
"INTERNAL"

src/mono/mono/metadata/class.c

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -215,8 +215,6 @@ mono_class_from_typeref_checked (MonoImage *image, guint32 type_token, MonoError
215215
mono_assembly_get_assemblyref (image, idx - 1, &aname);
216216
human_name = mono_stringify_assembly_name (&aname);
217217
gboolean refonly = FALSE;
218-
if (image->assembly)
219-
refonly = mono_asmctx_get_kind (&image->assembly->context) == MONO_ASMCTX_REFONLY;
220218
mono_error_set_simple_file_not_found (error, human_name, refonly);
221219
g_free (human_name);
222220
return NULL;

src/mono/mono/metadata/debug-mono-ppdb.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ mono_ppdb_load_file (MonoImage *image, const guint8 *raw_contents, int size)
198198
MonoAssemblyLoadContext *alc = mono_image_get_alc (image);
199199
if (raw_contents) {
200200
if (size > 4 && strncmp ((char*)raw_contents, "BSJB", 4) == 0)
201-
ppdb_image = mono_image_open_from_data_internal (alc, (char*)raw_contents, size, TRUE, &status, FALSE, TRUE, NULL, NULL);
201+
ppdb_image = mono_image_open_from_data_internal (alc, (char*)raw_contents, size, TRUE, &status, TRUE, NULL, NULL);
202202
} else {
203203
/* ppdb files drop the .exe/.dll extension */
204204
filename = mono_image_get_filename (image);

src/mono/mono/metadata/domain-internals.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -547,7 +547,6 @@ mono_domain_assembly_open_internal (MonoDomain *domain, MonoAssemblyLoadContext
547547
MonoImage *mono_assembly_open_from_bundle (MonoAssemblyLoadContext *alc,
548548
const char *filename,
549549
MonoImageOpenStatus *status,
550-
gboolean refonly,
551550
const char *culture);
552551

553552
MonoAssembly *

src/mono/mono/metadata/domain.c

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -549,7 +549,7 @@ mono_init_internal (const char *filename, const char *exe_filename, const char *
549549
runtimes = get_runtimes_from_exe (exe_filename, &exe_image);
550550
#ifdef HOST_WIN32
551551
if (!exe_image) {
552-
exe_image = mono_assembly_open_from_bundle (mono_domain_default_alc (domain), exe_filename, NULL, FALSE, NULL);
552+
exe_image = mono_assembly_open_from_bundle (mono_domain_default_alc (domain), exe_filename, NULL, NULL);
553553
if (!exe_image)
554554
exe_image = mono_image_open (exe_filename, NULL);
555555
}
@@ -1599,7 +1599,7 @@ get_runtimes_from_exe (const char *file, MonoImage **out_image)
15991599
}
16001600

16011601
/* Look for a runtime with the exact version */
1602-
image = mono_assembly_open_from_bundle (mono_domain_default_alc (mono_domain_get ()), file, NULL, FALSE, NULL);
1602+
image = mono_assembly_open_from_bundle (mono_domain_default_alc (mono_domain_get ()), file, NULL, NULL);
16031603

16041604
if (image == NULL)
16051605
image = mono_image_open (file, NULL);
@@ -1663,8 +1663,7 @@ mono_domain_get_assemblies (MonoDomain *domain, gboolean refonly)
16631663
mono_domain_assemblies_lock (domain);
16641664
for (tmp = domain->domain_assemblies; tmp; tmp = tmp->next) {
16651665
ass = (MonoAssembly *)tmp->data;
1666-
gboolean ass_ref_only = mono_asmctx_get_kind (&ass->context) == MONO_ASMCTX_REFONLY;
1667-
if (refonly != ass_ref_only)
1666+
if (refonly != FALSE)
16681667
continue;
16691668
g_ptr_array_add (assemblies, ass);
16701669
}

0 commit comments

Comments
 (0)