Loading...
--- dyld/dyld-1042.1/cache_builder/mrm_shared_cache_builder.cpp
+++ dyld/dyld-1122.1.2/cache_builder/mrm_shared_cache_builder.cpp
@@ -62,9 +62,9 @@
std::string loggingPrefix;
std::string jsonMap;
std::string mainCacheUUID;
- std::optional<std::string> customerLoggingPrefix;
- std::optional<std::string> customerJsonMap;
- std::optional<std::string> customerMainCacheUUID;
+ std::string customerLoggingPrefix;
+ std::string customerJsonMap;
+ std::string customerMainCacheUUID;
std::string macOSMap; // For compatibility with update_dyld_shared_cache's .map file
std::string macOSMapPath; // Owns the string for the path
std::string cdHashType; // Owns the data for the cdHashType
@@ -546,8 +546,9 @@
cacheKind, forceDevelopmentSubCacheSuffix);
options->logPrefix = loggingPrefix;
- options->timePasses = timePasses(builder->options);
- options->stats = printStats(builder->options);
+ options->debug = builder->options->verboseDiagnostics;
+ options->timePasses = options->debug ? true : timePasses(builder->options);
+ options->stats = options->debug ? true : printStats(builder->options);
options->dylibOrdering = parseOrderFile(builder->dylibOrderFileData);
options->dirtyDataSegmentOrdering = parseOrderFile(builder->dirtyDataOrderFileData);
options->objcOptimizations = parseObjcOptimizationsFile(diag, builder->objcOptimizationsFileData,
@@ -723,7 +724,7 @@
cacheBuildResult.errors = buildInstance.errors.empty() ? nullptr : buildInstance.errors.data();
cacheBuildResult.numErrors = buildInstance.errors.size();
cacheBuildResult.uuidString = buildInstance.mainCacheUUID.empty() ? "" : buildInstance.mainCacheUUID.c_str();
- cacheBuildResult.mapJSON = buildInstance.jsonMap.c_str();
+ cacheBuildResult.mapJSON = buildInstance.jsonMap.empty() ? "" : buildInstance.jsonMap.c_str();
builder->cacheResultStorage.emplace_back(cacheBuildResult);
@@ -733,14 +734,14 @@
if ( shouldEmitCustomerCache(builder->options) ) {
CacheResult cacheBuildResult;
cacheBuildResult.version = 1;
- cacheBuildResult.loggingPrefix = buildInstance.customerLoggingPrefix->c_str();
- cacheBuildResult.deviceConfiguration = buildInstance.customerLoggingPrefix->c_str();
+ cacheBuildResult.loggingPrefix = buildInstance.customerLoggingPrefix.c_str();
+ cacheBuildResult.deviceConfiguration = buildInstance.customerLoggingPrefix.c_str();
cacheBuildResult.warnings = nullptr;
cacheBuildResult.numWarnings = 0;
cacheBuildResult.errors = nullptr;
cacheBuildResult.numErrors = 0;
- cacheBuildResult.uuidString = buildInstance.customerMainCacheUUID->empty() ? "" : buildInstance.customerMainCacheUUID->c_str();
- cacheBuildResult.mapJSON = buildInstance.customerJsonMap->c_str();
+ cacheBuildResult.uuidString = buildInstance.customerMainCacheUUID.empty() ? "" : buildInstance.customerMainCacheUUID.c_str();
+ cacheBuildResult.mapJSON = buildInstance.customerJsonMap.empty() ? "" : buildInstance.customerJsonMap.c_str();
if ( !emittedWarningsAndErrors ) {
cacheBuildResult.warnings = buildInstance.warnings.empty() ? nullptr : buildInstance.warnings.data();